활성화 함수

혜쿰·2023년 11월 28일
0
post-thumbnail

📌 활성화 함수란?

활성화 함수(Activation Function)는 인공 신경망의 각 뉴런에서 들어온 입력 신호의 총합을 변환하여 출력값을 생성하는 함수이다. 이 함수는 뉴런의 활성화 정도를 결정하며, 신경망이 복잡한 비선형 관계를 학습할 수 있도록 도와준다.

일반적으로 신경망은 여러 층으로 구성되어 있으며, 각 층은 뉴런들로 구성되어 있다. 각 뉴런은 입력값에 가중치를 곱한 후 합산하여 활성화 함수를 거친 결과를 출력으로 내보낸다.

📌 활성화 함수의 종류

1. 시그모이드 함수(Sigmoid Function)

σ(x)=11+exσ(x) = {1\over1+e^{-x}}
  • 입력값을 0과 1 사이의 값으로 변환한다. 출력값이 확률로 해석될 수 있어 이진 분류 문제에 사용된다.
  • 그러나 큰 단점 중 하나는 그레이디언트 소실 문제(Vanishing Gradient Problem)로 인해 학습 과정에서 기울기가 소실되어 학습이 어려워지는 경향이 있다.


    ❓ 그레이디언트 소실이란?
    그레이디언트 소실(Gradient Vanishing) 문제는 심층 신경망(Deep Neural Networks)에서 발생할 수 있는 문제 중 하나이다. 이 문제는 역전파(Backpropagation) 과정에서 신경망의 깊은 층(레이어)으로 역전파될 때 발생하는 현상으로, 주로 활성화 함수와 가중치 초기화 방법 등과 관련이 있다.

2. 탄젠트 함수(Tanh Function)

tanh(x)=exexex+extanh(x) = {e^x-e^{-x}\over{e^x+e^{-x}}}
  • 시그모이드와 유사하지만 출력 범위가 -1에서 1 사이이다. 그러므로 중심이 0이기 때문에 시그모이드보다 학습이 빠를 수 있다.

3. 렐루 함수(Rectified Linear Activation, ReLU)

f(x)=max(0,x)f(x) = max(0,x)
  • 입력값이 양수인 경우에는 입력값을 그대로 반환하고, 음수인 경우에는 0을 반환한다.
  • 신경망에서 가장 많이 사용되며, 연산이 간단하고 학습 속도가 빠르다는 장점이 있다.

4. 리키 렐루 함수(Leaky ReLU)

f(x)=max(αx,x)f(x) = max(αx,x)

(여기서, α는 0보다 작은 작은 상수)

  • ReLU의 음수 부분에서의 문제를 해결하기 위해 음수일 때 작은 기울기를 갖는다.

5. 소프트맥스 함수(Softmax Function)

softmax(xi)=exij=1Nexjsoftmax(x_i) = {e^{x_i}\over{\displaystyle\sum_{j=1}^{\N}e^{x_j}}}
  • 입력값을 각 클래스에 대한 확률 값으로 변환해주는 함수이다. 여러 개의 클래스를 분류하는 다중 클래스 분류 문제의 출력층에서 주로 사용된다.

이 외에도 여러 종류의 활성화 함수가 존재하지만, 이들은 주로 사용되는 일반적인 활성화 함수들이다. 각각의 활성화 함수는 서로 다른 특성을 갖고 있으며, 주어진 문제와 모델의 요구에 따라 선택되어 사용된다.








시그모이드 함수 참고 및 이미지 출처

0개의 댓글

관련 채용 정보