DESIGN-Praxis

Schlüsselwortsuche auf Mikrocontrollern

17. April 2018, 11:35 Uhr | Yundong Zhang (Stanford University); Naveen Suda, Liangzhen Lai, Vikas Chandra (Arm, San Jose)
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

Neuronale Netze zur SWS

Zu den wichtigsten Architekturen zählen Deep Neural Networks (DNN),
Convolutional Neural Networks (CNN), Rekursive Neuronale Netze (RNN), Convolutional Recurrent Neural Networks (CRNN) und Stufenweise separable Convolutional Recurrent Neural Networks (DS-CNNs).

Deep Neural Networks (DNN)

Das DNN ist ein Standard vorwärtsgerichtetes Neuronales Netz und besteht aus einem Stapel vollverbundener Ebenen und nicht-linearer Aktivierungsfunktionen. Eine Merkmalsmatrix speist dabei in d verborgene Ebenen mit jeweils n vollverbundenen Neuronen. Typischerweise folgt auf jede Ebene eine gerichtete lineare Aktivierungsfunktion. Den Ausgang bilden eine lineare Ebene gefolgt von einer softmax-Ebene welche die Ausgabewahrescheinlichkeiten der Schlüsselwörter beinhaltet.

Gefaltete Neuronale Netze (CNN)

DNN-basierte Schlüsselwortsuchen bilden zeitlokale und frequenzabhängige Korrelationen in Sprachmerkmalen nicht ab.
CNNs nutzen solche Korellationen unter Faltung des zwei-dimensionalen Zeit-Frequenz-Verhaltens. Auf die Faltungsebenen folgt typischerweise Stapelnormierung, RelU-basierte-Aktivierungsfunktionen und einer max/average-pooling-Ebene zur Dimensionsreduktion der Merkmale.
Während einer Folgerung werden die Parameter der Stapelnormierung zu den Gewichten der Faltungsschicht gefaltet. Manchmal wird eine vollverbundene Ebene ohne Aktivierungsfunktion zwischen Faltungs- und Dichteebene, zur Parameterreduktion und Beschleunigung des Lernvorganges, eingefügt.

Bild 2: Eine typische RNN-Architektur
Bild 2: Eine typische RNN-Architektur
© Yundong Zhang

Rekursive Neuronale Netze (RNN)

RNNs erledigen viele Sequenzmodellierungsaufgaben, wie Spracherkennung, Sprachenerkennung oder Übersetzung performant.
Dabei nutzen sie nicht nur die zeitliche Beziehung im Eingangssignal, sondern auch seine Lang-Zeit-Eigenschaften über einen Schaltmechanismus. Anders als die 2D-Merkmale im CNN-Verfahren, nutzen RNNs die T verschiedenen Zeitintervalle, wobei jeder Merkmalsvektor ft eines Intervalls an den vorherigen angefügt wird.
Bild 2 zeigt eine generische RNN-Architektur: Die RNS-Zelle kann ebenso eine LSTM-Zelle oder eine geschaltete rekursive Einheit (GRU) bedeuten.
Da die Gewichte über alle Zeitschritte hinweg wiederverwertet werden, besitzen RNN-Modelle weniger Parameter als CNNs.

Analog zu CNNs kann eine Normierungen das Training verbessern. Dabei werden versteckte Zustände in jedem Zeitschritt normiert.

Bild 3: Eine typische CRNN-Architektur
Bild 3: Eine typische CRNN-Architektur
© Yundong Zhang

Gefaltete Rekursive Neuronale Netze

Die hybride CNN+RNN=CRNN-Methode (Bild 3) startet mit einer Faltungsschicht, in der ein RNN das Signal encodiert und eine dichte voll-verbundene Ebene die Information abbildet. Die rekursive Ebene arbeitet dabei bi-direktional, vielstufig, und schließt das lernende Netz mit ein. GRUs bilden die Basiszellen der rekursiven Ebenen, da weniger Parameter und bessere Konvergenzeigenschaften als bei SLTMs vorliegen.

Stufenweise separable gefaltete Neuronale Netze (DS-CNN)

Neuerdings werden stufenweise separierbare Faltungen als effiziente Alternative zur Standard-3D-Faltung modern: Beim maschinellen Sehen wurde damit die Netzwerkarchitektur kompaktifiziert.

Bild 4: Stufenweise separable CNNs
Bild 4: Stufenweise separable CNNs
© Yundong Zhang

DS-CNN faltet zunächst jeden Kanal in der Eingangsmerkmalsabbildung an einem eigenen 2-D-Filter und nutzt dann punktweise Faltungen um die Ausgänge in der Tiefe zu kombinieren. Die Spaltung der 3D-Faltung in eine 2D Faltung mit sukzessiver 1D-Faltung reduziert Parameter und Schritte, und ermöglicht tiefere und weitere Netze, die sich für Mikrocontrollerimplementierung eigenen.

In Folgendem wird so eine MobileNet-basierte DS-CNN-Implementierung (Bild 4) betrachtet. Dabei wird Average-Pooling gefolgt von einer vollvernetzten Ebene eingesetzt. Mit der Wechselwirkung über das gesamte Netzwerk reduziert das auch die Parameteranzahl in der letzten Ebene.


  1. Schlüsselwortsuche auf Mikrocontrollern
  2. Mikrocontrollergrundlagen
  3. Neuronale Netze zur SWS
  4. Experimente und Ergebnisse
  5. Ressourcen-basierte Klassifizierung von Neuronalen Netzen zur Schlüsselwortsuche
  6. Ressourcenbeschränkte NN-Architektur-Exploration

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu ARM Germany GmbH

Weitere Artikel zu Mikrocontroller

Weitere Artikel zu SBCs / CPU-Boards / CoM / SoM