(모두를 위한 딥러닝) Learning Rate, Preprocessing, Overfitting, Regularization
TensorFlow Python 2017. 11. 2. 00:32* Learning Rate : 이 값이 너무 크거나 작으면 결과 값을 찾기가 힘들어 질수 있다.
- overshooting (값이 커서 결과값에 다가가질 못하고 튕겨나감)
- takes too long(오래걸리고) , stop at local minimum (특정한 부분이 잠깐 내려갔다 올라오는데가 있을때 그 부분에서 멈출수 있다.)
=> 0.01 로 시작하되 결과를 보고 조정하는 것이 좋다.
* preprocessing : 데이터가 너무 차이가 크거나 할 때 정제하는 과정을 거쳐야한다.
- zero-centered data : 데이터를 0 이 중심으로 가게한다.
- normalized data : 어떤 범위안에 들어가도록 한다.
* Overfitting : 너무 정확하게 선을 구분하여 예측하려고 한다면 일반적인 선 구분으로 예측한 것 보다 예측률이 떨어질 수 있다.
- 훈련 데이터가 많아야한다.
- 변수를 줄여라
- 일반화 시켜라. Regularization : 값이 너무 큰 값을 갖지 않도록 한다.
* Regularization : 항목은 W의 값이 너무 크게 가지도록 하지 말자는 것입니다. W 값이 클수록 구분선이 더 구부러지는 형태를 띄게되는데
구부러진 구분선을 좀 더 펴주기 위한 스킬로써 cost 함수에 Regularization strength를 추가해주는 형태를 이용합니다.일반화 상수가 0이면 일반화를 시키지 않겠다는 뜻이고 1이면 정말 크게 적용하겠다는 의미가 됩니다. (보통 그래서 소수점단위로 쓴다고합니다) <= 펌
'TensorFlow Python' 카테고리의 다른 글
(모두를 위한 딥러닝) Tensor Manipulation (0) | 2017.11.02 |
---|---|
(모두를 위한 딥러닝) MinMaxScaler (0) | 2017.11.02 |
(모두를 위한 딥러닝) 동물 분류 하기 (0) | 2017.11.01 |
(모두를 위한 딥러닝) Softmax (0) | 2017.10.31 |
(모두를 위한 딥러닝) 질병 예측하기 - sigmoid (0) | 2017.10.31 |