나는 일련의 15 개 입력 (신호의 통계적 고장)으로부터 매우 시끄러운 신호를 예측하는 간단한 반복적 인 신경망을 구축했다.Pybrain : 사용자 정의 오류/성능 기능?
pybrain 소스 (pybrain \ supervised \ trainers \ backprop.py)에서 알 수 있듯이 오류 기능은 제곱 된 오류의 합계를 총 목표 (MSE)로 나눈 값으로 _calcDerivs
함수에 하드 코드됩니다. 구분은 train
함수에서 발생합니다.
필자의 경우 네트워크가 정확한 변화량보다 신호 변경 방향을 예측하는 것이 가장 중요합니다. 따라서 NN이 예측할 때 NN을 페널티하고 신호가 올라갈 때 페널티를 적용하고 그 반대의 경우도 마찬가지입니다. 나는 _calcDerivs
뿐만 아니라 현재 대상뿐만 아니라 대상이 방향을 올바르게 추측했는지에 따라 가중치를 계산하는 데 사용하는 이전 대상 및 출력을 전달했지만 네트워크가 두 rprop을 사용하여 수렴하지 못했습니다. 및 배경. 이 모든 일은 저에게 매우 해킹입니다.
내 질문 : 이 있습니까? 기본 성능 기능을 수정하는 방법은 무엇입니까? 모든 성능 함수 코드가 _calcDerivs
에 보관되어 있습니까? 아니면 뭔가 빠졌습니까?