Underfitting : 지나친 단순화로 인해 에러가 많이 발생하는 현상
Overfitting: 너무 정확하게 표현한 나머지 에러가 나는 현상
Overfitting의 원인과 해결방법
1. Model Capacity
모델이 더 복잡한 형상을 나타낼 수 있는 정도를 의미
MLP에서 Model Capacity를 늘리려면 layer를 더 deep하게 쌓거나 layer당 hidden unit 개수를 늘린다.
Model Capacity를 무한정 늘린다면 overfitting이 발생
True Risk: 이상적으로 가져올 수 있는 모든 데이터에 대해 계산한 error, loss. 앞으로 어떤 데이터가 들어올지 모르므로, 실제로 줄여야 하는 것은 True Risk
Empirical Risk: 이상적으로 가져올 수 있는 데이터 중 일부 데이터만 가지고 계산한 error, loss 입니다. 모든 데이터를 가져올 수는 없기 때문에 구할 수 없는 True RIsk 대신, Empirical Risk를 계산
해결책
Model Capacity 낮추기: hidden layer 크기를 줄이거나 layer 개수를 줄이는 등 모델을 간단하게 재작성
Dropout: 학습을 할 때 일부 뉴런을 끄고 학습합니다.
L1/L2 정규화
학습데이터 늘리기
Underfitting의 원인과 해결방법
- 학습 반복 횟수가 너무 적음 -> 반복 횟수를 늘린다
- 데이터의 특성에 비해 모델이 너무 간단함 -> layer를 늘린다.
- 데이터의 양이 너무 적음 -> 데이터 양을 늘린다.
Reference
'IT > Meachine Learning' 카테고리의 다른 글
Random Forests (0) | 2024.08.06 |
---|---|
MAE(Mean Absolute Error), 평균절대오차 (0) | 2024.08.05 |
Decision Tree Regression (의사결정나무), sklearn활용 (1) | 2024.08.05 |