Googles TensorFlow-plattform lar brukerne trene en AI ved å tilby verktøy og ressurser for maskinlæring. I lang tid har AI-ingeniører brukt tradisjonelle CPUer og GPUer for å trene AI. Selv om disse prosessorene kan håndtere ulike maskinlæringsprosesser, er de fortsatt generell maskinvare som brukes til ulike daglige oppgaver.

For å øke hastigheten på AI-opplæringen utviklet Google en Application Specific Integrated Circuit (ASIC) kjent som en Tensor Processing Unit (TPU). Men hva er en Tensor Processing Unit, og hvordan fremskynder de AI-programmering?

Hva er Tensor Processing Units (TPU)?

Tensor-behandlingsenheter er Googles ASIC for maskinlæring. TPU-er brukes spesielt for dyp læring for å løse komplekse matrise- og vektoroperasjoner. TPU-er er strømlinjeformet for å løse matrise- og vektoroperasjoner ved ultrahøye hastigheter, men må pares med en CPU for å gi og utføre instruksjoner. TPU-er kan bare brukes med Googles TensorFlow eller TensorFlow Lite plattform, enten gjennom cloud computing eller lite versjon på lokal maskinvare.

instagram viewer

Applikasjoner for TPUer

Bildekreditt: Element5 Digital/ Unsplash 

Google har brukt TPU-er siden 2015. De har også bekreftet bruken av disse nye prosessorene for Google Street View-tekstbehandling, Google Foto og Google-søkeresultater (Rank Brain), som samt å lage en AI kjent som AlphaGo, som har slått topp Go-spillere og AlphaZero-systemet som vant mot ledende programmer innen sjakk, Go og Shogi.

TPU-er kan brukes i ulike dyplæringsapplikasjoner som svindeloppdagelse, datasyn, naturlig språk prosessering, selvkjørende biler, vokal AI, landbruk, virtuelle assistenter, aksjehandel, e-handel og diverse sosiale medier spådommer.

Når skal du bruke TPUer

Siden TPU-er er høyspesialisert maskinvare for dyp læring, mister den mange andre funksjoner du vanligvis forventer av en generell prosessor som en CPU. Med dette i tankene er det spesifikke scenarier der bruk av TPU-er vil gi det beste resultatet når du trener AI.

Den beste tiden å bruke en TPU er for operasjoner der modeller er sterkt avhengige av matriseberegninger, som anbefalingssystemer for søkemotorer. TPU-er gir også flotte resultater for modeller der AI analyserer enorme mengder datapunkter som vil ta flere uker eller måneder å fullføre. AI-ingeniører bruker TPU-er for tilfeller uten tilpassede TensorFlow-modeller og må starte fra bunnen av.

Når du ikke skal bruke TPUer

Som nevnt tidligere fører optimaliseringen av TPU-er til at disse typene prosessorer bare fungerer på spesifikke arbeidsbelastningsoperasjoner. Derfor er det tilfeller der å velge å bruke en tradisjonell CPU og GPU vil gi raskere resultater. Disse tilfellene inkluderer:

  • Rask prototyping med maksimal fleksibilitet
  • Modeller begrenset av tilgjengelige datapunkter
  • Modeller som er enkle og kan trenes raskt
  • Modeller er for tyngende til å endre
  • Modeller som er avhengige av tilpassede TensorFlow-operasjoner skrevet i C++

TPU-versjoner og spesifikasjoner

Bildekreditt:Zinskauf/ Wikimedia Commons

Siden Google annonserte sine TPU-er, har publikum blitt kontinuerlig oppdatert om de nyeste versjonene av TPU-er og deres spesifikasjoner. Følgende er en liste over alle TPU-versjonene med spesifikasjoner:

TPUv1 TPUv2 TPUv3 TPUv4 Edgev1
Dato introdusert 2016 2017 2018 2021 2018
Prosessnode (nm) 28 16 16 7
Dysestørrelse (mm²) 331 <625 <700 <400
Minne på brikken 28 32 32 144
Klokkehastighet (MHz) 700 700 940 1050
Minste minnekonfigurasjon (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, virker ikke TPU-klokkehastigheter så imponerende, spesielt når moderne stasjonære datamaskiner i dag kan ha klokkehastigheter 3-5 ganger raskere. Men hvis du ser på de to nederste radene i tabellen, kan du se at TPU-er kan behandle 23-90 tera-operasjoner per sekund med kun 0,16–0,3 watt strøm. TPU-er anslås å være 15-30 ganger raskere enn moderne CPU-er og GPU-er ved bruk av et nevralt nettverksgrensesnitt.

Med hver versjon utgitt viser nyere TPU-er betydelige forbedringer og muligheter. Her er noen høydepunkter for hver versjon.

  • TPUv1: Den første offentlig annonserte TPU. Designet som en 8-biters matrisemultiplikasjonsmotor og er begrenset til å løse kun heltall.
  • TPUv2: Siden ingeniører bemerket at TPUv1 var begrenset i båndbredde. Denne versjonen har nå dobbel minnebåndbredde med 16 GB RAM. Denne versjonen kan nå løse flytende poeng, noe som gjør den nyttig for trening og slutninger.
  • TPUv3: Utgitt i 2018, TPUv3 har dobbelt så mange prosessorer og distribueres med fire ganger så mange brikker som TPUv2. Oppgraderingene lar denne versjonen ha åtte ganger ytelsen sammenlignet med tidligere versjoner.
  • TPUv4: Dette er den nyeste versjonen av TPU kunngjort 18. mai 2021. Googles administrerende direktør kunngjorde at denne versjonen ville ha mer enn dobbelt så høy ytelse som TPU v3.
  • Edge TPU: Denne TPU-versjonen er ment for mindre operasjoner optimalisert for å bruke mindre strøm enn andre versjoner av TPU i generell drift. Selv om den bare bruker to watt strøm, kan Edge TPU løse opptil fire terra-operasjoner per sekund. Edge TPU finnes bare på små håndholdte enheter som Googles Pixel 4-smarttelefon.

Hvordan får du tilgang til TPUer? Hvem kan bruke dem?

TPU-er er proprietære behandlingsenheter designet av Google for å brukes med TensorFlow-plattformen. Tredjeparts tilgang til disse prosessorene har vært tillatt siden 2018. I dag kan TPU-er (bortsett fra Edge TPU-er) bare nås gjennom Googles datatjenester gjennom skyen. Mens Edge TPU-maskinvare kan kjøpes gjennom Googles Pixel 4-smarttelefon og dens prototyping-sett kjent som Coral.

Coral er en USB-akselerator som bruker USB 3.0 Type C for data og strøm. Den gir enheten din Edge TPU-databehandling som er i stand til 4 TOPS for hver 2W strøm. Dette settet kan kjøres på maskiner som bruker Windows 10, macOS og Debian Linux (det kan også fungere med Raspberry Pi).

Andre spesialiserte AI-akseleratorer

Siden kunstig intelligens har vært på farten det siste tiåret, leter Big Tech hele tiden etter måter å gjøre maskinlæring så rask og effektiv som mulig. Selv om Googles TPU-er uten tvil er den mest populære ASIC utviklet for dyp læring, har andre teknologiselskaper som Intel, Microsoft, Alibaba og Qualcomm også utviklet sine egne AI-akseleratorer. Disse inkluderer Microsoft Brainwave, Intel Neural Compute Stick og Graphicores IPU (Intelligence Processing Unit).

Men mens mer AI-maskinvare utvikles, er dessverre det meste ennå ikke tilgjengelig på markedet, og mange vil aldri. I skrivende stund, hvis du virkelig ønsker å kjøpe maskinvare for AI-akselerator, er de mest populære alternativene å kjøpe et Coral-prototyping-sett, en Intel NCS, en Graphicore Bow Pod eller en Asus IoT AI-akselerator. Hvis du bare vil ha tilgang til spesialisert AI-maskinvare, kan du bruke Googles cloud computing-tjenester eller andre alternativer som Microsoft Brainwave.