Prószéky Gábor: A szoftver sosem fog ötösre vizsgázni a Turing-teszten, de azon sok ember se menne át
Prószéky Gábor, a Magyar Tudományos Akadémia Nyelvtudományi Intézetének igazgatója, a Morphologic szoftvercég alapítója számítógépes nyelvészetről, gépi fordításról, a 21. századi nyelvészeti paradigmaváltásról és arról, hogy mi köze az egérnek a majomhoz.
1,2 milliárd szavas szövegtestet hoznak létre Pázmány Korpusz néven. Mihez kezd ekkora adathalmazzal az MTA-PPKE kutatócsoportja?
Vannak helyek a világban, ahol egy park kialakítása előtt a tájépítészek tanulmányozzák, merre járnak el az emberek. Ott lekövezik az utat, és köré telepítik a füvet, a virágokat, meg a fákat. Máshol először ültetnek, majd az összképet legkevésbé zavaró helyen köveznek és elvárják, hogy arra járjanak el az emberek. Aztán csodálkoznak, hogy össze-vissza le van taposva a fű. A nyelvészeti elemzésekben a múlt század derekától jóformán egyeduralkodónak számító, ideális nyelvhasználót feltételező generatív grammatikával szemben az úgynevezett korpusznyelvészeten alapuló mai számítógépes nyelvtechnológiai kutatások létező szövegmintákból indulnak ki. Ha utóbbiból jó sok van, az alkotja a korpuszt. Az alapfelvetés: a nyelvészek ne kitalálják a grammatikát, hanem – ideálisnak feltételezett mondatok létrehozása helyett – elemezzék inkább a hús-vér beszélők alkotta valódi szövegeket, és vizsgálják a nyelvértés, a nyelvtanulás folyamatát.
A korpusznyelvészet eszerint letaszítja a trónról a Noam Chomsky amerikai sztárnyelvész alkotta generatív grammatikát?
Az eredetileg matematikusként végzett Chomsky elméleti szempontból közelített a nyelvhez, megengedhette magának azt a luxust, hogy univerzumának határai egyetlen mondat két végén legyenek. A mondatfüzérek sokasága a chomskyánus elmélet alapján nem értelmezhető, ezzel a gyakorlatban nem megyünk sokra. Manapság a munkát óriási kapacitású gépek segíthetik, amelyeket célszerű alkalmassá tenni arra, hogy az emberek fejében lévő ismereteket hasznosítsák. Chomsky elméleti megközelítésével szemben a miénk, avagy az analitikus grammatikáé a nyelvi egységeket nem előállító, vagyis generáló, hanem azokat elemző program létrehozása. Ez sokkal gyakorlatiasabb cél.
Ön sem épp a bölcsészettudományok világából érkezett. Mégis szép sikereket tudhat magáénak úgy nyelvészként, mint üzletemberként.
Programtervező matematikusként végeztem 1981-ben, majd egy évre rá általános és alkalmazott nyelvészetből szereztem diplomát. Ez a két tudományterület mindvégig együtt létezett a fejemben. Programozói vénám minden bizonnyal sok gyakorlatiasságot kölcsönzött, eleinte mégis a kutatásra fektettem a hangsúlyt. A rendszerváltozás előtt nem is nagyon lehetett piaci alapokon gondolkodni. Az 1990-es évek legelején aztán, különösen, mivel addigra már tele voltam ötletekkel, hamar kiderült, hogy bőven van mit kiaknázni a viharos sebességgel terjedő számítógépes programok és a magyar nyelv találkozásából. Szövegszerkesztő például már volt, de a helyesírásellenőrző program még hiányzott. Erre alapozva indítottuk útnak a MorphoLogic Kft.-t, ami idővel más gépi nyelvészeti szolgáltatásokat, például fordítást is kínált.
Hogy lett ebből ismét tudományos munka?
A saját cégemet mindvégig kutatásfejlesztésre is használtam. 2001-ben pedig meghívtak tanítani a Pázmány Péter Katolikus Egyetem Információs Technológiai Karára. Arra külön büszke vagyok, hogy az akadémiai nagydoktori címem védésekor az értékelők részéről elhangzott, hogy – a bevett hazai idegenkedéssel ellentétben – nemhogy nem hátrány, de kifejezetten üdvözlendő, ha egy alapkutatásból végül alkalmazott tudományként piacképes termék fejleszthető. Időközben a Google-fordító megjelenésével a pénzért kínált fordítóprogramokra kisebb lett a kereslet, még ha ez nem is lenne feltétlenül törvényszerű.
Már miért ne lenne törvényszerű?
A mi fordítóprogramjaink bizonyos értelemben jobbaknak mondhatók, mint a Google-fordító, különösen, ha speciális szaknyelvi szövegek magyarításáról vagy idegen nyelvre ültetéséről van szó. Száz százalékos fordítóprogramot sem mi, sem senki más nem tud készíteni. Más kérdés, hogy azok, akik általános szövegeket szeretnének egyik nyelvből a másikba ültetni, nem feltétlenül szeretnének egy 80 százalékos programért fizetni, ha a 70 százalékost ingyen is megkapják.
Mégis újra a világhálón gyarapodó szövegek megzabolázásán töri a fejét: miért épp az internetről szedik a Pázmány Korpusz szövegtestét?
Ha az a célunk, hogy internetes szövegeket kezelő számítógépes rendszert írjunk, onnan kell vennünk a példát. Bármilyen szép is a Berzsenyi Dániel által írt szövegek nyelvezete, ma már senki nem beszél úgy, így a korpuszban használhatatlan. Ezért építünk a 2010-es évek írott magyar nyelvéből adatbázist. A webletöltő programunk három fő szövegtípust különböztet meg. A tényleges írott nyelvi, vagyis az irodalmi normához közel álló, többé-kevésbé lektorált, szerkesztett írásokat közlő internetes folyóiratokból, portálokról, híroldalakról származó szövegek mellett a normától eltérő, sokszor fragmentált, jelekkel, rövidítésekkel teletűzdelt úgynevezett beszélt írott nyelvi szövegeket fórumok, chatszobák szövegeiből nyerjük ki. A harmadik forrásunk a szövegbe nem illesztett felsorolásokból, nómenklatúrákból, adatbázisokból szemezget.
Gyakorlati célokat említett: hol itt a gyakorlat?
Egyelőre különféle nyelvészeti kutatásokat, szófaji, mondattani elemzéseket végzünk, illetve végeztetünk a programjainkkal a szövegeken. Tanítjuk az algoritmust, hogy a következtetéseit olyan szövegeken is alkalmazni tudja, amelyeket korábban még nem látott. Addig nincs is gond, amíg mondjuk olyan szavakat kell a programnak felismernie és szófajilag besorolnia, mint az asztal vagy az alma. A vár, a les vagy az ég szavaknál viszont már csak a szövegkörnyezet alapján lehet eldönteni, hogy a hangsor egy főnevet vagy egy igét takar-e. A program több száz millió mondat elemzése után nemcsak ezt tanulja meg, hanem azt is, hogy a magyar nyelvnek nagyjából milyen a szerkezete, melyik ige milyen pozícióban „szeret lenni” a mondatokban. A kisebb szövegektől haladunk az egyre nagyobb merítés felé, így a gép esetleges tévedéseit egy ideig jól tudja korrigálni az ember. Abban bízunk, hogy mire az emberi kapacitás számára már elérhetetlen mennyiségű szöveget kell elemezni, a program belejön annyira, hogy elfogadható hibaaránnyal dolgozzon. Közben sok mindent megtudunk a nyelvelsajátítás folyamatáról, arról, hogyan értik meg a szövegeket a hús-vér beszélők.
Akkor kiderült, hogy van-e különbség az emberi és a gépi szövegértés között?
„Orbán Viktor Angela Merkellel találkozott múlt héten Budapesten.” Egy ember tudja, hogy az Orbán és a Viktor szavak összetartoznak, de az Angela már egy másik csoport eleme. Sőt, a főnévi csoportokhoz köt egy csomó további ismeretet is: világnézetit, közéletit, politikait, stb. A gép számára mindez – legalábbis elsőre – nem egyértelmű. Nem beszélve arról, hogy a hús-vér beszélők lineárisan olvasnak és értik meg a szöveget, míg egy hagyományosnak tekinthető szövegelemző algoritmus kénye-kedve szerint ide-oda ugrál a szövegben értelmezés közben. A beszélőket ugyanakkor segíti az értelmezésben a teljes ismeretanyaguk. Amikor a tévéhíradó közben a képernyő alján megjelenik a hírszalagon az első szó, Orbán, a magyar nézők már azelőtt tudják, hogy jó eséllyel a Viktor betűsor fogja követni, hogy az valóban megjelenne. Egyúttal öntudatlan hipotézisek tucatjait is gyártják azzal kapcsolatban, hogy a következő szavak mit is tárnak majd fel. Bel-, vagy külpolitikai jelentőségük lesz? Más politikusok is szerepelni fognak a mondatban?
Még mindig kérdés, milyen gyakorlati haszna lesz, ha ezt egy gép is meg tudja majd csinálni.
A program, vagy ha úgy tetszik, a gép idővel kommunikálni tud majd az emberrel. Feltehetően sosem fog egy Turing-teszten csillagos ötösre vizsgázni, más kérdés, hogy azon sok ember se menne át. Hatékonyan segítheti viszont az emberek életét és munkáját. Egy ultramodern számítógépnek elég lesz szóban odavakkantani egy hiányos mondatot, például, hogy „ma este könnyű vígjáték moziban” és a másodperc tört része alatt már a személyre szabott lehetőségek közül válogathatunk.
Vagyis egy fejlettebb Google-kereső lesz a végeredmény? Ez mintha már úgy se jött volna be, hogy évekkel megelőzték a a Google ingyenes szolgáltatását.
Akárcsak a Google-fordító kicsivel jobb vetélytársára, arra valóban nemigen lesz igény, hogy az emberek valamivel pontosabb, esetleg sokkal személyre szabottabb keresőhöz jussanak, csak épp pénzért. Más kérdés, hogy az általános keresőmotorok szolgáltatóinak nem is érdeke, hogy jobb végeredményt szolgáltassanak, esetleg akkor sem, ha az technikailag megoldható lenne. Látszólag ingyenes szolgáltatásaikért ugyanis csak a végfelhasználótól nem kérnek pénzt, ugyanakkor hatalmas profitot termelnek azzal, hogy a monitor előtt ülők nem rögtön, esetleg soha nem is jutnak el az eredetileg keresett céljukhoz. Ehelyett a keresőprogram keltette „zaj” miatt olyan szájtokat keresnek fel és olyan termékeket rendelnek meg, amelyekre nemhogy szükségük nincs, de még csak eszükbe sem jutott, hogy akár be is szerezhetnék.
Kinek lesz akkor kifizetődő egy precízen és gyorsan kommunikáló gépi szövegelemzőbe beruházni?
A nagyon összetett, speciális munkavégzést igénylő feladatkörökben például felbecsülhetetlen értéke lehet egy gyors és pontos szövegelemző programnak. Egy idegsebésznek akár a műtőben is szüksége lehet olyan plusz információra, ami a másodpercek alatt meghozandó döntéseit segíti. Több korpusz megtanításával pedig egy program közvetíthet is a korpuszok között, magyarul képessé válik arra, hogy szövegeket fordítson.
Nem erről említette, hogy visszaesett rá a kereslet?
Viszont most gondolkodni is megtanítjuk a programot. A korpuszt a neurális tanulás alapjaként is használjuk. A szóbeágyazási modellként ismert eljárás lényege nagyon leegyszerűsítve az, hogy minden szónak a környezete határozza meg a pontos jelentését. Egy őrületes méretű szövegtestben egy hatalmas számítási kapacitással bíró rendszer rendkívül sok jelentésárnyalatot képes elkülöníteni. Ennek révén meg is tudja tanulni a jelentésre vonatkozó információkat, magyarul, világismeretre tesz szert. A szavakból egy sokdimenziós koordinátarendszerben – vektorok segítségével – szócsoportokat tud alkotni. Munkatársaim, Siklósi Borbála és Novák Attila különféle paraméterbeállítások révén ilyen szóklaszterek alkotására buzdítják a szövegelemző szoftvert.
Ebből lesz a mesterséges intelligencia?
Ebből annyi biztosan látszik, hogy a gép, valójában a szoftver, ami az irgalmatlan kapacitású gépen fut, képes az emberhez hasonlóan osztályozni a világ dolgait, méghozzá úgy, hogy a gépet kezelő ember nem érti pontosan, hogyan csinálta. A nyelvész-informatikus „csak” beállítja, hogy a szóklasztereket például 300 különféle dimenzió figyelembe vételével, illetve az alapján hozza létre, hogy a vizsgált szó közvetlen, mondjuk 5-5 szóig terjedő környezetében milyen más kifejezések vannak. A szövegben szunnyadó információ alapján a gép így építgeti a világismeretét.
Miért olyan nehéz ezt nyomon követni?
Amikor a távfűtési karbantartó a gépházban meghúz egy kart, hogy leeressze a felesleges gőzt, feltehetően fogalma nincs arról, hogy a kijövő gőznek pontosan mi az összetétele, mekkora a sűrűsége, stb. Azt tudja, mennyire kell meghúznia a kart ahhoz, hogy a rendszer kifogástalanul működjön. Kis túlzással ilyesmi egy neurális modell is. Azt tudjuk, hogyan szokott kinézni egy szöveg, és abból mit szokott érteni a beszélő. Szövegértéskor az emberi agyban is legalább annyi történik, mint amit a program működéséből látunk. A szövegelemző szoftver numerikus tényezők alapján játszi könnyedséggel kezel több száz dimenziót, amelyek alapján csoportokba sorolja a szavakat. A végén így az egér egy szócsoportba kerül a patkánnyal. De egy klaszterben lesz a klaviatúrával vagy például a majommal is. Miközben a rágcsálók halmaza, vagy a számítógéphasználat eszközei viszonylag egyértelműen adják magukat, a majommal való rokonítás első hallásra a hús-vér felhasználó számára furcsa lehet. Aztán kisül, hogy a korpuszban több helyen is felbukkannak orvosi kísérletekben használt állatok. A gép pedig arra az egyébként rendkívül logikus következtetésre jutott, hogy az egérnek és a majomnak lehet némi köze egymáshoz. Az emberi agy ennél jóval több információt kezel. Csak azt nem tudjuk még, hogy hogyan.