2016-05-25 17 views
1

Beim Studieren der tiefen neuronalen Netze, insbesondere des LSTM, entschied ich mich, der Idee zu folgen, die in diesem Link vorgeschlagen wurde: Building Speech Dataset for LSTM binary classification , um einen Klassifikator zu bauen.Spracherkennung mit LSTM mit in MFCC extrahierten Merkmalen

Ich habe eine Audio-basierte, wo die Funktionen MFCC zu extrahieren, wo jedes Array 13x56 jedes Phonem eines Wortes ist. Trainingsdaten würden so aussehen:

X = [[phon1fram[1][1], phon1fram[1][2],..., phon1fram[1][56]], 
    [phon1fram[2][1], phon1fram[2][2],..., phon1fram[2][56]], .... 
    [phon1fram[15][1], phon1fram[15][2], ..., phon1fram[15][56] ] ] 
    ... 
    ... 
    [[phon5fram[1][1], phon5fram[1][2],..., phon5fram[1][56]], ... , 
    [phon5fram[15][1], phon5fram[15][2], ..., phon5fram[15][56]] ] 

in Beschriftung, die würden sicherlich die ersten Frames Etiketten sind als „Vermittler“ gesagt werden, und nur der letzte Frame tatsächlich das Phonem darstellen?

Y = [[0, 0, ..., 0],  #intermediary 
    [0, 0, ..., 0], ... , #intermediary 
    [1, 0, ..., 0]]  # is one phoneme 
    [[0, 0, ..., 0], ... #intermediary 
    [0, 1, ..., 0]   # other phoneme 

Das wäre wirklich richtig? Während der ersten Tests, die ich durchgeführt habe, neigten alle erwarteten Outlets dazu, diesen "Mittelsmann" als den am weitesten verbreiteten zu bezeichnen. Jeder andere Ansatz könnte verwendet werden?

Antwort

1

Ich mache die gleiche Aufgabe. Ich benutze http://keras.io/layers/recurrent/, um die Aufgabe zu erledigen.Verwenden Sie Keras mit dem Backend, um diese Aufgabe zu erfüllen. Sie können diese Schritte ausführen:

  1. Speichern Sie Mfcc-Werte in einer TXT-Datei.
  2. TXT-Datei lesen und alle Werte in einem Numpy-Array speichern.
  3. Übergeben Sie dieses numpy Array an den Eingang Ihres neuronalen Netzes.
  4. Nehmen Polsterung vor dem Eingang

Fütterung Sie können mit den hyperparamters (batch_size, Optimierer, Verlustfunktion, sequnece Größe) zur Auswertung Ergebnisse rumspielen.

+0

Hey Mann, können Sie bitte Github Repo teilen, wenn möglich, ich versuche etwas sehr ähnliches zu tun –