PODSTAWOWY PRZEWODNIK

K-Najbliżsi sąsiedzi

Funkcja K-Nearest Neighbors (KNN) klasyfikuje nowy punkt danych, przyglądając się K najbliższym przykładom i podejmując decyzję większościową.

2 minuty czytaniaOstatnia aktualizacja

Przegląd

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

Głębokie nurkowanie

KNN jest „leniwym uczniem”: nie przeprowadza prawdziwego szkolenia, a zamiast tego po prostu przechowuje cały zbiór danych. Aby sklasyfikować nowy punkt, mierzy odległość, zwykle euklidesową, do każdego zapisanego przykładu, znajduje K najbliższych sąsiadów i przypisuje spośród nich najczęstszą klasę. W przypadku regresji zamiast tego uśrednia wartości sąsiadów. Wybór K ma znaczenie: małe K jest wrażliwe na szum i może przesadzić, podczas gdy duże K ułatwia podejmowanie decyzji, ale może zacierać rzeczywiste granice. Ponieważ wszystkie cechy wpływają na odległość, KNN żąda skalowania cech, tak aby zmienne o dużym zasięgu nie dominowały. Jego główną słabością jest szybkość przewidywania, ponieważ każde zapytanie porównuje się z całym zbiorem danych.

Wgląd techniczny

KNN jest nieparametryczny i oparty na instancjach: nie przyjmuje żadnych założeń co do kształtu danych i przechowuje przykłady, a nie uczy się wag. Metryki odległości, euklidesowe, manhattańskie lub cosinus, definiują „bliskość”, a granica decyzyjna, którą tworzy, może być bardzo nieregularna. Ponieważ porównuje każde zapytanie ze wszystkimi punktami, naiwne wyszukiwanie jest powolne, więc biblioteki używają drzew KD, drzew kulkowych lub przybliżonych indeksów najbliższego sąsiada, aby przyspieszyć wyszukiwanie w niższych wymiarach.

Wpływ strategiczny

Jaśniejsze decyzje

Pomaga oddzielić jasne twierdzenia techniczne od języka marketingowego.

Koszt i budżet

Możesz zadawać pytania dotyczące lepszego wdrożenia, zanim wydasz pieniądze lub czas.

Zespół i przepływ pracy

Zespoły charakteryzujące się wspólnym zrozumieniem podejmują lepsze decyzje dotyczące produktów, zasad i uczenia się.

Przyszłość K-najbliższych sąsiadów

Podstawowa idea KNN, czyli znajdowanie najbardziej podobnych przykładów, umożliwia nowoczesne wyszukiwanie wektorów i generowanie wspomagane wyszukiwaniem, podczas którego systemy pobierają najbliższe wektory osadzające w celu uziemienia dużych modeli językowych. Przybliżone biblioteki najbliższego sąsiada, takie jak FAISS i HNSW, sprawiają, że wyszukiwanie podobieństw w skali miliardów jest praktyczne. Chociaż rzadko jest to ostateczny klasyfikator w dużych potokach, zasada najbliższego sąsiada jest bardziej istotna niż kiedykolwiek jako podstawa wyszukiwania i rekomendacji semantycznych.

Implementacja w świecie rzeczywistym

Systemy rekomendacji: sugerowanie filmów lub produktów podobnych do tych, które użytkownik już polubił.

Rozpoznawanie cyfr pisanych odręcznie: klasyfikacja cyfry poprzez porównanie jej z najbardziej podobnymi oznakowanymi obrazami.

Wsparcie diagnostyki medycznej: przewidywanie stanu na podstawie pacjentów z najbardziej podobnymi wynikami badań.

Wyszukiwanie semantyczne: pobieranie najbliższego osadzenia tekstu w celu odpowiedzi na zapytanie w bazie danych wektorowych.

Zagrożenia i poręcze

Różne zespoły mogą odmiennie używać tego samego terminu, dlatego należy wcześniej zdefiniować zakres.

Testy porównawcze mogą wyglądać dobrze, podczas gdy wydajność w świecie rzeczywistym jest nierówna.

Ignorowanie planów dotyczących jakości danych i oceny często skutkuje kruchymi wynikami.

Plan wdrożenia

1

Zacznij od jasnej definicji potrzebnego wyniku.

2

Przed testowaniem wybierz jedną metrykę sukcesu i jeden warunek niepowodzenia.

3

Przeprowadź mały pilotaż z reprezentatywnymi danymi, a nie dopracowanym zestawem demonstracyjnym.

4

Dokumentuj, gdzie pomaga K-Nearest Neighbours i gdzie prostsze metody są lepsze.

Odkrywaj dalej

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.

Rozpocznij quiz

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

Następny poradnik

Naiwne klasyfikatory Bayesa

Często zadawane pytania

What is K-Nearest Neighbors?

Funkcja K-Nearest Neighbors (KNN) klasyfikuje nowy punkt danych, przyglądając się K najbliższym przykładom i podejmując decyzję większościową. Ma znaczenie jako jeden z najprostszych, najbardziej intuicyjnych algorytmów w uczeniu maszynowym, nie wymagający prawie żadnego szkolenia.

W jaki sposób KNN klasyfikuje nowy punkt danych?

KNN znajduje K najbliższych zapisanych przykładów i przypisuje spośród nich najczęstszą klasę (w przypadku regresji uśrednia ich wartości).

Dlaczego KNN nazywa się „leniwym uczniem”?

KNN odkłada wszystkie prace na czas przewidywania; po prostu zapamiętuje zbiór danych, zamiast budować model podczas szkolenia.

Dlaczego skalowanie funkcji jest ważne dla KNN?

Ponieważ KNN opiera się na odległości, nieskalowana cecha o dużym zasięgu może przytłoczyć inne, dlatego cechy są zwykle znormalizowane.

Co się stanie, jeśli wybierzesz bardzo małe K, np. K=1?

Małe K pozwala pojedynczemu hałaśliwemu lub błędnie oznakowanemu sąsiadowi decydować o wyniku, co prowadzi do postrzępionej, nadmiernie dopasowanej granicy.

Jaka jest główna praktyczna wada KNN?

Ponieważ każde zapytanie musi mierzyć odległość do każdego przykładu, przewidywanie może być powolne w przypadku dużych zbiorów danych, powodując przyspieszenie wyszukiwania drzewa lub wyszukiwania przybliżonego.