Googles TensorFlow-plattform låter sina användare träna en AI genom att tillhandahålla verktyg och resurser för maskininlärning. Under lång tid har AI-ingenjörer använt traditionella CPU: er och GPU: er för att träna AI. Även om dessa processorer kan hantera olika maskininlärningsprocesser, är de fortfarande allmän maskinvara som används för olika vardagliga uppgifter.

För att påskynda AI-utbildningen utvecklade Google en Application Specific Integrated Circuit (ASIC) känd som en Tensor Processing Unit (TPU). Men vad är en Tensor Processing Unit, och hur snabbar de på AI-programmering?

Vad är Tensor Processing Units (TPU)?

Tensor Processing Units är Googles ASIC för maskininlärning. TPU: er används specifikt för djupinlärning för att lösa komplexa matris- och vektoroperationer. TPU: er är strömlinjeformade för att lösa matris- och vektoroperationer vid ultrahöga hastigheter men måste paras ihop med en CPU för att ge och utföra instruktioner. TPU: er får endast användas med Googles TensorFlow eller TensorFlow Lite-plattform

instagram viewer
, oavsett om det är genom cloud computing eller dess lite version på lokal hårdvara.

Applikationer för TPU: er

Bildkredit: Element5 Digital/ Unsplash 

Google har använt TPU: er sedan 2015. De har också bekräftat användningen av dessa nya processorer för Google Street View-textbehandling, Google Foton och Googles sökresultat (Rank Brain), som samt att skapa en AI känd som AlphaGo, som har slagit topp Go-spelare och AlphaZero-systemet som vann mot ledande program inom schack, Go och Shogi.

TPU: er kan användas i olika tillämpningar för djupinlärning, såsom bedrägeriupptäckt, datorseende, naturligt språk bearbetning, självkörande bilar, vokal AI, jordbruk, virtuella assistenter, aktiehandel, e-handel och olika sociala förutsägelser.

När ska man använda TPU: er

Eftersom TPU: er är högspecialiserad hårdvara för djupinlärning, förlorar den många andra funktioner som du normalt kan förvänta dig av en processor för allmänt bruk som en CPU. Med detta i åtanke finns det specifika scenarier där användning av TPU: er kommer att ge det bästa resultatet när du tränar AI.

Den bästa tiden att använda en TPU är för operationer där modeller är mycket beroende av matrisberäkningar, som rekommendationssystem för sökmotorer. TPU: er ger också fantastiska resultat för modeller där AI analyserar enorma mängder datapunkter som kommer att ta flera veckor eller månader att slutföra. AI-ingenjörer använder TPU: er för tillfällen utan anpassade TensorFlow-modeller och måste börja från början.

När man inte ska använda TPU: er

Som nämnts tidigare gör optimeringen av TPU: er att dessa typer av processorer endast fungerar på specifika arbetsbelastningsoperationer. Därför finns det tillfällen där att välja att använda en traditionell CPU och GPU kommer att ge snabbare resultat. Dessa instanser inkluderar:

  • Snabb prototypframställning med maximal flexibilitet
  • Modeller begränsade av tillgängliga datapunkter
  • Modeller som är enkla och går att träna snabbt
  • Modeller för betungande att byta
  • Modeller som är beroende av anpassade TensorFlow-operationer skrivna i C++

TPU-versioner och specifikationer

Bildkredit:Zinskauf/ Wikimedia Commons

Sedan Google tillkännagav sina TPU: er har allmänheten kontinuerligt uppdaterats om de senaste versionerna av TPU: er och deras specifikationer. Följande är en lista över alla TPU-versioner med specifikationer:

TPUv1 TPUv2 TPUv3 TPUv4 Edgev1
Introduktionsdatum 2016 2017 2018 2021 2018
Processnod (nm) 28 16 16 7
Formstorlek (mm²) 331 <625 <700 <400
On-chip minne 28 32 32 144
Klockhastighet (MHz) 700 700 940 1050
Minsta minneskonfiguration (GB) 8 DDR3 16 HBM 32 HBM 32 HBM
TDP (watt) 75 280 450 175 2
TOPS (Tera Operations Per Second) 23 45 90 ? 4
TOPS/W 0.3 0.16 0.2 ? 2

Som du kan se verkar inte TPU-klockhastigheterna så imponerande, speciellt när moderna stationära datorer idag kan ha klockhastigheter 3-5 gånger snabbare. Men om du tittar på de två nedre raderna i tabellen kan du se att TPU: er kan bearbeta 23-90 tera-operationer per sekund med endast 0,16–0,3 watt effekt. TPU: er uppskattas vara 15-30 gånger snabbare än moderna CPU: er och GPU: er när man använder ett neuralt nätverksgränssnitt.

Med varje version som släpps visar nyare TPU: er betydande förbättringar och möjligheter. Här är några höjdpunkter för varje version.

  • TPUv1: Den första offentligt tillkännagivna TPU: n. Designad som en 8-bitars matrismultiplikationsmotor och är begränsad till att endast lösa heltal.
  • TPUv2: Eftersom ingenjörer noterade att TPUv1 var begränsad i bandbredd. Den här versionen har nu dubbelt så mycket minnesbandbredd med 16 GB RAM. Denna version kan nu lösa flytande poäng vilket gör den användbar för träning och slutledning.
  • TPUv3: TPUv3 släpptes 2018 och har dubbelt så många processorer och distribueras med fyra gånger så många chips som TPUv2. Uppgraderingarna tillåter den här versionen att ha åtta gånger högre prestanda jämfört med tidigare versioner.
  • TPUv4: Detta är den senaste versionen av TPU som tillkännagavs den 18 maj 2021. Googles VD meddelade att den här versionen skulle ha mer än dubbelt så hög prestanda som TPU v3.
  • Edge TPU: Denna TPU-version är avsedd för mindre operationer optimerade för att använda mindre ström än andra versioner av TPU i övergripande drift. Även om den bara använder två watts effekt kan Edge TPU lösa upp till fyra terra-operationer per sekund. Edge TPU finns bara på små handhållna enheter som Googles Pixel 4-smarttelefon.

Hur kommer du åt TPU: er? Vem kan använda dem?

TPU: er är egenutvecklade bearbetningsenheter designade av Google för att användas med dess TensorFlow-plattform. Tredjepartsåtkomst till dessa processorer har tillåtits sedan 2018. Idag kan TPU: er (förutom Edge TPU: er) endast nås via Googles datortjänster via molnet. Medan Edge TPU-hårdvara kan köpas via Googles Pixel 4-smarttelefon och dess prototypkit känd som Coral.

Coral är en USB-accelerator som använder USB 3.0 Type C för data och ström. Den förser din enhet med Edge TPU-datorer som klarar 4 TOPS för varje 2W effekt. Detta kit kan köras på maskiner som använder Windows 10, macOS och Debian Linux (det kan också fungera med Raspberry Pi).

Andra specialiserade AI-acceleratorer

Eftersom artificiell intelligens har varit på modet under det senaste decenniet, letar Big Tech ständigt efter sätt att göra maskininlärning så snabb och effektiv som möjligt. Även om Googles TPU är utan tvekan den mest populära ASIC som utvecklats för djupinlärning, har andra teknikföretag som Intel, Microsoft, Alibaba och Qualcomm också utvecklat sina egna AI-acceleratorer. Dessa inkluderar Microsoft Brainwave, Intel Neural Compute Stick och Graphicores IPU (Intelligence Processing Unit).

Men medan mer AI-hårdvara utvecklas, tyvärr är de flesta ännu inte tillgängliga på marknaden, och många kommer aldrig att göra det. När du skriver, om du verkligen vill köpa AI-acceleratorhårdvara, är de mest populära alternativen att köpa ett Coral-prototypkit, en Intel NCS, en Graphicore Bow Pod eller en Asus IoT AI-accelerator. Om du bara vill ha tillgång till specialiserad AI-hårdvara kan du använda Googles cloud computing-tjänster eller andra alternativ som Microsoft Brainwave.