k-최근접 이웃 회귀 (K-Nearest Neighbors Regression, K-NN 회귀)에서 k 값에 따라 과대적합 (overfitting)과 과소적합 (underfitting)이 발생하기도 한다. 과대적합은 학습 데이터에 너무 민감하게 반응하여, 새로운 데이터에 일반화하지 못하는 현상을 의미하며, 예측할 때 가장 가까운 단 1개의 이웃만을 참고하기 때문에 훈련 데이터에는 정확하지만 테스트 데이터나 새로운 데이터에서는 성능이 낮아진다. 한편, 과소적합은 모델이 너무 단순해서 학습 데이터의 패턴조차 잘 설명하지 못하는 현상을 말하는 것으로, k 값이 너무 커서 많은 이웃의 평균을 사용하기 때문에 국지적인 패턴을 놓치게 된다. 2주차에서는 k-최근접 이웃 회귀 모델에서 과대적합과 과소적합 현상을 직접 코드를 통하여 구현해보고 현상을 관찰해보았다.
예시 코드 (실행 코드 일부)
적절한 모델인 경우 (k = 5)
k 값이 적절하게 설정된 경우, 아래와 같이 훈련 데이터의 분포를 적절하게 표현하고 있음을 확인할 수 있다.
과대적합인 경우 (k = 1)
k 값이 1이거나 작은 경우에는 아래처럼 훈련 데이터를 매우 충실히 잘 따라감을 확인할 수 있다.
하지만 이상치에 대해서도 과하게 반응하는 것을 확인할 수 있어, 이런 경우에는 k 값을 적절히 높여줄 필요가 있다.
과대적합인 경우 (k = 10)
k 값이 지나치게 높아지면 그래프가 평탄화하거나 급격하게 단순화되며, 국지적 패턴을 무시하는 경향을 확인할 수 있었다.
이런 경우, 예측이 평균값에 가까워지고 정확도가 저하되기에 이런 경우에는 k 값을 낮출 필요가 있다.
'Study Group > 혼공학습단 14기' 카테고리의 다른 글
[혼공학습단 14기_혼공머신 1주차] 코랩 (Colab) 시작하기 (0) | 2025.07.06 |
---|