Elektroniknet Logo

Mit Pruning zum Erfolg

KI-Modelle auf SoCs implementieren


Fortsetzung des Artikels von Teil 2

Performance der DPU

Abschließend wurde in einem letzten Experiment die Belastung des eingesetzten DPU-Cores beurteilt. Hierfür kamen zwei unterschiedliche Konfigurationen zum Einsatz. Zuerst eine Konfiguration mit 512 Berechnungen pro Taktzyklus, als zweites eine Konfiguration mit einem Maximum an 4.096 Berechnungen pro Taktzyklus. Im Folgenden werden die zwei Konfigurationen als »B512« beziehungsweise »B4096« bezeichnet. Mit einem DPU-Takt von 325 MHz ist die maximale Performance 166,4 Giga-Operations per Second (GOPS) für B512 beziehungsweise 1331,2 GOPS für B4096.

Relevante Anbieter

Performance-Vergleich
Bild 7. Performance-Vergleich zwischen B512 und B4096.
© Solectrix

Bild 7 vergleicht die Performance und die Laufzeit für die zwei betrachteten DPU-Konfigurationen. Hierbei ist die Performance von B512 in grün gezeigt, die von B4096 in blau. Wie zu sehen, ist die totale Inferenzzeit von B512 etwa 68 ms. Im Gegensatz dazu ist die Inferenzzeit für B4096 etwa 15 ms. Somit ist der Laufzeitdifferenzfaktor zwischen den zwei Konfigurationen etwa 4,5 und unterscheidet sich deutlich vom theoretisch optimalen Faktor 8,0. Zusätzlich ist zu sehen, dass die Performance nicht konstant ist, sondern für die verschiedenen Netzschichten variiert.

Performance-Vergleich
Bild 8. Performance-Vergleich zwischen B4096-DPU-Konfiguration nach Training und Pruning.
© Solectrix

Abschließend vergleicht Bild 8 die Performance zwischen dem Modell nach dem Training und nach dem Pruning im Falle der B4096-DPU-Konfiguration. Während das Modell nach dem Training erneut in Blau dargestellt ist, ist das Modell nach dem Pruning in Orange gezeigt. In dem Bild sind zwei interessante Fakten zu beobachten. Erstens ist die Inferenzzeit des Modells nach dem Pruning etwa 5,5 ms kürzer verglichen mit dem lediglich trainierten Modell. Das entspricht einer zeitlichen Reduktion von etwa 38,4 % und weicht erneut deutlich von der Reduktion um 54,1 % ab, wie sie für das Modell nach dem Pruning beobachtet wurde. Also führt eine Reduktion bezüglich der Anzahl an Parametern nicht automatisch zur gleichen Reduktion bei der Inferenzzeit auf der Zielhardware. Zweitens, für manche Schichten – das gilt speziell für frühe Netzschichten – führt das Pruning zu einer klaren Reduktion an Parametern, jedoch zu keiner Reduktion an Inferenzzeit. So könnte es bei diesen Schichten vorteilhaft sein, sie vom Pruning auszuschließen, um von der maximalen Filtertiefe zu profitieren, solange die Anzahl an Parametern nicht das Hauptkriterium für das Optimieren ist.

André Köhler
André Köhler entwickelt Algorithmen für Smart-Vision und KI-basierte Systeme.
© Solectrix

Pruning ist unverzichtbar

Demzufolge könnte es vorteilhaft sein, die Inferenzzeit unterschiedlich entworfener Netze vor dem Modelltraining zu profilieren. Hiermit ist ein Modell zu finden, das annähernd eine optimale Leistung auf der konfigurierten DPU-Core-Struktur erreicht.

Vorangehendes Beispiel dient lediglich zur Illustration und bestätigt das Grundprinzip des Workflows. Sowohl die Trainings- als auch die Pruning-Konfigurationen kann man nicht als optimal bezeichnen. Aufgrund der Ergebnisse ist jedoch deutlich zu erkennen, dass Pruning ein unverzichtbarer Schritt beim Entwickeln von KI-Modellen auf Embedded-Systemen ist.

Literatur
[1] Hu H., Peng R., Tai Y.W., Tang C.K.: Network Trimming: A Data-Driven Neuron Pruning Approach towards Efficient Deep Architectures. 2016.

Dr. Thomas Richter
Dr. Thomas Richter ist seit drei Jahren bei Solectrix als Algorithmik-Experte für die Entwicklung und Umsetzung von sowohl klassischen als auch KI-basierten Bildverarbeitungsalgorithmen im Embedded-Umfeld zuständig.
© Solectrix

Die Autoren

André Köhler hat an der FH Mittweida ein Studium in Mikrosystemtechnik absolviert und arbeitet inzwischen seit zwölf Jahren bei Solectrix. Seine Schwerpunkte sind FPGA-Design im Bereich von Embedded-Kamerasystemen unterschiedlicher Anforderungen. Er entwickelt Algorithmen für Smart-Vision und KI-basierte Systeme. Außerdem betreibt er Evaluierung und Prototyping von Cutting-Edge-Technologien zur Erweiterung des Firmen-Know-hows.

Dr. Thomas Richter hat an der FAU in Erlangen Informations- und Kommunikationstechnik studiert und dort mehrere Jahre als wissenschaftlicher Mitarbeiter mit Schwerpunkt Mehr­kamera­signalverarbeitung gearbeitet und promoviert. Seit drei Jahren ist er bei Solectrix als Algorithmik-Experte für die Entwicklung und Umsetzung von sowohl klassischen als auch KI-basierten Bildverarbeitungsalgorithmen im Embedded-Umfeld zuständig.


  1. KI-Modelle auf SoCs implementieren
  2. Versuchsergebnisse
  3. Performance der DPU

Das könnte Sie auch interessieren

Verwandte Artikel

Solectrix GmbH