2018. 7. 9. 16:33
Deep Learning/NN by Sung Kim
Dropout과 앙상블 강좌를 정리한다.
Overfitting의 제거
데이터를 꼬부리는 것: 아는 것을 넣었더니 accuracy가 0.99 였지만 한번도 못지 못한 것을 넣을 때 accuracy가 0.85로 낮으면 이것을 overfitting되었다고 한다.
Training Accuracy와 Weight n layer 관계도
overfitting이 되면 layer가 늘어날 수록 training은 잘되는 것 같지만 일정 시점에 test dataset의 정확도는 떨어지고 있다.
Overfitting 제거 방법
- 학습데이터를 더 많이 사용한다.
- Regularization을 사용한다. W의 제곱의 최소화 => L2 Regularization
- Dropout: Neural Network 에서 사용하는 방법, 그만두기(Dropout), 학습시에 Neural Network을 끊어버리자. Random하게 어떤 뉴런들을 제거하고 나머지를 가지고 훈련시킨다. 그리고 최종적으로 dropout시킨 것을 다 사용해 예측한다. (상당히 잘 된다.)
수식을 사용하면 다음과 같다.
- 훈련시에만 dropout_rate을 주고, 테스트/평가 시에는 1로 주어야 한다.
Ensemble (앙상블, 언셈블)
여러 모델을 만들어 보고 이것을 합친다. 성능향상을 높일 수 있다. 실전에서 앙상블 모델을 사용하면 좋다.
참조
'Deep Learning > NN by Sung Kim' 카테고리의 다른 글
[Neural Network] Softmax에 NN 적용하는 순서 팁 (0) | 2018.07.09 |
---|---|
[Neural Network] 종류 (0) | 2018.07.09 |
[Deep Learning] Weight 초기화 잘하기 (0) | 2018.07.09 |
[Deep Learning] TensorBoard 사용 및 ReLU 개념 (0) | 2018.07.09 |
[Deirvative] 미분 정리 (0) | 2018.07.06 |