활성화 함수(Activation Function)

SOO·2023년 7월 6일
0

DeepLearning

목록 보기
2/3
post-thumbnail

1. 활성화 함수(Activation Function) 란?

최종 출력값을 다음 레이어로 보낼지 말지를 결정하는 함수를 의미한다.

선형함수 vs 비선형 함수

선형 함수비선형 함수
입력이 그대로 출력으로 나감0과 1사이의 값을 가짐
네트워크를 쌓는 이점이 없어짐네트워크를 쌓는 이점을 보존
선형 변환을 통해 다시 WX+BWX+B 꼴로 변환 가능

선형 함수의 경우 위와 같이 다시 WX+BWX+B 꼴로 변환 가능하기 때문에, 레이어를 쌓는 이점이 사라진다.
따라서 선형 함수는 일반적으로 뉴럴네트워크에서 활성화 함수로 사용되지 않는다.
즉, 뉴럴 네트워크에서 층을 쌓는것의 효과를 보기 위해비선형 함수활성화 함수로 사용한다.




2. 활성화 함수의 종류


(1) Sigmoid

sigmoid(x)=11+exsigmoid(x) = \frac{1}{1+e^{-x}}
  • Logistic Function
  • 중심이 0.5이며, 0과 1사이의 값을 갖는다.
  • gradient vanishing문제로 인해, 히든 레이어 보다는 출력 레이어에서 사용한다.
  • 2개의 카테고리를 예측하는 경우에 사용한다.

(2) Tanh

tan(x)=exexex+ex\tan(x) = \frac{e^x-e^{-x}}{e^x+e^{-x}}
  • 중심이 0이며, -1과 1 사이의 값을 갖는다.

(3) ReLU

ReLU(x)=max(0,x)ReLU(x) = max(0, x)
  • 0보다 작은 값은 0으로, 0보다 큰 값은 그대로 값을 취한다.
  • Sigmoid나 tanh보다 학습이 빠르다.
  • 가장 많이 사용된다.

(4) LeakyReLU

LeakyReLU(x)=max(0.1x,x)LeakyReLU(x) = max(0.1x, x)
  • x가 음수일 때 미분값이 0이 되는 ReLU를 변형하여 약간의 미분값을 갖게 만듦ㄴ

(5) Softmax

Softmax(x)=exi=1kexiSoftmax(x) = \frac{e^x}{\sum_{i=1}^{k}{e^{x_i}}}
  • 주로 마지막 레이어에서 class 분류를 하기 위해 사용된다.
  • 입력값을 0~1 사이의 값으로 정규화 하여 합이 1인 확률분포로 만든다.
profile
데이터 분석으로 세상을 읽어보쟈 빠샤

0개의 댓글

관련 채용 정보