Platforma TensorFlow od Googlu umožňuje svojim používateľom trénovať AI poskytovaním nástrojov a zdrojov pre strojové učenie. Inžinieri AI už dlhú dobu používajú tradičné CPU a GPU na trénovanie AI. Hoci tieto procesory dokážu zvládnuť rôzne procesy strojového učenia, stále ide o univerzálny hardvér používaný na rôzne každodenné úlohy.
Na urýchlenie školenia AI spoločnosť Google vyvinula integrovaný obvod špecifický pre aplikáciu (ASIC) známy ako jednotka na spracovanie tenzora (TPU). Čo je to však jednotka na spracovanie Tensor a ako urýchli programovanie AI?
Čo sú jednotky na spracovanie tenzorov (TPU)?
Jednotky na spracovanie tenzorov sú od spoločnosti Google ASIC pre strojové učenie. TPU sa špecificky používajú na hlboké učenie na riešenie zložitých maticových a vektorových operácií. TPU sú efektívne, aby riešili maticové a vektorové operácie pri ultra vysokých rýchlostiach, ale musia byť spárované s CPU, aby mohli dávať a vykonávať inštrukcie. Jednotky TPU je možné používať iba so zariadeniami Google
Platforma TensorFlow alebo TensorFlow Lite, či už prostredníctvom cloud computingu alebo jeho odľahčenej verzie na lokálnom hardvéri.Aplikácie pre TPU
Google používa TPU od roku 2015. Potvrdili tiež použitie týchto nových procesorov na spracovanie textu Google Street View, Fotky Google a Výsledky vyhľadávania Google (Rank Brain), as ako aj vytvoriť AI známu ako AlphaGo, ktorá porazila najlepších hráčov Go a systém AlphaZero, ktorý vyhral nad poprednými programami v šachu, go a Shogi.
TPU môžu byť použité v rôznych aplikáciách hlbokého učenia, ako je detekcia podvodov, počítačové videnie, prirodzený jazyk spracovanie, samojazdiace autá, vokálna AI, poľnohospodárstvo, virtuálni asistenti, obchodovanie s akciami, elektronický obchod a rôzne sociálne predpovede.
Kedy použiť TPU
Keďže TPU sú vysoko špecializovaný hardvér na hlboké učenie, stráca mnoho ďalších funkcií, ktoré by ste zvyčajne očakávali od univerzálneho procesora, ako je CPU. S ohľadom na to existujú špecifické scenáre, v ktorých použitie TPU prinesie najlepší výsledok pri trénovaní AI.
Najlepší čas na použitie TPU je pri operáciách, kde sa modely vo veľkej miere spoliehajú na maticové výpočty, ako sú napríklad systémy odporúčaní pre vyhľadávače. TPU tiež prinášajú skvelé výsledky pre modely, kde AI analyzuje obrovské množstvo údajových bodov, ktorých dokončenie bude trvať niekoľko týždňov alebo mesiacov. Inžinieri AI používajú TPU pre prípady bez vlastných modelov TensorFlow a musia začať od nuly.
Kedy nepoužívať jednotky TPU
Ako už bolo spomenuté, optimalizácia TPU spôsobuje, že tieto typy procesorov pracujú iba pri špecifických operáciách pracovného zaťaženia. Preto existujú prípady, keď sa rozhodnete pre použitie tradičného CPU a GPU prinesie rýchlejšie výsledky. Tieto prípady zahŕňajú:
- Rýchle prototypovanie s maximálnou flexibilitou
- Modely obmedzené dostupnými dátovými bodmi
- Modely, ktoré sú jednoduché a dajú sa rýchlo vycvičiť
- Modely sú príliš náročné na zmenu
- Modely sa spoliehajú na vlastné operácie TensorFlow napísané v C++
Verzie a špecifikácie TPU
Odkedy Google oznámil svoje TPU, verejnosť bola neustále informovaná o najnovších verziách TPU a ich špecifikáciách. Nasleduje zoznam všetkých verzií TPU so špecifikáciami:
TPUv1 | TPUv2 | TPUv3 | TPUv4 | Edgev1 | |
---|---|---|---|---|---|
Dátum zavedenia | 2016 | 2017 | 2018 | 2021 | 2018 |
Procesný uzol (nm) | 28 | 16 | 16 | 7 | |
Veľkosť matrice (mm²) | 331 | <625 | <700 | <400 | |
Pamäť na čipe | 28 | 32 | 32 | 144 | |
Rýchlosť hodín (MHz) | 700 | 700 | 940 | 1050 | |
Najmenšia konfigurácia pamäte (GB) | 8 DDR3 | 16 HBM | 32 HBM | 32 HBM | |
TDP (watty) | 75 | 280 | 450 | 175 | 2 |
TOPS (počet operácií za sekundu) | 23 | 45 | 90 | ? | 4 |
TOPS/W | 0.3 | 0.16 | 0.2 | ? | 2 |
Ako môžete vidieť, rýchlosť hodín TPU sa nezdá byť taká pôsobivá, najmä keď moderné stolné počítače dnes môžu mať rýchlosť hodín 3-5 krát rýchlejšie. Ale ak sa pozriete na spodné dva riadky tabuľky, môžete vidieť, že TPU dokážu spracovať 23-90 tera-operácií za sekundu s použitím iba 0,16-0,3 wattov energie. Odhaduje sa, že TPU sú 15-30-krát rýchlejšie ako moderné CPU a GPU pri použití rozhrania neurónovej siete.
S každou vydanou verziou vykazujú novšie TPU významné vylepšenia a možnosti. Tu je niekoľko zvýraznení pre každú verziu.
- TPUv1: Prvý verejne ohlásený TPU. Navrhnutý ako 8-bitový maticový multiplikačný engine a je obmedzený na riešenie iba celých čísel.
- TPUv2: Keďže inžinieri poznamenali, že TPUv1 má obmedzenú šírku pásma. Táto verzia má teraz dvojnásobnú šírku pásma pamäte so 16 GB RAM. Táto verzia teraz dokáže vyriešiť plávajúce bodové čiary, čo je užitočné na školenie a odvodzovanie.
- TPUv3: Vydaný v roku 2018, TPUv3 má dvakrát viac procesorov a je nasadený so štvornásobným počtom čipov ako TPUv2. Inovácie umožňujú tejto verzii dosiahnuť osemnásobný výkon oproti predchádzajúcim verziám.
- TPUv4: Toto je najnovšia verzia TPU ohlásená 18. mája 2021. Generálny riaditeľ spoločnosti Google oznámil, že táto verzia bude mať viac ako dvojnásobný výkon ako TPU v3.
- Hrana TPU: Táto verzia TPU je určená pre menšie operácie optimalizované na spotrebu menej energie ako iné verzie TPU v celkovej prevádzke. Aj keď využíva iba dva watty energie, Edge TPU dokáže vyriešiť až štyri terra-operácie za sekundu. Edge TPU sa nachádza iba na malých vreckových zariadeniach, ako je smartfón Pixel 4 od Googlu.
Ako získate prístup k TPU? Kto ich môže používať?
TPU sú proprietárne jednotky spracovania navrhnuté spoločnosťou Google na použitie s platformou TensorFlow. Prístup tretích strán k týmto procesorom je povolený od roku 2018. Dnes sú TPU (okrem Edge TPU) prístupné iba cez Google výpočtové služby prostredníctvom cloudu. Zatiaľ čo hardvér Edge TPU je možné zakúpiť prostredníctvom smartfónu Pixel 4 od spoločnosti Google a jeho prototypovej súpravy známej ako Coral.
Coral je USB akcelerátor, ktorý využíva USB 3.0 typu C na dáta a napájanie. Poskytuje vášmu zariadeniu výpočtový výkon Edge TPU schopný 4 TOPS na každé 2 W výkonu. Táto súprava môže bežať na počítačoch používajúcich Windows 10, macOS a Debian Linux (môže pracovať aj s Raspberry Pi).
Ďalšie špecializované akcelerátory AI
Keďže umelá inteligencia je v poslednom desaťročí v móde, Big Tech neustále hľadá spôsoby, ako čo najrýchlejšie a najefektívnejšie strojové učenie. Aj keď sú TPU od spoločnosti Google pravdepodobne najpopulárnejšie ASIC vyvinuté pre hlboké učenie, ďalšie technologické spoločnosti ako Intel, Microsoft, Alibaba a Qualcomm tiež vyvinuli svoje vlastné akcelerátory AI. Patria sem Microsoft Brainwave, Intel Neural Compute Stick a IPU (Intelligence Processing Unit) od Graphicore.
Ale zatiaľ čo sa vyvíja viac hardvéru AI, bohužiaľ väčšina z nich ešte nie je dostupná na trhu a mnohí nikdy nebudú. V čase písania, ak si naozaj chcete kúpiť hardvér akcelerátora AI, najobľúbenejšou možnosťou je kúpiť súpravu prototypov Coral, Intel NCS, Graphicore Bow Pod alebo Asus IoT AI Accelerator. Ak chcete iba prístup k špecializovanému hardvéru AI, môžete použiť služby cloud computingu Google alebo iné alternatívy, ako je Microsoft Brainwave.