기울기 소실
딥러닝에서 기울기 소실 문제, 신경망에 미치는 영향, ReLU, ResNet 등과 같은 효과적인 해결 방법을 알아보세요.
소실 그라디언트 문제는 딥러닝 학습 과정에서 직면하는 중요한 문제입니다.
딥
신경망을 훈련하는 동안 직면하는 중요한 문제입니다. 이 문제는 네트워크의 업데이트에 사용되는 신호인
네트워크의 가중치를 업데이트하는 데 사용되는 신호인
가중치를 업데이트하는 데 사용되는 신호인
역전파를 통해 네트워크의 가중치를 업데이트하는 데 사용되는 신호인 그라데이션이 매우 작아질 때 발생합니다.
출력 레이어에서 초기 레이어로 다시 전파될 때 발생합니다. 이러한 기울기가 0에 가까워지면 초기 레이어의 가중치가
초기 레이어의 가중치가 효과적으로 업데이트되지 않습니다. 이로 인해 해당 레이어의 학습 프로세스가 지연되어 딥러닝 모델이
딥러닝 모델이 최적의 솔루션으로 수렴하는 것을
솔루션으로 수렴하지 못합니다.
기울기 소실은 왜 발생합니까?
사라지는 그라데이션의 주요 원인은 특정 활성화 함수의 특성과
활성화 함수와 네트워크 자체의
네트워크 자체의 깊이 때문입니다.
-
활성화 기능: 기존의 활성화 기능인
시그모이드 및
쌍곡탄젠트(탄) 함수
는 입력을 매우 작은 출력 범위로 압축합니다. 이러한 함수의 미분은 항상 작습니다. 역전파 중
역전파 과정에서 이러한 작은 도함수는 여러 레이어에 걸쳐 함께 곱해집니다. 네트워크의 레이어가 많을수록
레이어가 많을수록 이러한 작은 숫자가 더 많이 곱해져 기울기가 기하급수적으로 줄어들게 됩니다.
-
딥 아키텍처: 이 문제는 특히 매우 심층적인 네트워크에서 두드러지게 나타납니다.
순환 신경망(RNN),
그래디언트가 여러 시간 단계를 통해 다시 전파되는 초기 순환 신경망(RNN)을 포함한 매우 심층적인 네트워크에서 두드러집니다. 각 단계에는 네트워크의 가중치가 곱해지기 때문에
가중치를 곱해야 하므로 긴 시퀀스에서 그라데이션 신호가 감소할 수 있습니다.
기울기 소실 vs. 기울기 폭발
소실 그라데이션은 폭발하는 그라데이션과 정반대인
폭발하는 그라데이션과 정반대입니다. 두 문제 모두 훈련 중
흐름과 관련이 있지만 그 효과는 다릅니다:
-
사라지는 그라데이션: 그래디언트는 기하급수적으로 줄어들어 너무 작아져 네트워크의 초기 계층에서
의미 있는 학습이 불가능해질 때까지 기하급수적으로 줄어듭니다.
-
폭발하는 그래디언트: 그라디언트가 제어할 수 없을 정도로 커지면 가중치가 대량으로 업데이트되어 모델이 불안정해지고
모델이 불안정해지고 수렴에 실패하게 됩니다.
두 가지 문제를 모두 해결하는 것은 심층적이고 강력한
AI 모델을 성공적으로 학습시키는 데 중요합니다.
솔루션 및 완화 전략
vanishing gradient 문제를 해결하기 위해 여러 기술이 개발되었습니다.
-
더 나은 활성화 기능: 시그모이드와 탄을 다음과 같은 함수로 대체: 시그모이드와 탄은
정류 선형 단위(ReLU) 또는 그
변형(Leaky ReLU,
GELU)로 대체하는 것이 일반적인 해결책입니다. ReLU의
는 양수 입력의 경우 1이 되어 그라데이션이 축소되는 것을 방지합니다.
-
고급 아키텍처: 최신 아키텍처는 이 문제를 완화하기 위해 특별히 설계되었습니다.
잔여 네트워크(ResNet) 는 다음을 도입합니다.
"연결 건너뛰기"를 도입하여 그라데이션이 레이어를 우회하여 더 짧은 경로를 제공함으로써
역전파. 순차적 데이터의 경우,
롱 쇼트텀 메모리(LSTM) 및
게이트 순환 장치(GRU) 네트워크는 흐름을 제어하기 위해
게이팅 메커니즘을 사용하여 정보 및 그라데이션의 흐름을 제어합니다.
LSTM 논문.
-
가중치 초기화: 네트워크 가중치의 적절한 초기화: He 또는
자비에 초기화 같은 방법을 사용하면
그래디언트가 합리적인 범위 내에서 시작되도록 할 수 있습니다.
-
일괄 정규화: 적용
일괄 정규화는 각 레이어에 대한 입력을
입력을 정규화하여 네트워크를 안정화하고 초기화에 대한 의존도를 낮춰서
소실 그라데이션 문제를 완화합니다.
최신 딥 러닝 프레임워크 및 모델인 Ultralytics YOLO11 이러한 솔루션이 통합된 아키텍처로 구축됩니다.
아키텍처에 통합되어 있습니다. 수동 구성 없이도 이러한 원칙을 활용하는 모델을 쉽게 만들 수 있습니다.
from ultralytics import YOLO
# Load a model built from a YAML configuration file
# The architecture defined in 'yolo11n.yaml' uses modern components
# like ReLU-based activations and normalization layers to prevent vanishing gradients.
model = YOLO("yolo11n.yaml")
# Train the model with confidence that the architecture is robust against this issue.
# The training process benefits from stable gradient flow.
results = model.train(data="coco128.yaml", epochs=3)
실제 영향 및 예시
기울기 소실 문제 극복은 현대 AI의 중요한 돌파구였습니다.
-
컴퓨터 비전: 한때는 단순히
컨볼루션 신경망(CNN)
을 더 깊게 만드는 것만으로는 사라지는 그라데이션과 같은 훈련의 어려움으로 인해 성능이 향상되지 않는다고 생각했습니다. 하지만
ResNet 아키텍처의 도입으로 이러한 생각이 틀렸다는 것이 증명되었고, 수백 개의 레이어를 가진 네트워크가
수백 개의 레이어를 갖춘 네트워크가 가능해졌습니다. 이로 인해
이미지 분류
이미지 세분화, 그리고
객체 감지, 다음과 같은
다음과 같은 모델의 Ultralytics YOLO. 이러한 모델을 훈련하려면 종종
대규모 컴퓨터 비전 데이터 세트가 필요하며 효과적인 학습을 보장하기 위해 강력한
아키텍처가 필요합니다.
-
자연어 처리(NLP): 초기 RNN은 다음과 같은 작업에서 실패했습니다.
기계 번역 및 긴 형식의
감정 분석과 같은 작업에서 실패했습니다.
긴 문장의 시작 부분의 정보를 기억할 수 없었기 때문입니다. LSTM의 발명으로 인해 모델은 이러한
장거리 종속성을 포착할 수 있게 되었습니다. 최근에는
트랜스포머 아키텍처는
순차적 기울기를 우회하는 자기 주의 기능
문제를 완전히 우회하여 거의 모든 작업에서 최첨단 성능을 제공합니다.
NLP 작업, 자주 탐구되는 주제
스탠포드 NLP 그룹과 같은 연구 그룹에서 자주 탐구하는 주제입니다.