<Lab 7에서 다룰 내용들>
- Learning rate 값을 어떤 식으로 조정해야 하는가?
- 학습 시킬 data에 대해 어떻게 preprocesssing 할 지? + 그 기법들
- 학습 시에는 잘 되었지만, 새로운 데이터에서는 잘 안 될 때 = Overfitting
Learning rate = Gradient = 기울기
learningrate와 기울기의 연관 관계에 대하여 조절을 통해 최적의 cost를 지닌 모델을 찾는다.
텐서플로우에서 loss_value = cost
가설 값과 실제 값의 비교를 통해 도출
tape.gradient를 통해 업데이트한다.
어떤 learning rate 쓸 지 Optimizer 함수를 통해 설정.
gradient: 각 위치별로 기울기 값이 나옴
vs
learning rate: 한 번에 얼만큼 이동할 지 / 어떻게 설정하냐에 따라 학습할 때 다양한 결과 값이 나온다.
이는 학습 성능까지 영향을 미친다.
너무 클 시: Overshooting!
너무 작을 시: 너무 오래 걸림
Adam의 주장: 3e-4 값인 0.0003이 최적의 learning rate값
텐서플로우: optimizer 선언 후 learning rate를 0.01로 설정. 이때 Adam은 3e-4를 사용할 것.
Train Log를 살펴보면 Loss값이 점점 감소하는데, 이는 good learning rate -> learning rate를 잘 설정했다는 뜻이다.
중간중간 learning rate 조절을 통해 더 이상 떨어지지 않을 때 decay를 시켜 cost를 최소화한다.
decay의 기법
(1) Step decay
(2) Exponential decay
(3) 1/t decay
exponential decay를 통해 50 literation마다 learning rate 값이 바뀌는 모습을 볼 수 있다.
Data preprocessing 데이터 전처리 기법 중 하나
Feature Scaling
데이터를 나타내기 위해 밀집된 데이터를 바탕으로 처리한다.
두 가지 기법
(1) 표준화 Standardization (Mean Distance - 평균에서 얼마나 떨어졌는가?)
(2) 정규화 Normalization (데이터를 0-1사이의 값으로 바꿈)
Noisy Data
- 지저분한 데이터를 없애는 것이 중요!
<수치형 데이터>
유치원의 기록 vs 어른의 기록 -> 이때 유치원 데이터만 필요할 때 어른의 기록은 Noisy data! 없애주어야 함!
=> 전처리를 통해 해결!
<자연어 데이터>
- 전처리: 최근 챗봇에서 자연어 처리 자주 사용함.
조동사, 조사, 특수문자: 머신러닝 모델을 만드는 데 있어 필요한 정보는 아님. -> Noisy Data!
<이미지 데이터>
- 얼굴 인식을 위한 이미지 분류 모델
머리스타일, 배경 등 -> Noisy Data!
출처: https://youtu.be/M6H3SGk2ddU
이미지 출처: http://bit.ly/2LQMKvk
'모두를 위한 딥러닝 시즌2 - TensorFlow' 카테고리의 다른 글
Lab-07-3-1 application and tips (0) | 2021.11.03 |
---|---|
Lab-07-2-1 application and tips (1) | 2021.11.03 |
Lab-06-2 Softmax Classifier Animal Classification (0) | 2021.10.27 |
Lab-06-1 Softmax Classifier (0) | 2021.10.27 |
Lec 6-1 - Softmax Regression: 기본 개념 소개, Lec 6-2: Softmax classifier 의 cost함수 (0) | 2021.10.27 |