티스토리 뷰
[딥러닝 기본 18] Lec 07_1 - learning rate, overfitting 그리고 일반화(regularization)
Nero :) 2017. 6. 6. 16:01모두를 위한 머신러닝 / 딥러닝 김성훈 교수님 강의를 듣고 정리한 내용입니다.
@ learning rate
- Gradient descent algorithm의 learning rate는 한번 미분 할 때마다 이동하는 거리를 의미
- overshooting : learning rate이 너무 커서 학습이 발산하는 경우를 말함
- 반대로 learning rate이 너무 작은 경우, 학습을 오래 하여도 cost의 최소값에 도달하지 못함
- 0.01로 시작하여 발산 할 경우, learning rate을 줄이고 학습이 느린 경우 값을 키우는 방식으로 적절한 값을 찾음
@ normalize
- X1, X2의 결과로 Y가 나오는 데이터가 있을 때, X1과 X2의 값의 차이가 클 경우 learning rate를 적절하게 주어도 값이 발산하는데, normalize를 통해 데이터를 정리한다.
- normalize 방법
1. zero-centered data : 데이터 분포의 중심을 0으로 맞춰줌
2. normalized data : 값의 분포가 특정 범위 이내로 들어가도록 normalize 함
3. standardization
4. min-max scale : 모든 값을 0에서 1사이의 값으로 normalize 함
@ overfitting
- 너무 과도하게 데이터에 대해 모델을 learning을 한 경우로, 테스트 데이터에 대해서는 꽝인 학습.
- overfitting solution
1. 많은 training data 학습
2. 일반화(regularization) 시킨다.
@ regularization
- overfitting의 solution으로 일반화를 통해 과도한 학습을 막는다.
'ML (Machine Learning)' 카테고리의 다른 글
[딥러닝 기본 20] Lab 07_1 - training / test data set, learning rate, normalization (0) | 2017.06.06 |
---|---|
[딥러닝 기본 19] Lec 07_2 - training / test 데이터 셋 (0) | 2017.06.06 |
[딥러닝 기본 17] Lab 06_2 - tensorflow로 fancy softmax classification의 구현하기 (0) | 2017.06.02 |
[딥러닝 기본 16] Lab 06_1 - tensorflow로 softmax classification의 구현하기 (0) | 2017.06.02 |
[딥러닝 기본 15] Lec 06_2 - softmax classification의 cost 함수 (0) | 2017.06.02 |