Soros vs. párhuzamos feldolgozás
Most, hogy átvettük a kétrétegű és a visszacsatolt idegsejt hálózatok működését, tanulási szabályait és hogy mikre képesek, meg kell alapoznunk néhány fontos gondolatot, mert a továbbiakban többször előbukkannak majd és a séta végére, a tudatosság kialakulásának megértésénél szükségünk lesz rájuk.
Az első gondolat, amire fentebb láthattunk példát, hogy egy feladatot többféle, akár teljesen eltérő alapelveken nyugvó módon is megoldhatunk, megoldhat az idegrendszer. Feladata válogatja, hogy melyik esetben melyik megközelítés a hatékonyabb.
A másik, konkrétabb gondolat, hogy a megoldásnak van egy soros és párhuzamos módja.
Mit jelent ez?
Ha felidézzük a modell örvényféreg fejezetét ott már felbukkant a két megoldás. Amikor először láttunk neki, hogy BASIC-ben klasszikus számítógépes nyelven leprogramozzuk mit is tud egy örvényféreg, a soros megoldást alkalmaztuk, a soronként megírt programot a számítógép soronként, egymás után, SOROSAN hajtotta végre. De ugye itt elvesztünk a labirintusban és felfedeztük, hogy ezt a feladatot egyszerre működő sok idegsejt hogyan képes megoldani PÁRHUZAMOSAN. Értem ez alatta, hogy az érzéksejtektől a jelek egyszerre futottak be a válaszokat kódoló sejtekhez, melyek egyszerre értékelték ki a bemeneteket és egyszerre válaszoltak, azaz a jelek párhuzamosan futottak az axonokon és párhuzamosan kerültek kiértékelésre. Ez jelentősen egyszerűbb megoldás volt és mellesleg gyorsabb is. Azt lehet mondani, hogy a modell idegsejtek számával összefüggésben gyorsul a feldolgozás.
A soros, párhuzamos kifejezések (serial versus parallel) ismerősek lehetnek az idősebbeknek még az USB előtti korból. A nyomtatókat lehetett soros és párhuzamoscsatlakozón keresztül is hozzákötni a számítógéphez. A soros kábel vékony volt és lassan ment rajta az információ, a párhuzamos kábel vastag és meglehetősen sok információt vitt át. A párhuzamos kábelben 16 vagy 32 szál (+2-3) vezeték volt, amin egyszerre (párhuzamosan) mentek át a byteokat alkotó bitek. A soros kábelben meg csak 4 szál drót van, ebből 2-őn mennek az adatok, a biteket ezeken kell egymás után átküldeni. Azaz 16-32-szer lassabban megy át az információ. Az idő közben persze haladt, a technika fejlődött, felgyorsultak az áramkörök és fejlődtek a hibajavító algoritmusok, így ma leggyakrabban a vékonyka USB kábelt lengetjük. Jelentése Universal Serial Bus, azaz Általános Soros Adatátviteli Csatorna (ÁSACS 😊), és mint ebből kiderül ezek is egyenként küldik át a biteket, csak nagyon nagy gyakorisággal (frekvenciáva). No ennyit mára a számítástechnika híreiből. Térjünk vissza az agyra, ott hol van mindez.
A második - a fenti feladatban jelentősen hatékonyabban működő - megoldásunkban az érzékelő idegsejtektől időben egyszerre érkeztek a jelek a sok mozgató sejtre, ezen sejtek mindegyike egyszerre számította ki a rá érkező ingerek összegét és hogy mekkora jelet fog ő ezek alapján magából kiadni. A jelterjedés és feldolgozás tehát egymás mellett, párhuzamosan futott. Ez a párhuzamos feldolgozás, angolul a parallel processing (ismerős lehet az előző #agyséta bejegyzésekből).
A dolog hátránya azonban az, bár ott nem látszott, hogy nem lehet megkérdezni a rendszert miért csinált valamit úgy ahogy! Nincs mire rámutatni, hiszen a hálózat döntéséhez szükséges tudás a szinapszisok erősségében van egyenletesen elszórva (ugye itt is párhuzamos a rendszer, a tanuláskor és előhíváskor is párhuzamosan történnek a dolgok). Az információ ezen egyenletesen elszórt, elosztott, angolul distributed vonása meg is jelent az idegsejthálózatok működését elméleti keretbe foglaló elméletben, a fent említett PDP-ben. Jelentése Parallel Distributed Processing.
Ha a számítógépes programunk alapján viselkedő állatkánkkal nem vagyunk megelégedve akkor hosszas fejvakarás után megtalálhatjuk a kódban mit kell kijavítani, de egy párhuzamos neuronhálózatban már nehezebb rámutatni hol a rossz értékű szinapszis. Legfeljebb a hálózat újra-tanításával érhetünk el változást. Ezekkel a problémákkal szembesülnek is a Deep Learning hálózatokat használó szakemberek, akiket kuncogva egy új szakma az A-pszichológusok képviselőjének tartok.
A mindig tréfás és ötletektől sziporkázó Richard Feynman egyik ötlete, melyről a „Tréfál Feynman úr?” című könyvében olvashatunk a Human Computer Project volt az 1950-es években, a Caltech-en (California Institute of Technology). Összeszedett egy stadionra való embert, mindegyiküknek megmondta, hogy a szomszédjaitól kapott 0 vagy 1 információn milyen elemi logikai műveletet végezzen el és kinek adja tovább a végeredményt. Igazából egy számtógép processzorának a chip-jén lévő logikai kapukat alkotta meg emberekből. A stadion egyik végén kettes számrendszerben reprezentálva az emberek kaptak egyeseket és nullákat, a stadion másik végén, hosszú idő után pedig megjelent a művelet eredménye. A dolog azért jön ide, mert, mint ahogy egy neuronhálózatban sem lehet tudni hol, mi történik a feldolgozás alatt, itt se tudta senki, hogy mit csinált, mégis a játék végére megjelent a végeredmény!
A soros / párhuzamos kérdésben van még egy bejegyzésre való. Ezzel folytatjuk legközelebb.
Szerző: Gulyás Attila