Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial Internet of Things >> Internet der Dinge-Technologie

Erstellen effektiver IoT-Anwendungen mit tinyML und automatisiertem maschinellem Lernen

IoT ermöglicht die kontinuierliche Überwachung von Umgebungen und Maschinen mit winzigen Sensoren. Fortschritte bei Sensortechnologien, Mikrocontrollern und Kommunikationsprotokollen machten die Massenproduktion von IoT-Plattformen mit vielen Konnektivitätsoptionen zu erschwinglichen Preisen möglich. Aufgrund der geringen Kosten von IoT-Hardware werden Sensoren in großem Umfang an öffentlichen Orten, in Wohngebieten und an Maschinen eingesetzt.

Diese Sensoren überwachen rund um die Uhr die physikalischen Eigenschaften ihrer Einsatzumgebungen und erzeugen eine riesige Datenmenge. Beschleunigungsmesser und Gyroskope, die an einer rotierenden Maschine eingesetzt werden, zeichnen beispielsweise ständig die Schwingungsmuster und die Winkelgeschwindigkeit des an der Welle befestigten Rotors auf. Luftqualitätssensoren überwachen kontinuierlich die gasförmigen Schadstoffe in der Luft, drinnen oder draußen. Mikrofone in einem Babyphone hören immer zu. Sensoren in Smartwatches messen ständig wichtige Gesundheitsparameter. Ebenso messen verschiedene andere Sensoren wie Magnetometer, Druck, Temperatur, Feuchtigkeit, Umgebungslicht usw. physikalische Bedingungen, wo immer sie eingesetzt werden.

Algorithmen des maschinellen Lernens (ML) ermöglichen die Entdeckung interessanter Muster in diesen Daten, die über das Verständnis einer manuellen Analyse und Inspektion hinausgehen. Die Konvergenz von IoT-Geräten und ML-Algorithmen ermöglicht eine breite Palette intelligenter Anwendungen und verbesserte Benutzererfahrungen, die durch stromsparende, latenzarme und leichte maschinelle Lerninferenz, d. h. tinyML, ermöglicht werden. Viele Branchen werden durch diese Konvergenz revolutioniert, wie in Abbildung 1 dargestellt, einschließlich, aber nicht beschränkt auf tragbare Technologien, Smart Home, intelligente Fabriken (Industrie 4.0), Automobil, maschinelles Sehen und andere intelligente Unterhaltungselektronikgeräte.

tinyML mit automatisiertem maschinellem Lernen

ML-Algorithmen, die auf winzigen Mikrocontrollern (MCUs) in IoT-Geräten eingesetzt werden, sind aufgrund mehrerer Vorteile besonders interessant:

Klicken für Bild in voller Größe

Abbildung 1:tinyML fügt herkömmlichen IoT-Geräten erweiterte Funktionen hinzu (Quelle:Qeexo)

Automatisiertes maschinelles Lernen mithilfe von Sensordaten umfasst die in Abbildung 2 dargestellten Schritte. Die Konfiguration der Sensoren und die Erfassung von Qualitätsdaten für die ML-Zielanwendung werden vor diesen Schritten abgeschlossen. Eine automatisierte Plattform für maschinelles Lernen wie Qeexo AutoML verwaltet den gesamten Workflow zum Erstellen leichter und leistungsstarker Modelle für maschinelles Lernen für MCUs der Klasse Arm Cortex-M0 bis M4 und andere eingeschränkte Umgebungen.

Klicken für Bild in voller Größe

Abbildung 2:Qeexo AutoML Workflow (Quelle:Qeexo)

tinyML mit ARM® Cortex™ M0+ Architektur

Die Verbreitung von IoT-Technologien und die umfangreichen Anforderungen an die Bereitstellung von Sensoren verschieben die Grenzen der Mikrocontroller-Architekturen und des maschinellen Lernens weiter. Beispielsweise werden Arm Cortex M0+-MCUs mit 48 MHz aufgrund ihres geringen Stromverbrauchs häufig auf Sensorplatinen verwendet, die für IoT-Anwendungen entwickelt wurden. Es verbraucht nur 7 mA pro I/O-Pin im Vergleich zur Cortex M4-Version, die mit 64 MHz läuft und 15 mA zieht.

Der niedrige Stromverbrauch der Cortex-M0+-MCUs geht auf Kosten eines reduzierten Speichers und Rechenprofils. M0+-MCUs können nur mathematische 32-Bit-Festkommaoperationen ausführen, haben keine Unterstützung für Sättigungsarithmetik und es fehlen die DSP-Fähigkeiten. Basierend auf dieser MCU kommt der Arduino Nano 33 IoT, eine der beliebtesten IoT-Plattformen, mit nur 256 KB Flash und 32 KB SRAM. Im Gegensatz dazu kann das Arduino Nano 33 BLE Sense, ein beliebtes Sensormodul mit Cortex-M4-Architektur, 32-Bit-Gleitkommaoperationen ausführen, unterstützt DSP und Sättigungsarithmetik sowie viermal so viel Flash und achtmal so viel SRAM.

Die Bereitstellung von maschinellen Lernalgorithmen auf dem M0+ ist aufgrund dieser drei Hauptherausforderungen um Größenordnungen schwieriger als die Bereitstellung auf einem M4:

AutoML M0+ Framework

Qeexo AutoML wurde für diese Herausforderungen entwickelt und bietet eine Pipeline für maschinelles Lernen mit festem Punkt, die für die Arm Cortex M0+-Architektur stark optimiert ist. Diese Pipeline umfasst die Verarbeitung von Sensordaten bei der Festkomma-, Festkomma-Feature-Berechnung und Festkomma-Inferenz für die baumbasierten Ensemble-Algorithmen wie Gradient Boosting Machine (GBM), Random Forest (RF) und eXtreme Gradient Boosting ( XGBoost) Algorithmen. Qeexo AutoML kodiert die Ensemble-Modellparameter in sehr effiziente Datenstrukturen und kombiniert sie mit einer Interpretationslogik, die zu einer extrem schnellen Inferenz auf das M0+-Ziel führt. Abbildung 3 zeigt die von Qeexo für das eingebettete Ziel Arm Cortex M0+ entwickelte Festkomma-Pipeline für maschinelles Lernen.

Klicken für Bild in voller Größe

Abbildung 3:Qeexo AutoML M0+ Inferenzpipeline (Quelle:Qeexo)

Qeexo AutoML führt eine zum Patent angemeldete Modellkomprimierung und Quantisierung durch, um den Speicherbedarf der entwickelten Ensemble-Modelle weiter zu reduzieren, ohne die Klassifikationsleistung zu beeinträchtigen. Abbildung 4 beschreibt den Qeexo AutoML-Trainingsprozess für das eingebettete Cortex M0+-Ziel.

Klicken für Bild in voller Größe

Abbildung 4:Qeexo AutoML M0+ Trainingspipeline (Quelle:Qeexo)

Intelligenter Schnitt

Intelligentes Pruning ermöglicht die Komprimierung von Modellen ohne Leistungsverlust. Einfach ausgedrückt erstellt Qeexo AutoML zunächst ein Ensemble-Modell in voller Größe, wie es von einem Hyperparameter-Optimierer empfohlen wird, und wählt dann auf intelligente Weise nur die leistungsstärksten Booster aus.

Dieser Ansatz, ein größeres Modell zu vergrößern und es dann intelligent für die Zielbereitstellung zu beschneiden, ist viel effektiver, als von vornherein ein kleineres Modell zu erstellen. Ein anfänglich größeres Modell bietet die Möglichkeit, Hochleistungs-Booster (oder Bäume) auszuwählen, was letztendlich zu einer besseren Modellleistung führt.

Wie in Abbildung 5 gezeigt, beträgt das komprimierte Ensemble-Modell etwa 1/10 stel die Größe des vollständigen Modells bei gleichzeitig höherer Kreuzvalidierungsleistung. (Die X-Achse repräsentiert die Anzahl der Bäume (oder Booster) im Ensemble-Modell und die Y-Achse repräsentiert die Kreuzvalidierungsleistung.) Beachten Sie, dass unsere intelligente Beschneidungsmethode Qeexo AutoML nur die 20 leistungsstärksten Booster auswählt, was zu einer Kompression von 90 % führt in Modellgröße.

Klicken für Bild in voller Größe

Abbildung 5:Qeexo AutoML Intelligent Model Pruning (Quelle:Qeexo)

Ensemble-Modellquantisierung

Qeexo AutoML führt die Quantisierung von Ensemble-Algorithmen nach dem Training durch. Die Quantisierung nach dem Training ist eine Standardfunktion für neuronale Netzwerk-basierte Modelle und wird standardmäßig in Frameworks wie TensorFlow Lite unterstützt. Die Quantisierung von Ensemble-Modellen ist jedoch die zum Patent angemeldete Technik von Qeexo, die die Modellgröße noch weiter reduzieren kann und gleichzeitig die Latenz auf MCU-Ebene mit geringer bis keiner Verschlechterung der Modellleistung verbessert. Die Qeexo AutoML M0+-Pipeline generiert Festkomma-Ensemble-Modelle, die in 32-Bit-Präzision dargestellt werden. Zusätzliche Optionen für die 16-Bit- und 8-Bit-Quantisierung können die Modelle um ½ bzw. ¼ mit 2- bis 3-facher Beschleunigung weiter reduzieren.

Beispielanwendungsfälle von tinyML

Was sind einige tinyML-Anwendungen oder Anwendungsfälle? Es gibt grenzenlose Möglichkeiten und hier stellen wir einige vor:

  1. Wir möchten eine intelligente, KI-fähige Wand erstellen, auf die Benutzer tippen können, um die Beleuchtung zu steuern (ein-/ausschalten und die Intensität des Lichts ändern). Wir können die Handgesten in Verbindung mit EIN/AUS und Intensitätssteuerung definieren und dann die Gestendaten mithilfe eines Beschleunigungsmessers und eines Gyroskopmoduls, das an der Rückseite der Wand angebracht ist, sammeln und beschriften. Mit diesen gekennzeichneten Daten kann Qeexo AutoML mithilfe von KI-Algorithmen ein Modell erstellen, um „Klopfen“- und „Wischen“-Gesten an der Wand zu erkennen, um die Beleuchtung zu steuern. Im Video unten sehen Sie innerhalb von Minuten einen von Qeexo AutoML entwickelten Prototyp einer Smart Wall.
  2. Durch maschinelles Lernen und IoT möchten wir sicherstellen, dass Sendungen gemäß den Versandrichtlinien mit äußerster Sorgfalt behandelt werden. Im Video unten sehen Sie, wie ein KI-fähiger Versandkarton erkennt, wie die Sendung von der Quelle bis zum Ziel gehandhabt wurde.
  3. Die Konvergenz von KI mit IoT kann auch zu intelligenten Küchenarbeitsplatten führen. Das folgende Video zeigt mit Qeexo AutoML erstellte Modelle zur Erkennung verschiedener Küchengeräte.
  4. Maschinenüberwachung ist einer der vielversprechendsten Anwendungsfälle von tinyML. Im Video unten werden mehrere Maschinenfehlermuster erkannt.
  5. Anomalieerkennung ist ein weiteres Szenario, das stark vom maschinellen Lernen profitiert. Oftmals ist es in einer industriellen Umgebung schwierig, Daten für verschiedene Fehler zu sammeln, während es relativ einfach ist, den gesunden Betriebszustand der Maschine zu überwachen. Allein durch die Beobachtung des gesunden Betriebszustands können Qeexo AutoML-Algorithmen KI-Systeme zur Anomalieerkennung entwickeln, wie in Teil 1 (unten), Teil 2, Teil 3 und Teil 4 gezeigt.

  6. Aktivitätserkennung mithilfe von Sensoren, die in Wearables eingebettet sind, ist ein weiterer Anwendungsfall, der unserem täglichen Leben zugute kommt. Das folgende Video zeigt, wie Sie mit Qeexo AutoML innerhalb von Minuten eine Lösung zur Aktivitätserkennung erstellen.

Internet der Dinge-Technologie

  1. Erstellen hybrider Blockchain-/Cloud-Anwendungen mit Ethereum und Google
  2. Die Lieferkette und maschinelles Lernen
  3. Bidirektionale 1G-Transceiver für Dienstanbieter und IoT-Anwendungen
  4. Sensoren und Prozessoren konvergieren für industrielle Anwendungen
  5. Roboter bauen mit Raspberry Pi und Python
  6. Zuverlässigkeit steigern und Wartungsergebnisse verbessern mit maschinellem Lernen
  7. IoT und Bildung:Überwindung der digitalen Kluft
  8. Verbesserte Überwachung der Luftverschmutzung mit IoT-Sensoren
  9. Industrielles IoT und die Bausteine ​​für Industrie 4.0
  10. Können ERP- und MES-Systeme mit dem IIoT Schritt halten?