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

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

by Hyen4110 2021. 4. 16.

이 글은 연세대학교 정보대학원 기본머신러닝 과목 수강하면서 공부한 내용을 바탕으로 작성한 글입니다.

 

역전파 알고리즘(Back Propagation)

- 모델의 출력값(output)과 기대값(target)을 비교하여 차이(오차/error)를 줄여나가는 방향으로 가중치를 업데이트하는 방법

- 출력층(ouput layer)에서 입력층(input layer) 방향으로 오차(error)를 역으로 전파하면서 가중치를 업데이트 하기 때문에 역전파(Back Propagation) 알고리즘이라고 합니다.

- 역전파 알고리즘에 대한 설명은 Delta Rule을 기본으로 시작하여 이를 일반화하여 확장한 역전파알고리즘을 설명하는 순으로 진행하겠습니다.

 

1. Delta Rule

1) Delta란?

 : 정답(target)과 출력값(output)간의 차이, 즉 오차(error)를 delta라고 한다.

   (= difference between desired and actual output)

 

2) Delta Rule이란?

: 단층신경망(Single Layer Perceptron)에서 뉴런의 연결강도(가중치, weight)를 갱신하는데 쓰이는 방법으로, 

  모든 입력값으로부터 얻어지는 출력과 정답간 오차의 제곱합을 최소화하도록 연결강도(가중치)를 조정하는 방법.

: 오차를 비례하여 가중치를 조절한다는 점에서 '실수(오차)로부터 배운다(learning from mistakes)'고 한다.

: "Perceptron learning rule"이라고 한다.

 

<단층신경망과 Delta Rule 그림 설명>

Fei-Fei Li & Justin Johnson & Serena Yeung
단층신경망(Simple Layer Perceptron)
[Delta Rule] 가중치 변화량에 대한 식

  -> 가중치를 업데이트 하는 양은 오차(delta)와 입력값, η(에타, Learning rate)에 의해서 정해진다

 

 

 <제한적인 'Delta Rule'의 기본 가정>

  ① 네트워크가 입력과 출력만으로 구성된 단층신경망(Single Layer Perceptron)이다.

  ② 활성화함수(Activation funciton)가 선형(linear)이거나 없다.

  

 -> 오차역전파 알고리즘의 기초가되는 Delta Rule은 위와 같이 아주 제한적인 조건에서만 성립합니다. 

    하지만 일반적인 네트워크

 

       i) 입력층, 출력층 외에 많은 은닉층(Hidden Layer)이 존재하고

       ii) 활성화함수도 선형적이지 않으며

       iii) 손실함수(Loss function)는 아래 그림과 같이 Convex 하지 않기 때문에  

    일반적인 네트워크의 가중치를 업데이트하기위해서는 Delta Rule을 일반화 해야합니다. 

 

 

 

 

댓글