Google pokazal TPU, možgane za igralcem goja

Matej Huš

20. maj 2016 ob 08:48:00

Google nas je popeljal korak bliže odgovora na vprašanje, kako neki je AlphaGo letos v starodavni igri go zmlel najboljšega Zemljana Leeja Sedola. Jasno je, da je Googlov AlphaGo uporabljal strojno učenje, a to samo po sebi seveda ni dovolj. Če bi se šel strojno učenje na prenosnem računalniku, bi Lee Sedol še vedno prepričljivo zmagal. AlphaGo je imel namensko strojno opremo, in to zelo močno, je končno razkril Google.

Skrivni projekt TPU so začeli že pred leti in je letos napredoval do komercialno zanimivega izdelka. TPU pomeni tensor processing unit in pri strojnem učenju nudi za velikostni razred boljše zmogljivosti od klasičnih procesorjev pri enaki porabi energije. Tehnološko je TPU posebno vezje (ASIC), ki je namenjeno točno določenemu namenu, ki je v tem primeru strojno oziroma globoko učenje ter nevronske mreže. V tem pogledu je TPU prilagojen Googlovemu orodju TensorFlow, s katerim se lahko s strojnim učenjem igra vsakdo z dovolj znanja.

Ker je TPU prilagojen strojnemu učenju, potrebuje manjšo natančnost in s tem tudi manj tranzistorjev, zato lahko ob isti porabi energije iz njega iztisnejo več. Fizično ga najdemo na ploščici, ki jo lahko vdenemo v režo za trde diske v omari (rack) za strežnike. TPU-ju že poganjajo nekatere aplikacije v Googlu, denimo RankBrain (za izboljšanje iskanja po StreetViewu) in seveda AlphaGo.

Nevronske mreže uporabljajo tudi ostala podjetja, npr. Facebook ali Microsoft. Te večinoma uporabljajo zmogljive grafične procesorje, ki jih proizvajata AMD in Nvidia, nekateri pa tudi FPGA-je (ti so za razliko ASIC-ov re-programljivi). Google pa si je izdelal kar svoj kos strojne opreme, ki ga uspešno uporabljajo že približno leto dni.