Mikä on k-NN
Pyyhkäise näyttääksesi valikon
Aloitetaan luokittelun perusteista yksinkertaisimmalla tehtävällä – binääriluokittelu. 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 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ähin naapuri. Yleensä k asetetaan kuitenkin suuremmaksi, sillä vain yhden naapurin tarkastelu voi olla epäluotettavaa:
Jos k (naapureiden määrä) on suurempi kuin yksi, valitaan yleisin luokka naapurustosta ennusteeksi. Tässä on esimerkki kahden uuden tapauksen 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 tasapelin valitsemalla ensimmäisen luokan sisäisessä järjestyksessään – tämä kannattaa huomioida, 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