Table of Contents

DeepLearning

ReLU (Rectified Linear Unit)

꼬꼬마코더 2024. 6. 27. 16:13
728x90

ReLU (Rectified Linear Unit)는 컨볼루션 신경망(CNN)과 다른 인공 신경망에서 널리 사용되는 활성화 함수입니다. ReLU 함수는 신경망의 각 뉴런에서 입력 신호를 변환하는 역할을 하며, 이 변환된 값이 네트워크의 다음 레이어로 전달됩니다.

ReLU 함수의 정의

ReLU 함수는 간단하게 다음과 같이 정의됩니다:

[
\text{ReLU}(x) = \max(0, x)
]

이 함수는 입력 ( x )가 0 이상이면 그 값을 그대로 출력하고, 0 미만이면 0을 출력합니다.

ReLU의 주요 특징

  1. 비선형성: ReLU는 비선형 함수이므로, ReLU를 사용하는 신경망은 복잡한 함수를 모델링할 수 있습니다. 이 비선형성은 신경망이 선형 모델로는 해결할 수 없는 문제들을 해결하게 해줍니다.
  2. 계산 효율성: ReLU의 계산은 매우 간단합니다 (단순한 최대값 계산). 이는 다른 일부 활성화 함수들보다 계산적으로 효율적이며, 신경망의 전체적인 훈련 속도를 향상시킬 수 있습니다.
  3. 기울기 소실 문제 완화: 전통적인 활성화 함수인 시그모이드나 하이퍼볼릭 탄젠트 함수는 깊은 네트워크에서 기울기 소실 문제를 일으킬 수 있습니다. 이는 네트워크의 초기 레이어로 기울기가 잘 전파되지 않는 현상입니다. 반면, ReLU는 양수 입력에 대해 기울기가 항상 1이므로 이러한 문제를 어느 정도 완화할 수 있습니다.
  4. 희소 활성화: ReLU는 0 미만의 입력에 대해 활성화 값을 0으로 만듭니다. 이로 인해 네트워크의 출력이 희소해질 수 있으며, 이는 일부 경우에 계산과 저장 공간을 절약할 수 있게 합니다.

사용 시 유의점

  • 죽은 ReLU 문제 (Dying ReLU Problem): ReLU는 입력이 0 미만일 때 그 뉴런이 0을 출력하게 되고, 이러한 뉴런은 학습 과정에서 더 이상 업데이트되지 않을 수 있습니다. 이를 "죽은 ReLU" 문제라고 하며, 네트워크 일부가 효과적으로 학습에 참여하지 못하는 상태를 의미합니다.

ReLU는 이러한 장점과 단점을 갖고 있지만, 그 성능과 단순성 때문에 많은 딥 러닝 모델에서 기본적으로 사용되는 활성화 함수 중 하나입니다. 다양한 변형(예: Leaky ReLU, Parametric ReLU)도 개발되어 있어, 죽은 ReLU 문제와 같은 단점을 해결하려는 시도가 계속되고 있습니다.