Zur Exploration der Implementierungen wird die Google-Sprachkommando-Datenbank eingesetzt: Dieser Datensatz besteht aus 65000 einsekündigen Audioclips mit dreißig Schlüsselworten von 1000 verschiedenen Sprechern.
Jeder Clip enthält darin gerade ein Schlüsselwort.
Die Netze werden darauf auf zehn ausgewählte Schlüsselwörter hin trainiert, die restlichen Schlüsselwörter aus dem Datensatz bleiben ungenutzt. Die Datenbasis wird zwischen den Zyklen Training, Validierung und Testdesign im Verhältnis 80:10:10 aufgespalten. Dabei wird sichergestellt, dass der Datensatz eines Sprechers im selben Zyklus verbleibt.
Alle Modelle werden im Google TensorflowFramwork trainiert, das dazu Standard-Kreuz-Entropieverlust mit Adamoptimierung verwendet. Bei Stapelgröße 100 werden die Modelle für 20000 Iterationen mit 5x10-4 Initialrate trainiert und nach 10000 Iterationen auf 10-4 reduziert. Die Trainingsdaten werden mit Untergrundrauschen angereichert und an zufälligen Stellen ein 100-ms-Zeitshift eingefügt.
Der Bewertungsparameter der trainierten Modelle ist die Trefferrate.
Tabelle 2 fasst Trefferrate, Speicheranforderung und Operationen pro Folgerung der Netzwerkarchitektur für auf der Google-Kommandobasis trainierte SWS zusammen. Alle Modelle nutzen vierzig MFCC-Merkmale, die aus einem Sprachintervall der Länge 40 ms, auf 20-ms-Versatz extrahiert wurden, also 1960 Merkmale pro Sekunde. Der Speicher bezieht sich auf 8-bit-Gewichte und -Aktivierungsfunktionen, was vergleichbare Trefferrate wie die 32-bit-floating-point-Rechnung erzielt.
NN-Architektur | Trefferrate | Speicher | Operationen |
---|---|---|---|
DNN | 84,3% | 288 Kb | 0,57 MOps |
CNN-1 | 90,7% | 556 Kb | 76,02 MOps |
CNN-2 | 84,6% | 149 Kb | 1,46 MOps |
LSTM | 88,8% | 26 Kb | 2,06 MOps |
CRNN | 87,8% | 298 Kb | 5,85 MOps |
Tabelle 2: NN-Performanz auf der Google-Kommandobasis
Zusätzlich wird angenommen, dass Speicher von Aktivierungsfunktionen unterschiedlicher Ebenen wiederverwendet wird und deshalb das Maxi mum zur Aktivierung zweier aufeinanderfolgender Schichten belegt. "Operationen" zählt dabei die Zahl der Multiplikationen und Additionen durch die Matrizmultiplikationen in jeder Netzwerkebene. Dies ist repräsentativ für die Ausführungszeit des gesamten Netzwerks. Da diese Modelle auf unterschiedliche Datenbasen optimiert sind und für unterschiedliche Speicher-/Rechenanforderungen zugeschnitten sind, ist eindirekter Vergleich unfair. Dennoch können unter dieser Prämisse einige Einsichten in die verschiedenen Architekturen gewonnen werden: