Teknologian jakaminen

Läheisyyden salaisuuden tutkiminen: K-lähimmän naapurin (KNN) -algoritmin sovellus SKlearnissa

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Läheisyyden salaisuuden tutkiminen: K-lähimmän naapurin (KNN) -algoritmin sovellus SKlearnissa

Koneoppimisen maailmassa K-Nearest Neighbors (KNN) -algoritmi tunnetaan yksinkertaisuudestaan ​​ja intuitiivisuudestaan. KNN on perusluokittelu- ja regressiomenetelmä, jonka toimintaperiaate on erittäin helppo ymmärtää: ennustaa, mihin luokkaan tai arvoon uusi datapiste kuuluu, mittaamalla erilaisten piirrearvojen välinen etäisyys. Scikit-learn (lyhyesti sklearn) Pythonissa laajalti käytetty koneoppimiskirjasto tarjoaa KNN-algoritmin toteutuksen. Tämä artikkeli esittelee yksityiskohtaisesti KNN-algoritmin käyttämisen sklearnissä ja tarjoaa käytännön koodiesimerkkejä.

1. K-lähimmän naapurin algoritmin perusperiaatteet

K-lähimmän naapurin algoritmin ydinajatus on: jos suurin osa otoksen K lähimmästä naapurista piirreavaruudessa kuuluu johonkin tiettyyn kategoriaan, niin otos todennäköisesti kuuluu myös tähän kategoriaan.

2. K-lähimmän naapurin algoritmin avainelementit
  • K-arvon valinta: K:n valinnalla on tärkeä vaikutus mallin suorituskykyyn.
  • etäisyyden mitta: KNN-algoritmissa voidaan käyttää erilaisia ​​etäisyyden mittausmenetelmiä, kuten Euklidinen etäisyys, Manhattanin etäisyys jne.
  • painotoiminto: Naapureille voidaan määrittää erilaisia ​​painotuksia, kuten etäisyyteen perustuva vastavuoroinen painotus.
3. Luokittelu KNN:n avulla sklearnissä

Tässä ovat perusvaiheet KNN-luokitteluun sklearnilla:

3.1 Tuo KNN-luokitus
from sklearn.neighbors import KNeighborsClassifier
  • 1
3.2 Valmistele tiedot

Oletetaan, että sinulla on jo tietojoukkoXon ominaismatriisi,yon kohdemuuttuja.

from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
  • 1
  • 2
3.3 Luo KNN-luokitusinstanssi
knn = KNeighborsClassifier(n_neighbors=3)
  • 1
3.4 Harjoittelumalli

Käytä tietojoukkoa KNN-mallin kouluttamiseen.

knn.fit(X, y)
  • 1
3.5 Ennusteiden tekeminen

Käytä koulutettua mallia ennustamiseen.

y_pred = knn.predict(X)
  • 1
4. KNN:n käyttäminen regressioon sklearnissä

KNN:ää voidaan käyttää myös regressiotehtäviin.

4.1 Tuo KNN-regressori
from sklearn.neighbors import KNeighborsRegressor
  • 1
4.2 Luo KNN-regressoriesiintymä
knn_reg = KNeighborsRegressor(n_neighbors=3)
  • 1
4.3 Koulutusmalli

Käytä tietojoukkoa KNN-regressiomallin kouluttamiseen.

knn_reg.fit(X, y)
  • 1
4.4 Ennusteiden tekeminen

Käytä harjoitettua mallia regression ennustamiseen.

y_pred_reg = knn_reg.predict(X)
  • 1
5. K-lähimmän naapurin algoritmin edut ja haitat
  • etu: Algoritmi on yksinkertainen ja helposti ymmärrettävä, olettamatta tietojen jakautumista, sillä on vahva sopeutumiskyky dataan.
  • puute: Suuri laskennallinen monimutkaisuus, erityisesti suurille tietojoukoille, jotka ovat herkkiä poikkeaville arvoille.
6 Johtopäätös

K-lähimmän naapurin algoritmi on yksinkertainen mutta tehokas koneoppimismenetelmä, joka sopii luokitus- ja regressiotehtäviin. sklearn tarjoaa helppokäyttöisen KNN-toteutuksen, jonka avulla voimme nopeasti soveltaa tätä algoritmia käytännön ongelmiin.

Tässä artikkelissa kerrotaan, kuinka KNN-algoritmia käytetään sklearnissä, ja annetaan käytännön koodiesimerkkejä. Toivon, että tämä artikkeli auttaa lukijoita ymmärtämään paremmin K-lähimmän naapurin algoritmia ja hallitsemaan näiden tekniikoiden toteuttamismenetelmät sklearnissä. Datan määrän kasvaessa ja koneoppimisteknologian kehittyessä K-lähimmän naapurin algoritmilla on jatkossakin tärkeä rooli tiedon analysoinnissa ja ennakoivassa mallintamisessa.