Wie eine hohe Genauigkeit bei der Identifizierung von Schlüsselwörtern Cortex-M-Prozessoren zu erreichen

Wir können neuronale Netzwerkarchitektur optimieren, um den Umfang des Adapters Speicher und Berechnen des Mikrocontrollers zu begrenzen, und hat keinen Einfluss auf die Genauigkeit und Diskussion Wir werden die Faltungs neuronales Netzwerk in der Tiefe trennbaren Cortex-M-Prozessoren erklären hier Auf die Realisierung von Keyword-Erkennungspotential.

Stichwort Spek (KWS) sprachbasierte zu implementieren Benutzer-Interaktion entscheidend ist, erfordert Echtzeit-Reaktion auf dem Smart-Gerät und eine hohe Genauigkeit eine gute Nutzererfahrung zu gewährleisten. In jüngster Zeit Neuralnetzwerkarchitektur KWS hat sich zu einer beliebten Wahl, denn mit dem traditionellen Verglichen mit Sprachverarbeitungsalgorithmen ist die Genauigkeit neuronaler Netzwerke überlegen.

Schlüsselwörter Identifikation neuronale Netzwerkpipeline

Aufgrund der halten ‚always-on‘, KWS Energiebudget angewandt sehr begrenzt ist. Obwohl KWS-Anwendungen auch auf einem dedizierten Hochleistungs-DSP oder CPU ausgeführt werden können, aber es ist besser geeignet für ARM-Cortex-M-Mikrocontroller laufen kann helfen Um Kosten zu minimieren, werden Arm Cortex-M-Mikrocontroller häufig für andere Aufgaben am Rande des Internet der Dinge verwendet.

Allerdings auf einem Mikrocontroller zu implementieren, basierend auf Cortex-M-basierten neuronale Netz von KWS, sind wir mit den folgenden Herausforderungen konfrontiert: 1. begrenzten Speicherplatz typisch für Cortex-M-System bietet bis zu ein paar hundert KB verfügbaren Speicher bis das bedeutet. das gesamte neuronale Netzwerkmodell, einschließlich Eingabe / Ausgabe, das Gewicht und der Aktivierung muss innerhalb dieser kleinen Speicherbereich arbeiten. 2. die begrenzten Rechenressourcen aufgrund der KWS always-on, Echtzeit-Anforderungen zu erhalten, die jeden Nerven begrenzen die Gesamtzahl des Netzwerkbetriebes ist die folgende Überlegung zu einer typischen neuronalen Netzwerkarchitektur KWS Inferenz gilt: • die Tiefe des neuronalen Netzes (DNN) DNN Standard-Vorwärtskopplungs neuronales Netz, auf den vollen Stapel von Schichten von der aktiven Schicht und die nichtlinearen • Volumen verbunden. Produkt neuronales Netzwerk (CNN), basierend auf einer der Hauptmängel des KWS DNN ist unmöglich für die lokale Vereinigung der Stimme, der Zeitbereichskorrelation, Frequenzkorrelation Modell. CNN eingeben kann Zeitbereich und Frequenzbereich-Merkmale wie Bildverarbeitung, ausführt und 2D-Faltungsoperation in der oben, um diese Korrelation zu finden. • rekurrente neuronale Netzwerk (RNN) RNN-Sequenz in vielen Modellierungsaufgaben zeigt ausgezeichnete Energie, vor allem bei der Spracherkennung, Sprachmodellierung und Übersetzung. RNN der Lage, nicht nur zeitliche Beziehung zwischen dem Eingangssignal zu finden, kann auch die ‚Gating‘ Mechanismen verwenden, um auf der Länge der Beziehung abhängig zu erfassen. • Faltung rekurrenten neuronalen Netz ( CRNN) ist ein Hybrid-Faltungs neuronales Netzwerk CNN-Zyklus und RNN kann in lokalen zeitlichen / räumlichen Korrelation gefunden werden. CRNN Faltungsmodell Schicht ausgehend, gefolgt RNN, codieren, das Signal, durch eine dichte Schicht, gefolgt voll verbunden sind. • Tiefen kürzlich trennbare Faltung neuronales Netz (DS-CNN), ist die Tiefe des trennbaren Faltung neuronales Netzes als wirksame Alternativen zu Standard-3D-Faltungsoperation empfohlen und ist für Computer Vision kompakte Netzwerkarchitektur verwendet. DS-CNN erster Einsatz unabhängig 2D-Filter mit der Eingabe jedes Merkmals in Fig Kanalfaltungsberechnung, und dann die punktweise Faltung (d.h. 1x1-), gibt das kombinierte Tiefenmaß durch Standard-2D-und 3D-Faltung wird in 1D zerlegt nachfolgende so, und wird die Anzahl der Parameter der Berechnung reduziert wird, die tiefe und breite Architektur möglich, auch in dem Mikrocontroller die ressourcenbeschränkte Vorrichtung auszuführen. ablaufen auf Cortex-M-Prozessoren Wenn die Worterkennung, Speichernutzung und die Ausführungszeit die beiden wichtigsten Faktoren bei der Gestaltung und Optimierung von neuronalen Netzen für diesen Zweck sind, sollten Sie berücksichtigen diese beiden Faktoren das neuronale Netzwerk der drei Gruppen begrenzen unten für kleine gezeigt sind , mittlere und große Cortex-M-System, ist die Konfiguration eines typischen Systems basiert Cortex-M.

Die Kategorie Neuronale Netzwerkkategorie (NN) des KWS-Modells unter der Annahme von 10 Inferenzen und 8 Gewichtungen / Aktivierungen pro Sekunde

Um das Modell anzupassen, um nicht die Grenzen des Speicher- und Rechen Mikrocontroller zu überschreiten, muss eine Suche über den Parameter durchgeführt werden. Die folgende Tabelle zeigt die neuronale Netzwerkarchitektur und die entsprechenden Parameter müssen optimiert werden, über.

Hyperparametrischer Suchraum des neuralen Netzwerks

Zuerst wird eine erschöpfende Suche Merkmalsextraktion und neuronale Netzwerkmodell von Hyper-Parametern durchführen, und dann eine manuelle Auswahl durchführt, den Suchraum zu verengen, die beide wiederholt ausgeführt. Die folgende Abbildung zusammengefasst für jede neuronale Netzwerkarchitektur für die optimale Leistungsmodell und dem entsprechenden Speicher verfügbar Anforderungen und Berechnungen: Die DS-CNN-Architektur bietet höchste Genauigkeit und benötigt erheblich weniger Speicher und Rechenressourcen.

Beziehung zwischen Gedächtnis und Berechnung / Argumentation im optimalen neuralen Netzwerkmodell

KWS Cortex-M7 eingesetzt Anwendungen im STM32F746G-DISCO Entwicklungsplatine (wie unten gezeigt) basiert, enthaltend 8 Gewichts DNN-Modell und 8 Aktivierung ausgeführt KWS 10 mal pro Sekunde während des Betriebs des Denkens. Per Argumentation ( einschließlich Speicher kopiert, um Energie zu sparen dauert etwa 12 Millisekunden in MFCCs Merkmalsextraktion die DNN) durchgeführt wird, um den Rest des Mikrocontrollers ermöglicht wird, auf einen Interrupt wartet (WFI) -Modus. KWS gesamte Anwendung verwendet etwa 70 KB von Speicher, von etwa 66 KB einschließlich Etwa 1 KB für die Aktivierung, etwa 2 KB für Audio-I / O und MFCC-Funktionen.

KWS-Einsatz auf Cortex-M7-Entwicklungsboard

Zusammenfassend kann ARM Cortex-M-Prozessor eine hohe Genauigkeit bei der Keyword-Erkennungsanwendungen erreichen, während die Speicher- und Rechenanforderungen zu begrenzen, um Netzwerkarchitektur anzupassen. DS-CNN-Architektur bietet die höchste Genauigkeit und die Speicher- und Rechen erforderlichen Ressourcen sind auch viel niedriger. Kodex Modelldefinition und Pre-Trainingsmodell aus github.com/ARM-software erhalten werden. In unserer neue Maschine-Learning-Entwickler-Website bietet One-Stop-Ressource-Bibliothek, detaillierte Produktinformationen und Anleitungen befassen sich mit der Netzwerk-Edge-Maschine zu helfen Lernen durch das weiße Papier Herausforderungen auf diesem Blog ‚Netzwerk-Edge: Schlüsselworterkennung auf dem Mikrocontroller.‘ (Hallo Rand: Stichwort Spek auf Mikrocontrollern) wurde das weiße Papier ursprünglich in der Cornell University Library Website veröffentlicht Arm herunter zu laden. eine Kopie des Whitepaper, klicken Sie bitte den Link unten. https://community.arm.com/cfs-file/__key/telligent-evolution-components-attachments/01-2142-00-00-00-01-34-26/Arm_5F00_KeywordSpotting_5F00_Whitepaper. pdf

2016 GoodChinaBrand | ICP: 12011751 | China Exports