In diesem NLP-Cloud-Kurs erklären wir, warum oft spezielle Hardware erforderlich ist, um die Verarbeitung von Machine-Learning-Workloads zu beschleunigen. Wir überprüfen auch, welche die besten Beschleuniger sind, die 2023 auf dem Markt verfügbar sind: GPUs, TPUs, IPUs, Inferentia, Habana Gaudi...
Hier ist die Struktur des Kurses:
Hallo zusammen, hier ist Julien Salinas von NLP Cloud.
In diesem Kurs werden wir sehen, welche Art von Hardware-Beschleunigern wir heute verwenden können, um unsere Inferenz-Workloads zu beschleunigen.
Um die Hardware-Beschleunigung zu verstehen, ist es wichtig, sich daran zu erinnern, dass KI-Anwendungen heutzutage meist auf neuronalen Netzen basieren, die auch als Deep Learning bekannt sind.
Die Matrixmultiplikation ist ein wesentlicher Vorgang in neuronalen Netzen, da sie es ihnen ermöglicht, komplexe Daten und komplexe Darstellungen der Daten zu lernen.
In einem neuronalen Netz werden die Eingabedaten durch eine Matrix dargestellt, und die Gewichte der Verbindungen zwischen den Neuronen werden ebenfalls durch eine Matrix dargestellt.
Wenn diese beiden Matrizen multipliziert werden, ergibt sich eine neue Matrix, die die Ausgabe der Neuronen darstellt.
Dieser Prozess wird in mehreren Schichten von Neuronen wiederholt, so dass das Netz immer abstraktere und komplexere Merkmale der Eingabedaten lernen kann.
Matrizen sind Kernbestandteile von KI-Modellen, daher ist es wichtig, Hardware zu verwenden, die sehr gut mit Matrizen umgehen kann.
Ein weiterer wichtiger Aspekt sind Gleitkommazahlen.
Fließkommazahlen sind in neuronalen Netzen wichtig, weil sie die Darstellung von Bruchwerten ermöglichen.
Wie wir gerade gesagt haben, handelt es sich bei neuronalen Netzen um große Matrizen mit vielen Einträgen.
Die ausschließliche Verwendung von Ganzzahlwerten würde schnell zu Überlauffehlern führen.
Durch die Verwendung von Fließkommawerten können neuronale Netze Werte mit vielen Nachkommastellen darstellen, was präzisere Berechnungen und eine bessere Genauigkeit der Ergebnisse ermöglicht.
Zusammenfassend lässt sich also sagen, dass wir für die effiziente Verarbeitung von KI-Arbeitslasten Hardware benötigen, die gut mit Matrixmultiplikationen und Gleitkommaberechnungen umgehen kann.
Die beiden wichtigsten Optionen, die Sie heute für Ihre maschinellen Lernaufgaben in Betracht ziehen können, sind CPUs und GPUs.
Eine CPU (Central Processing Unit) ist ein Allzweckprozessor, der eine Vielzahl von Aufgaben in einem Computersystem übernimmt, darunter die Ausführung von Anwendungen, die Verwaltung des Betriebssystems und die Durchführung mathematischer Berechnungen.
CPUs sind so konzipiert, dass sie vielseitig sind und viele Arten von Aufgaben bewältigen können, aber sie sind nicht für eine bestimmte Art von Arbeitsbelastung optimiert.
Ein Grafikprozessor (GPU, Graphic Processing Unit) ist ein spezieller Prozessor, der für komplexe, parallele Arbeitslasten wie Grafikrendering und maschinelles Lernen ausgelegt ist.
GPUs verfügen über Tausende kleinerer Kerne, die zusammenarbeiten, um große Datenmengen auf einmal zu verarbeiten, wodurch sie bei bestimmten Arten von Arbeitslasten viel schneller sind als CPUs.
Matrixoperationen lassen sich leicht auf mehreren kleinen Kernen parallelisieren, weshalb sich GPUs in diesem Bereich auszeichnen.
Außerdem verfügen GPUs in der Regel über viel mehr Fließkommaeinheiten als CPUs, wodurch sie Fließkommaoperationen viel schneller durchführen können.
Sie wissen nun, warum eine CPU für die heutigen KI-Workloads oft nicht ausreicht und warum spezifische Hardware oft sehr wichtig ist.
Kommen wir nun zu den Möglichkeiten, die Sie haben, wenn es um spezifische Hardwarebeschleuniger geht.
NVIDIA-Grafikprozessoren sind ein leistungsstarkes Werkzeug für die Grafikverarbeitung und bieten eine Reihe von Funktionen, die sie ideal für Spiele, maschinelles Lernen, Videobearbeitung sowie Design- und Konstruktionsanwendungen machen.
Als KI-Softwareentwickler werden Sie zweifellos mit NVIDIA-Grafikprozessoren zu tun haben, da diese heute eine zentrale Position auf dem Grafikprozessormarkt einnehmen.
Ihre leistungsstärksten Karten für KI im Jahr 2023 sind die A100 und die H100.
AMD bietet auch eine breite Palette von Grafikprozessoren an, unter anderem für maschinelles Lernen.
Die Produktpalette von RockM ist interessant, und ich möchte Sie ermutigen, sie sich anzusehen.
Google baut auch seine eigenen KI-Chips, die sogenannten TPUs (TensorFlow Processing Unit).
Sie verwenden diese Chips intern, bieten sie aber auch in ihrem Google Cloud-Angebot an.
Sie können jedoch kein TPU für sich selbst kaufen.
TPUs funktionieren etwas anders als GPUs, aber das ist ein Thema für ein anderes Video.
Graphcore ist ein britisches Unternehmen, das eine spezielle KI-Hardware namens IPU herstellt, die den TPUs von Google entspricht.
Sie können IPUs sowohl kaufen als auch über einen ihrer Partner in der Cloud nutzen.
AWS baut seine eigenen KI-Chips.
Sie haben einen Chip für Schlussfolgerungen, Inferentia genannt, und einen anderen für die Ausbildung, Tranium genannt.
Diese Chips sind relativ billig.
Sie können solche Chips nicht für sich selbst kaufen, aber Sie können sie auf AWS EC2 oder Sage Maker verwenden.
Intel baut auch einen eigenen KI-Chip namens Habana Gaudi, der eine sehr leistungsfähige, aber auch sehr teure Alternative darstellt.
Die Hardware-Beschleuniger sind leistungsfähig, aber auch sehr teuer und wegen des weltweiten Halbleitermangels nicht leicht zu beschaffen.
Aus diesem Grund ist es ratsam, Ihre KI-Workloads so weit wie möglich zu optimieren, damit sie auf kleinerer Hardware ausgeführt werden können.
CPUs können in vielen Situationen sogar eine gute Option für viele maschinelle Lernaufgaben sein.
Wie Sie sehen können, ist NVIDIA im Jahr 2023 die De-facto-Lösung, wenn es um Hardware-Beschleunigung bei KI und maschinellem Lernen geht.
Interessanterweise gibt es aber auch einige Alternativen.
Vielleicht werden Sie also in ein paar Jahren für Ihre nächsten KI-Projekte andere Arten von Beschleunigern verwenden.
Ich hoffe, dieser Kurs war nützlich und wünsche Ihnen einen angenehmen Tag.