Andersons Blickwinkel
GPUs könnten besser, nicht nur schneller, bei der Ausbildung von Deep Neural Networks sein

Forscher aus Polen und Japan, die mit Sony zusammenarbeiten, haben Beweise gefunden, dass maschinelle Lernsysteme, die auf GPUs anstelle von CPUs trainiert werden, während des Trainingsprozesses weniger Fehler enthalten und bessere Ergebnisse liefern, was der allgemeinen Annahme widerspricht, dass GPUs solche Operationen einfach nur schneller und nicht besser ausführen.
Die Forschung, die den Titel Auswirkungen der GPU-Uncertainty auf die Ausbildung von predictiven Deep Neural Networks trägt, stammt von der Fakultät für Psychologie und Kognitionsforschung an der Adam-Mickiewicz-Universität und zwei japanischen Universitäten, zusammen mit den SONY Computer Science Laboratories.
Die Studie legt nahe, dass ‘Uncertainties’, die Deep Neural Networks in verschiedenen Hardware- und Software-Konfigurationen aufweisen, mehr teure (und immer knapper werdende) Grafikprozessoren begünstigen und in Tests festgestellt wurde, dass ein Deep Neural Network, das ausschließlich auf CPU trainiert wurde, höhere Fehlerquoten über die gleiche Anzahl von Epochen (die Anzahl der Male, die das System die Trainingsdaten über den Verlauf einer Sitzung verarbeitet) aufwies.

In diesem ergänzenden Beispiel aus dem Paper sehen wir (untere beiden Reihen), ähnliche Ergebnisqualität, die von einer Vielzahl von GPUs erzielt wird, und (erste Reihe), die unterlegenen Ergebnisse, die von einer Reihe von ansonsten sehr leistungsfähigen CPUs erzielt werden. Quelle: https://arxiv.org/pdf/2109.01451.pdf
Merkwürdige Phänomene
Diese vorläufigen Ergebnisse gelten nicht einheitlich für alle gängigen maschinellen Lernalgorithmen, und im Fall von einfachen Autoencoder-Architekturen tritt das Phänomen nicht auf.
Trotzdem deutet die Arbeit auf eine mögliche ‘Fluchtgeschwindigkeit’ für die Effektivität des Trainings in komplexen neuronalen Netzen hin, bei der die gleichen Operationen bei geringerer Geschwindigkeit und längeren Trainingszeiten nicht die erwartete Leistungsparität erzielen.
Die Forscher schlagen vor, dass diese Leistungsunterschiede spezifisch für bestimmte Arten von neuronalen Netzen sein könnten und dass die unbestimmten Aspekte der GPU-spezifischen Verarbeitung, die häufig als Hindernis angesehen werden, das letztendlich überwunden werden soll, nicht nur bemerkenswerte Vorteile bieten, sondern auch absichtlich in spätere Systeme integriert werden könnten. Das Paper legt auch nahe, dass die Ergebnisse tiefere Einblicke in die computergestützte Verarbeitung des Gehirns bieten könnten.
Die Identifizierung der Eigenheiten, die die Effizienz und Qualität der Ergebnisse auf diese Weise auf GPUs erhöhen, birgt das Potenzial, tiefergehende Einblicke in ‘Black-Box’-KI-Architekturen zu gewinnen und sogar die CPU-Leistung zu verbessern – auch wenn die zugrunde liegenden Ursachen derzeit noch unklar sind.
Autoencoder vs. PredNet
Bei der Untersuchung der Anomalien verwendeten die Forscher einen grundlegenden Autoencoder und auch das Predictive Neural Network PredNet von der Harvard-Universität, eine Forschung aus dem Jahr 2016, die darauf abzielte, das Verhalten des menschlichen Großhirns zu erforschen und nachzuahmen.
Beide Systeme sind Deep Neural Networks, die darauf ausgelegt sind, angemessene Bilder durch unüberwachte Lernen (mit Daten, bei denen die Labels weggelassen wurden) zu synthetisieren, obwohl der Autoencoder linear mit einem Bild pro Batch umgeht, das dann als Ausgabe das nächste Bild in einer wiederkehrenden Pipeline produziert. Der Autoencoder wurde auf der MNIST-Handschriftdatenbank trainiert.

Der Autoencoder in den Tests der Forscher wurde auf der MNIST-Datenbank trainiert, die 60.000 Trainingsbilder mit 28×28 Pixeln, anti-aliased für Graustufen-Induktion, sowie 10.000 Testbilder umfasst.
Im Gegensatz dazu bewertet PredNet komplexe Video-Eingaben, und im Fall dieser Forschung wurde es auf dem FPSI-Datensatz trainiert, der umfangreiche Body-Worn-Video-Aufnahmen eines Tages in Disney World in Orlando, Florida (Disney war einer der Forschungspartner in dem 2012 veröffentlichten Paper), enthält.

Bildsequenzen aus FPSI, die erste-Person-Ansichten eines Tages in Disney World zeigen.
Die beiden Architekturen unterscheiden sich stark in Bezug auf die Komplexität. Der Autoencoder ist darauf ausgelegt, Bilder zu rekonstruieren, anstatt Zielwerte vorherzusagen. Im Gegensatz dazu verfügt PredNet über vier Schichten, von denen jede aus Repräsentationsneuronen mit konvolutionellem Langzeitgedächtnis (LSTM) besteht.
Die Schichten geben kontextuelle Vorhersagen aus, die dann mit einem Ziel verglichen werden, um einen Fehlerterm zu erzeugen, der sich durch das gesamte Netzwerk fortpflanzt. Beide Modelle verwenden unüberwachtes Lernen.

Die einfache, lineare Architektur des Autoencoders und das komplexere, rekursive Netzwerk von PredNet.
Beide Systeme wurden auf einer Reihe von Hardware- und Software-Konfigurationen getestet, einschließlich CPUs ohne GPUs (Intel i5-4590, i7-6800K, i5-7600K oder AMD Ryzen-5-3600) und CPUs mit GPUs (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 Super, AMD Ryzen-5-3600 + RTX-2070 Super oder i5-9400 + Titan-RTX).
Der interaktive Prozess-Viewer htop wurde verwendet, um sicherzustellen, dass alle Trainingsvorgänge entweder auf einem einzigen Thread (auf einem Intel i7-6800K), auf vier Threads (auf einem Intel i5-4590 und i5-7600K) oder sechs Threads (auf einem AMD Ryzen-5-3600) stattfanden.
Sattelpunkte
Beim Autoencoder war der mittlere Unterschied über alle Konfigurationen hinweg, mit und ohne cuDNN, nicht signifikant. Bei PredNet waren die Ergebnisse jedoch verblüffend, mit deutlichen Unterschieden in der Verlustbewertung und -qualität zwischen CPU- und GPU-Training.

Die durchschnittlichen Verlustergebnisse für PredNet-Training über vier CPUs und acht GPUs, wobei das Netzwerk auf 5000 Video-Frames in 250 Batches trainiert wurde, wobei der durchschnittliche Verlust für die letzten 1000 Frames (50 Batches) dargestellt ist. cuDNN war deaktiviert.
Die Forscher kommen zu dem Schluss, dass ‘Obwohl der Mechanismus unklar ist, scheint die GPU-Hardware die Fähigkeit zu haben, das Training von DNNs voranzutreiben.’
Die Ergebnisse deuten darauf hin, dass GPUs möglicherweise besser darin sind, Sattelpunkte zu vermeiden – die Bereiche in einem Gradientenabstieg, die den unteren Teil einer Steigung beschreiben.

Der tiefste Punkt der Steigungen in einem Gradientenabstieg ist der ‘Sattelpunkt’, benannt aus offensichtlichen Gründen. Quelle: https://www.pinterest.com.au/pin/436849232581124086/
Sattelpunkte, obwohl sie ein Hindernis darstellen, wurden in jüngster Zeit weitgehend als leicht umgehbar bei der Optimierung des stochastischen Gradientenabstiegs (SGD) abgetan, aber das neue Paper legt nahe, dass GPUs möglicherweise einzigartig ausgestattet sind, um sie zu vermeiden, und dass der Einfluss von Sattelpunkten möglicherweise überdacht werden sollte.












