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 havainnon luokka on tarkastella sen lähintä naapuria. Esimerkissämme meidän täytyy löytää makeinen, jonka paino on lähimpänä uutta havaintoa.
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 lähellä toisiaan. 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ä pelkästään 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 tapauksen ennustamisesta, kun k=3:
Kuten huomaat, k:n muuttaminen voi johtaa erilaisiin ennusteisiin.
Ajoittain k-NN tuottaa tasapelin, kun useita luokkia esiintyy yhtä usein lähimpien naapureiden joukossa. Useimmat kirjastot, mukaan lukien scikit-learn, ratkaisevat tasapelin 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