Ist es möglich, TensorFlow zu erstellen, um ein neuronales Netzwerk zu erstellen, das eine bestimmte Eingabe für eine bestimmte Ausgabe ordnet?

datascience.stackexchange https://datascience.stackexchange.com/questions/14503

Frage

Ich spiele gerade mit TensorFlow, kann aber nicht scheinen, ob es für mein Problem nützlich ist?

Ich muss ein neuronales Netzwerk erstellen, das in der Lage ist, die Eingaben in die Ausgabe zuzuordnen.

Die Art und Weise, wie die Dinge jetzt Fortschritte sind, habe ich kein einziges Beispiel, in dem dies getan wurde, alle Arten von Problemen Tensorflow scheinen eine Klassifizierungsaufgabe zu lösen, und nicht diese Art von Zuordnungsproblemen ... Kann Tensorflow dies tun? Muss ich dafür ein anderes neuronales Netzwerk -Framework verwenden? Und wenn es verfügbar ist, könnte jemand einen Code anzeigen (nicht das MNIST -Beispiel)

Meine Aufgabe:

Ich versuche derzeit, ein neuronales Netzwerk zu erstellen, das Muster von Audiodateien aufnimmt und MFCC -Funktionen aus den Samples generiert. Die MFCC -Funktionen können manuell berechnet werden, was ich getan habe, sodass ich weiß, was ich ausgibt, die ich suche. MFCC -Funktion ist ein Feature -Vektor ist unterschiedliche reale Wertezahlen. Ich kann nicht als Klasse A oder Klasse B klassifiziert werden oder würde die Genauigkeit der Ausgabe erheblich verringern, da Sie die Ausgabe an vorbestimmte "Behälter" anpassen ...

War es hilfreich?

Lösung

Aus Ihrer Beschreibung scheint es, dass Sie vor A konfrontiert sind Regression Problem, weil Sie möchten, dass Ihre Ausgabe bestimmte Werte ist. Dies unterscheidet sich von Einstufung Probleme, die als Ausgabe die Wahrscheinlichkeit des Eingangs einer bestimmten Klasse ausgeben.

Der Schlüssel zur Verwendung neuronaler Netzwerke zur Regression ist, dass die Ausgangsschicht keine Aktivierung haben sollte, dh eine lineare Schicht. Wie von @JanVandervEGT hervorgeht, ist eine häufige Verlustfunktion für Regressionsprobleme der mittlere quadratische Fehler (MSE) zwischen der aktuellen Ausgabe und den von Ihnen berechneten MFCC -Funktionen.

Wenn Sie "TensorFlow Regression Beispiel" googeln, finden Sie Dutzende vollständiger Beispiele wie Dies oder Dies.

Andere Tipps

Was Sie vorschlagen, ist sicherlich möglich, Sie hätten nur n Knoten in Ihrer Ausgangsschicht, mit n Die Größe Ihres MFCC -Feature -Vektors und Sie müssen eine Verlustfunktion definieren, die feststellt, welche Fehler sie derzeit machen. Wenn alle Funktionen eine ähnliche Skala und eine ähnliche Bedeutung haben, können Sie den mittleren quadratischen Fehler verwenden, aber Sie können hier kreativ werden. Im Prinzip unterscheidet sich dies nicht sehr von der Klassifizierung von Multiclas -Klassifizierung mit einer Softmax -Schicht am Ende. In diesem Fall haben Sie c Ausgabe von Knoten nach einer Softmax-Schicht und einer Querentropy-Verlustfunktion, in Ihrem Fall haben Sie n Knoten in Ihrer Ausgangsschicht nach z. B. eine vollständig verbundene Schicht mit einer MSE -Verlustfunktion. Füttern Sie eine Reihe von Beispielen und es sollte die Aufgabe angemessen erledigen, wenn die Daten gut dargestellt werden. Obwohl ich mir nicht sicher bin, warum Sie einen ML -Ansatz verwenden möchten, wenn dies berechnet ist, verlieren Sie die Genauigkeit und ich bin mir nicht sicher, wie viel Geschwindigkeit Sie gewinnen.

Ein sehr einfaches Beispiel, bei dem TensorFlow für eine Regressionsaufgabe verwendet wird und keine Klassifizierungsaufgabe ist, ist eine lineare Regression mit Gradientenabstieg, die Sie hier sehen können: https://github.com/aymericdamien/tensorflow-examples/blob/master/notebooks/2_basicmodels/lineear_egression.ipynb

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit datascience.stackexchange
scroll top