드롭아웃
IT 위키
- Drop-out; Dropout
드롭아웃(은 딥러닝 신경망 학습 과정에서 오버피팅(overfitting)을 방지하기 위해 학습 시 일부 뉴런(노드)을 임의로 비활성화하는 정규화 기법이다. 2014년 Geoffrey Hinton 등이 제안하였으며, 신경망의 일반화 성능을 높이는 데 널리 사용된다.
개요[편집 | 원본 편집]
드롭아웃은 학습 과정에서 임의의 뉴런을 확률적으로 제거(drop)하여 신경망이 특정 뉴런에 의존하지 않도록 만드는 방법이다. 이 방식은 여러 작은 모델이 동시에 학습되는 것과 유사한 효과를 주며, 결과적으로 모델의 일반화 성능을 향상시킨다. 일반적으로 은닉층의 뉴런 중 일정 비율(p ≈ 0.5)을 드롭시키며, 테스트 시에는 전체 뉴런을 사용하되 가중치를 확률 p에 맞게 조정한다.
드롭아웃의 목적[편집 | 원본 편집]
| 목적 구분 | 설명 | 
|---|---|
| 과적합 문제 해결 | 
 | 
| Co-adaptation 회피 | 
 | 
동작 과정[편집 | 원본 편집]
| 개념도 |   | 
| 동작 | 
 | 
수학적 표현[편집 | 원본 편집]
드롭아웃을 적용한 은닉층의 출력 h′는 다음과 같이 표현된다.
h′ = r ⊙ h
여기서 r은 {0, 1}의 확률 벡터(Bernoulli 분포, P(rᵢ=1)=p), ⊙는 원소별 곱(element-wise product)을 의미한다. 테스트 시에는 기대값 보정을 위해 h_test = p × h 형태로 사용한다.
장점[편집 | 원본 편집]
- 오버피팅 방지로 일반화 성능 향상
- 모델이 다양한 특징 조합을 학습하도록 유도
- 특정 뉴런의 의존성 감소로 강건한 구조 형성
- 추가적인 정규화 항 없이도 효과적인 성능 개선 가능
문제점 및 해결방안[편집 | 원본 편집]
- (문제점) : 학습 시 무작위 노드 제거로 인해 수렴 속도가 느려지고, 최적화가 불안정해질 수 있음
- (해결방안) :
- 배치 정규화(Batch Normalization)와 병행하여 학습 안정화
- 드롭아웃 비율(p)을 층별로 조정 (예: 입력층 0.2, 은닉층 0.5)
- 훈련 종료 후 fine-tuning으로 정확도 보정
 
응용 분야[편집 | 원본 편집]
- 합성곱 신경망(CNN), 순환 신경망(RNN), 트랜스포머(Transformer) 등 다양한 구조에서 사용
- 텍스트 분류, 음성 인식, 이미지 인식, 자연어 처리 등에서 일반화 성능 개선에 기여
- 최근에는 Variational Dropout, Spatial Dropout 등 변형 기법도 연구되고 있다.
같이 보기[편집 | 원본 편집]
참고 문헌[편집 | 원본 편집]
- Srivastava, N., Hinton, G., Krizhevsky, A., Sutskever, I., & Salakhutdinov, R. (2014). “Dropout: A Simple Way to Prevent Neural Networks from Overfitting.” *Journal of Machine Learning Research*, 15(1), 1929–1958.
- 도리의 디지털라이프

