- Terminológia (A-tól D-ig)
- AI képességvezérlés
- AIOps
- albumációk
- Eszköz teljesítménye
- Autoencoder
- Visszaszaporítás
- Bayes-tétel
- Big adatok
- Chatbot: Útmutató kezdőknek
- Számítási gondolkodás
- Számítógépes látás
- Zavart mátrix
- Konvolúciós neurális hálózatok
- Kiberbiztonság
- Data Fabric
- Adattörténetmondás
- Data Science
- Adattárolás
- Döntési fa
- Deepfakes
- Deep Learning
- Mély megerősítésű tanulás
- DevOps
- DevSecOps
- Diffúziós modellek
- Digitális iker
- Dimenzionalitás csökkentés
- Terminológia (E-től K-ig)
- Edge AI
- Érzelem AI
- Együttes tanulás
- Etikai hackelés
- ETL
- Megmagyarázható AI
- Egyesített tanulás
- FinOps
- Generatív AI
- Generatív versenytársak hálózata
- Generatív vs. diszkriminatív
- Gradiens Boosting
- Gradiens Descent
- Few-Shot Learning
- Képosztályozás
- IT-műveletek (ITOps)
- Incidens automatizálás
- Befolyásolás Mérnökség
- K-Means klaszterezés
- K-Legközelebbi szomszédok
- Terminológia (L-től Q-ig)
- Terminológia (R-től Z-ig)
- Erősítő tanulás
- Felelős mesterséges intelligencia
- RLHF
- Robotikus folyamat automatizálás
- Strukturált vs strukturálatlan
- Érzelmi elemzés
- Felügyelt vs nem felügyelt
- Támogatja a vektoros gépeket
- Szintetikus adatok
- Szintetikus média
- Szöveg osztályozása
- TinyML
- Transzfer tanulás
- Transzformátor neurális hálózatok
- Turing teszt
- Vektoros hasonlóság keresése
AI 101
Mik azok a támogató vektorgépek?
Tartalomjegyzék
Mik azok a támogató vektorgépek?
A támogató vektorgépek a gépi tanulási osztályozók egy fajtája, vitathatatlanul az egyik legnépszerűbb osztályozó típus. A támogató vektorgépek különösen hasznosak numerikus előrejelzési, osztályozási és mintafelismerési feladatokhoz.
A támogató vektorgépek úgy működnek, hogy döntési határokat húznak az adatpontok közé, megcélozva azt a döntési határt, amely a legjobban szétválasztja az adatpontokat osztályokra (vagy a leginkább általánosítható). Támogatóvektor gép használatakor az a cél, hogy a pontok közötti döntési határ a lehető legnagyobb legyen, így az adott adatpont és a határvonal közötti távolság maximalizálható. Ez egy gyors magyarázat, hogyan támogatási vektoros gépek (SVM-ek) működni, de szánjunk egy kis időt arra, hogy mélyebbre ássuk az SVM-ek működését, és megértsük működésük logikáját.
A vektoros gépek támogatásának célja
Képzeljünk el egy grafikont, amelyen számos adatpont található, az X és Y tengelyek által meghatározott jellemzők alapján. A grafikonon lévő adatpontok lazán feloszthatók két különböző klaszterre, és az a klaszter, amelyhez egy adatpont tartozik, jelzi az adatpont osztályát. Most tegyük fel, hogy egy vonalat akarunk rajzolni a grafikonon, amely elválasztja a két osztályt egymástól, ahol az egyik osztály összes adatpontja a vonal egyik oldalán található, és a másik osztályhoz tartozó összes adatpont a másik oldalon található. a vonalról. Ezt az elválasztó vonalat hipersíknak nevezik.
Elképzelhető egy támogatási vektorgép úgy, hogy „utakat” hoz létre egy városban, és a várost kerületekre választja szét az út mindkét oldalán. Minden épület (adatpont), amely az út egyik oldalán található, egy kerülethez tartozik.
A támaszvektor gép célja nemcsak hipersíkok rajzolása és adatpontok felosztása, hanem az is, hogy a hipersík megrajzolja a legnagyobb margójú, vagy az elválasztó vonal és az adott adatpont között a legnagyobb hellyel rendelkező adatpontokat. Visszatérve az „utak” metaforához, ha egy várostervező autópálya terveit készít, nem akarja, hogy az autópálya túl közel legyen házakhoz vagy más épületekhez. Minél nagyobb a margó az autópálya és az épületek között mindkét oldalon, annál jobb. Minél nagyobb ez az árrés, annál „magabiztosabb” lehet az osztályozó az előrejelzéseivel kapcsolatban. Bináris osztályozás esetén a megfelelő hipersík megrajzolása azt jelenti, hogy olyan hipersíkot választunk, amely a két különböző osztály közepén található. Ha a döntési határ/hipersík távolabb van az egyik osztálytól, akkor közelebb lesz a másikhoz. Ezért a hipersíknak ki kell egyensúlyoznia a két különböző osztály közötti margót.
Az elválasztó hipersík kiszámítása
Tehát hogyan határozza meg egy támaszvektor gép a legjobb elválasztó hipersík/döntési határt? Ezt a lehetséges hipersíkok matematikai képlet segítségével történő kiszámításával érik el. Nem térünk ki a hipersíkok kiszámításának képletére rendkívül részletesen, de a vonal kiszámítása a híres lejtő/vonal képlettel történik:
Y = ax + b
Eközben a vonalak pontokból állnak, ami azt jelenti, hogy bármely hipersíkot így írhatunk le: a javasolt hipersíkkal párhuzamosan futó pontok halmaza, amelyet a modell súlyai szoroznak a meghatározott eltolás/eltolódás által módosított jellemzők halmazával. („d”).
Az SVM-ek sok hipersíkot rajzolnak. Például a határvonal egy hipersík, de az osztályozó által figyelembe vett adatpontok szintén hipersíkon vannak. Az x értékeit az adatkészlet jellemzői alapján határozzák meg. Például, ha van egy adatkészlete sok ember magasságával és súlyával, akkor a „magasság” és „súly” jellemzők lennének az „X” kiszámításához használt jellemzők. A javasolt hipersík és az osztó hipersík két oldalán található különféle „támaszvektorok” (adatpontok) közötti margót a következő képlettel számítjuk ki:
W * X – b
Míg többet olvashat az SVM-ek mögött rejlő matematikáról, ha intuitívabban szeretné megérteni őket, csak tudja, hogy a cél az, hogy maximalizálja a távolságot a javasolt elválasztó hipersík/határvonal és a vele párhuzamosan futó többi hipersík között ( és amelyeken az adatpontok találhatók).
Többosztályos osztályozás
Az eddig leírt folyamat a bináris osztályozási feladatokra vonatkozik. Az SVM osztályozók azonban nem bináris osztályozási feladatokhoz is használhatók. Ha három vagy több osztályt tartalmazó adatkészleten végez SVM-osztályozást, több határvonalat használ a rendszer. Például, ha egy osztályozási feladatnak három osztálya van kettő helyett, akkor a rendszer két választóvonalat használ az adatpontok osztályokra való felosztására, és az egyetlen osztályt tartalmazó régió egy helyett két elválasztó vonal közé esik. Ahelyett, hogy csupán két osztály és egy döntési határ közötti távolságot számítaná ki, az osztályozónak most figyelembe kell vennie a döntési határok és az adatkészleten belüli több osztály közötti határokat.
Nem-lineáris elválasztások
A fent leírt folyamat azokra az esetekre vonatkozik, amikor az adatok lineárisan elkülöníthetők. Vegye figyelembe, hogy a valóságban az adatkészletek szinte soha nem teljesen lineárisan szétválaszthatók, ami azt jelenti, hogy SVM osztályozó használatakor gyakran kell használni két különböző technika: lágy margó és kerneltrükkök. Vegyünk egy olyan helyzetet, amikor a különböző osztályok adatpontjai keverednek, és néhány példány egy osztályhoz tartozik egy másik osztály „fürtjében”. Hogyan kezelhette az osztályozó ezeket az eseteket?
A nem lineárisan szétválasztható adatkészletek kezelésére használható egyik taktika a „soft margin” SVM osztályozó alkalmazása. A soft margin osztályozó úgy működik, hogy elfogad néhány rosszul besorolt adatpontot. Megpróbál egy vonalat húzni, amely a legjobban elválasztja egymástól az adatpontok klasztereit, mivel ezek tartalmazzák a megfelelő osztályokhoz tartozó példányok többségét. A soft margin SVM osztályozó olyan választóvonalat próbál létrehozni, amely egyensúlyban tartja az osztályozó két követelményét: a pontosságot és a margót. Megpróbálja minimalizálni a téves besorolást, miközben maximalizálja a margint.
Az SVM hibatűrése a „C” nevű hiperparaméter manipulálásával állítható be. A C érték vezérli hány támaszvektort vesz figyelembe az osztályozó a döntési határok meghúzásakor. A C érték a téves besorolásokra alkalmazott büntetés, ami azt jelenti, hogy minél nagyobb a C érték, annál kevesebb támogatási vektort vesz figyelembe az osztályozó, és annál szűkebb a margin.
A Kernel trükk úgy működik, hogy nemlineáris transzformációkat alkalmaz az adatkészlet jellemzőire. A Kernel Trick átveszi az adatkészlet meglévő jellemzőit, és nemlineáris matematikai függvények alkalmazásával új szolgáltatásokat hoz létre. Ezeknek a nemlineáris transzformációknak az alkalmazása nemlineáris döntési határt eredményez. Mivel az SVM osztályozó már nem korlátozódik lineáris döntési határvonalak megrajzolására, elkezdhet ívelt döntési határokat rajzolni, amelyek jobban magukba foglalják a támogatási vektorok valódi eloszlását, és minimálisra csökkentik a téves besorolásokat. A két legnépszerűbb SVM nemlineáris kernel a Radial Basis Function és a Polynomial. A polinomiális függvény az összes meglévő jellemző polinomkombinációját hozza létre, míg a Radial Basis Function új jellemzőket generál egy központi pont/pontok és az összes többi pont közötti távolság mérésével.
Blogger és programozó szakterületekkel Gépi tanulás és a Deep Learning témákat. Daniel abban reménykedik, hogy segíthet másoknak az AI erejét társadalmi javára használni.