반응형
k-최근접 이웃 분류 알고리즘
예측하려는 샘플에 가장 가까운 샘플을 k개 선택한 다음 가장 많은 클래스를 새로운 샘플의 클래스로 예측한다.
위 사진을 예시로 들자면 사각형 샘플이 2개, 원 샘플이 1개 이고 가장 많은 클래스는 사각형 샘플이기에
사각형을 클래스로 예측하게 되는것이다.
k-최근접 이웃 회귀
가장 가까운 샘플 k개를 선택한 뒤 선택한 샘플의 평균 수치를 구하여 값을 예측하게 된다.
가장 가까운 값은 100, 80, 60이므로 3 값을 모두 더한 뒤 3으로 나뉘어 80이라는 평균 수치를 구하게 된 것이다.
결정계수
사이킷런에서 k-최근접 이웃 회귀 알고리즘을 구현한 클래스는 KNeighorsResgressor이다.
분류를 할 때는 샘플을 정확하게 분류한 개수의 비율로 점수를 평가한다면, 회귀일 경우 결정계수를 통해 점수를 평가하게 된다.
다음과 같은 식으로 결정계수를 구하게 된다.
sklean.metrics -> mean_absolute_error() 함수는 타깃과 예측의 절댓값 오차를 평균하여 반환한다.
과대 적합 vs 과소 적합
훈련 데이터의 점수는 매우 좋지만 테스트 데이터의 점수가 나쁠경우 과대적합이라고 한다.
훈련데이터 점수는 낮지만 테스트 데이터의 점수가 좋거나 훈련데이터와 테스트데이터 모두 점수가 나쁠 경우 과소 적합이라고 한다.
위 문제를 해결하려면 모델은 좀 더 복잡하게 만들어야 한다.
반응형