OTO ist das branchenweit erste automatisierte, benutzerfreundliche und vielseitige Framework für das Training neuronaler Netze und die Strukturkomprimierung aus einer Hand.
Im Zeitalter der künstlichen Intelligenz ist die Bereitstellung und Wartung neuronaler Netze ein Schlüsselthema für die Produktisierung. Angesichts der Einsparung von Rechenkosten bei gleichzeitiger Minimierung des Verlusts an Modellleistung ist die Komprimierung neuronaler Netze zu einem der Schlüssel zur Produktisierung von DNN geworden.
DNN-Komprimierung verfügt im Allgemeinen über drei Methoden: Beschneiden, Wissensdestillation und Quantisierung. Ziel des Pruning ist es, redundante Strukturen zu identifizieren und zu entfernen, DNN zu verschlanken und gleichzeitig die Modellleistung so weit wie möglich aufrechtzuerhalten. Es ist die vielseitigste und effektivste Komprimierungsmethode. Im Allgemeinen können sich die drei Methoden gegenseitig ergänzen und zusammenarbeiten, um den besten Kompressionseffekt zu erzielen.
Die meisten vorhandenen Bereinigungsmethoden zielen jedoch nur auf bestimmte Modelle und spezifische Aufgaben ab und erfordern umfassende Fachkenntnisse in der Domäne. Daher müssen KI-Entwickler normalerweise viel Aufwand betreiben, um diese Methoden auf ihre eigenen Szenarien anzuwenden. Es kostet viel Personal und Material.
Um die Probleme bestehender Bereinigungsmethoden zu lösen und KI-Entwicklern Komfort zu bieten, hat das Microsoft-Team das Only-Train-Once OTO-Framework vorgeschlagen. OTO ist das branchenweit erste automatisierte, benutzerfreundliche und universelle Framework für das Training und die Strukturkomprimierung neuronaler Netzwerke. Eine Reihe von Arbeiten wurde in ICLR2023 und NeurIPS2021 veröffentlicht.
Durch den Einsatz von OTO können KI-Ingenieure auf einfache Weise neuronale Zielnetzwerke trainieren und leistungsstarke und leichte Modelle aus einer Hand erhalten. OTO minimiert den Entwicklungsaufwand des Entwicklers und erfordert nicht das zeitaufwändige Vortraining und die zusätzliche Feinabstimmung des Modells, die bei bestehenden Methoden normalerweise erforderlich sind.
Der idealisierte Strukturbereinigungsalgorithmus sollte sein: Eine automatisierte One-Stop-Lösung für allgemeine neuronale Netze Trainieren Sie von Grund auf und erhalten Sie gleichzeitig ein leistungsstarkes und leichtes Modell, ohne dass eine anschließende Feinabstimmung erforderlich ist. Aufgrund der Komplexität neuronaler Netze ist das Erreichen dieses Ziels jedoch äußerst schwierig. Um dieses ultimative Ziel zu erreichen, müssen die folgenden drei Kernfragen systematisch gelöst werden:
Das Microsoft-Team hat drei Sätze von Kernalgorithmen entworfen und implementiert und damit diese drei Kernprobleme erstmals systematisch und umfassend gelöst.
Automatisierte nullinvariante Gruppen
Aufgrund der Komplexität und Korrelation der Netzwerkstruktur kann das Löschen einer Netzwerkstruktur dazu führen, dass die verbleibende Netzwerkstruktur ungültig wird. Daher besteht eines der größten Probleme bei der automatisierten Netzwerkstrukturkomprimierung darin, die Modellparameter zu finden, die zusammengeschnitten werden müssen, damit das verbleibende Netzwerk weiterhin gültig ist. Um dieses Problem zu lösen, schlug das Microsoft-Team in OTOv1 Zero-Invariante Groups (ZIGs) vor. Die nullinvariante Gruppe kann als eine Art kleinste entfernbare Einheit verstanden werden, sodass das verbleibende Netzwerk auch nach Entfernung der entsprechenden Netzwerkstruktur der Gruppe weiterhin gültig ist. Eine weitere großartige Eigenschaft einer nullinvarianten Gruppe besteht darin, dass, wenn eine nullinvariante Gruppe gleich Null ist, der Ausgabewert unabhängig vom Eingabewert immer Null ist. In OTOv2 haben die Forscher außerdem eine Reihe automatisierter Algorithmen vorgeschlagen und implementiert, um das Gruppierungsproblem nullinvarianter Gruppen in allgemeinen Netzwerken zu lösen. Der automatisierte Gruppierungsalgorithmus ist eine sorgfältig entworfene Kombination einer Reihe von Diagrammalgorithmen. Der gesamte Algorithmus ist sehr effizient und weist eine lineare Zeit- und Raumkomplexität auf.
Dual Half Plane Projected Gradient Optimization Algorithm (DHSPG)
Nach der Aufteilung aller nullinvarianten Gruppen des Zielnetzwerks müssen die nächsten Modelltrainings- und Bereinigungsaufgaben herausfinden, welche nullinvarianten Gruppen redundant sind . Der Rest, welche sind wichtig. Die Netzwerkstruktur, die den redundanten nullinvarianten Gruppen entspricht, muss gelöscht werden, und die wichtigen nullinvarianten Gruppen müssen beibehalten werden, um die Leistung des Komprimierungsmodells sicherzustellen. Die Forscher formulierten dieses Problem als strukturelles Sparsifizierungsproblem und schlugen einen neuen DHSPG-Optimierungsalgorithmus (Dual Half-Space Projected Gradient) zu seiner Lösung vor.
DHSPG kann sehr effektiv redundante nullinvariante Gruppen finden und auf Null projizieren und wichtige nullinvariante Gruppen kontinuierlich trainieren, um eine mit dem Originalmodell vergleichbare Leistung zu erzielen.
Im Vergleich zu herkömmlichen Sparse-Optimierungsalgorithmen verfügt DHSPG über stärkere und stabilere Funktionen zur Erkundung spärlicher Strukturen und erweitert den Trainingssuchraum, sodass in der Regel höhere tatsächliche Leistungsergebnisse erzielt werden.
Automatisch ein leichtes Komprimierungsmodell erstellen
Durch die Verwendung von DHSPG zum Trainieren des Modells erhalten wir eine Lösung, die der hohen strukturellen Sparsamkeit der nullinvarianten Gruppe entspricht, das heißt, es gibt viele in der Lösung die in eine nullinvariante Menge von Nullen projiziert werden, und diese Lösung weist auch eine hohe Modellleistung auf. Als nächstes löschten die Forscher alle Strukturen, die redundanten nullinvarianten Gruppen entsprachen, um automatisch ein Komprimierungsnetzwerk aufzubauen. Aufgrund der Eigenschaften von nullinvarianten Gruppen, das heißt, wenn eine nullinvariante Gruppe gleich Null ist, ist der Ausgabewert unabhängig vom Eingabewert immer Null, sodass das Löschen redundanter nullinvarianter Gruppen nicht der Fall ist Auswirkungen auf das Netzwerk haben. Daher hat das durch OTO erhaltene komprimierte Netzwerk die gleiche Ausgabe wie das gesamte Netzwerk, ohne dass eine weitere Feinabstimmung des Modells erforderlich ist, die bei herkömmlichen Methoden erforderlich ist.
Zahlreiche Experimente 任 VGG16- und VGG16-BN-Modelle in CIFAR10 und VGG16-BN-Modelle in CIFAR10. Im VGG16-Experiment von CIFAR10 wurde die Lautstärke um 97,5 % reduziert und die Leistung war beeindruckend.
Tabelle 2: ResNet50-Experiment zu CIFAR10
Im ResNet50-Experiment zu CIFAR10 übertrifft OTO die SOTA-Komprimierungsframeworks für neuronale Netzwerke AMC und ANNC ohne Quantisierung und verwendet nur 7,8 % der FLOPs und 4,1 % Parameter.
Tabelle 3. ImageNets ResNet50-Experiment
Im ImageNets ResNet50-Experiment zeigte OTOv2 unter verschiedenen strukturellen Sparsifizierungszielen eine vergleichbare oder sogar bessere Leistung als die bestehende SOTA-Methode.
Tabelle 4: Mehr Strukturen und Datensätze
OTO erzielt auch bei mehr Datensätzen und Modellstrukturen eine gute Leistung. Low-Level-Vision-Aufgabe Leistung und komprimierte den Rechenaufwand und die Modellgröße um mehr als 75 %.
Sprachmodellaufgabe
Darüber hinaus führten die Forscher auch Vergleichsexperimente an Bert mit einem der Kernalgorithmen, dem DHSPG-Optimierungsalgorithmus, durch und überprüften dessen hohe Leistung im Vergleich zu anderen spärlichen Optimierungsalgorithmen. Es kann festgestellt werden, dass bei Squad die Parameterreduzierung und die Modellleistung, die durch die Verwendung von DHSPG für das Training erzielt werden, anderen Algorithmen zur spärlichen Optimierung weit überlegen sind.
FazitDas Microsoft-Team schlug ein automatisiertes One-Stop-Framework zur Bereinigung der Trainingsstruktur neuronaler Netze namens OTO (Only-Train-Once) vor. Es kann ein vollständiges neuronales Netzwerk automatisch in ein leichtes Netzwerk komprimieren und gleichzeitig eine hohe Leistung beibehalten. OTO vereinfacht den komplexen mehrstufigen Prozess bestehender Strukturbereinigungsmethoden erheblich, eignet sich für verschiedene Netzwerkarchitekturen und Anwendungen und minimiert den zusätzlichen technischen Aufwand der Benutzer. Es ist vielseitig, effektiv und einfach zu verwenden.Das obige ist der detaillierte Inhalt vonMicrosoft schlägt OTO vor, ein automatisiertes Trainings-Pruning-Framework für neuronale Netze, um leistungsstarke, leichtgewichtige Modelle aus einer Hand zu erhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!