피드포워드 신경망 BPNN의 간단한 구현

4단계로 나누어져 있어요

초기화

무작위 함수를 사용하여 가중치와 편향을 할당합니다. 입력 레이어 외에 편향도 추가해야 합니다.

출력 계산

각 뉴런의 출력을 계산합니다.
여기에 이미지 설명을 삽입하세요.여기에 이미지 설명을 삽입하세요.

계산 오류

출력 레이어의 오류 계산
여기에 이미지 설명을 삽입하세요.
중간 레이어의 오류 계산
여기에 이미지 설명을 삽입하세요.

가중치 및 편향 조정

여기에 이미지 설명을 삽입하세요.
그 중 L은 학습률로 0.9로 설정할 수 있다.다음으로 가중치를 조정한다.
여기에 이미지 설명을 삽입하세요.

성취하다

여기에 이미지 설명을 삽입하세요.
MATLAB 구현 코드는 다음과 같습니다

%% 简单前馈神经网络

% 初始化权重和偏置
W12=rand([3,2]);
W23=rand([2,1]);

B12=rand([1,2]);
B23=rand([1,1]);
% 输出
input=[1,0,1];

for i=1:1000
    % 计算输出
    S2=input*W12+B12;
    O2=(1+exp(-S2)).^-1;
    S3=O2*W23+B23;
    O3=(1+exp(-S3)).^-1;

    % 计算误差
    E3=O3.*(1-O3).*(1-O3);
    E2=O2.*(1-O2).*(sum(W23*E3,2).'); 

    % 调整
    W23=W23+(0.9)*O3.*E3;
    W12=W12+(0.9)*O2.*E2;

    B12=B12+(0.9)*E2;
    B23=B23+(0.9)*E3;
end

추천

출처blog.csdn.net/qq_40092672/article/details/111617727