Az expanding neural gas egy olyan algoritmus , amely lehetővé teszi a bemeneti adatok adaptív klaszterezését , vagyis nemcsak a teret klaszterekre osztja, hanem magának az adatnak a jellemzői alapján meghatározza belőlük a szükséges számot. A táguló ideggáz nem igényel előzetes tájékoztatást az adatokról, például a klaszterek számának becsléséről vagy a klaszterek alakjáról. [1] Ez a számítási mechanizmusok új osztálya. A mesterséges neuronok száma és elhelyezkedése a tulajdonságtérben nem előre meghatározott, hanem a betanítási modellek során végzett számítás eredménye a bemeneten megadott adatok alapján [2] . Ebben a modellben a csomópontok szomszédsága nem rögzített, hanem dinamikusan változik a klaszterezés javulásával. A változók nem csak a szomszédsági kapcsolatok, hanem a klaszter neuronok száma is.
Vannak olyan technikák, amelyek képesek a térben a leginkább hasonló objektumokat kiválasztani és csoportokat alkotni belőlük. Az elemzés során az objektumok halmazát részhalmazokba rendezzük a mért hasonlóság alapján. A módszerek általában egy szabványos sémán alapulnak: a vektorok térbeli elrendezése és az objektumok halmaza közötti kapcsolat optimalizálása úgy, hogy minden vektor meghatározza a klaszterek szerkezetét . A legtöbb technikának azonban van két jelentős hátránya: az elemzés adott számú klasztertől függ, és a klaszterekre való felosztás időben lokalizált. Minden modern klaszterezési módszer statikus volt, és nem tudták adaptálni az eredményeket, ha új adatot adtak az adatokhoz, akkor az algoritmust újra kellett futtatni.
Az algoritmus megvalósítása két neuronnal kezdődik. Ezután számuk szekvenciális változása történik (általában a növekedés irányába), ugyanakkor a neuronok között olyan kapcsolatok jönnek létre, amelyek a legjobban megfelelnek a bemeneti vektorok eloszlásának. Minden neuronhoz hozzá van rendelve egy belső változó, amely "helyi hibát" halmoz fel. A csomópontok közötti kapcsolatokat az "age" [3] nevű változó írja le .
Ha ebben a szakaszban a csomópontok a bemeneti vektor felé tolódnak el, akkor a győztes hajlamos "átlagolni" pozícióját a közelében található bemeneti jelekhez képest. Ebben az esetben a legjobb neuron enyhén „húzza” a szomszédos neuronokat a jel irányába.
A kutató maga állíthatja be a klaszterstruktúra formáját, függetlenül attól, hogy a klaszterezést hiperszférára , hipercsőre vagy hipersíkra kell-e végrehajtani . Ha nem rendelkezik ezzel a tudással, akkor a saját kovarianciamátrix értékének köszönhetően meghatározhatja a szükséges formát. Ha a struktúra legalább egy sajátértékkel kisebb, mint a felhasználó által választott küszöb, akkor a modell hiperlineáris lesz, ellenkező esetben a struktúrát nemlineáris sokaságnak kell tekinteni. A további tesztelés megmutatja, hogy a modell gömb vagy cső alakú-e. A szférikusság vizsgálata az np/na>ψ egyenlőtlenség teljesülésétől függ, ahol np a klaszteren belüli vektorok száma, amelyet a Jordan Brauer-tétel [4] segítségével találunk meg , ap pedig a klaszter felülete. klaszter, és ψ egy felhasználó által megadott küszöb. Ha ez az egyenlőtlenség np/na<ψ alakot ölt, akkor a klaszter alakja "hipercső" lesz. [3]
Egy hipercső formájú klaszter esetében a sugárirányú távolságmérték kiszámítása:
ahol Aj egy pozitív, határozott mátrix, amely számításba veszi a hipercső excentricitását és orientációját [5] . Az Aj értékét ehhez az egyenlethez a Lowner-hiperlipszoid segítségével találjuk meg a Khachiyan algoritmus segítségével [6] .
A távolságok hipersíkban történő meghatározásához használja a következő képletet:
ahol Aj egy tetszőlegesen pozitív határozott szimmetrikus súlymátrix. És bj, k becslése a modell neurális csomópontjainak sajátvektorainak megkeresésével történik.
A hiperszférában lévő távolság meghatározásához a következő képletet kell használnia:
ahol wi vagy a síkban lévő vektorok középértéke.
A 3D térben az adatok nagyon könnyen megjeleníthetők. [3] A képen látható.
Ha azonban a terünk nagyobb, mint a háromdimenziós, akkor az adatok megjelenítése nehézkes. A probléma megoldására egy ÁFA-n alapuló technikát [7] alkalmaznak . A konstrukció lényege, hogy a modell minimális feszítőfáját megtaláljuk. A rendezési folyamat befejezése után a klaszter szerkezete az átlóhoz közeli négyzetekkel elemezhető. Először normalizált, páronként különböző neuronokat számítunk ki minden egyes izolált gráfban. A különböző neuronok ezután átrendeződnek, hogy a legsűrűbb klaszteren belüli eloszlást hozzák létre. Ezután minden klasztert a saját színére festenek, és a főátló mentén helyezik el. A diagramon a klaszteren belüli kapcsolatok is szerepelnek, két klaszter közötti maximális távolságot fehérrel, feketével pedig a legkisebb távolságot jelöljük. Másik dimenzióként hozzáadható a klaszter térfogata, ez a négyzetek magassága.
Ez a példa bemutatja, hogyan alkalmazkodik a rendszer új adatok beírásakor. Az adatbázis 1050 pontobjektumból áll. Kezdetben 5000 iterációt hajtottak végre, és az információ 75%-a bekerült az algoritmusba. Miután 756 adatpont egy kis részét bevitték a rendszerbe, a neurális vektorok elkezdtek alkalmazkodni az alábbi ábrán látható eloszlás kialakításához.
Ezt követően további 150 új vektor került forgalomba. Ez egy új gömbi osztály kialakulásához vezetett, amelyet az alábbi ábra jelez:
A zöld és bíbor klaszterek térbeli közelsége ellenére az algoritmus a klaszterek növekedését észlelte, és alkalmazkodott ezekhez a változásokhoz. Ebben az esetben a fennmaradó 120 objektumot többször megkevertük a zöld és a bíbor klaszter között. Az algoritmus ezt követően elosztotta az adatokat a két klaszter között, és megtartotta a klaszterek eredeti számát.
A mesterséges neurális hálózatok típusai | |
---|---|
|
Gépi tanulás és adatbányászat | |
---|---|
Feladatok | |
Tanulás tanárral | |
klaszteranalízis | |
Dimenziócsökkentés | |
Strukturális előrejelzés | |
Anomália észlelése | |
Grafikon valószínűségi modellek | |
Neurális hálózatok | |
Megerősítő tanulás |
|
Elmélet | |
Folyóiratok és konferenciák |
|