Ultralytics YOLO27: 대기자 명단에 등록하세요.
YOLO 라이선스 받기
Ultralytics 용어집으로 돌아가기

Leaky ReLU

Leaky ReLU는 음수 입력에 보통 0.01의 작은 기울기를 적용해 그래디언트가 계속 흐르도록 하며, 뉴런이 ReLU 비활성화 문제를 겪지 않게 합니다.

Leaky ReLU(Leaky Rectified Linear Unit)는 입력이 양수일 때 입력을 그대로 반환하고, 음수일 때는 0.01과 같은 작은 고정 기울기를 곱하는 활성화 함수입니다. 음수 입력마다 0을 출력하는 표준 ReLU를 수정해 음수 값에서도 작은 출력을 내도록 하며, 더 중요한 점은 역전파 중 그래디언트가 0이 되지 않도록 합니다. Andrew Maas, Awni Hannun, Andrew Ng는 2013년 음성 인식 음향 모델의 정류 활성화를 연구한 논문에서 기울기 0.01을 사용해 이 함수를 설명했습니다. 이 함수는 그래디언트 흐름이 중요한 딥러닝 모델에 사용되며, 생성적 적대 신경망 판별기, 구형 YOLO 객체 검출기, 구간별 선형 활성화를 사용해 양자화 모델을 실행하는 신경 처리 장치 등에 적용됩니다.

Leaky ReLU 작동 방식#

Leaky ReLU는 x > 0일 때 f(x) = x을, x ≤ 0일 때 f(x) = αx를 계산합니다. 음수 기울기 α는 0과 1 사이의 고정 하이퍼파라미터입니다. 도함수는 양수 입력에서 1이고 음수 입력에서 α이므로, 모든 입력은 해당 입력을 만든 가중치에 그래디언트를 일부 전달합니다. 일반적인 기울기는 구현과 프레임워크에 따라 다릅니다. PyTorch의 nn.LeakyReLU은 기본값이 0.01이고, TensorFlow의 tf.nn.leaky_relu은 0.2, Keras의 LeakyReLU 계층은 0.3입니다. 다음 코드는 음수 입력을 ReLU와 Leaky ReLU에 통과시킨 뒤 각각의 그래디언트를 계산합니다.

import torch
from torch import nn

# Negative pre-activations, the inputs a ReLU unit turns into zeros
x = torch.tensor([-3.0, -1.0, -0.5], requires_grad=True)

for activation in (nn.ReLU(), nn.LeakyReLU(negative_slope=0.01)):
    y = activation(x)
    y.sum().backward()  # gradient that flows back toward the weights
    print(f"{activation}: output {y.detach().numpy()}, gradient {x.grad.numpy()}")
    x.grad = None

ReLU(): output [0. 0. 0.], gradient [0. 0. 0.]과 LeakyReLU(negative_slope=0.01): output [-0.03 -0.01 -0.005], gradient [0.01 0.01 0.01]이 출력됩니다. ReLU는 이러한 입력에서 그래디언트를 전달하지 않으므로 경사 하강법으로 해당 입력을 만든 가중치를 변경할 수 없습니다. 반면 Leaky ReLU는 업스트림 그래디언트의 1%를 전달합니다.

Dying ReLU 문제#

학습 데이터의 모든 입력에서 사전 활성화 값이 음수가 되도록 가중치와 바이어스가 크게 바뀌면 ReLU 뉴런이 죽습니다. 그러면 출력과 그래디언트가 항상 0이 되고 입력 가중치가 다시는 업데이트되지 않아 신경망에서 뉴런이 영구적으로 사라집니다. 높은 학습률이나 큰 음수 방향의 바이어스 업데이트는 이러한 현상이 일어날 가능성을 높입니다. Leaky ReLU는 음수 영역에서도 작은 그래디언트를 유지하므로, 음수 영역으로 이동한 뉴런을 다시 끌어올릴 수 있습니다.

Dying ReLU 문제는 기울기 소실 문제와 다릅니다. 기울기 소실은 시그모이드나 tanh와 같은 포화 함수의 여러 계층을 통과하면서 그래디언트가 점차 작아지는 현상입니다.

  • ReLU: 음수 입력에 정확히 0을 출력하므로 활성화가 희소해지고 연산 비용이 낮아지지만, 뉴런이 죽을 수 있습니다. Leaky ReLU는 모든 입력에서 그래디언트를 유지하는 대신 정확한 희소성을 포기합니다.
  • 파라메트릭 ReLU (PReLU): 음수 기울기를 고정하지 않고 학습 중에, 일반적으로 채널별로 하나씩 학습합니다. Kaiming He와 동료들은 기울기를 0.25로 초기화했으며, 이는 PyTorch nn.PReLU의 기본값이기도 합니다.
  • SiLU 및 GELU: 음수 입력에서 0보다 조금 낮아지고 0에서 뾰족한 모서리가 없는 부드러운 곡선입니다. SiLU는 최신 YOLO 모델의 기본 활성화 함수이며, GELU는 Transformer에서 널리 사용됩니다. 두 함수는 값마다 지수 연산이 필요하지만 Leaky ReLU에는 비교와 곱셈만 필요합니다.

Leaky ReLU 사용 사례#

  • DCGAN 판별기: DCGAN 아키텍처는 모든 판별기 계층에서 기울기 0.2의 Leaky ReLU를 사용했습니다. 따라서 판별기가 이미지 생성을 거부하더라도 생성기가 유용한 그래디언트를 받으며, 이후 많은 GAN도 이 방식을 채택했습니다.
  • 초기 YOLO 검출기: 최초 YOLO는 마지막 계층을 제외한 모든 계층에서 기울기 0.1의 Leaky ReLU를 사용했습니다. YOLOv2와 YOLOv3도 같은 방식을 사용했으며, YOLOv5는 2021년 1월 v4.0 릴리스에서 SiLU로 교체하기 전까지 Leaky ReLU를 사용했습니다.
  • 그래프 어텐션 네트워크: 이러한 그래프 신경망은 각 노드가 이웃 노드에 얼마나 주의를 기울여야 하는지 점수를 계산할 때 기울기 0.2의 Leaky ReLU를 적용합니다.
  • 엣지 AI 가속기: 양자화 모델을 실행하는 정수 연산 신경 처리 장치는 구간별 선형 활성화를 이전 합성곱 연산에 통합할 수 있습니다. AMD의 Xilinx DPU는 ReLU와 Leaky ReLU에 이 방식을 적용하지만, 시그모이드와 그에 따른 SiLU는 호스트 CPU에서 실행합니다.

Ultralytics YOLO 모델 YAML 파일은 모든 표준 합성곱 블록의 기본 SiLU를 대체하는 activation 키를 지원하므로, YOLO26은 activation: nn.LeakyReLU(0.1015625)을 사용해 DPU의 고정 기울기 26/256에 맞춰 학습할 수 있습니다.

솔루션 살펴보기

스포츠 분야의 컴퓨터 비전

스포츠 분야의 컴퓨터 비전

Ultralytics YOLO가 선수 및 공 추적, 경기력 분석, 코칭 인사이트, 선수 재활을 통해 스포츠 비전을 구현하는 방법을 알아보세요.
자세히 알아보기
항공 이미지 컴퓨터 비전

항공 이미지 컴퓨터 비전

Ultralytics YOLO를 활용해 드론 및 항공 이미지를 농업, 양식업, 보전, 지리 공간 분석을 위한 실시간 인사이트로 전환하세요.
자세히 알아보기
항공우주 분야의 컴퓨터 비전

항공우주 분야의 컴퓨터 비전

Ultralytics YOLO를 활용해 항공기 검사, 활주로 FOD 감지, 공항 지상 운영, 복합재 결함 감지 등 항공우주 분야에 컴퓨터 비전을 적용하세요.
자세히 알아보기
보안 분야의 컴퓨터 비전

보안 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 모든 시설을 보호하세요. Vision AI는 경계 모니터링, 위협 감지, 번호판 인식, 작업장 안전을 지원합니다.
자세히 알아보기
로보틱스 분야의 컴퓨터 비전

로보틱스 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 더 스마트한 머신을 구현하세요. 로보틱스 분야의 Vision AI는 자율 주행, 인식, 객체 추적, 실시간 제어를 지원합니다.
자세히 알아보기
물류 분야의 컴퓨터 비전

물류 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 물류를 간소화하세요. 비전 AI는 화물 검사, 분류, 차량 추적, 실시간 창고 안전 모니터링을 지원합니다.
자세히 알아보기
리테일 분야의 컴퓨터 비전

리테일 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 리테일의 새로운 가능성을 열어 보세요. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리, 더욱 심층적인 고객 인사이트를 지원합니다.
자세히 알아보기
의료 분야의 컴퓨터 비전

의료 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 의료 솔루션을 구축하세요. 의료 분야의 비전 AI는 의료 영상 판독을 가속화하고, 진단을 개선하며, 환자 모니터링을 지원합니다.
자세히 알아보기
제조 분야의 컴퓨터 비전

제조 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 제조 공정을 최적화하세요. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수, 조립 라인 자동화를 지원합니다.
자세히 알아보기
자동차 분야의 컴퓨터 비전

자동차 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 자동차 분야에 컴퓨터 비전을 적용하세요. 비전 AI는 도로 안전, 운전자 지원, 차량 자동화를 개선해 더 스마트한 도로를 구현합니다.
자세히 알아보기
농업 분야의 컴퓨터 비전

농업 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 스마트 농업에 비전 AI를 도입하세요. 작물 모니터링, 가축 추적, 정밀 농업을 지원하여 더 높은 수확량과 더 스마트한 농업을 실현합니다.
자세히 알아보기

함께 AI의 미래를 만들어 가세요!

머신러닝의 미래와 함께 여정을 시작하세요