Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

최근접 이웃(k-NN) 분류기의 주요 특징 완벽 정리

최근접 이웃(Nearest Neighbor) 규칙은 훈련 데이터가 어떤 분포에서 추출되었는지에 대한 사전 가정 없이도 높은 성능을 발휘하는 것으로 알려져 있습니다. 이 방식은 긍정(positive) 사례와 부정(negative) 사례를 모두 포함하는 훈련 집합을 사용하며, 새로운 샘플은 가장 가까운 훈련 사례까지의 거리를 계산해 판별하고, 해당 지점의 레이블이 곧 샘플의 분류 결과를 결정합니다.

k-NN 분류기는 이 개념을 한 단계 확장한 것으로, k개의 가장 가까운 이웃 점들을 선택한 뒤 다수결(majority vote)로 클래스를 결정합니다. 동점 상황(tie)을 방지하기 위해 k는 작고 홀수인 값으로 정하는 것이 일반적이며, 보통 1, 3 또는 5가 사용됩니다. k 값을 크게 설정하면 훈련 데이터셋 내부의 잡음(noise) 데이터가 미치는 영향을 줄일 수 있으며, 최적의 k 값은 교차 검증(cross-validation)을 통해 선정합니다.

최근접 이웃 분류기의 주요 특징

1. 사례 기반 학습(Instance-Based Learning)

최근접 이웃 분류는 '사례 기반 학습'이라 불리는 더 일반적인 접근법에 속합니다. 이 방식은 데이터로부터 별도의 추상화된 모델을 구축하지 않고, 구체적인 훈련 인스턴스를 그대로 활용해 예측을 수행합니다.

사례 기반 학습 알고리즘이 동작하려면 두 가지 요소가 필요합니다. 첫째, 인스턴스 간의 유사도나 거리를 측정하는 근접성 측도(proximity measure)이며, 둘째, 테스트 인스턴스가 다른 인스턴스들과 얼마나 가까운지에 따라 예측 클래스를 반환하는 분류 함수입니다.

2. 게으른 학습자(Lazy Learner)의 특성

최근접 이웃 분류기를 포함한 게으른 학습자(lazy learner)는 별도의 모델 구축 과정이 필요 없습니다. 대신 테스트 예제를 분류할 때 테스트 데이터와 모든 훈련 데이터 간의 근접성 값을 개별적으로 계산해야 하므로, 분류 비용이 상당히 클 수 있습니다.

반면 열성적인 학습자(eager learner)는 대부분의 연산 자원을 모델 구축에 투자합니다. 일단 모델이 한 번 만들어지면 이후 테스트 예제의 분류는 매우 빠르게 처리됩니다. 즉, 두 방식은 계산 비용이 발생하는 시점이 다르다는 점에서 대조적입니다.

3. 국소적 예측과 잡음 민감성

최근접 이웃 분류기는 국소(local) 데이터에 기반해 예측을 수행하는 반면, 결정 트리(decision tree)나 규칙 기반(rule-based) 분류기는 전체 입력 공간에 잘 맞는 전역(global) 모델을 찾으려 합니다. 분류 결정이 국소적으로 이루어지기 때문에 최근접 이웃 분류기는 잡음의 영향을 받기 쉽습니다.

4. 유연한 결정 경계

최근접 이웃 분류기는 임의의 형태(arbitrary shape)를 가진 결정 경계를 만들 수 있습니다. 이러한 유연성 덕분에 직선형(rectilinear) 결정 경계만 표현할 수 있는 결정 트리 및 규칙 기반 분류기와 달리, 훨씬 역동적이고 자유로운 모델 표현이 가능합니다.

5. 전처리와 척도의 중요성

적절한 근접성 측도와 데이터 전처리 과정이 함께 수행되지 않으면, 최근접 이웃 분류기는 잘못된 예측을 내놓을 수 있습니다. 예를 들어 키(미터 단위)와 몸무게(파운드 단위)라는 속성을 기준으로 사람들을 분류하는 상황을 생각해 봅시다.

키 속성의 변동 범위는 1.5m에서 1.85m 사이로 상대적으로 좁은 반면, 몸무게 속성은 90파운드에서 250파운드까지 넓게 변할 수 있습니다. 만약 속성들의 척도(scale) 차이를 고려하지 않고 그대로 적용하면, 근접성 측도가 사람 간 몸무게 차이에 의해 지배되어 분류 결과가 크게 왜곡될 수 있습니다. 따라서 정규화(normalization)와 같은 전처리 과정이 필수적입니다.