기본 가이드

K-최근접이웃

KNN(K-Nearest Neighbors)은 K개의 가장 가까운 예를 보고 과반수 투표를 통해 새로운 데이터 포인트를 분류합니다.

2분 읽기마지막 업데이트

개요

It matters as one of the simplest, most intuitive algorithms in machine learning, requiring almost no training.

심층 분석

KNN은 '게으른 학습자'입니다. 실제 교육을 수행하지 않고 대신 전체 데이터 세트를 저장합니다. 새 점을 분류하기 위해 저장된 모든 예제에 대한 거리(보통 유클리드)를 측정하고 K개의 가장 가까운 이웃을 찾아 그 중에서 가장 일반적인 클래스를 할당합니다. 회귀의 경우 대신 이웃의 값을 평균화합니다. K의 선택은 중요합니다. 작은 K는 노이즈에 민감하고 과적합될 수 있는 반면, 큰 K는 결정을 부드럽게 하지만 실제 경계를 모호하게 만들 수 있습니다. 모든 특성이 거리에 영향을 미치기 때문에 KNN은 큰 범위의 변수가 지배적이지 않도록 특성 확장을 요구합니다. 주요 약점은 각 쿼리가 전체 데이터세트와 비교되기 때문에 예측 속도입니다.

기술적 통찰력

KNN은 비모수적이며 인스턴스 기반입니다. 즉, 데이터의 모양에 대해 가정하지 않고 학습 가중치 대신 예제를 저장합니다. 거리 측정법(유클리드, 맨해튼 또는 코사인)은 '근접성'을 정의하며 이것이 형성하는 결정 경계는 매우 불규칙할 수 있습니다. 각 쿼리를 모든 포인트와 비교하기 때문에 순진한 조회가 느리므로 라이브러리는 KD 트리, 볼 트리 또는 근사 최근접 인덱스를 사용하여 낮은 차원에서 검색 속도를 높입니다.

전략적 영향

더 명확한 결정들

이는 명확한 기술적 주장과 마케팅 언어를 구분하는 데 도움이 됩니다.

비용 및 예산

돈이나 시간을 들이기 전에 더 나은 구현 질문을 할 수 있습니다.

팀과 워크플로우

이해를 공유한 팀은 더 나은 제품, 정책 및 학습 결정을 내립니다.

K-최근접이웃의 미래

가장 유사한 예를 찾는 KNN의 핵심 아이디어는 시스템이 가장 가까운 임베딩 벡터를 가져와 대규모 언어 모델을 기반으로 하는 최신 벡터 검색 및 검색 증강 생성을 지원합니다. FAISS 및 HNSW와 같은 대략적인 최근접 라이브러리는 수십억 규모의 유사성 검색을 실용적으로 만듭니다. 대규모 파이프라인에서는 최종 분류자가 거의 사용되지 않지만 최근접 이웃 원칙은 의미 검색 및 추천의 중추로서 그 어느 때보다 관련성이 높습니다.

실제 구현

추천 시스템: 사용자가 이미 좋아했던 것과 유사한 영화나 제품을 제안합니다.

필기 숫자 인식: 가장 유사한 라벨이 붙은 이미지와 비교하여 숫자를 분류합니다.

의료 진단 지원: 검사 결과가 가장 유사한 환자를 기반으로 상태를 예측합니다.

의미 검색: 벡터 데이터베이스의 쿼리에 응답하기 위해 가장 가까운 텍스트 임베딩을 검색합니다.

위험 및 가드레일

팀마다 동일한 용어를 다르게 사용할 수 있으므로 범위를 조기에 정의하세요.

벤치마크는 강력해 보이지만 실제 성능은 고르지 않을 수 있습니다.

데이터 품질 및 평가 계획을 무시하면 취약한 결과가 발생하는 경우가 많습니다.

구현 로드맵

1

필요한 결과에 대한 일반 언어 정의부터 시작하세요.

2

테스트하기 전에 하나의 성공 지표와 하나의 실패 조건을 선택하세요.

3

세련된 데모 세트가 아닌 대표 데이터를 사용하여 소규모 파일럿을 실행하세요.

4

K-Nearest Neighbors가 도움이 되는 부분과 더 간단한 방법이 더 나은 부분을 문서화하세요.

계속 탐색하세요

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the K-Nearest Neighbors quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

퀴즈 시작

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

다음 가이드

나이브 베이즈 분류기

자주 묻는 질문

What is K-Nearest Neighbors?

KNN(K-Nearest Neighbors)은 K개의 가장 가까운 예를 보고 과반수 투표를 통해 새로운 데이터 포인트를 분류합니다. 이는 기계 학습에서 가장 간단하고 직관적인 알고리즘 중 하나로 중요하며 교육이 거의 필요하지 않습니다.

KNN은 새로운 데이터 포인트를 어떻게 분류합니까?

KNN은 가장 가까운 K개의 저장된 예제를 찾고 그 중에서 가장 일반적인 클래스를 할당합니다(회귀의 경우 해당 값의 평균을 냅니다).

KNN을 '게으른 학습자'라고 부르는 이유는 무엇입니까?

KNN은 모든 작업을 예측 시간으로 연기합니다. 훈련 중에 모델을 구축하는 대신 단순히 데이터세트를 기억합니다.

KNN에서 기능 확장이 중요한 이유는 무엇입니까?

KNN은 거리에 의존하기 때문에 확장되지 않은 대규모 기능은 다른 기능을 압도할 수 있으므로 기능은 일반적으로 정규화됩니다.

K=1처럼 아주 작은 K를 선택하면 어떻게 될까요?

작은 K를 사용하면 잡음이 많거나 라벨이 잘못된 단일 이웃이 결과를 결정하게 되어 들쭉날쭉하고 과적합된 경계가 발생합니다.

KNN의 실제적인 주요 단점은 무엇입니까?

각 쿼리는 모든 예시까지의 거리를 측정해야 하기 때문에 대규모 데이터세트에서는 예측이 느려질 수 있으며 이로 인해 트리 또는 근사 검색 속도가 향상됩니다.