levo človeški dizajn, desno strojni
vir: NatureSodobni računalniški procesorji vsebujejo milijarde tranzistorjev, zato je organiziranje njihovih sestavnih delov izjemno zahtevno početje. Ko inženirji zasnujejo kompleksnejše gradnike neke arhitekture, kot so na primer sklopi logičnih vrat in pomnilnika, pride na vrsto njihovo razpostavljanje na silicij ali s tujko floorplanning. To je presneto zamudno početje, ki pri najsodobnejših izdelkih običajno traja nekje od štiri do šest mesecev. Načrtovalci ga - resda s podporo digitalnih orodij - še vedno izvajajo v grobem rečeno "na roke", skozi iterativni postopek, kjer razpostavljajo elemente od večjih proti manjšim in nato zanko ponavljajo, dokler zmogljivost, električna poraba in površina čipa niso v želenih mejah. Začuda se je ta segment razvoja procesorjev doslej večjidel izmikal avtomatizaciji, pa čeprav z izkoriščanjem strojnega učenja za optimizacijo dizajna elektronskih elementov eksperimentiramo že desetletja. A očitno samo nismo poskušali dovolj, kajti lansko pomlad so Googlovi raziskovalci na Arxivu prvič razkrili algoritem, ki pomeni bistven preboj na tem področju.
V dobrem letu je zamisel očitno dozorela, kajti pred dnevi je skladno z recenzirano objavo v reviji Nature prišla tudi novica, da prijem že uporabljajo pri razvoju naslednika čipa Tensor Processing Unit (TPU) v4, ki smo ga sicer videli pred tedni na Googlovi konferenci I/O. Algoritem naj bi bil zmožen sestaviti rešitve, kvalitativno primerljive tistim, ki jih zasnujejo človeški načrtovalci - le da v šestih urah namesto v šestih mesecih! Gre torej za potencialno prelomen dogodek v industriji polprevodnikov, ki si je posledično priboril tudi komentar uredništva, v katerem stoji namig, da bodo morale biti tovrstne zmogljivosti enakomerno porazdeljene širom industrije, če nočemo, da peščica najmočnejših igralcev na trgu popolnoma pobegne konkurenci. Spodbudno je, da so v Googlu obljubili, da bodo kodo kmalu dali na razpolago.
Strojni algoritem so raziskovalci, ki sicer niso del Alphabetovega laboratorija DeepMind, oblikovali na zamisli, da bi izziv razporejanja gradnikov mikročipa ponazorili z namizno igro, kot je Go, kjer pa je "kamenčkov" mnogo več in so kriteriji za "zmago" precej kompleksnejši. Globoko nevronsko mrežo so s postopkom spodbujevanega učenja trenirali na 10.000 vzorčnih dizajnih čipov, od katerih je bil sicer dobršen delež tudi avtomatsko generiran. Kot se za strojno pamet spodobi, v nekaterih ozirih "razmišlja" precej drugače kot človek in kakor je moč videti na sliki, gradnike postavlja na videz precej bolj raztreseno od ljudi - toda s primerljivimi rezultati! Zanimivosti je še več; raziskovalci so denimo velik del kriterijev za zmogljivost in porabo čipa ponazorili z razmeroma preprostimi funkcijami, kar pa očitno ni osiromašilo učinkovitosti algoritma, zato bržkone vsa industrija polprevodnikov komaj čaka, da lahko natančneje vpogleda v program. Ker je floorplanning samo del oblikovanja čipov, je to seveda šele začetek napredne rabe strojnega učenja v tem segmentu. V Googlu se med drugim že igrajo tudi z algoritmi, ki oblikujejo arhitekture na še bolj bazični ravni.