Vajon létezhet-e olyan mesterséges entitás, melynek szabadon feltehetünk kérdéseket az élet bármely területéről, és értelmes válaszokat kapunk? Egy olyan rendszer, ami a benne eltárolt ismeretek elemeit olyan komplexen képes kombinálni, ahogy ember soha nem tudná? Ez a kérdés nem az elmúlt néhány évben került terítékre; ha csak a modern informatika területét vizsgáljuk – és eltekintünk a több száz éves filozófiai gondolatkísérletektől –, akkor is találunk olyan szakembereket, akik több mint negyven éve építenek gépi tanuláshoz szükséges ontológiákat / tudásgráfokat, illetve olyanokat, akik neurális hálók trenírozásán töprengtek az ötvenes évek óta.
A mesterséges intelligencia kutatásának jelenleg öt nagy törzse létezik, ezek közül az első, a szimbolista törzs a világ működésével kapcsolatos legegyszerűbb állításokat, törvényszerűségeket gyűjti ontológiákba. Az iskola egyik legismertebb követője, Doug Lenat például a ’70-es évek vége óta fejleszti a common sense engine-t, vagyis a Cyc-ot, mely olyan állításokat tartalmaz, mint például: „nem lehetsz egyszerre több helyen”, vagy „addig nem érdemes lehajolnod valamiért, amíg nem vagy a közelében”. A Cyc-hoz hasonló tudásgráfok az emberi gondolkodásra jellemző fogalmakat, s az ezek közötti viszonyokat tartalmazzák, melyek a későbbi műveletek, következtetések alapjául szolgálhatnak.
A gépi tanulás második fontos törzsét a konnekcionisták adják – ők a neurális hálók építésében és betanításukban látják a mesterséges intelligencia kifejlesztésének leghatékonyabb módját. A neurális hálók bonyolult, sokrétegű rendszerek, melyek minden rétegében összetett számítások sorozata zajlik. Ilyen típusú rendszereket például sok fotó feldolgozásával betaníthatunk arra, hogy meghatározzák képeken szereplő állatok faját, tárgyakat kategorizáljanak, illetve szövegminták segítségével akár sci-fi novellák írására is trenírozhatjuk őket. Azért találó szó a trenírozás, mert ezek a hálók nem „értik” feladataik lényegét, nem emberi fogalmakkal operálnak, és így „megindokolni” sem tudják számításaik, döntéseik sorozatának eredményét.
Nagy hátránya a konnekcionista megközelítésnek, hogy a hálót könnyű „rosszul betanítani”. Ismert eset például, amikor egy állatfajok felismerésére létrehozott neurális háló 99 százalékos valószínűséggel rávágta egy hiúzt ábrázoló képre, hogy azon farkas szerepel.
Mivel átláthatatlan, hogy a rendszer mélységeiben milyen műveletek zajlanak, nagyon nehéz kijavítani az ilyen jellegű hibákat, de hosszas kísérletezés után a fejlesztők rájöttek, hogy a trenírozásnál siklott el a figyelmük valami felett. Azok a képek, melyekkel a hálót a farkasok felismerésére tanították, túlnyomó részben havas háttér előtt álló farkasokat ábrázoltak – és véletlenül a hiúzos fotó háttere is egy havas táj volt. A példa jól mutatja, milyen nagy körültekintést és alaposságot igényel a neurális rendszerek betanítása, és milyen apró, esetleges tényezőkön múlik a háló helyes működése.
Az evolucionista iskola a biológiai törzsfejlődés logikáját alkalmazza, és a problémák megoldását az algoritmusok mutációjától, illetve a mutálódás miatt bekövetkező fejlődéstől várja. Ha egy adott kérdés kapcsán egy algoritmus elér bizonyos kielégítő részeredményeket, akkor azt enyhén módosítva, illetve más sikeres algoritmusokkal keresztezve ismét lefuttatják, s így tovább, egészen addig, míg egy sokadik generációs tenyésztett algoritmus el nem jut a megfelelő megoldásig. Bár napjainkban a Google DeepMind részlege révén leginkább a neurális hálók vannak reflektorfényben, az evolucionista megközelítés is egyre látványosabb eredményeket mutat fel.
A mesterséges intelligencia kutatásának maradék két törzsét itt nem ismertetjük, mert a téma szempontjából nem lényegesek, álljon itt mindössze ennyi: a Bayes-tételen alapuló iskola valószínűségi számításokat használ a hipotézisek cáfolatához vagy megerősítéséhez, míg az analogizáló törzs különböző esetek közti hasonlóságokból igyekszik levezetni látszólag ismeretlen problémák megoldását.
Mi újat hoz az Algofarming?
A gyors válasz az, hogy semmit. Az általam ajánlott koncepció olyan elemekből dolgozik, melyek részben vagy egészben már ismertek voltak egyik vagy másik tradíció követői előtt.
Az algofarming alapjait ontológiák, illetve az evolúció képezik. Az ontológia információkat tartalmaz a megoldásra váró problémáról; többek közt szerepelnek benne a problémára jellemző alapentitások, műveletek, illetve viszonyok. Ez a tudásgráf jelöli ki a rendszer működésének kereteit, vagyis felállítja a játékszabályokat, melyek között az algoritmusok dolgozni fognak. Ezt követően a rendszer a gráfban szereplő vagy abból kikövetkeztethető elemekből és műveletekből létrehoz meghatározott számú algoritmust, melyek párhuzamosan elkezdenek a probléma megoldásán munkálkodni.
Meghatározott lépésszám vagy idő elteltével a rendszer megvizsgálja, hogy a kötött számú algoritmusból mennyi jutott eredményre, majd a sikeresebbeket meghagyja, a sikertelenebbeket pedig elveti. Az evolucionista iskolából ismert módszerrel ezután az eredményesebb algoritmusokból leszármazottakat, illetve mutánsokat hozunk létre, és ezekkel feltöltjük a megüresedett helyeket. Az algoritmustenyésztés ezután addig ismétlődik, míg a rendszer ki nem tenyészti a problémát helyesen megoldó legegyszerűbb eljárást. Az eredmény így egy emberek számára is olvasható, értelmezhető, szükség esetén javítható és bővíthető algoritmus lesz – szemben a neurális hálók átláthatatlan kuszaságával.
A gépi tanulás leghatékonyabb koncepciója valódi áttörést hozhat a jövő gazdaságában. Egy megbízható és sokoldalú rendszer képes lehet összefüggéseket találni olyan kaotikus adatsorokban, mint amilyenek a meteorológiai mérések vagy a tőzsdei mozgások, de egy ilyen technológia lökést adhat az önvezető járművek iparának is.
Érdemes tehát jó kertész módjára gondoznunk algoritmus farmjainkat.