Mikä on k-NN
Pyyhkäise näyttääksesi valikon
Aloitetaan luokittelun perusteista yksinkertaisimmalla tehtävällä – binääriluokittelulla. Oletetaan, että haluamme luokitella makeisia kekseiksi/ei-kekseiksi yhden ominaisuuden perusteella: niiden painon.
Yksinkertainen tapa ennustaa uuden tapauksen luokka on tarkastella sen lähintä naapuria. Esimerkissämme meidän täytyy löytää makeinen, jonka paino on lähimpänä uutta tapausta.
Tämä on k-lähimmän naapurin (k-NN) perusajatus – tarkastellaan vain naapureita. k-NN-algoritmi olettaa, että samankaltaiset asiat sijaitsevat lähellä toisiaan. Toisin sanoen, samankaltaiset asiat ovat toistensa läheisyydessä. k k-NN:ssä tarkoittaa niiden naapureiden määrää, jotka otetaan huomioon ennustettaessa.
Yllä olevassa esimerkissä tarkasteltiin vain 1 naapuria, joten kyseessä oli 1-lähimmän naapurin menetelmä. Yleensä k asetetaan kuitenkin suuremmaksi, sillä vain yhden naapurin huomioiminen voi olla epäluotettavaa:
Jos k (naapureiden määrä) on suurempi kuin yksi, valitaan ennusteeksi yleisin luokka naapureiden joukosta. Tässä esimerkki kahden uuden havainnon ennustamisesta, kun k=3:
Kuten huomaat, k-arvon muuttaminen voi johtaa erilaisiin ennusteisiin.
Ajoittain k-NN tuottaa tasapelin, kun useita luokkia esiintyy yhtä monta kertaa lähimpien naapureiden joukossa. Useimmat kirjastot, mukaan lukien scikit-learn, ratkaisevat tasapelit valitsemalla ensimmäisen luokan sisäisessä järjestyksessään – tämä on hyvä pitää mielessä, sillä se voi hienovaraisesti vaikuttaa toistettavuuteen ja tulkintaan.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme