„Google“ platforma „TensorFlow“ leidžia vartotojams mokyti dirbtinį intelektą, teikdama mašininio mokymosi įrankius ir išteklius. Ilgą laiką dirbtinio intelekto inžinieriai naudojo tradicinius CPU ir GPU, kad mokytų AI. Nors šie procesoriai gali valdyti įvairius mašininio mokymosi procesus, jie vis tiek yra bendrosios paskirties aparatinė įranga, naudojama įvairioms kasdienėms užduotims atlikti.
Siekdama paspartinti dirbtinio intelekto mokymą, „Google“ sukūrė specialią taikomąją programą (ASIC), žinomą kaip tenzorio apdorojimo blokas (TPU). Bet kas yra Tensor Processing Unit ir kaip jie pagreitina AI programavimą?
Kas yra tensoriniai apdorojimo įrenginiai (TPU)?
„Tensor Processing Units“ yra „Google“. ASIC mašininiam mokymuisi. TPU yra specialiai naudojami giliam mokymuisi, siekiant išspręsti sudėtingas matricos ir vektorines operacijas. TPU yra supaprastinti, kad būtų galima išspręsti matricos ir vektorines operacijas itin dideliu greičiu, tačiau jie turi būti suporuoti su centriniu procesoriumi, kad pateiktų ir vykdytų instrukcijas. TPU galima naudoti tik su Google
TensorFlow arba TensorFlow Lite platforma, naudojant debesų kompiuteriją arba jos supaprastintą versiją vietinėje aparatinėje įrangoje.Programos TPU
„Google“ naudoja TPU nuo 2015 m. Jie taip pat patvirtino, kad šie nauji procesoriai naudojami „Google Street View“ teksto apdorojimui, „Google“ nuotraukoms ir „Google“ paieškos rezultatams („Rank Brain“). taip pat sukurti dirbtinį intelektą, žinomą kaip AlphaGo, kuris įveikė geriausius Go žaidėjus ir AlphaZero sistemą, kuri laimėjo prieš pirmaujančias šachmatų, go ir Shogi.
TPU gali būti naudojami įvairiose gilaus mokymosi programose, tokiose kaip sukčiavimo aptikimas, kompiuterinis matymas, natūrali kalba apdorojimas, savarankiškai važiuojantys automobiliai, vokalinis AI, žemės ūkis, virtualūs asistentai, prekyba akcijomis, elektroninė prekyba ir įvairios socialinės prognozės.
Kada naudoti TPU
Kadangi TPU yra labai specializuota aparatinė įranga, skirta giliam mokymuisi, ji praranda daug kitų funkcijų, kurių paprastai tikitės iš bendros paskirties procesoriaus, pavyzdžiui, procesoriaus. Turint tai omenyje, yra konkrečių scenarijų, kai naudojant TPU bus gauti geriausi rezultatai treniruojant AI.
Geriausias laikas naudoti TPU yra operacijoms, kai modeliai labai priklauso nuo matricos skaičiavimų, pvz., rekomendacijų sistemos paieškos sistemoms. TPU taip pat duoda puikių rezultatų modeliams, kuriuose AI analizuoja didžiulius duomenų kiekius, kuriems atlikti prireiks kelių savaičių ar mėnesių. AI inžinieriai naudoja TPU tais atvejais, kai nėra pritaikytų TensorFlow modelių ir turi pradėti nuo nulio.
Kada nenaudoti TPU
Kaip minėta anksčiau, dėl TPU optimizavimo šių tipų procesoriai veikia tik tam tikromis darbo krūvio operacijomis. Todėl yra atvejų, kai pasirenkant naudoti tradicinį procesorių ir GPU, rezultatai bus greitesni. Šie atvejai apima:
- Greitas prototipų kūrimas su maksimaliu lankstumu
- Modeliai, kuriuos riboja turimi duomenų taškai
- Paprasti modeliai, kuriuos galima greitai išmokyti
- Modeliai pernelyg sudėtingi keisti
- Modeliai priklauso nuo pasirinktinių TensorFlow operacijų, parašytų C++
TPU versijos ir specifikacijos
Nuo tada, kai „Google“ paskelbė apie savo TPU, visuomenė buvo nuolat atnaujinama apie naujausias TPU versijas ir jų specifikacijas. Toliau pateikiamas visų TPU versijų sąrašas su specifikacijomis:
TPUv1 | TPUv2 | TPUv3 | TPUv4 | Edgev1 | |
---|---|---|---|---|---|
Pristatymo data | 2016 | 2017 | 2018 | 2021 | 2018 |
Proceso mazgas (nm) | 28 | 16 | 16 | 7 | |
Štampo dydis (mm²) | 331 | <625 | <700 | <400 | |
Mikroschemos atmintis | 28 | 32 | 32 | 144 | |
Laikrodžio greitis (MHz) | 700 | 700 | 940 | 1050 | |
Mažiausia atminties konfigūracija (GB) | 8 DDR3 | 16 HBM | 32 HBM | 32 HBM | |
TDP (vatais) | 75 | 280 | 450 | 175 | 2 |
TOPS (Tera operacijos per sekundę) | 23 | 45 | 90 | ? | 4 |
TOPS/W | 0.3 | 0.16 | 0.2 | ? | 2 |
Kaip matote, TPU taktiniai dažniai neatrodo tokie įspūdingi, ypač kai šiuolaikiniai staliniai kompiuteriai gali turėti 3–5 kartus didesnį taktinį dažnį. Bet jei pažvelgsite į dvi apatines lentelės eilutes, pamatysite, kad TPU gali apdoroti 23–90 tera operacijų per sekundę, naudodami tik 0,16–0,3 vato galios. Apskaičiuota, kad naudojant neuroninio tinklo sąsają TPU yra 15–30 kartų greitesni nei šiuolaikiniai CPU ir GPU.
Išleidus kiekvieną versiją, naujesni TPU rodo reikšmingus patobulinimus ir galimybes. Čia yra keletas svarbiausių kiekvienos versijos aspektų.
- TPUv1: pirmasis viešai paskelbtas TPU. Sukurtas kaip 8 bitų matricos daugybos variklis ir apsiriboja tik sveikųjų skaičių sprendimu.
- TPUv2: Kadangi inžinieriai pastebėjo, kad TPUv1 pralaidumas buvo ribotas. Dabar ši versija turi dvigubą atminties pralaidumą ir 16 GB RAM. Ši versija dabar gali išspręsti slankiuosius taškus, todėl ji yra naudinga mokymui ir išvadoms.
- TPUv3: Išleistas 2018 m., TPUv3 turi dvigubai daugiau procesorių ir yra įdiegtas keturis kartus daugiau lustų nei TPUv2. Atnaujinimai leidžia šiai versijai turėti aštuonis kartus didesnį našumą nei ankstesnės versijos.
- TPUv4: tai naujausia TPU versija, paskelbta 2021 m. gegužės 18 d. „Google“ generalinis direktorius paskelbė, kad šios versijos našumas bus daugiau nei dvigubai didesnis nei TPU v3.
- Edge TPU: Ši TPU versija skirta mažesnėms operacijoms, optimizuotai naudoti mažiau energijos nei kitos TPU versijos bendram veikimui. Nors Edge TPU naudoja tik du vatus, jis gali išspręsti iki keturių terra operacijų per sekundę. „Edge TPU“ yra tik mažuose delniniuose įrenginiuose, pvz., „Google Pixel 4“ išmaniajame telefone.
Kaip pasiekti TPU? Kas gali juos naudoti?
TPU yra patentuoti apdorojimo įrenginiai, kuriuos „Google“ sukūrė naudoti su „TensorFlow“ platforma. Trečiųjų šalių prieiga prie šių procesorių leidžiama nuo 2018 m. Šiandien TPU (išskyrus Edge TPU) galima pasiekti tik per Google kompiuterines paslaugas per debesį. Nors Edge TPU aparatinę įrangą galima įsigyti naudojant „Google Pixel 4“ išmanųjį telefoną ir jo prototipų rinkinį, žinomą kaip „Coral“.
Coral yra USB greitintuvas, kuris duomenims ir maitinimui naudoja USB 3.0 Type C. Tai suteikia jūsų įrenginiui Edge TPU skaičiavimą, galintį pasiekti 4 TOPS kiekvienam 2 W galios. Šis rinkinys gali veikti kompiuteriuose, kuriuose veikia Windows 10, macOS ir Debian Linux (jis taip pat gali veikti su Raspberry Pi).
Kiti specializuoti AI greitintuvai
Dirbtinis intelektas pastarąjį dešimtmetį buvo labai populiarus, todėl Big Tech nuolat ieško būdų, kaip mašininį mokymąsi padaryti kuo greitesnį ir efektyvesnį. Nors „Google“ TPU yra neabejotinai populiariausias ASIC, sukurtas giliam mokymuisi, kitos technologijų įmonės, tokios kaip „Intel“, „Microsoft“, „Alibaba“ ir „Qualcomm“, taip pat sukūrė savo AI greitintuvus. Tai apima „Microsoft Brainwave“, „Intel Neural Compute Stick“ ir „Graphicore“ IPU (intelligence Processing Unit).
Tačiau kol kuriama daugiau dirbtinio intelekto aparatinės įrangos, deja, dauguma jų dar nepasiekiama rinkoje, o daugelis jų niekada nebus. Rašant, jei tikrai norite įsigyti AI greitintuvo aparatinę įrangą, populiariausios galimybės yra įsigyti „Coral“ prototipų rinkinį, „Intel NCS“, „Graphicore Bow Pod“ arba „Asus IoT AI Accelerator“. Jei norite tiesiog pasiekti specializuotą AI aparatinę įrangą, galite naudoti „Google“ debesų kompiuterijos paslaugas arba kitas alternatyvas, pvz., „Microsoft Brainwave“.