렐루 함수 (ReLU)

컴퓨터과학·AI
한 줄 정의: 입력값이 0보다 크면 그대로 통과시키고, 0 이하이면 무조건 0으로 만드는 매우 단순한 활성화 함수입니다.

쉽게 풀면

수도꼭지에 달린 역류 방지 밸브를 떠올려 보세요. 물이 정방향(양수)으로 흐르면 그대로 흘려보내지만, 역류(음수)하려는 순간 밸브가 막아서 0으로 만들어 버립니다. ReLU(Rectified Linear Unit)가 정확히 이렇게 동작합니다. 수식으로는 f(x) = max(0, x)로, 입력이 양수면 입력값 그대로를 출력하고 음수면 무조건 0을 출력합니다. 계산이 단순히 비교와 선택뿐이라 매우 빠르고, 이전에 많이 쓰던 활성화 함수인 시그모이드보다 딥러닝 모델을 훨씬 안정적으로 학습시킬 수 있어서 현재 신경망 대부분의 은닉층에서 기본값처럼 쓰입니다.

왜 중요한가

딥러닝 모델은 층을 아무리 많이 쌓아도 활성화 함수가 없으면 결국 하나의 선형 변환과 같아져 복잡한 패턴을 배울 수 없는데, ReLU는 이런 비선형성을 매우 적은 계산 비용으로 제공하면서도 이전 활성화 함수들이 겪던 기울기 소실 문제를 크게 완화해 매우 깊은 신경망의 학습을 가능하게 했습니다. 이 때문에 합성곱 신경망, 트랜스포머 등 현대 딥러닝 구조 대부분에서 기본 활성화 함수로 채택되어, 모델 구조를 설명하는 거의 모든 논문에서 언급되는 기초 구성요소입니다.

논문에서는 이렇게 쓰입니다

"각 합성곱 층 뒤에는 활성화 함수로 ReLU를 적용하여 비선형성을 부여하였다."

이 문장은 모델의 각 층이 단순한 선형 계산에 그치지 않도록, ReLU를 통해 복잡한 패턴을 표현할 수 있는 비선형 변환을 추가했다는 뜻입니다. 딥러닝 논문의 모델 구조(architecture) 설명 부분에서 거의 빠지지 않고 등장합니다.

"완전연결층 사이에 ReLU를 삽입한 다층퍼셉트론 구조는 시그모이드를 사용한 기존 구조보다 학습 수렴 속도가 눈에 띄게 빨라졌다."

ReLU가 다른 활성화 함수 대비 학습 속도와 안정성 면에서 갖는 장점을 실험적으로 비교하는 문장으로, 활성화 함수를 새로 제안하거나 비교하는 연구에서 자주 볼 수 있는 서술입니다.

"죽은 ReLU 현상을 완화하기 위해 은닉층의 활성화 함수를 ReLU 대신 Leaky ReLU로 대체하였다."

ReLU의 알려진 한계를 보완하려는 변형 기법을 적용했다는 서술로, 학습이 불안정하거나 특정 뉴런이 비활성화되는 문제를 다루는 모델 개선 연구에서 흔히 등장합니다.

조금 더 깊게 보면

ReLU가 널리 쓰이게 된 배경에는 시그모이드나 tanh 같은 함수가 입력값이 클 때 기울기가 거의 0에 가까워져 역전파 과정에서 학습 신호가 사라지는 기울기 소실 문제가 있습니다. ReLU는 양수 구간에서 기울기가 항상 1로 일정해 이 문제를 상당 부분 해결하지만, 반대로 음수 구간에서는 기울기가 아예 0이 되어 학습이 멈추는 죽은 ReLU 문제가 생길 수 있습니다. 이를 보완하기 위해 음수 구간에도 작은 기울기를 두는 Leaky ReLU, 파라미터로 기울기를 학습하는 PReLU, 곡선 형태로 매끄럽게 근사한 GELU 등 다양한 변형이 제안되어 왔으며, 논문에서 어떤 변형을 사용했는지가 모델 성능 비교의 중요한 변수로 다뤄지기도 합니다.

주의할 점

ReLU는 입력이 계속 음수로만 들어오면 출력이 항상 0이 되어 해당 뉴런이 더 이상 학습에 기여하지 못하는 "죽은 ReLU(dying ReLU)" 현상이 생길 수 있습니다. 이를 보완하기 위해 음수 구간에서도 아주 작은 기울기를 남겨두는 Leaky ReLU 같은 변형이 함께 쓰이기도 합니다. ReLU는 활성화 함수의 한 종류일 뿐, 활성화 함수 전체를 가리키는 말은 아니라는 점도 헷갈리지 않아야 합니다.

관련 용어