Nagyot okosodott múlt héten a Google Fordító magyar kiadása. Ahogy mi is megírtuk, most már elég a telefon kameráját egy idegen nyelvű feliratra irányítani, és a program ezentúl magyarra is azonnal lefordítja a szöveget, ráadásul az eredeti stílusában jeleníti meg a fordítást. Mindezt internetkapcsolat nélkül, magában a telefonban bonyolítja le az app. Eddig hét nyelvvel tudta ezt, miután a Google felvásárolta és beépítette a Word Lens nevű appot a saját szolgáltatásába. A magyarral együtt most 20 új nyelvvel bővült a valós idejű vizuális fordítás. (Offline csak a magyar-angol és angol-magyar megy, netkapcsolattal összesen 35 nyelv vált átjárhatóvá.)
Mindez azonban iszonyatosan számításigényes munka. Hogyan sikerült az egészet beleszuszakolni egy offline mobilappba? Hát úgy, hogy
A képfelismerés hatékonysága az utóbbi években radikálisan megnőtt. Öt éve még azt se tudták megmondani a gépek, hogy egy kutyát vagy egy macskát látnak, ma már jó eséllyel a pontos fajtájukat is meg tudják maguktól határozni. Ez a mesterséges neurális hálózatoknak köszönhető, amelyek az idegrendszer biológiai modelljén alapulnak. A hálózatok a műveleteket végző neuronokból állnak, az ezek közötti kapcsolatok változtatásával lehet a rendszert valamilyen feladatra hangolni. A rendszer része valamilyen tanulóalgoritmus, amely a számára bemutatott minták alapján képes fejlődni és egyre ügyesebben elvégezni a feladatát.
Ezt a tanulási folyamatot egyre fejlettebb mélytanulási (deep learning) algoritmus vezérli. Ez a különböző típusú adatokat külön rétegekben dolgozza fel, amelyek egymásra épülnek és egymással átfedésben állnak. A Google algoritmusa például több mint 30 réteggel dolgozik, és így
Ennek segítségével tudja megállapítani például azt is, hogy a Google Képek szolgáltatásba feltöltött képeinken mi látható (és vét néha nagyon vicces hibákat). De ugyanez teszi lehetővé, hogy állóképek elemzésével képes legyen újraalkotni azt a háromdimenziós teret, amelyben azok készültek. A képfelismerést visszafordítva pedig szürreális képeket alkothat. És persze a mélytanulás nemcsak képfelismerésre alkalmas, maga a Google – által felvásárolt Deepmind – például profi videojátékost nevelt egy algoritmusból, anélkül, hogy előre megadta volna neki a játékszabályokat.
A mélytanulás ezért a mesterséges intelligencia kutatásának egyik sarokköve. Maga a technológia nem is annyira új, de csak az utóbbi években társult hozzá elég adat, amiből tanulhat a rendszer, és elég számítási kapacitás, amivel mindez elvégezhető. Vagyis mostanra jött össze az, hogy a gépeknek van miből, mivel és hogyan tanulni és fejlődni.
A Google egy blogbejegyzésben írja le, hogyan működik az a folyamat, amellyel magát a vizuális fordítást kidolgozták és gyengébb telefonokon is működésre bírták. A folyamat négy fő lépésből áll:
Mindez szép és jó, ha a felhőn keresztül az embernek rendelkezésére állnak a Google városméretű adatközpontjai. Az igazi feladat viszont éppen az, hogy a fenti folyamatot internet nélkül, a telefonba zárt appal is el lehessen végezni. Ez pedig már csak azért se könnyű, mert ugyan nyilván egyik okostelefon se mérhető a cég szervereihez, még a mobilok között is óriási különbségek vannak. Márpedig az offline elérhetőség valószínűleg éppen nem a csúcstelefonok, hanem a gyengébb eszközök gazdáinak lehet fontos.
Ezért a fejelsztők nagyon kicsi neurális hálót építettek, és elkezdtek kísérletezni a pontosság és hatékonyság közötti egyensúllyal. Úgy próbálták az algoritmus kiképzéséhez összeállítani a gyakorlóadatokat, hogy semmi nélkülözhetővel ne kelljen bajlódnia, viszont az életszerű szituációk megoldásához szükséges minimális tudást el tudja belőlük sajátítani, majd addig tekergették-csavargatták a paramétereket, amíg úgy nem látták, hogy működőképes az eredmény. Ezért mondjuk egy étterem menüjével biztosan nem lesz gondja az algoritmusnak, extrém szituációkkal, szélsőségesen torz szövegekkel viszont nem biztos, hogy meg fog tudni birkózni. Persze mindehhez még a háttérben futó számításokat is optimalizálni kellett, hogy a telefon hardverét minél jobban ki tudják használni, és tényleg valós időben fusson a szolgáltatás.
A dolog persze mérsékelten lenne érdekes, ha csak néhány tábla lefordítására használható, ügyes trükk lenne. A jelentősége abban áll, hogy a jövőben egyre több olyan app érkezhet, amely neurális hálózatokat költöztet az eszközeinkbe, net nélkül is sokkal okosabbá és hatékonyabbá téve őket. A Qualcomm már tervezi is az új csipjeit, amelyek megkönnyítik majd mindezt.