Positionsbestimmung mit IEEE 802.11az

Standorte per Deep Learning bestimmen

8. Mai 2023, 6:00 Uhr | Von Dr. Ahmad Saad, Florent Busnoult und Nadia Shivarova
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

Bau eines Prototyps

Tabelle 3
Tabelle 3. Schätzung der DL-Prozessorleistung und des Ressourcenbedarfs auf ZCU102 MPSoC mit einzelnen Datentypen.
© MathWorks

Der letzte Schritt dieses Arbeitsablaufs besteht in der Realisierung der vortrainierten Netze mit einem FPGA. Matlab Deep Learning für HDL bietet vorgefertigte Bitströme für einen auf dem FPGA laufenden Prozessor. Diese sind auf eine Frequenz von mehr als 200 MHz eingestellt. Hierdurch können der Ressourcenbedarf und die Leistung abgeschätzt werden, bevor ein HDL-Code generiert oder auf einem FPGA-Modul implementiert wird.

Für individuelle Ziele können die Bitströme neu erstellt werden.
Es bietet sich an, sich in einem ersten Schritt ein Bild vom Speicherbedarf und der Leistung des Netzes mit einzelnen Gleitkommadatentypen zu machen. Die Ressourcen- und Leistungsabschätzung für das Entwicklungsmodul Zynq UltraScale+ MPSoC ZCU102 von Xilinx ist in Tabelle 3 dargestellt.

Anbieter zum Thema

zu Matchmaker+
Arbeitsablauf zur Quantisierung eines Deep-Learning-Netzwerks
Bild 9. Automatisierter Arbeitsablauf zur Quantisierung eines Deep-Learning-Netzwerks mithilfe von Matlab-Tools.
© MathWorks

Es ist zu beobachten, dass für ein relativ kleines Netz von zehn Schichten viele Ressourcen – vor allem LUTs und Block-RAM (BRAM) – gebraucht werden. In einer gängigen Anwendung dient die Bereitstellung eines einzelnen Datentyps als Benchmark, auf den Optimierungen angewendet und miteinander verglichen werden.

Eine dieser Optimierungen ist die Quantisierung des Netzwerks zur Verwendung von int8-Festkomma-Datentypen. Durch die Quantisierung wird die Anzahl der Bits, die für jeden Koeffizienten im Netz benötigt werden, reduziert und damit der Ressourcenbedarf verringert sowie die Leistung verbessert. Mit den Tools von Matlab lässt sich dabei ein Netzwerk wie in Bild 9 gezeigt automatisch quantisieren.

Tabelle 4
Tabelle 4. Schätzung der DL-Prozessorleistung und des Ressourceneinsatzes auf ZCU102 MPSoC mit int8-Datentypen.
© MathWorks

Anhand der in Bild 9 dargestellten Schritte können die Leistung des quantisierten Netzes verglichen werden. Die Ergebnisse sind in Tabelle 4 aufgeführt.

Die Latenzzeit und die Verarbeitungsgeschwindigkeit haben sich bei der Verwendung von int8-Festkomma-Datentypen drastisch erhöht. Ferner ist eine deutliche Reduzierung der BRAM- und LUT-Nutzung zu verzeichnen. Es ist also festzustellen, dass der Einsatz von DSPs zugenommen hat. Der Grund hierfür liegt in der Tatsache, dass aufgrund des geringeren Speicherplatzbedarfs mehr Verarbeitungsthreads verwendet werden können, was zu einer Leistungssteigerung führt. Damit ist eine Optimierung erreicht, das Netzwerk kann im FPGA programmiert werden, um es in Echtzeit zu klassifizieren. Der Arbeitsablauf vom Netzwerkentwurf bis zur FPGA-Implementierung ist damit abgeschlossen.

 

Die Autoren

Dr. Ahmad Saad von MathWorks
Dr. Ahmad Saad von MathWorks.
© MathWorks

Dr. Ahmad Saad

ist Senior Application Engineer bei MathWorks und hat sich auf Funkkommunikation und Signalverarbeitung spezialisiert. Bevor er zu MathWorks kam, war er bei der Fraunhofer-Gesellschaft in München als Forscher und Teamleiter tätig, wo er an Projekten beteiligt war, die sich mit der Entwicklung und der Modellierung von kognitiven Kommunikationssystemen für Anwendungen in ultrazuverlässigen industriellen und fahrzeuggestützten Systemen befassten. Seine Promotion in Kommunikationssystemen, die er 2019 abschloss, wurde gemeinsam von der Fraunhofer-Gesellschaft in München und der Universität Augsburg betreut.

ahmads@mathworks.com

Florent Busnoult von Mathworks
Florent Busnoult von Mathworks
© MathWorks

Florent Busnoult

ist Senior Application Engineer bei MathWorks. Sein Schwerpunkt liegt auf Matlab und Simulink für Funkkommunikation in den USA. Vor seiner Tätigkeit bei MathWorks arbeitete er in der Forschung und Entwicklung bei Intel, bevor er Anwendungsingenieur bei Azimuth Systems, einem Unternehmen für HF-Testgeräte, und bei Honeywell Security in Europa wurde. Busnoult hat einen Master-Abschluss in Telekommunikation von der École des Mines Télécom Atlantique (IMT Altlantique).

fbusnoul@mathworks.com

Nadia Shivarova von MathWorks
Nadia Shivarova von MathWorks.
© MathWorks

Nadia Shivarova

ist Senior Application Engineer bei MathWorks. Sie ist spezialisiert auf die Unterstützung von Kunden in der Unterhaltungselektronik-, Halbleiter-, Luft- und Raumfahrtindustrie bei der Modellierung und Simulation von Funksystemen, vom Entwurf von DSP-Algorithmen bis zur Hardware-Implementierung. Zu Shivarovas jüngsten Interessen gehört die Einbindung von KI in Funk­anwendungen. Sie hat 2016 ihr Studium in Elektronik und Elektrotechnik an der Univer­sity of Strathclyde, Glasgow mit einem Master (MEng) abgeschlossen.

nshivaro@mathworks.com


  1. Standorte per Deep Learning bestimmen
  2. Datenaufbereitung
  3. Bau eines Prototyps
  4. Literatur

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Machine Learning

Weitere Artikel zu Entwicklungswerkzeuge