Die TensorFlow-Plattform von Google ermöglicht es ihren Nutzern, eine KI zu trainieren, indem sie Tools und Ressourcen für maschinelles Lernen bereitstellt. KI-Ingenieure verwenden seit langem traditionelle CPUs und GPUs, um KI zu trainieren. Obwohl diese Prozessoren verschiedene maschinelle Lernprozesse verarbeiten können, sind sie immer noch Allzweckhardware, die für verschiedene alltägliche Aufgaben verwendet wird.

Um das KI-Training zu beschleunigen, hat Google einen anwendungsspezifischen integrierten Schaltkreis (ASIC) entwickelt, der als Tensor Processing Unit (TPU) bekannt ist. Aber was ist eine Tensor Processing Unit und wie beschleunigen sie die KI-Programmierung?

Was sind Tensor Processing Units (TPU)?

Tensor Processing Units sind die von Google ASIC für maschinelles Lernen. TPUs werden speziell für Deep Learning verwendet, um komplexe Matrix- und Vektoroperationen zu lösen. TPUs sind optimiert, um Matrix- und Vektoroperationen mit ultrahoher Geschwindigkeit zu lösen, müssen aber mit einer CPU gekoppelt werden, um Anweisungen zu geben und auszuführen. TPUs dürfen nur mit denen von Google verwendet werden

TensorFlow- oder TensorFlow Lite-Plattform, sei es durch Cloud Computing oder seine Lite-Version auf lokaler Hardware.

Anwendungen für TPUs

Bildnachweis: Element5 Digital/ Unsplash 

Google verwendet TPUs seit 2015. Sie haben auch die Verwendung dieser neuen Prozessoren für die Textverarbeitung von Google Street View, Google Fotos und Google-Suchergebnisse (Rank Brain) bestätigt sowie eine KI namens AlphaGo zu entwickeln, die Top-Go-Spieler und das AlphaZero-System geschlagen hat, das gegen führende Programme in Schach, Go und Co. gewonnen hat Schogi.

TPUs können in verschiedenen Deep-Learning-Anwendungen wie Betrugserkennung, Computer Vision und natürlicher Sprache verwendet werden Verarbeitung, selbstfahrende Autos, Sprach-KI, Landwirtschaft, virtuelle Assistenten, Aktienhandel, E-Commerce und verschiedene soziale Netzwerke Vorhersagen.

Wann sollten TPUs verwendet werden?

Da TPUs hochspezialisierte Hardware für Deep Learning sind, gehen viele andere Funktionen verloren, die Sie normalerweise von einem Allzweckprozessor wie einer CPU erwarten würden. Vor diesem Hintergrund gibt es bestimmte Szenarien, in denen die Verwendung von TPUs das beste Ergebnis beim Training von KI erzielt.

Der beste Zeitpunkt für die Verwendung einer TPU ist für Vorgänge, bei denen Modelle stark auf Matrixberechnungen angewiesen sind, wie z. B. Empfehlungssysteme für Suchmaschinen. TPUs liefern auch großartige Ergebnisse für Modelle, bei denen die KI riesige Mengen an Datenpunkten analysiert, was mehrere Wochen oder Monate dauern wird. KI-Ingenieure verwenden TPUs für Instanzen ohne benutzerdefinierte TensorFlow-Modelle und müssen bei Null anfangen.

Wann Sie TPUs nicht verwenden sollten

Wie bereits erwähnt, führt die Optimierung von TPUs dazu, dass diese Prozessortypen nur bei bestimmten Workload-Vorgängen arbeiten. Daher gibt es Fälle, in denen die Entscheidung für die Verwendung einer herkömmlichen CPU und GPU zu schnelleren Ergebnissen führt. Zu diesen Fällen gehören:

  • Rapid Prototyping mit maximaler Flexibilität
  • Modelle begrenzt durch die verfügbaren Datenpunkte
  • Modelle, die einfach sind und schnell trainiert werden können
  • Modelle zu beschwerlich, um sie zu ändern
  • Modelle, die auf in C++ geschriebene benutzerdefinierte TensorFlow-Operationen angewiesen sind

TPU-Versionen und Spezifikationen

Bildnachweis:Zinskauf/ Wikimedia Commons

Seit Google seine TPUs angekündigt hat, wurde die Öffentlichkeit kontinuierlich über die neuesten Versionen von TPUs und deren Spezifikationen informiert. Im Folgenden finden Sie eine Liste aller TPU-Versionen mit Spezifikationen:

TPUv1 TPUv2 TPUv3 TPUv4 Edgev1
Datum eingeführt 2016 2017 2018 2021 2018
Prozessknoten (nm) 28 16 16 7
Chipgröße (mm²) 331 <625 <700 <400
On-Chip-Speicher 28 32 32 144
Taktfrequenz (MHz) 700 700 940 1050
Kleinste Speicherkonfiguration (GB) 8 DDR3 16 HBM 32 HBM 32 HBM
TDP (Watt) 75 280 450 175 2
TOPS (Tera-Operationen pro Sekunde) 23 45 90 ? 4
TOPS/W 0.3 0.16 0.2 ? 2

Wie Sie sehen können, scheinen TPU-Taktraten nicht allzu beeindruckend zu sein, insbesondere wenn moderne Desktop-Computer heute 3-5 mal schnellere Taktraten haben können. Aber wenn Sie sich die unteren beiden Zeilen der Tabelle ansehen, können Sie sehen, dass TPUs 23-90 Tera-Operationen pro Sekunde mit nur 0,16-0,3 Watt Leistung verarbeiten können. Es wird geschätzt, dass TPUs 15- bis 30-mal schneller sind als moderne CPUs und GPUs, wenn sie eine neuronale Netzwerkschnittstelle verwenden.

Mit jeder veröffentlichten Version zeigen neuere TPUs signifikante Verbesserungen und Fähigkeiten. Hier sind ein paar Highlights für jede Version.

  • TPUv1: Das erste öffentlich angekündigte TPU. Entwickelt als 8-Bit-Matrix-Multiplikations-Engine und ist darauf beschränkt, nur ganze Zahlen zu lösen.
  • TPUv2: Da Ingenieure feststellten, dass TPUv1 in der Bandbreite begrenzt war. Diese Version hat jetzt die doppelte Speicherbandbreite mit 16 GB RAM. Diese Version kann jetzt Fließkommazahlen lösen, was sie für Training und Schlussfolgerungen nützlich macht.
  • TPUv3: TPUv3 wurde 2018 veröffentlicht und verfügt über doppelt so viele Prozessoren und wird mit viermal so vielen Chips wie TPUv2 bereitgestellt. Die Upgrades ermöglichen dieser Version eine achtmal höhere Leistung als frühere Versionen.
  • TPUv4: Dies ist die neueste Version von TPU, die am 18. Mai 2021 angekündigt wurde. Googles CEO kündigte an, dass diese Version mehr als die doppelte Leistung von TPU v3 haben würde.
  • Edge-TPU: Diese TPU-Version ist für kleinere Operationen gedacht, die so optimiert sind, dass sie im Gesamtbetrieb weniger Strom verbrauchen als andere TPU-Versionen. Obwohl Edge TPU nur zwei Watt Leistung verbraucht, kann es bis zu vier Terra-Operationen pro Sekunde lösen. Edge TPU ist nur auf kleinen Handheld-Geräten wie Googles Pixel 4-Smartphone zu finden.

Wie greifen Sie auf TPUs zu? Wer kann sie verwenden?

TPUs sind proprietäre Verarbeitungseinheiten, die von Google für die Verwendung mit seiner TensorFlow-Plattform entwickelt wurden. Der Zugriff Dritter auf diese Auftragsverarbeiter ist seit 2018 erlaubt. Heute kann auf TPUs (mit Ausnahme von Edge-TPUs) nur über Google zugegriffen werden Computerdienste über die Cloud. Während Edge TPU-Hardware über Googles Pixel 4-Smartphone und sein als Coral bekanntes Prototyping-Kit gekauft werden kann.

Coral ist ein USB-Beschleuniger, der USB 3.0 Typ C für Daten und Strom verwendet. Es bietet Ihrem Gerät Edge-TPU-Computing mit 4 TOPS pro 2 W Leistung. Dieses Kit kann auf Computern mit Windows 10, macOS und Debian Linux ausgeführt werden (es kann auch mit Raspberry Pi funktionieren).

Andere spezialisierte KI-Beschleuniger

Da künstliche Intelligenz in den letzten zehn Jahren in aller Munde war, sucht Big Tech ständig nach Möglichkeiten, maschinelles Lernen so schnell und effizient wie möglich zu gestalten. Obwohl die TPUs von Google wohl die beliebtesten ASICs sind, die für Deep Learning entwickelt wurden, haben auch andere Technologieunternehmen wie Intel, Microsoft, Alibaba und Qualcomm ihre eigenen KI-Beschleuniger entwickelt. Dazu gehören der Microsoft Brainwave, der Intel Neural Compute Stick und die IPU (Intelligence Processing Unit) von Graphicore.

Aber während mehr KI-Hardware entwickelt wird, sind die meisten leider noch nicht auf dem Markt erhältlich, und viele werden es nie tun. Wenn Sie zum jetzigen Zeitpunkt wirklich KI-Beschleuniger-Hardware kaufen möchten, sind die beliebtesten Optionen der Kauf eines Coral-Prototyping-Kits, eines Intel NCS, eines Graphicore Bow Pod oder eines Asus IoT-KI-Beschleunigers. Wenn Sie nur auf spezialisierte KI-Hardware zugreifen möchten, können Sie die Cloud-Computing-Dienste von Google oder andere Alternativen wie Microsoft Brainwave nutzen.