0. 들어가기

신경망(1)에서 우리는 퍼셉트론에서 신경망으로 넘어가는 단계에서 중요한 역할을 하는 활성화 함수라는 것을 배웠다.

앞 포스팅에서는 활성화 함수에 대하여 자세히 알아보지 못하였으므로 활성화 함수들을 자세히 살펴보는 시간을 갖고자 한다.

 

1. 계단함수

출처 : 위키백과

처음으로 살펴봤던 계단함수이다.

값이 0보다 크면 1을 출력하는 아주 간단한 함수이다.

신경망으로 넘어가기 위해서는 계단함수 뿐만 아니라 다른 활성화 함수를 다룰 수 있는 것이 중요하다.

 

2. 시그모이드 함수

출처 : 위키백과

두번째로 시그모이드 함수이다.

0과 1 사이의 출력값을 가지는 함수이다.

시그모이드 함수의 경우, 이상값을 대처하기 쉽다는 장점이 있다.

 

이상값이란, 출력이 다음과 같다고 가정해보자.

[ 1, 9, 0.7, 3, 999 ]

여기서, 999라는 값은 다른 숫자에 비해 심각하게 크다.

이렇듯 값들 중 심각하게 작거나 큰 값을 이상값이라고 부른다.

 

하지만, 시그모이드 함수의 경우 출력값이 0과 1 사이에 있기 때문에, 아무리 이상값이 존재한다고 해도 0과 1 사이로 정규화 되기 때문에 이상값에 잘 대처할 수 있다는 것이다.

 

다만 단점이 있다면, 역전파 과정에서 GRADIENT VANISHING(기울기 소실) 현상이 일어나기 쉽다.

역전파란것은, 앞선 장에서 신경망은 왼쪽에서 오른쪽으로 진행하며 학습을 이루었다.

학습이 끝난 뒤 그 값의 정확성을 파악하기 위하여 오른쪽에서 왼쪽으로 진행하는 과정을 역전파라고 한다.

 

그렇다면 기울기 소실이라고 부르는 것은 무엇인가?

 

역전파를 하기 위해서는 미분을 사용하게 되는데 미분이란 그 함수의 특정한 위치에서의 순간 증가량을 의미한다.

즉 기울기를 의미한다.

다만, 시그모이드 함수를 미분하게 된다면 다음과 같아진다.

시그모이드함수의 미분

 

값의 범위가 0~0.25로 확 줄어든 것을 확인할 수 있다.

기울기 소실이란, 기울기가 0에 가까워 져서 역전파에 있어 충분한 값을 전달하지 못하여 학습이 안되는 현상을 의미한다.

또한, 시그모이드 함수 자체의 복잡성 때문에 미분 연산에 있어 소요되는 시간이 크다는 단점 또한 존재한다.

 

* 정리

  • 장점 : 0~1 사이의 정규화된 출력으로 인하여 이상값에 대처하기 쉽다
  • 단점 : 역전파시 기울기 소실(GRADIENT VANISHING)현상이 일어나기 쉽고 미분 계산이 복잡하다.

 

3. ReLU

 

시그모이드 함수의 단점을 극복하기 위하여 등장한 함수이다.

출처 : 위키피디아

f(x) = max(0, x)의 간단한 함수이다.

이는 계산이 매우 복잡한 시그모이드 함수에 비하여 함수가 매우 간단하여 좀더 빠른 연산이 가능하다.

(6배정도 빠르다고 한다.)

하지만 입력값이 음수일 경우 0을 출력한다. 이는 음수값을 전달할 경우 역전파가 이루어지지 않음을 의미한다.

 

4. 정리

  • 각 함수의 장단점을 파악
  • 역전파시 미분을 활용한다.
  • 기울기 소실 문제에 대한 파악

 

5. 마무리

세개의 함수를 소개했으나, 각 함수들의 변형된 형태나 업그레이드 된 형태가 많이 존재한다.

이또한 찾아보면 도움이 될 것이다.

'old > (old)밑바닥부터 시작하는 딥러닝' 카테고리의 다른 글

3. 신경망(1)  (0) 2021.01.07
2. 퍼셉트론(2)  (0) 2021.01.07
2. 퍼셉트론(1)  (0) 2021.01.01
1. 헬로 파이썬  (0) 2021.01.01

+ Recent posts