Kaj je SVM algoritem?

SVM pomeni Support Vector Machine. SVM je nadzorovan algoritem strojnega učenja, ki se običajno uporablja za izzive glede klasifikacije in regresije. Pogoste aplikacije algoritma SVM so sistem za zaznavanje vdorov, prepoznavanje rokopisa, napovedovanje strukture beljakovin, zaznavanje steganografije v digitalnih slikah itd.

V algoritmu SVM je vsaka točka predstavljena kot podatkovna postavka v n-dimenzionalnem prostoru, kjer je vrednost vsake funkcije vrednost določene koordinate.

Po načrtovanju je bila razvrstitev izvedena z iskanjem hipe-ravnine, ki razlikuje dva razreda. Za razumevanje tega koncepta glejte spodaj.

Algoritem podpornega vektorja se uporablja predvsem za reševanje težav s klasifikacijo. Podporni vektorji niso nič drugega kot koordinate vsake podatkovne postavke. Support Vector Machine je meja, ki razlikuje dva razreda z uporabo hiperravnine.

Kako deluje algoritem SVM?

V zgornjem razdelku smo razpravljali o razlikovanju dveh razredov s pomočjo hiper-ravnine. Zdaj bomo videli, kako ta algoritem SVM dejansko deluje.

Scenarij 1: Prepoznajte pravo hiper-ravnino

Tu smo vzeli tri hiper-ravnine, to so A, B in C. Zdaj moramo določiti pravo hiper-ravnino za razvrščanje zvezde in kroga.

Za prepoznavanje prave hiper-ravnine bi morali poznati pravilo palca. Izberite hiper-ravnino, ki razlikuje dva razreda. Na zgoraj omenjeni sliki hiper-ravnina B zelo dobro razlikuje dva razreda.

Scenarij 2: Prepoznajte pravo hiper-ravnino

Tu smo vzeli tri hiper-ravnine, to so A, B in C. Te tri hiper-ravnine že zelo dobro razlikujejo razrede.

V tem scenariju za prepoznavanje prave hiper ravnine povečamo razdaljo med najbližjimi podatkovnimi točkami. Ta razdalja ni nič drugega kot marža. Glej spodnjo sliko.

V zgoraj navedeni sliki je meja hiperravnine C višja od hiper ravnine A in hiper ravnine B. Torej je v tem scenariju C prava hiperplana. Če izberemo hiperplano z minimalno mejo, lahko privede do napačne razvrstitve. Zato smo izbrali hiperplano C z največjo mejo zaradi robustnosti.

Scenarij 3: Prepoznajte pravo hiper-ravnino

Opomba: Če želite prepoznati hiper-ravnino, upoštevajte ista pravila kot v prejšnjih razdelkih.

Kot lahko vidite na zgoraj omenjeni sliki, je meja hiperravnine B višja od meje hiper ravnine A, zato bodo nekateri izbrali hiper-ravnino B kot pravico. Toda v algoritmu SVM izbere tisto hiper-ravnino, ki razvrsti razrede natančno pred maksimiranjem marže. V tem scenariju je hiper-ravnina A vse natančno razvrstila in pri klasifikaciji hiper-ravnine B. je nekaj napake. Zato je A prava hiper-ravnina.

Scenarij 4: Razvrstite dva razreda

Kot lahko vidite na spodnji sliki, ne moremo razlikovati dveh razredov z ravno črto, ker ena zvezda leži kot zunanji del drugega razreda kroga.

Tu je ena zvezda v drugem razredu. Za zvezdniški razred je ta zvezda bolj zunanja. Zaradi lastnosti robustnosti algoritma SVM bo našel pravo hiperplano z višjo mejo, ki bo prezrl zunanji del.

Scenarij 5: Fina hiper-ravnina za razlikovanje med razredi

Do sedaj smo izgledali linearno hiper-ravnino. Na spodnji sliki nimamo linearne hiper ravnine med razredi.

Za razvrščanje teh razredov SVM uvaja nekaj dodatnih funkcij. V tem scenariju bomo uporabili to novo funkcijo z = x 2 + y 2.

Nariše vse podatkovne točke na osi x in z.

Opomba

  • Vse vrednosti na osi z morajo biti pozitivne, ker je z enak vsoti x kvadrata in y kvadrata.
  • V zgoraj omenjeni ploskvi so rdeči krogi zaprti do začetka osi x in y, kar vodi od z do nižje, zvezda pa je ravno nasprotna od kroga, stran je od izvora osi x in y-osi, kar vodi vrednost z do visoke.

V algoritmu SVM je enostavno razvrstiti z linearno hiperplano med dva razreda. Toda tu se postavlja vprašanje, ali naj dodamo to funkcijo SVM, da prepoznamo hiper-ravnino. Odgovor je ne, za reševanje te težave SVM uporablja tehniko, ki je splošno znana kot trik v jedru.

Trik v jedru je funkcija, ki podatke pretvori v primerno obliko. Obstajajo različne vrste funkcij jedra, ki se uporabljajo v algoritmu SVM, tj. Polinomna, linearna, nelinearna, radialna osnova delovanja itd. Tu se z uporabo nizko-dimenzionalnega vhodnega prostora z trikom jedra pretvori v prostor z več dimenzijami.

Ko pogledamo hiperplane na izvor osi in osi y, je videti kot krog. Glej spodnjo sliko.

Prednosti algoritma SVM

  • Tudi če so vhodni podatki nelinearni in ne ločljivi, SVM ustvarjajo natančne rezultate razvrstitve zaradi svoje robustnosti.
  • V funkciji odločanja uporablja podmnožico vadbenih točk, imenovane podporni vektorji, zato je pomnilnik učinkovit.
  • Koristno je rešiti vse zapletene težave s primerno funkcijo jedra.
  • V praksi so modeli SVM posplošeni, z manjšim tveganjem za prekomerno opremljanje v SVM.
  • SVM-ji so odlični za klasifikacijo besedila in pri iskanju najboljšega linearnega ločevalca.

Slabosti algoritma SVM

  • Pri delu z velikimi nabori podatkov je potreben dolg čas usposabljanja.
  • Končni model in vpliv posameznika je težko razumeti.

Zaključek

Vodili so ga podpiranju algoritma vektorskih strojev, ki je algoritem strojnega učenja. V tem članku smo podrobno razpravljali, kaj je algoritem SVM, kako deluje in katere so njegove prednosti.

Priporočeni članki

To je vodnik po Algoritmu SVM. Tukaj razpravljamo o njegovem delu s scenarijem, prednosti in slabostmi algoritma SVM. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Algoritmi za rudarjenje podatkov
  2. Tehnike rudarjenja podatkov
  3. Kaj je strojno učenje?
  4. Orodja za strojno učenje
  5. Primeri algoritma C ++

Kategorija: