Professional Documents
Culture Documents
Algorytm K Najbliższych Sąsiadów (KNN)
Algorytm K Najbliższych Sąsiadów (KNN)
5. Impelentacja
1. Algorytm k najbliższych sąsiadów (lub algorytm k-nn z ang. k nearest
neighbours) – jeden z algorytmów regresji nieparametrycznej używanych
w statystyce do prognozowania wartości pewnej zmiennej losowej.
Może również być używany do klasyfikacji. Jest najprostszym
i najwolniejszym algorytmem klasyfikacyjnym. Problematyczny staje się
przy dużych zestawach danych.
Jeśli przyjrzymy się uważnie, zobaczymy, że granica staje się gładsza wraz
ze wzrostem wartości K. Wraz ze wzrostem K do nieskończoności
ostatecznie staje się cała niebieska lub cała czerwona, w zależności od
całkowitej większości. Poziom błędu szkolenia i wskaźnik błędu walidacji
to dwa parametry, których potrzebujemy, aby uzyskać dostęp do
różnych wartości K. Poniżej przedstawiono krzywą wskaźnika błędów
szkolenia ze zmienną wartością K :
Jak widać, poziom błędu przy K=1 jest zawsze równy zeru dla próby uczącej.
Dzieje się tak dlatego, że najbliższym punktem dowolnego punktu danych
treningowych jest on sam. Dlatego prognoza jest zawsze dokładna przy K=1.
Jeśli krzywa błędu walidacji byłaby podobna, nasz wybór K wynosiłby 1. Poniżej
znajduje się krzywa błędu walidacji ze zmienną wartością K:
Dzięki temu historia jest bardziej przejrzysta. Przy K=1 przekroczyliśmy granice.
W związku z tym poziom błędu początkowo maleje i osiąga wartości
minimalne. Po punkcie minimów wzrasta wraz ze wzrostem K. Aby uzyskać
optymalną wartość K, można oddzielić próbę i walidację od początkowego
zbioru danych. Teraz można wykreślić krzywą błędu walidacji, aby uzyskać
optymalną wartość K. Ta wartość K powinna być używana do wszystkich
prognoz.
5. Implementacja