Összegzés, várható fejlődési irányok

A neurális számítástechnika viszonylag rövid fejlődése során komoly viták tárgya volt, megítélése a szélsőségektől sem volt mentes. A neurális számítástechnika fejlődésének mintegy 50 évét komoly sikerek és nagy kudarcok kísérték. A sikerek általában újszerű alkalmazásokhoz kötődtek, melyek során azt lehetett bemutatni, hogy a „neurális” feladatmegoldás sokszor nagyságrendekkel könnyebb, (kevesebb erőfeszítéssel, gyorsabban ad jó eredményt), mint a „hagyományos” megközelítés. Néhány látványos eredmény azt mutatta, hogy a komplex feladatok megoldásához más sem kell, mint kellő mennyiségű adat, a többit a neuronháló megoldja; a neuronháló az adatokból megtanulja a megoldást. Egyes sikeres alkalmazásokat már akkor kidolgoztak, amikor azok az elméleti eredmények még meg sem születtek, melyek megalapozzák ezen sikeres alkalmazásokat. A sikerek mellett azonban hamar kiderült az is, hogy a megoldandó feladatok alapos ismerete nélkül összetett valódi gyakorlati problémák neurális megoldása nagyon gyakran kudarcra vezet. A megoldandó feladat elemzése nélkül, tudatosan összeállított adatbázis nélkül, az adatok megfelelő reprezentálása, értelmezése, előkészítése nélkül, esetleg előfeldolgozása nélkül az adatokból való tanulás sem lehet hatékony. Mind a sikerek, mind a kudarcok sürgették az elméleti alapok tisztázását: annak meghatározását, hogy milyen hálóarchitektúrák milyen képességekkel rendelkeznek, hogyan lehet az adatokban meglévő tudást „átadni” a neuronhálóknak, hogyan lehet hatékony tanuló eljárásokat konstruálni.

A könyvben igyekeztünk bemutatni a neurális számítástechnika kialakulásának és gyors fejlődésének indítékait, legfontosabb jellemzőit – előnyeit, hátrányait – , a mind elméleti, mind gyakorlati szempontból sikeres neurális architektúrákat, a neurális hálózatok általános képességeit és néhány fontosabb alkalmazási területet. Összefoglaltuk a neurális hálózatoknál alapvető szerepet betöltő tanulás főbb fajtáit és a legfontosabb tanulási algoritmusokat.

A bemutatott hálókon kívül jónéhány egyéb háló architektúra létezik, kidolgoztak más tanuló eljárásokat is, és főképp az alkalmazások köre jóval bővebb, mint ami a könyvben megjelent. A könyvben − több-kevesebb részletességgel − arra is utaltunk, hogy a neurális számítástechnika milyen elméleti alapokra támaszkodik, illetve megemlítettünk egy sor olyan kérdést, melyekre kielégítő megoldás ma még nem létezik. Viszonylag nagy teret adtunk a kernel gépek bemutatásának, és ezen belül is az utóbbi tíz év talán legfontosabb eredményének, a szupport vektor gépeknek, valamint röviden bemutattuk a szupport vektor gépek konstrukciójának elvi hátterét is megadó statisztikus tanuláselmélet alapjait.

A neurális számítástechnika fejlődésében több irány figyelhető meg. Az egyik fő irány a témakör minél egzaktabb matematikai megalapozására törekszik. Ez elsősorban matematikai kutatásokat igényel, a hálózatok képességeinek minél pontosabb meghatározását célozza, illetve arra irányul, hogy adott feladathoz (adott képességeket igénylő feladathoz) a megfelelő, netán az optimális háló architektúra egzakt módon meghatározható legyen. Ezen kutatások gyakorlati eredménye lehet, hogy a neuronhálók "tervezésére" születnek eljárások. E téren – elsősorban a kernel gépek témakör kialakulásával és az itt elért eredményekkel − az elmúlt évtizedben jelentős előrelépés történt. A szupport vektor gépek és általában is a kernel gépek területén elért ereményeket – annak ellenére, hogy ezek a gépek nem tekinthetők klasszikus neurális hálózatoknak – a neurális számítástechnika jelentős eredményeiként kell értelmezni. Az elkövetkező évek valószínűleg e téren további fontos eredményeket hoznak. Olyan kérdések megválaszolása várat magára, mint a kernel gépek hiperparamétereinek egzakt meghatározása, a kernel függvények alkalmazásfüggő megválasztása, de nagyon fontos kérdések a hálók által szolgáltatott megoldások minősítésének elvi kérdései is. A megoldások minősítésére vonatkozó elméletei eredmények – pl. statisztikus tanuláselmélet általánosítási hibára vonatkozó korlátai – bár jelentős eredmények, de még nem biztosítják a feladathoz igazított optimális tanuló rendszer tervezésének lehetőségét. Általánosságban az mondható, hogy a matematikai eredmények és a gyakorlati alkalmazások által igényelt „aprópénzre váltott eredmények” között ma még meglehetősen nagy a távolság. Az alkalmazások során ma szükséges kísérletezés, próbálkozás szerepének mérséklése csak akkor várható, ha az elméleti eredmények a gyakorlati alkalmazások igényeihez jobban igazodnak.

Egy másik fontos fejlődési irányt az alkalmazások által támasztott igények szabják meg. Bár a könyvben igyekeztünk bemutatni, hogy egyes neuronháló architektúrák univerzális feladatmegoldó eszközök, mégis összetett, bonyolult gyakorlati problémák megoldásában legtöbbször önmagukban nem alkalmazhatók, inkább csak részfeladatok megoldásában jelentenek nagy segítséget. Általában elmondható, hogy egy komplex feladat megoldása az esetek döntő többségében csak különböző megközelítések együttes alkalmazásával lesz sikeres. Az utóbbi években ezért egyre inkább megfigyelhető az a tendencia, amely a különböző eszközök ötvözésére törekszik. A neurális számító eszközöket mind gyakrabban alkalmazzák együtt más, "szoft" számítási megközelítésekkel, a hagyományos mesterséges intelligencia eszközeivel, de a hagyományos algoritmikus megoldásokkal is, létrehozva a hibrid intelligens számító rendszereknek nevezett eszközöket. A könyvben bemutatott néhány hibrid megoldás is ilyen igényeket igyekszik kielégíteni. Jelenleg azonban – az adatokon, mintapontokon túl – meglehetősen korlátozott reprezentációjú tudás beépítésére, felhasználására van lehetőség. További gondot jelent, hogy a járulékos információ beépítése sokszor igen nehezen megoldható matematikai problémákra vezet. Sok feladat merül fel a bizonytalan ismeretek, hiányos, zajos adatok felhasználása terén is.

A neuronhálók és általában is a mintákból tanuló rendszerek egy jelentős mértékben eltérő megközelítése a Bayes statisztikát, illetve a sztochasztikus folyamatok elméletét használja fel. A Bayes neurális hálók és a Gauss folyamatok témakörök egyáltalán nem szerepelnek a könyben, miközben új szemléletet hoznak be az adatokból való tanulásba. Különösen érdekes a kernel gépek és a Gauss folyamatok kapcsolata. Várható, hogy a közeljövőben megtörténik ezen kapcsolatok minél pontosabb tisztázása, ami az a priori ismeretek lényegesen hatékonyabb kezelésére is vezethet.

Az elvi kérdéseken túl fontos kérdés az implementáció hatékonyságának növelése, a szükséges számítási komplexitás redukálása is. Ugyan az elmúlt néhány évben a számítási komplexitás csökkentése terén is fontos eredmények születtek – gondoljunk csak a kvadratikus programozás hatékonyságát célzó eredményekre – még sok tennivaló van. Az igényelt számítási komplexitás csökkentése – és a számítógépek teljesítőképességének növekedése egyértelműen neurális megoldások szélesebbkörű elterjedését fogják eredményezni. A számítási komplexitás csökkentése, illetve a hatékonyabb implementáció azért is fontos, mert csak így lesz lehetséges a mainál jóval komplexebb, a mai lehetőségeknél nagyságrendekkel több neuronból álló komplex architektúrákat létrehozni. A háló képessége ugyanis nyilvánvaló kapcsolatban áll a komplexitásával. Ehhez a „természetes neuronhálók” kellő mintát szolgáltatnak. Az implementáció kapcsán azt is meg kell jegyezni, hogy – annak ellenére, hogy döntően ma is általános célú számítógépeken történő szimuláció az implementáció legelterjedtebb formája – a célhardverek egyre gyakoribb alkalmazása várható. Egyes részfeladatok neurális megoldása ugyanis akkor lehet hatékony, ha a neurális megoldást kis méretben, olcsón tudjuk megvalósítani. Sok lokális, tanulni képes „lokális” intelligenciával rendelkező egység együttműködéséből hozhatunk létre komplex intelligens rendszereket.