TensorFlow Python

(모두를 위한 딥러닝) Learning Rate, Preprocessing, Overfitting, Regularization

kjun.kr 2017. 11. 2. 00:32
728x90
728x170

* 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이면 정말 크게 적용하겠다는 의미가 됩니다. (보통 그래서 소수점단위로 쓴다고합니다) <= 펌

728x90
그리드형