Úvod do KNN algoritmu v R
V KNN algoritme v R znamená KNN algoritmus K najbližšieho suseda a R je programovací jazyk. Hovorí sa, že je to najjednoduchší algoritmus strojového učenia. KNN je dohliadaný algoritmus, ktorý klasifikuje údajové body do cieľovej triedy porovnaním prvkov s najbližším susedom.
Príklad: Predpokladajme, že chcete klasifikovať dotykovú obrazovku a telefón s klávesnicou. Pri rozlišovaní oboch telefónov existujú rôzne faktory. Faktorom, ktorý odlišuje oba telefóny, je však klávesnica. Keď dostaneme dátový bod (tj telefón). Porovnávame ju s podobnými vlastnosťami susedných dátových bodov a klasifikujeme ich ako klávesnicu alebo dotykový telefón.
Funkcie KNN algoritmu
Tu budeme študovať vlastnosti KNN algoritmu:
- Algoritmus KNN používa vstupné údaje na predpovedanie výstupných dátových bodov výstupu.
- Algoritmus sa dá použiť na rôzne súbory problémov.
- Zameriava sa na podobnosť funkcií na klasifikáciu údajov.
- Algoritmus KNN spracováva realistické údaje a nevytvára žiadne predpoklady týkajúce sa dátových bodov.
- KNN si skôr než intuitívne zapamätá školiace údaje. Dá sa tiež povedať, že má lenivý prístup.
- Môže vyriešiť problémy s klasifikáciou a regresiou.
Riešenie problémov v KNN algoritme v R
Nasledujúci problém s riešením:
1. Problém klasifikácie
V probléme klasifikácie sú hodnoty diskrétne, rovnako ako to, či chcete jesť pizzu s polevou alebo bez nej. Existuje spoločný základ. Algoritmus KNN pomáha pri riešení tohto problému.
2. Regresný problém
Regresný problém prichádza do obrazu, keď máme závislú premennú a nezávislú premennú. Príklad: index BMI. Každý riadok zvyčajne obsahuje pozorovací alebo dátový bod a príklad.
KNN Algoritmus v R
Pozrime sa na kroky v algoritme, ktorý treba dodržiavať:
Krok 1: Vložte vstupné údaje.
Krok 2: Inicializujte K pomocou počtu najbližších susedov.
Krok 3: Výpočet údajov (tj vzdialenosť medzi aktuálnym a najbližším susedom)
Krok 4: Pridanie vzdialenosti k aktuálne usporiadanej množine údajov.
Krok 5: Vyzdvihnutie záznamov K a ich označenie.
Krok 6: Vráťte priemernú hodnotu problému s regresiou.
Krok 7: Vráťte hodnotu režimu pre problémy s klasifikáciou.
Pri implementácii algoritmu KNN je potrebné pamätať
- Mali by sme sa ubezpečiť, že hodnota K je vyššia ako jedna, čo v predpovedi bráni presnosti.
- Čím vyššia je hodnota K, tým presnejšia môže byť predpoveď v dôsledku väčšiny.
- Je lepšie mať K ako nepárne číslo. V opačnom prípade to môže viesť k prerušovaču kravaty.
KNN pseudokód
V nižšie uvedenom vzorci predstavuje premenné a predstavuje údajové body, kde (i = 1, 2, 3….)
Set(, )
Prípady použitia
Nasledujú prípady použitia v algoritme KNN v R:
1. Porovnávanie produktov a pomoc pri nakupovaní
Keď si kúpime prenosný počítač alebo počítač z webovej stránky elektronického obchodu, vidíme aj odporúčania týkajúce sa nakupovania, ako je nákup antivírusového softvéru alebo reproduktorov. Všetko je to preto, že keď si predchádzajúci zákazník kúpi notebook, väčšinou sa kupuje spolu s antivírusom alebo reproduktormi. Strojové učenie pomáha pri odporúčaní elektronického obchodu.
2. Odporúčania týkajúce sa potravín
Strojové učenie tiež pomáha pri odporúčaniach založených na predtým objednaných potravinách a podľa toho tiež navrhuje reštaurácie.
Príklad KNN algoritmu
Nasledujú príklady algoritmu KNN:
1. Import údajov
Zoberme si fiktívne údaje o nás a pomocou výšky a hmotnosti predpovedáme veľkosť chlapca.
Výška (cm) | Hmotnosť (kg) | veľkosť |
140 | 58 | S |
140 | 59 | S |
140 | 63 | S |
150 | 59 | M |
152 | 60 | M |
153 | 60 | M |
154 | 61 | M |
155 | 64 | M |
156 | 64 | M |
157 | 61 | M |
160 | 62 | L |
161 | 65 | L |
162 | 62 | L |
163 | 63 | L |
163 | 66 | L |
165 | 63 | L |
165 | 64 | L |
165 | 68 | L |
2. Nájdenie podobností pomocou výpočtu vzdialenosti
Môžeme použiť manhattanskú aj euklidovskú vzdialenosť, pretože údaje sú nepretržité. Vypočítame vzdialenosť medzi novým súborom vzoriek a tréningovými údajmi a potom nájdeme K-najbližšie.
Príklad: Povedzme, že „Raj“ má výšku 165 cm a váži 63 kg. Euklidovskú vzdialenosť vypočítame pomocou prvého pozorovania s novou vzorkou: SQRT ((165-140) 2 + (63-58) 2)
3. Nájdenie K-najbližších susedov
Predpokladajme, že K = 4, existujú 4 zákazníci, z ktorých 3 mali strednú veľkosť a 1 veľkú veľkosť. Najlepšia predpoveď je Raj pre stredné veľkosti.
Rozdiel medzi priemerom KNN a K
Rozdiel je nasledujúci:
- KNN je dohliadaný algoritmus (závislá premenná), zatiaľ čo K-priemer je bezohľadový algoritmus (žiadna závislá premenná).
- K-priemer používa techniku zoskupovania na rozdelenie dátových bodov tvoriacich K-zhluky.KNN používa K-najbližších susedov na klasifikáciu údajových bodov a ich kombinovanie.
Výhody a nevýhody KNN
Výhody sú nasledujúce:
- KNN algoritmus je univerzálny, môže sa použiť na klasifikáciu a regresné problémy.
- Na zostavenie algoritmu KNN nie je potrebný predchádzajúci model.
- Jednoduché a ľahko implementovateľné.
Nevýhody sú:
- Algoritmus so zvyšujúcim sa počtom vzoriek (tj bez premenných)
Odporúčané články
Toto je príručka k algoritmu KNN v R. Tu diskutujeme funkcie, príklady, pseudokód, kroky, ktoré je potrebné v algoritme KNN dodržať. Viac informácií nájdete aj v ďalších súvisiacich článkoch.
- Algoritmy vedy o údajoch
- Čo je to genetický algoritmus?
- Algoritmy smerovania
- Algoritmy neurónovej siete
- Algoritmus C ++ Príklady algoritmu C ++