한마디로 정리하면 “backpropagation 과정에서 이점이 있기 때문”입니다.

이를 이해하기 위해 다양한 레이어들의 역전파 과정을 살펴보겠습니다

<CNN model training 과정 ( 아주아주아주 생략 간단하게 )>

conv layer → activation function → loss function → 미분, backpropagation→gradient descent weights update

Backpropagation에서 꼭 기억하고 가야할 Chain Rule

$$ f(g(x))^\prime =\frac{\partial f}{\partial x} = \frac{\partial f}{\partial g} \bullet \frac{\partial g}{\partial x} $$

ReLU

Untitled

Untitled

미분하면

Untitled

forward propagation 시, 입력인 x가 0보다 크다면 backpropagation 때에는 상류의 값을 그대로 하류로 보낸다.

입력인 x가 0보다 작다면 backpropagation 때에는 하류로 0을 보내게 된다 ( chain rule 의해 gradient가 0이 될 것이다 )

Untitled

Untitled

Sigmoid

Untitled

파란색이 sigmoid 함수 그래프, 빨간색이 sigmoid를 미분한 것의 그래프이다.

Untitled

미분식. 이해할 필요는 없다. 미분값이 0.3보다 작은 값이 나온다는 것만 알아두자

미분식. 이해할 필요는 없다. 미분값이 0.3보다 작은 값이 나온다는 것만 알아두자

sigmoid를 계산그래프로 표현 ⬇️

Untitled