Étude
article thumbnail

lec 07-1: 학습 rate, Overfitting, 그리고 일반화 (Regularization) - YouTube

  1. Learning rate 조절하는 방법
  2. data preprocessing 
  3. overfitting 방지하는 방법

 

 

 

Learning rate

Learning rate는 경사하강법에서 보폭의 크기라고 생각하면 된다.

 

Learning rate: Overshooting

Learning rate를 너무 크게 설정한다면 보폭이 너무 크기 때문에 최적점을 지나칠 수 있고 정신없이 왔다갔다 하기 때문에 최적의 지점을 찾지 못할 수도 있다.

 

 

Small learning rate

 

반대로 너무 맞게 설정한다면 보폭이 너무 짧아 시간이 오래걸리거나 제 시간안에 최적점을 찾지 못하게 된다. 또는 최적점이 아님에도 stop하는 경향이 있음. 

 

 

Try several learning rates

Cost function 을 확인하고 너무 크다면 Learning rate을 줄일필요가 있으며 반대로 손실함수가 너무나 작다면 Learning rate를 높일 필요가 있다. 보통 0.01부터 시작하여 판단한다.

Data preprocessing for gradient descent 

 

 

최적점으로 가는게 목표

 

x 값들의 차이가 크면 왜곡된 등고선이 나옴

두개의 변수의 값의 간격이 너무 차이가 난다면 모델이 제대로 학습을 할 수 없으며 왜곡된 경사하강법을 가지게 된다. 그렇기 때문에 다양한 정규화 작업이 필요하다.

- 데이터의 중심이 0으로 가게하는 zero-centering

- 절대적 기준 내의 범위로 데이터가 들어가도록 하는 normalizing 

 

X_std[:,0] = (X[:,0] - X[:,0].mean())/X[:,0].std()

 

 

Overfitting

 

 

모델이 너무 학습 데이터에만 훈련이 되어 실제 현실데이터 및 테스트 데이터에서는 성능을 제대로 발휘하지 못하는 문제

​과대적합의 해결책으로는

 1. 더 많은 훈련 데이터를 넣거나

 2. 중복성이 강한 변수를 줄이거나 

 3. 일반화(Regularization)작업을 거친다.

 

Regularization

l2reg = 0.0001 * tf.reduce_sum(tf.square(W))
profile

Étude

@프랑스어전공

https://blog.naver.com/captprice