본문 바로가기
컴퓨터비전

[딥러닝] 활성화 함수( Activation Function)

by PIAI 2022. 3. 8.

종류

Sigmoid Function

sigmoid는 은닉층(Hidden Layer)의 활성화 함수로는 더 이상 사용되지 않는다. 평균이 0이 아니기 때문에 가중치 업데이트가 지그재그 형태로 발생한다. 그리고 값이 양으로 크게 커지면 1에 가까운 값에 계속 수렴하기 때문에 출력값의 변화가 거의 없다. 마찬가지로 음으로 크게 작아져도 0으로 수렴하기 때문에 출력값에 변화가 거의 없다. 이 이유로 값이 커질수록 weight값이 계속 0이 나온다. 그러므로 층이 깊어져도 학습이 되지 않기 때문에 층이 깊어지는데 한계가 있다. 그래서 이제는 이진 분류의 최종 Classfication Layer의 Activation 함수로 사용된다.

Hyperbolic Tangent

Tanh는 시그모이드과 달리 -1과 1사이의 값을 출력하여 평균이 0이 될수는 있지만 여전히 양이나 음으로 커질시에 weight값이 0이 돼서 층이 깊어지는데 한계가 있음.

Rectified Linear Unit(Relu)

대표적인 은닉층의 활성함수이다. 입력값이 0보다 작을 때 출력은 0, 0보다 크면 입력값을 출력한다.

 

목적

MIT Introduction to Deep Leaning

왼쪽 그림은 선형 레벨에서 판별 기준을 제공한다. 오른쪽 그림은 비선형 활성화 함수가 복잡한 함수의 근사를 할 수 있도록 만들어 주는 것이다. 활성화 함수의 주요 목적은 딥러닝 네트워크의 비선형성을 적용하기 위함이다.

 

적용

Relu: 은닉층에 사용된다.

 

Sigmoid: 이진 분류에서 마지막 Classification 출력층에 사용된다. (사기인지 아닌지, 암인지 아닌지, 사람인지 아닌지)

 

Softmax: 멀티 분류 시 마지막 Classification 출력층에 사용된다. (개: 0.1%, 고양이: 0.6%, 물고기:0.3%)

Sigmoid와 유사하게 확률값 0, 1 로 변환 하지만, 차이점은 소프트 맥스는 개별 출력값의 총 합이 1이 되도록 매핑해주는 것이다.

 

https://towardsdatascience.com/softmax-activation-function-explained-a7e1bc3ad60

 

댓글