목차
반응형
1. 개요
- 딥러닝 학습시 OverFitting을 해결하기 위한 다양한 방법에 대해 공부해보자
2. Overfitting 이란
- 모델이 데이터에 과하게 맞추게 되어, 앞으로 들어올 데이터는 맞지 않도록 학습된 형태
- Test 데이터 셋의 Loss값은 작지만, Validation 데이터 셋의 Loss값이 커질때
3. 해결방법
- 개념
- Overfitting을 해결하기 위해서는 일반적으로 모델의 복잡성을 줄이도록 해야 한다.
- Regularization 기법
3.1. Early Stopping
- 학습을 중간에 중단
- Validation과 Test의 Loss를 모니터링해서 중단 시점을 정함
3.2. Weight decay
3.2.1. L1 Regularization
- 수식
$$ E(w) = E(w) + \frac{\lambda}{2}|w| $$
- 설명
- E(w) 는 Lossfunction이다
- w값들을 모두 더하는 수식을 더하기 때문에 w값들이 작아지는 방향으로 학습
- Input 값들을 고를때 주로 사용 (0.00001와 0.9을 비교하지 않고 더해서 작아지기만 하면 됨)
3.2.2. L2 Regularization
- 수식
$$ E(w) = E(w) + \frac{\lambda}{2} w^{T}w $$
- 설명
- E(w) 는 Lossfunction이다
- w의 제곱들을 모두 더하는 수식을 더하기 때문에 w값들이 작아지는 방향으로 학습
- 제곱이 들어가기 때문에 튀는 값이 있으면 차이가 커짐 (0.00001 제곱과 0.9의 제곱을 비교했을 때 0.9가 너무 커짐), 튀는 값이 없도록 학습
- 주로 학습할때 사용
- 결론
- w값이 0이 된 것들은 Connection을 끊어 버린다는 뜻
- 모델이 단순화 됨
3.3. Dropout
- 불균등 학습에 대한 해결을 제시함
- 학습을 잘 되는 노드와 안되는 노드가 있기 때문
- Test 할때의 계산 방법
- Train 할 때는 Dropout을 하지만 Test 할 때는 모든 값을 다 사용하기 때문에 Node에 들어오는 값이 더 커지게 되는 문제가 발생
- Test를 할 때는 Dropout으로 인해 작아진 비율만큼 곱해줘야함.
- 주의할 점
- 데이터가 적을 때는 사용하지 않는 것이 좋음
- 학습을 더 여러번 진행해야 함 (학습이 느려짐)
- 참고
- Weight Decay 방법과 함께 사용하면 좋음
반응형
'Deep Learning > Deep Learning 개념' 카테고리의 다른 글
활성화 함수 (0) | 2022.07.03 |
---|---|
딥러닝 옵티마이저 (Optimizer) 종류와 설명 (0) | 2021.05.03 |