A neurális hálózatok matematikai alapjainak megértése nélkülözhetetlen a mesterséges intelligencia és a gépi tanulás területén történő további előrelépéshez. Ezen rendszerek alapja, hogy képesek tanulni és adaptálódni, miközben egyre pontosabbá válik a problémamegoldásuk. A neurális hálózatok olyan matematikai modellek, melyek több rétegből állnak, és amelyek a biológiai neuronok működését próbálják lemodellezni. A neurális hálózatok képesek tanulni a bemeneti adatokból és folyamatosan javítani a teljesítményüket a kimeneti értékek alapján.

A neurális hálózatok működése nem csupán egy matematikai formulából áll, hanem szoros összefüggésben áll a valóságos tanulási folyamatokkal, amelyeket az emberi agy inspirált. A hálózat egyes rétegei közötti súlyozott kapcsolatok, amelyek a szinapszisoknak felelnek meg, lehetővé teszik, hogy a rendszer a bemeneti adatokat megfelelő módon kezelje. A rétegek egyes egységei a neuronok matematikai modelljeit képviselik, és ezek az egységek aktivációs függvényeket használnak, amelyek szimulálják azokat az impulzusokat, amelyek a biológiai neuronokban keletkeznek, ha azok aktiválódnak.

Ezen túlmenően a hálózatok különböző típusú problémák megoldására képesek, ami a statisztikai módszerekhez képest is jelentős előnyt jelent. A hálózatok tanulási képessége lehetővé teszi számukra, hogy minden egyes tanulási ciklusban, vagy úgynevezett "tréning szakaszban", a hálózaton belüli kapcsolatok változtatásával javítsák a teljesítményüket. A rendszer minden új bemenet után visszajelzést kap, amely alapján módosíthatóak a kapcsolatok a hibák csökkentésére, így a tanulás folyamatosan finomítható.

A matematikai modellezés szempontjából a neurális hálózatok a lineáris algebra és az analízis alapjaira építenek. Az aktív és passzív neuronok közötti interakciókat a súlyok és a bemeneti adatok segítségével lehet modellezni. Mindez a matematikai eszközök, mint a kvadratikus mátrixok, az eigenértékek és az ortogonális transzformációk felhasználásával történik. Az alapvető műveletek között szerepel az olyan fontos eszközök alkalmazása, mint a szinguláris érték dekompozíció (SVD), amely az egyik alapvető matematikai módszer a hálózatok hatékonyságának növelésére.

A neurális hálózatok alkalmazása során egyre inkább elengedhetetlenné vált a statisztikai és algebrai módszerek integrálása. A legfontosabb koncepciók közé tartozik a globális minimum fogalma, amely egy adott probléma legjobb megoldását jelenti, illetve a főkomponens-analízis (PCA), amely segít az adatok dimenziójának csökkentésében. Az ilyen típusú módszerek lehetővé teszik a neurális hálózatok számára, hogy a lehető legpontosabb kimeneteket generálják az adatokból, és ezzel lehetővé válik a pontos előrejelzés és a magas szintű problémamegoldás.

A neurális hálózatok működésének teljes megértéséhez elengedhetetlen a matematikai háttér megismerése, amely segít abban, hogy a rendszer miként képes az adatokból információt kinyerni, és hogyan optimalizálja a döntéshozatali mechanizmusait a tréning folyamat során. A tanulási algoritmusok, mint a visszaterjesztési (backpropagation) módszer és a gradiens csökkenés, alapvetőek a neurális hálózatok fejlesztésében és alkalmazásában, és lehetővé teszik, hogy a rendszer folyamatosan javítja a teljesítményét az egyes ciklusok során.

Fontos továbbá, hogy a neurális hálózatok nem csupán egyetlen típusú problémát oldanak meg. Ezek a rendszerek képesek regressziós, osztályozási, valamint sok más típusú feladatok elvégzésére is. A gyakorlatban ezek a modellek különböző alkalmazások széles spektrumán jelennek meg, kezdve az ipari automatizálástól a pénzügyi elemzésekig, sőt, még az egészségügyi diagnosztikai rendszerekben is.

A neurális hálózatok matematikai modellezése tehát nem csupán egy elméleti feladat, hanem egy olyan praktikus eszköztárat biztosít, amely alapot adhat a mesterséges intelligencia fejlesztéséhez és alkalmazásához. Az ilyen típusú modellek ismerete és megértése segít a kutatóknak, mérnököknek és fejlesztőknek a rendszerek optimalizálásában, a teljesítményük növelésében, és új megoldások keresésében a mindennapi problémák kezelésére.

Hogyan modellezhetjük a neurális hálókat statisztikai szempontból?

A neurális hálózatok alkalmazása a statisztikai modellalkotás egyik alapvető eszköze, amely lehetővé teszi a nemlineáris összefüggések és mintázatok felismerését a különféle adatstruktúrákban. A modell célja, hogy egy adott, ismeretlen függvényt közelítsen, amely a bemeneti mintákból (x_i) és a hozzájuk tartozó kimeneti értékekből (y_i) álló adatbázis segítségével megtalálja a legjobb közelítést a valós eredményekhez. A neurális hálózatok ezen az elven működnek: a bemeneti réteget követi legalább egy rejtett réteg, amelyeket súlyozott kapcsolatok kötnek össze. Minden egyes réteg neurális egységeket tartalmaz, amelyek a réteg dimenzióját adják meg, és aktivációs függvényeik segítségével döntik el, hogy az adott neuron által kapott információ releváns-e a további számításokhoz. A cél mindig az, hogy az algoritmus minél pontosabban közelítse meg a kívánt eredményt.

A tanulás folyamán a hálózat a bemeneti minta és a valós kimenet közötti különbséget egy veszteségfüggvény segítségével méri, például L2-normával, majd a hálózat súlyait úgy módosítja, hogy az eredmény javuljon a következő iterációban. Az optimális modell megtalálásához szükséges a kimeneti réteg dimenziójának és a bemeneti adatok dimenzióinak helyes kezelése. Amennyiben például regresszióval dolgozunk, az output réteg egydimenziós lesz, míg osztályozási problémák esetén k-dimenziós rétegre van szükség, ahol k a kategóriák száma.

A neurális hálózatok esetében az egyik legfontosabb matematikai cél az, hogy megtaláljuk a legjobb becslőt F̂ (x), amely a legjobban közelíti a valóságot egy adott adatbázis alapján. A becslés célja, hogy minimálisra csökkentsük a hibát, és a modellel történő előrejelzés vagy osztályozás minél pontosabb legyen. Az előzőleg ismertetett becslő, amely a kimeneti értékek feltételezett várható értékét (E(Ỹ |x)) közelíti meg, az ideális esetben a legjobb eredményt adja. Azonban az optimális becslés nem mindig található meg az általunk használt modell reprezentációs terében.

A veszteségfüggvények, mint például a négyzetes hiba (L2-norma), segítenek mérni az előrejelzés és a valódi értékek közötti eltérést. Az optimális megoldás érdekében a cél az, hogy minimalizáljuk ezt a hibát, ami az alábbi integrálban van kifejezve: ∫ R(F) = L(Ỹ , F(X̃))dP(X̃, Ỹ). Mivel azonban nem ismerjük az eloszlásokat, a gyakorlatban inkább a mintákra alapozva próbáljuk csökkenteni a veszteséget.

Az egyik fontos felismerés a statisztikai elemzés során a torzítás és variancia közötti kapcsolat. A torzítás akkor lép fel, ha a becslő átlagosan eltér a tényleges várható értéktől. A variancia viszont arra utal, hogy a becslés mennyire érzékeny az adatok ingadozására. A gyenge teljesítmény oka lehet, hogy a hálózat a tanulás során nem kapott elegendő információt a bemenetek és kimenetek közötti kapcsolatokról, ami a túl- és alulillesztés problémájához vezethet.

A torzítás és variancia kompenzálása érdekében a statisztikai elemzés során a cél az, hogy megtaláljuk az optimális egyensúlyt, amely minimalizálja a becslő hibáját, miközben nem veszítjük el a modell képességét az új adatok általánosítására. Ha a modell túlságosan illeszkedik a tanuló adatokhoz (túlillesztés), akkor nem fog jól teljesíteni új, ismeretlen minták esetében. Ezzel szemben, ha a modell nem alkalmazkodik megfelelően a tanuló adatokhoz (alulillesztés), akkor nem fogja jól reprezentálni az adatokat, és gyenge eredményeket adhat.

Ezért a neurális hálózatok statisztikai szempontból való értelmezésében kiemelkedő szerepet kapnak a minták közötti összefüggések, a veszteségfüggvények, valamint a torzítás és variancia hatása a modell teljesítményére. Az optimális becslő keresése tehát nemcsak a megfelelő tanulási adatokon, hanem a modellezés általános szabályain is múlik, amely biztosítja, hogy a hálózat képes legyen jól teljesíteni a valós életben előforduló, ismeretlen adatokra is.

Hogyan alkalmazzunk Mesterséges Neurális Hálókat Regressziós Problémák Megoldására?

A mesterséges neurális hálók alkalmazása regressziós problémákra izgalmas lehetőségeket kínál, különösen, amikor az előrejelzés során az adatok közötti nemlineáris összefüggések kiemelkedő szerepet kapnak. Az alábbiakban bemutatjuk, hogyan kezelhetjük a blokkok közötti eltéréseket a regisztrált és az előre jelzett időpontok között, valamint hogyan alkalmazzuk a neurális hálókat a problémák megoldására.

A regisztrált és az előre jelzett blokkok közötti eltérések gyakran előfordulnak, amit különböző tényezők, mint az extrém időjárási viszonyok vagy sztrájkok okozhatnak. Az ilyen rendkívüli események azonban nem szolgáltatnak hasznos információval a hálózat számára. Az ilyen eltérések ugyanis gyakran megzavarják a hálózat optimalizálását, mivel a funkciókhoz tartozó magas veszteségek (RE(F)) megnehezítik a blokkok közötti idők pontos előrejelzését. Ilyenkor a hálózat túlillesztheti a modelljét (lásd 2.1), ezért szükséges az ilyen kiugró értékek eltávolítása.

A kiugró értékek eltávolítása érdekében először létrehozunk egy új oszlopot, amit DiffBlock néven nevezünk, és amely tartalmazza a tervezett és tényleges blokkok közötti eltéréseket. A kiugró értékek detektálásához az Interquartile Range (IQR) módszert alkalmazzuk. Az IQR intervallum az az értéktartomány, amely a tervezett és tényleges blokkok közötti eltérés 50%-át lefedi. Ezt követően az intervallum határait 1,5-szeres tényezővel megnöveljük, és eltávolítjuk mindazokat az adatokat, amelyek kívül esnek ezen a kiterjesztett intervallumon. Ezen módszer alkalmazása után megfigyeljük, hogy az adatok 6%-a kiugró értékeket eredményez, míg az IQR intervallum 8 percet fed le. Az intervallum határain túl eső értékek eltávolítása lehetővé teszi a pontosabb előrejelzést.

Ezután a modellt tesztelhetjük ismeretlen adatokon. Ehhez először fel kell osztani az adatokat két részre: az adatok 80%-át használjuk a tanító halmazként (X), míg a maradék 20%-ot tesztadatokként (Z). A modell építése előtt célszerű az adatokat központosítani, hogy a bemeneti adatok optimális eloszlást kapjanak, ezáltal javítva a tanulási folyamatot.

A következő lépés a modellek felépítése. Négy különböző típust hozunk létre:

  • modSimple, egy egyszerű modell két rejtett réteggel, 12 és 10 dimenzióval.

  • modDeep, egy mélyebb architektúra négy rejtett réteggel, dimenzióik 5, 12, 10, 5.

  • modWider, egy szélesebb modell két rejtett réteggel, dimenziók 600 és 65.

  • modPCA, egy modell, amely egy lineáris rejtett réteget alkalmaz 70 dimenzióval, ezt követően két nemlineáris réteggel (12 és 10 dimenzió).

Mivel regressziós problémát vizsgálunk, az összes modell kimeneti rétege egydimenziós lesz. A nemlineáris aktivációs függvényként a relu függvényt választjuk, amely a következőképpen van definiálva: g(s) = max(0, s). A veszteségfüggvény a korábbiakban már ismertetett négyzetes hiba (MSE). Az optimalizálásra az Adam algoritmust alkalmazzuk, amely a sztochasztikus gradiens csökkenés implementációja. Az overfitting elkerülésére a tanulást megállítjuk, ha 5 edzés után nem történik javulás.

Miután a modellek elkészültek, tanítani kezdjük őket a generált tanító halmazon (X). Az eredmények azt mutatják, hogy a modWider modell tanulása jobban teljesít, mint a többi. Bár az egyszerűbb modellek gyorsabban tanulnak, a modWider modell végül egy 5,445 perces átlagos hibával zárja az edzést. Ezzel szemben a modSimple és modDeep modellek 5,562 és 5,682 perces hibát produkálnak.

A végső lépés a modellek tesztelése, amely során figyelembe vesszük, hogy a legpontosabb előrejelzést az a modell adja, amelynél a többség 10 percnél nem nagyobb eltérést mutat a tényleges időponttól. A tesztadatokon alkalmazva azt látjuk, hogy bár a modSimple és modWider modellek kisebb abszolút hibát mutatnak, a hibáik túlnyomó része a blokkidők alulbecsléséből ered. Ezzel szemben a modDeep modell esetében a hibák inkább túllépik a várt blokkokat, és mindössze 8,62%-a a blokkidőknek volt alulbecsült.

Összegzésül elmondható, hogy a mélyebb hálózat jobban teljesít a rendelkezésre álló információk ellenére, mivel nagyobb varianciát hoz létre a tanulás során. Ezen kívül, ha a modell célja a késések minimalizálása, a mélyebb hálózat a legjobb választás.