Uvod u Kernel metode
Kernel ili kernel metode (koje se nazivaju i kernel funkcijama) su skupovi različitih vrsta algoritama koji se koriste za analizu uzoraka. Koriste se za rješavanje nelinearnog problema pomoću linearnog klasifikatora. Metode jezgri koriste se u SVM (Support Vector Machine) alatima koji se koriste u klasifikaciji i regresijskim problemima. SVM koristi ono što se naziva "kernel trik" gdje se podaci transformišu i pronalazi optimalna granica za moguće izlaze.
Potreba za kernel metodom i njezinim radom
Prije nego što se upustimo u rad Kernel Metoda, važnije je razumjeti potporne vektorske strojeve ili SVM jer su jezgre implementirane u SVM modelima. Dakle, Support Vector Machines nadgledani su algoritmi strojnog učenja koji se koriste u razvrstavanju i regresijskim problemima, poput klasificiranja jabuke u razred voća, dok se Lav svrstava u životinju iz razreda.
Kako biste demonstrirali, u nastavku je kako izgledaju vektorski strojevi za podršku:
Ovdje možemo vidjeti hiperplanu koja odvaja zelene točke od plavih. Hiperplana je jedna dimenzija manja od ravnine okoline. Npr. Na gornjoj slici imamo 2 dimenzije koja predstavlja ambijentalni prostor, ali samoća koja dijeli ili klasificira prostor je jedna dimenzija manja od ambijentalnog prostora i naziva se hiperplanom.
Ali što ako imamo takav doprinos:
Vrlo je teško riješiti ovu klasifikaciju pomoću linearnog klasifikatora jer ne postoji dobra linearna linija koja bi trebala biti u mogućnosti klasificirati crvenu i zelenu točku jer su točke nasumično raspoređene. Ovdje dolazi do upotrebe kernel funkcije koja točke uvodi u veće dimenzije, tamo rješava problem i vraća izlaz. Razmislite o ovome na ovaj način, možemo vidjeti da su zelene točke zatvorene na nekom području perimetra, dok crvena leži izvan nje. Isto tako, mogli bi postojati i drugi scenariji u kojima bi se zelene točke mogle rasporediti na području u obliku trapeza.
Dakle, ono što radimo jest pretvoriti dvodimenzionalnu ravninu koju je prvo razvrstala jednodimenzionalna hiperplana ("ili ravna linija") u trodimenzionalno područje i ovdje naš klasifikator, tj. Hiperplana neće biti ravna, već dva -dimenzionalna ravnina koja će presjeći područje.
Da bismo dobili matematičko razumijevanje kernela, razumjet ćemo Lili Jiang-ovu jednadžbu jezgre koja je:
K (x, y) = gdje,
K je funkcija kernela,
X i Y su dimenzijski ulazi,
f je mapa s n-dimenzionalnog u m-dimenzionalni prostor i,
je točkast proizvod.
Ilustracija uz pomoć primjera.
Recimo da imamo dvije točke, x = (2, 3, 4) i y = (3, 4, 5)
Kao što smo vidjeli, K (x, y) =.
Najprije izračunajmo
f (x) = (x1x1, x1x2, x1x3, x2x1, x2x2, x2x3, x3x1, x3x2, x3x3)
f (y) = (y1y1, y1y2, y1y3, y2y1, y2y2, y2y3, y3y1, y3y2, y3y3)
tako,
f (2, 3, 4) = (4, 6, 8, 6, 9, 12, 8, 12, 16) i
f (3, 4, 5) = (9, 12, 15, 12, 16, 20, 15, 20, 25)
proizvod s točkama,
f (x). f (y) = f (2, 3, 4). f (3.4.5) =
(36 + 72 + 120 + 72 +144 + 240 + 120 + 240 + 400) =
1444
I,
K (x, y) = (2 * 3 + 3 * 4 + 4 * 5) 2 = (6 + 12 + 20) 2 = 38 * 38 = 1444.
Ovo kako smo saznali, f (x) .f (y) i K (x, y) daju nam isti rezultat, ali prijašnja metoda je zahtijevala puno izračuna (zbog projiciranja 3 dimenzije u 9 dimenzija), dok je koristio kernel, bilo je mnogo lakše.
Vrste kernela i metode u SVM-u
Pogledajmo neke funkcije kernela ili vrste koje se koriste u SVM-u:
1. Liner Kernel - Recimo da imamo dva vektora s imenom x1 i Y1, tada je linearno jezgro definirano točkovnim produktom ova dva vektora:
K (x1, x2) = x1. x2
2. Polinomna jezgra - polinomna jezgra definirana je sljedećom jednadžbom:
K (x1, x2) = (x1. X2 + 1) d,
Gdje,
d je stupanj polinoma, a x1 i x2 su vektori
3. Gaussovo jezgro - Ovo je jezgra radijalne osnovne jezgre. Ispod je jednadžba za ovo:
Davana sigma igra vrlo važnu ulogu u performansama Gaussove jezgre i ne treba je precjenjivati i ne smije ju podcijeniti, već ju treba pažljivo prilagoditi problemu.
4. Eksponencijalna jezgra - Ovo je u bliskoj vezi s prethodnim kernelom, tj. Gaussovim kernelom s jedinom razlikom je - kvadrat norme se uklanja.
Funkcija eksponencijalne funkcije je:
Ovo je ujedno i funkcija radijalne jezgre jezgre.
5. Laplacijevo jezgro - Ova vrsta kernela manje je sklona promjenama i potpuno je jednaka prethodno razmatranom jezgri eksponencijalne funkcije, jednadžba laplacijeve jezgre dana je kao:
6. Hiperbolična ili Sigmoidna jezgra - Ova jezgra se koristi u područjima neuronske mreže strojnog učenja. Aktivacijska funkcija za sigmoidnu jezgru je bipolarna sigmoidna funkcija. Jednadžba za funkciju hiperbolične jezgre je:
Ova jezgra je vrlo često korištena i popularna među strojevima za podršku vektora.
7. Anova radijalna osnovna jezgra - Poznato je da ovo jezgro vrlo dobro djeluje u višedimenzionalnim regresijskim problemima poput Gaussovih i Laplacijevih jezgri. To također spada u kategoriju radijalne osnovne jezgre.
Jednadžba za Anova kernel je:
Postoji mnogo više vrsta Kernel metode i razgovarali smo o najčešće korištenim jezgrama. Čisto ovisi o vrsti problema koji će odlučiti koja će se funkcija kernela koristiti.
Zaključak
U ovom smo dijelu vidjeli definiciju kernela i kako to radi. Pokušali smo objasniti uz pomoć dijagrama o radu jezgre. Pokušali smo dati jednostavnu ilustraciju koristeći matematiku o funkciji kernela. U posljednjem dijelu vidjeli smo različite vrste kernel funkcija koje se danas široko koriste.
Preporučeni članci
Ovo je vodič za Kernel metode. Ovdje razgovaramo o uvodu, potrebi, načinu rada i vrstama kernel metoda s odgovarajućom jednadžbom. Možete i proći naše druge predložene članke da biste saznali više -
- Algoritmi vađenja podataka
- K- znači algoritam klasteriranja
- Algoritam brutalne sile
- Algoritam stabla odluke
- Kernel metode u strojnom učenju
- Stablo odluka u strojnom učenju