Googlova platforma TensorFlow svojim uporabnikom omogoča usposabljanje AI z zagotavljanjem orodij in virov za strojno učenje. Inženirji umetne inteligence že dolgo uporabljajo tradicionalne procesorje in grafične procesorje za usposabljanje umetne inteligence. Čeprav lahko ti procesorji upravljajo z različnimi procesi strojnega učenja, so še vedno strojna oprema za splošno uporabo, ki se uporablja za različna vsakodnevna opravila.
Da bi pospešil usposabljanje AI, je Google razvil integrirano vezje, specifično za aplikacijo (ASIC), znano kot Tensor Processing Unit (TPU). Toda, kaj je Tensor Processing Unit in kako pospešijo programiranje AI?
Kaj so tenzorske procesne enote (TPU)?
Tensor Processing Units so Googlove ASIC za strojno učenje. TPU se posebej uporabljajo za globoko učenje za reševanje kompleksnih matričnih in vektorskih operacij. TPU-ji so poenostavljeni za reševanje matričnih in vektorskih operacij pri izjemno visokih hitrostih, vendar morajo biti združeni s CPE-jem za dajanje in izvajanje navodil. TPU-je je dovoljeno uporabljati samo z Googlovimi
Platforma TensorFlow ali TensorFlow Lite, prek računalništva v oblaku ali njegove različice Lite na lokalni strojni opremi.Aplikacije za TPU
Google uporablja TPU od leta 2015. Prav tako so potrdili uporabo teh novih procesorjev za obdelavo besedil Google Street View, Google Photos in Google Search Results (Rank Brain), kot kot tudi ustvariti AI, znan kot AlphaGo, ki je premagal vrhunske igralce Go in sistem AlphaZero, ki je zmagal pred vodilnimi programi v šahu, gou in Shogi.
TPU-je je mogoče uporabiti v različnih aplikacijah za globoko učenje, kot so odkrivanje goljufij, računalniški vid, naravni jezik predelava, samovozeči avtomobili, glasovna umetna inteligenca, kmetijstvo, virtualni pomočniki, trgovanje z delnicami, e-trgovina in različna družabna napovedi.
Kdaj uporabiti TPU
Ker so TPE visoko specializirana strojna oprema za globoko učenje, izgubi veliko drugih funkcij, ki bi jih običajno pričakovali od procesorja za splošne namene, kot je CPE. S tem v mislih obstajajo posebni scenariji, kjer bo uporaba TPU-jev prinesla najboljše rezultate pri usposabljanju AI.
Najboljši čas za uporabo TPU je za operacije, kjer se modeli močno zanašajo na matrične izračune, kot so sistemi priporočil za iskalnike. TPU-ji prav tako dajejo odlične rezultate za modele, pri katerih umetna inteligenca analizira ogromne količine podatkovnih točk, ki bodo trajale več tednov ali mesecev. Inženirji AI uporabljajo TPU-je za primere brez prilagojenih modelov TensorFlow in morajo začeti iz nič.
Kdaj ne uporabljati TPU-jev
Kot je bilo že omenjeno, optimizacija TPU-jev povzroči, da te vrste procesorjev delujejo samo pri določenih operacijah delovne obremenitve. Zato obstajajo primeri, ko bo uporaba tradicionalnega CPE in GPE prinesla hitrejše rezultate. Ti primeri vključujejo:
- Hitra izdelava prototipov z največjo prilagodljivostjo
- Modeli so omejeni z razpoložljivimi podatkovnimi točkami
- Modeli, ki so preprosti in jih je mogoče hitro usposobiti
- Modeli so prezahtevni za spreminjanje
- Modeli, ki so odvisni od operacij TensorFlow po meri, napisanih v C++
Različice in specifikacije TPU
Odkar je Google objavil svoje TPU-je, je javnost nenehno obveščena o najnovejših različicah TPU-jev in njihovih specifikacijah. Sledi seznam vseh različic TPU s specifikacijami:
TPUv1 | TPUv2 | TPUv3 | TPUv4 | Edgev1 | |
---|---|---|---|---|---|
Datum predstavitve | 2016 | 2017 | 2018 | 2021 | 2018 |
Procesno vozlišče (nm) | 28 | 16 | 16 | 7 | |
Velikost matrice (mm²) | 331 | <625 | <700 | <400 | |
Pomnilnik na čipu | 28 | 32 | 32 | 144 | |
Hitrost ure (MHz) | 700 | 700 | 940 | 1050 | |
Najmanjša konfiguracija pomnilnika (GB) | 8 DDR3 | 16 HBM | 32 HBM | 32 HBM | |
TDP (vati) | 75 | 280 | 450 | 175 | 2 |
TOPS (tera operacije na sekundo) | 23 | 45 | 90 | ? | 4 |
TOPS/W | 0.3 | 0.16 | 0.2 | ? | 2 |
Kot lahko vidite, se hitrosti TPU ne zdijo tako impresivne, še posebej, če imajo sodobni namizni računalniki takt 3- do 5-krat hitreje. Toda če pogledate spodnji dve vrstici tabele, lahko vidite, da lahko TPU-ji obdelajo 23-90 tera-operacij na sekundo z uporabo samo 0,16-0,3 vata moči. Ocenjuje se, da so TPU-ji 15-30-krat hitrejši od sodobnih CPE-jev in GPU-jev pri uporabi vmesnika nevronske mreže.
Z vsako izdano različico novejši TPU-ji kažejo pomembne izboljšave in zmogljivosti. Tukaj je nekaj poudarkov za vsako različico.
- TPUv1: Prvi javno objavljeni TPU. Zasnovan kot 8-bitni mehanizem za množenje matrik in je omejen samo na reševanje celih števil.
- TPUv2: Ker so inženirji opazili, da je pasovna širina TPUv1 omejena. Ta različica ima zdaj dvojno pasovno širino pomnilnika s 16 GB RAM-a. Ta različica lahko zdaj rešuje plavajoče točke, zaradi česar je uporabna za usposabljanje in sklepanje.
- TPUv3: TPUv3, ki je bil izdan leta 2018, ima dvakrat več procesorjev in je nameščen s štirikrat več čipi kot TPUv2. Nadgradnje tej različici omogočajo osemkratno zmogljivost v primerjavi s prejšnjimi različicami.
- TPUv4: To je najnovejša različica TPU, objavljena 18. maja 2021. Googlov izvršni direktor je napovedal, da bo imela ta različica več kot dvakrat večjo zmogljivost kot TPU v3.
- Edge TPU: Ta različica TPU je namenjena manjšim operacijam, optimiziranim za manjšo porabo energije kot druge različice TPU pri celotnem delovanju. Čeprav uporablja samo dva vata moči, lahko Edge TPU reši do štiri terra-operacije na sekundo. Edge TPU je na voljo le v majhnih ročnih napravah, kot je Googlov pametni telefon Pixel 4.
Kako dostopate do TPU-jev? Kdo jih lahko uporablja?
TPU-ji so lastniške procesne enote, ki jih je Google zasnoval za uporabo s svojo platformo TensorFlow. Dostop tretjih oseb do teh procesorjev je dovoljen od leta 2018. Danes je do TPU-jev (razen TPU-jev Edge) mogoče dostopati samo prek Googla računalniške storitve prek oblaka. Medtem ko je strojno opremo Edge TPU mogoče kupiti prek Googlovega pametnega telefona Pixel 4 in njegovega kompleta za izdelavo prototipov, znanega kot Coral.
Coral je USB pospeševalnik, ki uporablja USB 3.0 Type C za podatke in napajanje. Vaši napravi zagotavlja Edge TPU računalništvo, ki zmore 4 TOPS za vsaka 2 W moči. Ta komplet lahko deluje na napravah, ki uporabljajo Windows 10, macOS in Debian Linux (lahko deluje tudi z Raspberry Pi).
Drugi specializirani AI pospeševalniki
Ker je umetna inteligenca v zadnjem desetletju v modi, Big Tech nenehno išče načine, kako narediti strojno učenje čim hitrejše in učinkovitejše. Čeprav so Googlovi TPU-ji nedvomno najbolj priljubljen ASIC, razvit za globoko učenje, so tudi druga tehnološka podjetja, kot so Intel, Microsoft, Alibaba in Qualcomm, razvila lastne pospeševalnike AI. Sem spadajo Microsoft Brainwave, Intel Neural Compute Stick in Graphicore IPU (Intelligence Processing Unit).
Toda medtem ko se razvija več strojne opreme AI, na žalost večina še ne bo na voljo na trgu, mnoge pa tudi nikoli ne bodo. V času pisanja, če res želite kupiti strojno opremo za pospeševanje umetne inteligence, so najbolj priljubljene možnosti nakup kompleta za izdelavo prototipov Coral, Intel NCS, Graphicore Bow Pod ali Asus IoT AI Accelerator. Če želite samo dostop do specializirane strojne opreme AI, lahko uporabite Googlove storitve računalništva v oblaku ali druge alternative, kot je Microsoft Brainwave.