RECORD AI
3. Basic Recipe for Machine Learning 본문
반응형
Basic Recipe for Machine Learning
1. 편향(Bias) 확인
1) 편향을 확인하기 위해서는 훈련(Train) 데이터 셋의 성능(오차)를 확인한다.
2) 편향이 높다면 훈련 셋에도 최적화가 되지 않는다.
- 높은 편향을 보인다면 다음과 같은 방법을 이용하여 해결할 수 있다.
- (더 많은 은닉층 혹은 은닉 유닛을 갖는) 큰 네트워크 선택
- Train longer or 더 발전된 최적화 알고리즘 사용
- 다른 신경망 아키텍쳐 사용
위와 같은 방법들을 편향 문제를 해결할 때까지 반복한다. 보통 충분히 큰 네트워크라면 훈련 데이터에는 최적화시킬 수 있다.
물론 과대적합 될 수도 있다. 단, 이미지가 흐릿한 경우(베이지안 오차가 높다면)에는 애초에 최적화가 불가능하다.
2. 분산(Variance) 확인
1) 꽤 좋은 훈련 셋 성능에서 꽤 좋은 개발 셋 성능을 일반화할 수 있는지를 평가해야 한다.
2) 이를 평가하기 위해서는 개발(Dev) 데이터 셋의 성능을 확인한다.
- 높은 분산을 가진다면 다음의 방법들을 시도해 볼 수 있다.
- 더 많은 데이터 확보
- Regularization(정규화)
- 다른 신경망 아키텍쳐 사용
이 방법들을 낮은 편향과 분산을 찾을 때까지 계속 반복하여 시도한다.
3 편향-분산 트레이드오프(Trade-off)
초기 머신러닝의 시대에는 많은 방법들이 편향을 증가시키고 분산을 감소시키거나, 편향을 감소시키고 분산을 증가시켰다.
딥러닝 빅데이터 시대에는 높은 편향 해결과 높은 분산 해결이 항상 적용되지는 않지만 트레이드오프를 크게 발생시키지 않는다.
- 큰 네트워크를 사용하면 분산을 해치지 않고 편향만이 감소
- 많은 데이터를 얻는 것은 편향을 해지치 않고 분산만을 감소시킨다.
Regularization(정규화)는 또다른 분산을 줄이는 유용한 기술이다.
- 정규화를 사용하면 편향을 조금 증가시킬 수 있어 약간의 편향-분산 트레이드오프가 존재한다. 하지만 충분히 큰 네트워크를 사용한다면 크게 증가하지는 않는다.
4 . 결론
- 신경망을 훈련시킬 때 먼저 편향을 확인하고 문제가 있을 시 이를 여러 방법론으로 해결한 뒤, 분산을 확인하고 또 문제가 있을 시 여러 방법들을 시도하여 해결한다.
- 초기에는 편향-분산 트레이드오프가 매우 중요한 이슈였으나 딥러닝이 매우 발달한 현대에는 편향과 분산이 서로 영향을 미치지는 않는다.
참조 1
반응형
'Deep Learning > improving DNN' 카테고리의 다른 글
6. Dropout Regularization (드롭아웃 정규화) (0) | 2022.12.26 |
---|---|
5. Why Regularization Reduces Overfitting (0) | 2022.12.26 |
4. Regularization (정규화) (0) | 2022.12.26 |
2. Bias/Variance (0) | 2022.12.26 |
1. Train/Dev/Test Sets (0) | 2022.12.26 |
Comments