In diesem Jahr steht für Mathworks auf der Embedded World das Thema Implementierung von Algorithmen des Machine Learning und Deep Learning in Embedded Systemen im Fokus. Auf 100 Quadratmetern zeigt MathWorks mehrere Beispiele aus verschiedenen Anwendungsbereichen des maschinellen Lernens, wie die Erkennung und Klassifizierung von Objekten und Sprache für autonome Systeme.
Machine Learning und Deep Learning im Fokus
Machine Learning und Deep Learning sind leistungsstarke Methoden, um komplexe Modellierungsaufgaben in den verschiedensten Industriebereichen zu lösen. Das Kernprinzip besteht darin, dass Ingenieure und Wissenschaftler Modelle entwickeln, die selbstständig aus Daten lernen. Auf diese Weise können zum Beispiel Maschinenausfälle durch vorausschauende Wartung vorhergesagt und entsprechend vermieden werden oder Fahrzeuge mittels autonomer Systeme selbstständig lenken.
Doch wie kommt die Intelligenz in die Maschine? Um Algorithmen des Machine Learning produktiv nutzen zu können, eignet sich die Implementierung in Embedded Systemen oder in einer Cloud-Infrastruktur. Dabei zeigen sich je nach Modell unterschiedliche Präferenzen für die genutzte Hardware. So werden für Machine-Learning-Verfahren wie etwa ‚Support Vector Machine‘ vor allem Microcontroller genutzt, während sich für die Implementierung von Convolutional Neural Networks (CNN) im Bereich des Deep Learning GPUs etabliert haben. In beiden Fällen muss das entwickelte Modell in weniger abstrakten Code, zum Beispiel in C, umgewandelt werden, um auf die Hardware überführt werden zu können.
Neuronale Netze mit GPU-Coder in Maschinen implementieren
Der Mathworks GPU Coder wurde speziell dafür entwickelt, immer intelligenter werdende MATLAB-Anwendungen und Deep Learning Netze auf GPUs zu integrieren. Dabei werden die MATLAB-Modelle in optimierten NVIDIA CUDA Code umgewandelt. So können auch rechenintensive Teile des MATLAB Codes schneller ausgeführt werden. Änderungen im MATLAB-Code können durch Knopfdruck auf den CUDA-Code übertragen werden, was zudem die Synchronisierung zwischen beiden Modellen vereinfacht.
Die Demonstrationen am Mathworks-Messestand im Einzelnen:
Machine Learning Als Beispiel für Modelle, die aus Daten lernen können, zeigt diese Demo eine Embedded Data Analytics Klassifizierung von Herztönen in „normal“ und „abnormal“ durch Nutzung von Machine Learning und automatischer Code Generierung.
GPU-Coder für beschleunigte Bild- und Spracherkennung mittels Deep Learning Der neue MathWorks GPU-Coder ermöglicht Anwendern die automatische Generierung von optimiertem NVIDIA CUDA Code aus MATLAB Code für Deep Learning, eingebettete Bild- und Sprachverarbeitung sowie autonome Systeme. Das Ziel von GPU-Coder ist es, den Arbeitsablauf der Implementierung zu vereinfachen – von abstrakten Funktionsbeschreibungen in MATLAB über die Beschleunigung rechenintensiver Teile des MATLAB-Codes auf NVIDIA Tesla GPUs bis hin zur Implementierungen auf NVIDIA Jetson System-on-Modules (SoMs) und der NVIDIA DRIVE PX Plattformen.
Vision HDL für SoC FPGAs Ein für die Überwachung der Fahrbahnbeschaffenheit konzipierter Algorithmus wird mittels automatischer C- und HDL-Code-Generierung auf einem heterogenen SoC FPGA implementiert. Vision HDL Toolbox ermöglicht Streamen und Prozessieren der Videodaten in Echtzeit.
Adaptive Cruise Control mit Sensorfusion auf ARM Plattform Closed-Loop-Simulation einer adaptiven Fahrgeschwindigkeitsregelung basiert auf Sensorfusion von Kameradaten und Radarsignalen für ein Fahrzeug, das auf einer gebogenen Straße fährt. Implementierung auf AM3358 ARM Cortex A8 Prozessor mit Embedded Coder.
Verifikation und Validierung in Simulink Die Demo zeigt den kompletten Workflow von der Erstellung und Verwaltung von Anforderungen in Simulink bis hin zum automatisierten Testen sowie typische Qualitätsmessungen wie Checks von Modellierungsrichtlinien, Metriken und Testabdeckung.
Als Unteraussteller stellt Speedgoat folgende FPGA-Demos vor:
Speedgoat: 1MHz Closed-Loop FPGA-basierte HIL Simulation eines PMSM-Motors inklusive LeistungselektronikHardware-in-the-Loop Simulation eines PMSM-Motors und Drives auf FPGA mit einer Echtzeit-Abtastzeit von 1µs auf einer Baseline real-time target machine von Speedgoat. Automatische VHDL-Codegenerierung aus Simulink Simscape Power Systems mit HDL Coder von MathWorks. Parameteranpassung und -optimierung sowie Überwachung und Datenaufzeichnung während Echtzeitausführung mittels Simulink Real-Time.
Speedgoat: Echtzeit-Erkennung von Fahrspuren und Objekten mit direkter Videoerfassung über USB Automatisierte Identifizierung von Fahrspuren und Objekten inklusive Videoerfassung und algorithmischer Verarbeitung mittels der Computer Vision System sowie der Vision HDL Toolbox. Ausführung auf Kintex 7 FPGA I/O Modul, installiert in einer Baseline real-time target machine von Speedgoat. Automatische VHDL Codegenerierung aus Simulink mittels HDL Coder von MathWorks. Livestreaming der verarbeiteten Videodaten vom Echtzeit- auf Windows-Rechner über HDMI mit Simulink Real-Time.
Mathworks ist zudem erneut Platin-Sponsor des Student Day am 1. März 2018. Dort werden über 1.000 Studierende erwartet, die sich am Mathworks-Stand über den Einsatz von MATLAB und Simulink sowie über berufliche Einstiegsmöglichkeiten bei Mathworks informieren können.
Mathworks auf der Embedded World in Halle 4, Stand 110