Eléggé elterjedt manapság, hogy a modern gépi tanulási rendszereket “fekete dobozként” emlegetik. Példának okáért gondoljunk Sam Harris podcastjének egy nemrég megjelent epizódjára, amelyben a mesterséges intelligencia úttörőjével, Stuart Russell-lel készített interjút. Harris azt kérdezi:

“Tehát, ha nem tévedek, a legtöbb, ha nem az összes ilyen mélytanulási megközelítés, vagy még általánosabban a gépi tanulási megközelítések lényegében fekete dobozok, amelyekben nem igazán lehet megvizsgálni, hogy az algoritmus hogyan éri el, amit elér.”

Bár ez a metafora néhány konkrét helyzetre megfelelő, valójában elég félrevezető általában, és jelentős zavart okozhat. Mint látni fogjuk, egy mélytanuló rendszer nem egy fekete doboz; még egy ilyen rendszer fejlesztésének sem kell fekete doboznak lennie. Az igazi kihívást azonban az jelenti, hogy mindkét dolog összetett, és nem feltétlenül jól érthető. Itt szeretnék megpróbálni tisztázni néhányat ezekből a gondolatokból, és egyúttal végiggondolni, mit értünk magyarázatok alatt.

Amint alább kifejtem, úgy vélem, a zűrzavar legalább részben abból adódik, hogy az emberek tévhiteket táplálnak az ilyen rendszerek működésével kapcsolatban. Amikor az emberek a fekete doboz metaforához nyúlnak, úgy tűnik, azt fejezik ki, hogy nehéz értelmet adni a gépi tanulási modell különböző összetevőinek céljának. Bár ez valóban nehéz, azzal szeretnék érvelni, hogy ez egyúttal irreális elvárás is. Útközben megpróbálom elmagyarázni a modellek közötti különbséget és azt, hogy hogyan képezzük őket, megvitatom azokat a forgatókönyveket, amelyekben a fekete doboz metafora helyénvaló, és felvetem, hogy sok szempontból az ember az igazi fekete doboz, legalábbis ami a gépi tanulást illeti.

Magyarázatok

Kezdésként hasznos elgondolkodni azon, hogy mire gondolnak az emberek, amikor magyarázatokról beszélnek. Ez semmiképpen sem triviális kérdés, de úgy tűnik, hogy legalább két különösen releváns módja van a gondolkodásnak.

Amikor magyarázatot kérünk valakitől arra, hogy miért tett valamit (“Miért tettél X-et?”), bizonyos háttérfeltételezésekkel operálunk. Egy gondosan meghozott döntés esetében jellemzően feltételezzük, hogy valamilyen jó okuk volt arra, hogy úgy cselekedjenek, ahogyan cselekedtek, és alapvetően azt az érvelési folyamatot kérdezzük, amelyet a döntés meghozatalához használtak. Például elvárhatjuk, hogy mérlegelték az előnyöket és hátrányokat, és az alapján választottak egy cselekvési módot, hogy az várhatóan valamilyen bizonyos eredményhez vezet.

Amikor azt kérdezzük, hogy valami miért ment rosszul, ezzel szemben inkább a kudarc egyfajta post-hoc magyarázatára kérdezünk rá. Például egy autóbaleset után magyarázatot szeretnénk kapni arra, hogy mi okozta a balesetet. Zavart volt a sofőr? Egy másik autó miatt tért ki? Az érvelés folyamata helyett, többé-kevésbé a kritikus ingerre vagyunk kíváncsiak, amely a normális viselkedésen kívül egy bizonyos reakciót váltott ki.

Amikor az emberek a mesterséges intelligenciáról gondolkodnak, úgy tűnik, jellemzően az első fajta magyarázatra gondolnak. Az elvárás az, hogy a rendszer mérlegelést végzett, és a várható eredmény alapján választotta ki a cselekvés módját. Bár vannak olyan esetek, amikor ez lehetséges, egyre inkább olyan rendszerek felé haladunk, amelyek inkább a második esethez hasonlítanak, azaz ingereket kapnak, majd csak reagálnak.

Ezeknek nagyon jó okai vannak (nem utolsósorban azért, mert a világ bonyolult), de ez azt jelenti, hogy nehezebb megérteni, miért hoztak egy adott döntést, vagy miért jutottunk egy modellhez egy másikkal szemben. Ezt szem előtt tartva vizsgáljuk meg, mit értünk modell alatt, és a fekete doboz metaforáját.

Dobozok és modellek

A fekete doboz metafora a kibernetika és a behaviorizmus kezdeteire nyúlik vissza, és jellemzően olyan rendszerre utal, amelynek csak a bemeneteit és kimeneteit tudjuk megfigyelni, de a belső működését nem. Valójában B. F. Skinner is így fogalmazta meg az elmét általában. Bár sikeresen bemutatta, hogy bizonyos tanult viselkedések hogyan magyarázhatók egy olyan megerősítő jellel, amely bizonyos bemeneteket bizonyos kimenetekhez kapcsol, aztán híres módon elkövette azt a hibát, hogy azt gondolta, hogy ez az elmélet könnyen megmagyarázza az összes emberi viselkedést, beleértve a nyelvet is.

A fekete doboz egyszerűbb példájaként tekintsünk egy Skinner-féle gondolatkísérletet: kapunk egy dobozt, amelynek van egy sor bemenete (kapcsolók és gombok) és egy sor kimenete (fények, amelyek vagy be vannak kapcsolva, vagy ki vannak kapcsolva). A bemenetek manipulálásával képesek vagyunk megfigyelni a megfelelő kimeneteket, de nem tudunk belenézni, hogy lássuk, hogyan működik a doboz. A legegyszerűbb esetben, például egy szobában lévő villanykapcsoló esetében könnyen és nagy biztonsággal megállapítható, hogy a kapcsoló a fényerősséget szabályozza. Egy kellően összetett rendszer esetében azonban gyakorlatilag lehetetlen meghatározni, hogyan működik a doboz, ha csak különböző kombinációkat próbálunk ki.

Most képzeljük el, hogy kinyithatjuk a dobozt, és belenézhetünk. Még egy teljes kapcsolási rajzot is kapsz, amin látszik, hogy mik az összes alkatrész, és hogyan vannak összekötve. Ráadásul egyik alkatrész sem összetett önmagában; minden olyan egyszerű alkatrészekből épül fel, mint az ellenállások és a kondenzátorok, amelyek mindegyike önmagában is jól érthető viselkedéssel rendelkezik. Most már nemcsak a rendszer összes komponensének teljes specifikációjához hozzáférhet, hanem még kísérleteket is végezhet, hogy megnézze, hogyan reagálnak az egyes komponensek bizonyos bemenetekre.

Azt gondolhatná, hogy mindezen információk birtokában most már képes lesz arra, hogy jó magyarázatot adjon a doboz működésére. Hiszen minden egyes alkatrész érthető, és nincsenek rejtett információk. Sajnos a bonyolultság sok egyszerű komponens kölcsönhatásából adódik. Egy kellően összetett rendszer esetében nem valószínű, hogy meg tudnád jósolni, mi lesz a doboz kimenete egy adott bemenetre, anélkül, hogy kísérletet végeznél, hogy kiderítsd. Az egyetlen magyarázat arra, hogy a doboz miért teszi azt, amit tesz, az, hogy az összes komponens követi azokat a szabályokat, amelyek az egyéni viselkedésüket szabályozzák, és az általános viselkedés a kölcsönhatásaikból alakul ki.

Még fontosabb, hogy a rendszer hogyanján túl valószínűleg nem tudnád megmagyarázni, hogy az egyes komponensek miért kerültek oda, ahová kerültek, még akkor sem, ha ismernéd a rendszer általános célját. Tekintve, hogy a dobozt valamilyen célra tervezték, feltételezzük, hogy minden egyes komponens okkal került bele. Egy különösen okos rendszer esetében azonban előfordulhat, hogy az egyes komponensek végül többféle szerepet is betöltenek, mint például a DNS esetében. Bár ez nagyon hatékony rendszert eredményezhet, ugyanakkor nagyon megnehezíti az egyes komponensek céljának összefoglalására való gondolkodást is. Más szóval, a rendszer hogyanja teljesen átlátható, de a miértje potenciálisan kifürkészhetetlen.

Ez, mint kiderült, tökéletes metaforája a mélytanulásnak. Általánosságban elmondható, hogy az egész rendszer nyitott a vizsgálatra. Ráadásul teljes egészében egyszerű összetevőkből áll, amelyek elszigetelten is könnyen megérthetők. Azonban még ha ismerjük is a teljes rendszer célját, nem feltétlenül tudunk egyszerű magyarázatot adni arra, hogyan működik a rendszer, azon kívül, hogy minden egyes komponens a saját szabályai szerint, a bemenetre reagálva működik. Valójában ez az igazi magyarázat arra, hogyan működik a rendszerük, és ez teljesen átlátható. A nehezebb kérdés persze az, hogy az egyes komponensek miért vállalták azt a szerepet, amit vállaltak. Ennek további megértéséhez hasznos lesz szétválasztani a modell gondolatát a modell betanításához használt algoritmustól.

Modellek és algoritmusok

Hogy igazán belemerüljünk a részletekbe, kicsit pontosabban meg kell fogalmaznunk, miről is beszélünk. Harris arra hivatkozik, hogy “hogyan éri el az algoritmus azt, amit elér”, de itt valójában két rész van: egy modell – például egy mély tanulási rendszer – és egy tanulási algoritmus – amit arra használunk, hogy a modellt az adatokhoz illesszük. Amikor Harris “az algoritmusra” hivatkozik, akkor feltehetően a modellről beszél, nem feltétlenül arról, hogy azt hogyan képezték ki.

Mit értünk pontosan modell alatt? Bár talán kissé homályos, egy statisztikai modell alapvetően azokat a feltételezéseket rögzíti, amelyeket arra vonatkozóan teszünk, hogyan működnek a dolgok a világban, a részleteket pedig az adatokból kell megtanulni. Egy modell különösen azt határozza meg, hogy mik a bemenetek, mik a kimenetek, és jellemzően azt, hogy szerintünk a bemenetek hogyan léphetnek kölcsönhatásba egymással a kimenet létrehozásában.

A modell klasszikus példája a newtoni gravitációt szabályozó egyenletek. A modell szerint a kimenetet (a két tárgy közötti gravitációs erőt) három bemeneti érték határozza meg: az első tárgy tömege, a második tárgy tömege és a köztük lévő távolság. Pontosabban azt állítja, hogy a gravitációs erő arányos lesz a két tömeg és a távolság négyzetének szorzatával. Kritikusan szólva nem magyarázza meg, hogy miért éppen ezek a tényezők befolyásolják a gravitációt; csupán egy olyan szűkszavú magyarázatot próbál adni, amely lehetővé teszi, hogy bármilyen helyzetre megjósoljuk a gravitációt.

Természetesen, még ha ez teljesen helyes is lenne, ahhoz, hogy előrejelzést tudjunk készíteni, ismernünk kell a megfelelő skálázási tényezőt is, G-t. Elvileg azonban ezt az értéket megfigyelés útján kellene megtudnunk. Ha feltételeztük a helyes (vagy közel helyes) modellt arra vonatkozóan, hogyan működnek a dolgok a valóságban, akkor jó esélyünk van arra, hogy az adatokból megtudjuk a vonatkozó részleteket.

A gravitáció esetében természetesen Einstein végül kimutatta, hogy Newton modellje csak megközelítőleg helyes, és hogy szélsőséges körülmények között megbukik. A legtöbb körülményre azonban a newtoni modell elég jó, ezért az emberek képesek voltak megtanulni a G= 6,674×10^(-11) N – (m/kg)² állandót, és előrejelzésekre használni.

Einstein modellje sokkal összetettebb, és több részletet kell megtanulni megfigyeléssel. A legtöbb esetben megközelítőleg ugyanazt az előrejelzést adja, mint a newtoni modell, de szélsőséges körülmények között pontosabb, és természetesen alapvető fontosságú volt az olyan technológiák kifejlesztésében, mint a GPS. Még lenyűgözőbb, hogy a relativitáselmélet másodlagos előrejelzései megdöbbentőek voltak, sikeresen megjósolták például a fekete lyukak létezését, mielőtt még valaha is remélhettük volna, hogy tesztelni tudjuk a létezésüket. És mégis tudjuk, hogy Einstein modellje sem teljesen helyes, hiszen még szélsőségesebb körülmények között sem egyezik meg a kvantummechanika modelljeivel.

A gravitáció természetesen determinisztikus (amennyire tudjuk). Ezzel szemben a gépi tanulásban és a statisztikában jellemzően olyan modellekkel van dolgunk, amelyek bizonytalanságot vagy véletlenszerűséget tartalmaznak. Például egy egyszerű modell arra, hogy mennyi ideig fogsz élni, az lenne, ha egyszerűen megjósolnánk a népesség átlagát arra az országra, ahol élsz. Egy jobb modell figyelembe vehetné a releváns tényezőket, például az Ön jelenlegi egészségi állapotát, a génjeit, azt, hogy mennyit mozog, dohányzik-e vagy sem stb. Nagyjából minden esetben lesz azonban némi bizonytalanság az előrejelzéssel kapcsolatban, mivel nem ismerjük az összes releváns tényezőt. (Ez természetesen különbözik a látszólagos valódi véletlenszerűségtől, amely a szubatomi szinten jelentkezik, de ezzel a különbséggel itt nem foglalkozunk.)

Amellett, hogy a mélytanulás kifejezés a neurális hálózatok és a gépi tanulás hihetetlenül sikeres átnevezése (ami maga is vitathatatlanul a statisztika meglehetősen sikeres átnevezése), a mélytanulás kifejezés a modellek egy bizonyos típusára utal, olyanra, amelyben a kimenetek a bemenetekre alkalmazott számos egyszerű transzformáció sorozatának eredményei (hasonlóan a fenti kapcsolási rajzunkhoz). Bár a mély tanulási modellek kétségtelenül összetettek, nem fekete dobozok. Valójában pontosabb lenne üvegdobozként hivatkozni rájuk, mert szó szerint belenézhetünk, és láthatjuk, hogy az egyes komponensek mit csinálnak.

A probléma persze az, hogy ezek a rendszerek is bonyolultak. Ha adok neked egy egyszerű szabályrendszert, amelyet követned kell ahhoz, hogy előrejelzést készíts, amíg nincs túl sok szabály, és maguk a szabályok is egyszerűek, elég könnyen ki tudod fejben számolni a bemenet-kimenet leképezések teljes készletét. Ez – bár kisebb mértékben – igaz a lineáris modelleknek nevezett modellosztályra is, ahol bármely bemenet megváltoztatásának hatása más bemenetek értékének ismerete nélkül is értelmezhető.

A mély tanulási modellek ezzel szemben jellemzően nemlineáris és a bemenetek közötti kölcsönhatásokat tartalmaznak, ami azt jelenti, hogy nemcsak hogy nincs egyszerű leképezés a bemenetről a kimenetre, de az egyik bemenet megváltoztatásának hatása kritikusan függhet más bemenetek értékeitől. Ez nagyon megnehezíti, hogy mentálisan kitaláljuk, mi történik, de a részletek ennek ellenére átláthatóak és teljesen szabadon ellenőrizhetők.

A tényleges számítás, amelyet ezek a modellek végeznek egy előrejelzés elkészítése során, általában meglehetősen egyszerű; ahol a dolgok nehézzé válnak, az a modell paramétereinek tényleges tanulása az adatokból. Ahogy fentebb leírtuk, miután feltételezünk egy bizonyos formát egy modellnek (ebben az esetben egy rugalmas neurális hálózatnak); ezután meg kell próbálnunk kitalálni a paraméterek jó értékeit az adatokból.

A gravitáció példájában, miután feltételeztünk egy “elég jó” modellt (arányos a tömeggel és fordítottan arányos a távolság négyzetével), már csak az egyik paraméter (G) értékét kell megoldanunk, a modell megfigyelésekre való illesztésével. Ezzel szemben a modern mélytanuló rendszereknél könnyen előfordulhat, hogy több millió ilyen paramétert kell megtanulni.

A gyakorlatban szinte az összes ilyen mélytanuló modellt a sztochasztikus gradiens ereszkedés (SGD) nevű algoritmus valamelyik változatával képzik, amely véletlenszerű mintákat vesz a képzési adatokból, és fokozatosan beállítja az összes paramétert, hogy a megjósolt kimenet jobban hasonlítson ahhoz, amit szeretnénk. Hogy pontosan miért működik olyan jól, ahogyan működik, azt még mindig nem értjük pontosan, de a legfontosabb dolog, amit szem előtt kell tartanunk, hogy ez is átlátható.

Miatt, hogy általában az összes paraméter véletlen értékekkel inicializálódik, az SGD minden egyes futtatáskor más paramétereket eredményezhet. Maga az algoritmus azonban determinisztikus, és ha ugyanazt az inicializálást és ugyanazokat az adatokat használnánk, ugyanazt az eredményt adná. Más szóval, sem a modell, sem az algoritmus nem fekete doboz.

A teljes választ arra, hogy egy gépi tanuló rendszer miért csinált valamit, végső soron a modell megtervezésekor tett feltevéseink, a betanított adatok és a paraméterek tanulására vonatkozó különböző döntések kombinációja adja meg, beleértve az inicializálás véletlenszerűségét is.

Vissza a fekete dobozokhoz

Miért fontos mindez? Nos, a fekete dobozok fogalma legalább két szempontból rendkívül fontos a gépi tanulás szempontjából.

Először is, rengeteg olyan algoritmus és szoftverrendszer létezik (és nem csak a gépi tanuláson alapulóak), amelyek a felhasználó szempontjából fekete dobozok. Ez talán a leggyakrabban a védett szoftvereknél fordul elő, ahol a felhasználó nem fér hozzá a belső működéshez, és csak a bemeneteket és kimeneteket láthatjuk. Ez az a fajta rendszer, amelyről a ProPublica beszámolt a bírósági ítélethozatali algoritmusokról (konkrétan a Northpointe COMPAS rendszeréről) szóló tudósításában. Ebben az esetben ismerjük az inputokat, és láthatjuk az embereknek adott kockázati pontszámokat, mint outputot. Nem férünk azonban hozzá a cég által használt algoritmushoz, illetve az adatokhoz, amelyeken azt betanították. Mindazonáltal nyugodtan kijelenthetjük, hogy valaki hozzáfér a részletekhez – feltehetően a vállalat alkalmazottai -, és nagy valószínűséggel teljesen átlátható számukra.

A második mód, ahogyan a fekete dobozok metaforája releváns, az olyan rendszerek tekintetében van, amelyeket tanulni próbálunk, mint például az emberi látás. Bizonyos szempontból az emberi viselkedés szokatlanul átlátható, mivel megkérdezhetjük az embereket, hogy miért tettek valamit, és magyarázatot kapunk rá. Ugyanakkor jó okunk van azt hinni, hogy nem mindig ismerjük a tetteink valódi okait. Távolról sem vagyunk átláthatóak önmagunk számára, egyszerűen nincs tudatos hozzáférésünk sok olyan belső folyamathoz, amely a viselkedésünket irányítja. Ha megkérdezik tőlünk, hogy miért tettünk valamit, talán képesek vagyunk egy olyan elbeszélést adni, amely legalább azt közvetíti, hogy milyen érzés volt számunkra a döntéshozatali folyamat. Ezzel szemben, ha megkérdezik tőlünk, hogyan vagyunk képesek felismerni tárgyakat, azt hihetnénk, hogy tudunk valamilyen magyarázatot adni (valamit, ami élekkel és színekkel kapcsolatos), de a valóságban ez a folyamat jóval a tudatosság szintje alatt működik.

Noha vannak különleges körülmények, amikor ténylegesen megvizsgálhatjuk az emberi vagy más emlősök belső működését, mint például az idegtudományi kísérletek, általában véve a gépi tanulás segítségével próbáljuk utánozni az emberi viselkedést, csak a bemeneteket és a kimeneteket használva. Más szóval, egy gépi tanuló rendszer szemszögéből nézve az ember a fekete doboz.

Következtetés

Végezetül hasznos elgondolkodni azon, hogy mit akarnak az emberek, amikor olyan rendszerekre gondolnak, amelyek nem fekete dobozok. Az emberek jellemzően valami olyasmit képzelnek el, mint az a forgatókönyv, amelyben egy önvezető autó letért az útról, és tudni akarjuk, hogy miért. A közkeletű képzeletben az az elvárás, hogy az autónak ki kell értékelnie a lehetséges kimeneteleket, valószínűségeket kell hozzájuk rendelnie, és azt kell választania, amelyik a legjobb eséllyel maximalizál valamilyen jobb eredményt, ahol a jobbat valamiféle beprogramozott erkölcs szerint határozzák meg.

A valóságban nagyon valószínűtlen, hogy a dolgok így működnének. Sokkal inkább, ha megkérdezzük az autót, hogy miért tette azt, amit tett, a válasz az lesz, hogy egy átlátható és determinisztikus számítást alkalmazott a paraméterei értékeinek felhasználásával, az aktuális bemenetét figyelembe véve, és ez határozta meg a cselekedeteit. Ha azt kérdezzük, hogy miért voltak azok a bizonyos paraméterek, a válasz az lesz, hogy azok a kiválasztott modell, az adatok, amelyeken betanították, és az alkalmazott tanulási algoritmus részleteinek eredményei.

Ez valóban frusztrálóan kevéssé segítőkésznek tűnik, és könnyen érthető, hogy az emberek miért nyúlnak a fekete doboz metaforához. Vegyük azonban figyelembe, hogy valójában nem rendelkezünk ilyen hozzáféréssel azokhoz a rendszerekhez, amelyeket megpróbálunk utánozni. Ha megkérdezünk egy emberi sofőrt, hogy miért tért le az útról, valószínűleg képes lesz nyelvi választ adni, és valamilyen módon beszámolni magáról – hogy részeg volt, vagy figyelmetlen, vagy ki kellett térnie, vagy elvakította az időjárás -, de azon kívül, hogy valamiféle narratív koherenciát biztosítunk, valójában nem tudjuk, hogy miért tette, és ők sem. A gépi tanulással legalább újraalkothatjuk ugyanazt a beállítást, és megvizsgálhatjuk a belső állapotot. Lehet, hogy bonyolult megérteni, de nem egy fekete doboz.