본문 바로가기
AI/딥러닝 기초(Deep learning)

[딥러닝기초] 역전파 알고리즘(Back Propagation)_2 Delta Rule 일반화

by Hyen4110 2021. 4. 25.

<지난 시간 Delta Rule 정리>

2021.04.16 - [딥러닝(Deep learning)] - [딥러닝] 역전파 알고리즘(Back Propagation)1_ Delta Rule

 

[딥러닝] 역전파 알고리즘(Back Propagation)1_ Delta Rule

이 글은 연세대학교 정보대학원 기본머신러닝 과목 수강하면서 공부한 내용을 바탕으로 작성한 글입니다. 역전파 알고리즘(Back Propagation) - 모델의 출력값(output)과 기대값(target)을 비교하여 차이

hyen4110.tistory.com

- 앞의 글('01 역전파 알고리즘(Back Propagation) 기초_ Delta Rule')에서 Delta Rule에 근거한 가중치 업데이트 식을 살펴보았습니다. 

- 또한, Delta Rule의 기본 가정은 너무나 단순하기 때문에, 일반화가 필요하다는 것도 확인했습니다.

  Delta Rule의 기본가정 일반적인 네트워크
1 단층신경망(Single Layer Perceptron) 많은 은닉층(Hidden Layer)이 존재
2 활성화함수가 선형(linear)이거나 없음 활성화함수도 선형적이지 않음
3 손실함수(Loss function)이 Convex함

 손실함수(Loss function)는 Convex 하지 않음

 

<Delta Rule의 일반화>

Delta Rule의 제한적인 가정 1, 2, 3 중에서 1, 2만을 일반화한 오차역전법을 살펴보겠습니다.

은닉층이 여러개가 있고, 비선형 활성화함수가 존재하는 일반적인 경우의 오차역전법을 보겠습니다.

- net(pj) : 활성화함수의 입력값으로 들어가는 값

- o(pj) : net(pj)가 활성화함수를 거쳐서 나오는 값

- f(j) : j 번째 뉴런의 활성화함수로, 여기에서는 시그모이드 함수를 써서 식을 전개하도록 하겠습니다.

시그모이드 함수(출처: 위키백과)

 

- 가중치 업데이트양 전개

 : 이전에는 가중치업데이트항을 O(pj)를 이용하여 체인룰로 나누었지만, 

  일반화한 식에서는 활성화함수에 넣기 전 값 net(pj)를 이용하여 체인룰로 나누었습니다.

이때 

위에서 전개된 식을 최종적으로 정리하겠습니다.

이때, f(x)는 시그모이드 함수이기 때문에

f'(x) =f(x){1-f(x)}임을 이용하여 재정리하였습니다.

 

댓글