신경망의 핵심 요소 중 하나인 활성화 함수(Activation Function)는 단순해 보이지만, 딥러닝의 성패를 좌우하는 결정적인 역할을 한다. 각 뉴런에서 적용되는 이 비선형 변환이 없다면, 아무리 복잡한 신경망도 단순한 선형 모델에 불과할 것이다. 활성화 함수의 선택은 단순한 기술적 결정이 아니라, 모델의 학습 능력과 표현력을 근본적으로 변화시키는 중요한 선택이다.
신경망의 각 뉴런은 입력값들에 가중치를 곱하고, 편향(bias)을 더한 가중합을 계산한다. 이 계산 자체는 선형 변환에 불과하다. 만약 활성화 함수 없이 여러 레이어를 쌓는다면, 이 모든 선형 변환은 하나의 선형 변환으로 압축될 수 있다. 결과적으로 아무리 깊은 네트워크도 단일 레이어와 동일한 표현력을 갖게 된다.
활성화 함수의 비선형성은 이런 한계를 극복하게 해준다. 각 레이어 사이에 비선형 변환을 삽입함으로써, 신경망은 복잡한 패턴을 학습하고 거의 모든 함수를 근사할 수 있는 능력을 갖게 된다. 이것이 바로 유니버설 근사 정리(Universal Approximation Theorem)의 핵심이다.
딥러닝의 발전 과정에서 다양한 활성화 함수들이 등장했으며, 각각은 고유한 특성과 장단점을 가지고 있다:
시그모이드(Sigmoid):
정의: f(x) = 1/(1+e^(-x))
특징: 0과 1 사이의 값을 출력, S자 형태의 곡선
장점: 출력 범위가 제한적이어서 활성화 값이 폭발하지 않음
단점: 소멸하는 그라디언트 문제를 일으키며, 출력이 0 중심이 아님
하이퍼볼릭 탄젠트(Tanh):
정의: f(x) = (e^x - e^(-x))/(e^x + e^(-x))
특징: -1과 1 사이의 값을 출력, S자 형태의 곡선
장점: 출력이 0 중심이어서 다음 레이어의 학습을 용이하게 함
단점: 여전히 소멸하는 그라디언트 문제를 가짐
ReLU(Rectified Linear Unit):
정의: f(x) = max(0, x)
특징: 음수 입력에는 0, 양수 입력에는 입력값 그대로 출력
장점: 계산이 단순하고 빠르며, 소멸하는 그라디언트 문제를 크게 완화
단점: "죽은 ReLU" 문제 - 일부 뉴런이 학습 과정에서 영원히 비활성화될 수 있음
Leaky ReLU:
정의: f(x) = max(0.01x, x)
특징: 음수 입력에 작은 기울기(보통 0.01)를 줌
장점: 죽은 ReLU 문제를 해결
단점: 작은 기울기 값을 하이퍼파라미터로 정해야 함
Maxout:
정의: f(x) = max(w₁ᵀx + b₁, w₂ᵀx + b₂, ...)
특징: 여러 개의 선형 함수 중 최댓값을 선택
장점: ReLU를 일반화한 형태로, 더 복잡한 함수 근사 가능
단점: 학습해야 할 파라미터 수가 k배로 증가
ELU(Exponential Linear Unit):
정의: f(x) = x (x > 0), α(e^x - 1) (x ≤ 0)
특징: 음수 입력에 지수적으로 감소하는 값 출력
장점: 음수 입력 영역에서 미분 가능하여 학습이 더 안정적
단점: 계산 비용이 ReLU보다 높음
딥러닝 역사에서 가장 중요한 돌파구 중 하나는 2010년 제프리 힌튼이 제안한 ReLU 활성화 함수다. 간단한 구조에도 불구하고, ReLU는 이전 활성화 함수들의 핵심 문제였던 소멸하는 그라디언트(Vanishing Gradient) 문제를 효과적으로 해결했다.
시그모이드나 탄젠트 함수는 입력값이 극단적인 경우 기울기가 거의 0에 가까워진다. 역전파 과정에서 이런 작은 기울기들이 계속 곱해지면, 깊은 네트워크의 앞쪽 레이어에서는 그라디언트가 거의 사라져버린다. 이로 인해 앞쪽 레이어의 가중치들은 거의 업데이트되지 않고, 학습이 매우 느려진다.
반면 ReLU는 양수 입력에 대해 기울기가 항상 1이기 때문에, 이런 소멸 문제를 크게 완화한다. 이로 인해 깊은 네트워크도 효과적으로 학습할 수 있게 되었고, 딥러닝의 획기적인 발전이 가능해졌다.
ReLU의 중요한 특징 중 하나는 네트워크에 희소성(sparsity)을 부여한다는 점이다. 음수 입력에 대해 0을 출력하기 때문에, 평균적으로 네트워크의 많은 뉴런들이 비활성화된다. 이는 다음과 같은 효과를 가져온다:
계산 효율성: 활성화된 뉴런만 계산에 참여하므로 계산 비용 감소
모델 앙상블 효과: 각 입력 데이터마다 서로 다른 "서브 네트워크"가 활성화되어, 여러 모델을 평균한 효과를 냄
특징 추출 효율성: 중요한 특징에만 반응하는 뉴런들을 선택적으로 활성화
이러한 특성은 드롭아웃(Dropout)과 유사한 정규화 효과를 가져온다. 드롭아웃이 임의로 뉴런을 비활성화시키는 반면, ReLU는 입력 데이터에 따라 "자연스럽게" 비활성화시킨다.
2013년에 Ian Goodfellow가 제안한 맥스아웃(Maxout)은 ReLU의 개념을 더욱 확장한 활성화 함수다. 기본 아이디어는 각 뉴런에서 여러 개의 선형 함수를 계산한 후, 그 중 최댓값을 선택하는 것이다.
맥스아웃은 전통적인 활성화 함수와 달리, 가중합을 계산한 후 비선형 함수를 적용하는 대신, 여러 개의 가중합 중 최댓값을 선택하는 것 자체가 활성화 과정이 된다. 이는 다음과 같은 장점을 가진다:
어떤 연속 함수도 더 정교하게 근사할 수 있음
ReLU와 마찬가지로 소멸하는 그라디언트 문제를 피할 수 있음
드롭아웃과 함께 사용했을 때 특히 효과적
맥스아웃의 구현은 k개의 병렬 선형 유닛으로 볼 수 있으며, 각 입력 데이터마다 다른 유닛이 활성화된다. 이는 마치 k개의 서로 다른 선형 모델 중 가장 적합한 모델을 데이터에 따라 선택하는 것과 같다.
ReLU의 단점 중 하나는 "죽은 ReLU(Dying ReLU)" 문제다. 학습 과정에서 특정 뉴런의 가중합이 항상 음수가 되면, 그 뉴런은 항상 0을 출력하게 된다. 이로 인해 그 뉴런과 연결된 가중치들은 그라디언트가 0이 되어 더 이상 업데이트되지 않는다.
이 문제를 해결하기 위해 여러 변형이 제안되었다:
Leaky ReLU: 음수 입력에 대해 작은 기울기(보통 0.01)를 주어, 뉴런이 완전히 "죽지" 않도록 함
ELU: 음수 입력에 대해 지수적으로 감소하는 값을 출력하여 평균이 0에 가까워지도록 함
PReLU(Parametric ReLU): Leaky ReLU의 기울기를 학습 가능한 파라미터로 설정
이러한 변형들은 ReLU의 장점을 유지하면서 단점을 보완한다.
활성화 함수의 선택은 신경망의 성능, 학습 속도, 표현력에 직접적인 영향을 미친다. 현대 딥러닝에서는 주로 ReLU와 그 변형들이 표준으로 사용되지만, 특정 문제나 네트워크 구조에 따라 다른 활성화 함수가 더 적합할 수 있다.
예를 들어:
일반적인 딥 네트워크: ReLU
순환 신경망(RNN): Tanh, LSTM 셀에서는 시그모이드와 Tanh 조합
출력층: 분류 문제에는 소프트맥스, 회귀 문제에는 선형, 이진 분류에는 시그모이드
딥러닝의 발전은 활성화 함수의 진화와 밀접하게 연결되어 있다. 시그모이드에서 ReLU로의 전환은 딥러닝이 실용적으로 가능하게 한 중요한 돌파구였으며, 앞으로도 더 효과적인 활성화 함수의 발견은 딥러닝의 새로운 지평을 열 것이다.