오류 역전파 (back propagation)

I. 인공신경망 학습기법, 오류 역전파

가. 오류 역전파의 개념

역방향 가중치 조정을 통해 오차를 최소화하여 신경망 학습을 위한 지도학습 알고리즘

나. 오류 역전파의 특징

감독 학습– input과 output 훈련데이터셋을 통해 신경망을 학습시키는 방법
다층 신경망– 여러 개의 은닉층(hidden layer)를 통해 활성함수를 적용하여 계산
역방향 계산– 출력층으로부터 입력 방향으로 거슬러 가며 오차를 최소화하는 학습 기법

 

II. 오류 역전파 기반 학습 절차

가. 오류 역전파 학습 절차 개념도

나. 오류 역전파 학습 절차

절차설명
① 피드포워드– 모든 층 가중치를 임의의 수로 초기화
– 입력층 → 출력층 피드포워드 진행
② 오류 역전파
   계산
– 출력층 오류를 최소화 가중치 탐색
– 예상값 – 실제값 = 에러(E) 가중치 미분
– 출력층에서부터 역방향으로 진행
③ 가중치 조정– 에러 최소평균제곱의 미분값 → 학습률
– 학습률만큼 수정된 가중치로 조정
④ 절차 반복– 앞 단계 은닉층으로 이동하여 가중치구함
– ①~③ 절차 반복, 목표 도달 시까지 진행

 

III. 오류 역전파 알고리즘의 문제점 및 해결 기법

가. 오류 역전파 알고리즘의 문제점

sigmoid 함수의
문제점
– 가중치 조정을 위해 경사감소법을 사용
– 계단형식 함수를 미분가능하도록 곡선화

– sigmoid 함수를 사용하면 hidden layer가 깊어질수록 가중치가 0으로 수렴하여 정확성 감소

나. 오류 역전파 알고리즘 문제점의 해결 기법

ReLu– x값이 0이하이면 0을 출력, 0이상이면, 비례 함수 적용, max(0, x) 함수 사용

 

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^