E 'possibile con tensorflow per creare una rete neurale che associa un certo input per una certa uscita?

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

Domanda

Attualmente sto giocando con tensorflow, ma non riesco a ottenere una sospensione se è utile per il mio problema?

Ho bisogno di creare una rete neurale, che è in grado di ingresso mappatura di uscita.

come stanno le cose progressione Ora, io non ho un solo esempio in cui questo è stato fatto, tutti i tipi di problemi tensorflow sembrano da risolvere sono compiti di classificazione, e non questo tipo di problema mappatura ... è in grado di tensorflow farlo ?, devo utilizzare un quadro di rete neurale di diverso da fare in modo ?, E se è disponibile qualcuno potrebbe mostrare un po 'di codice (non l'esempio MNIST)

Il mio compito:

Attualmente sto cercando di fare una rete neurale che prende in campioni di file audio, e genera MFCC dispone dai campioni. Le caratteristiche MFCC possono essere calcolati manualmente, che ho fatto, quindi so quello che l'uscita che cerco è. caratteristica MFCC è una caratteristica vettore è diversi numeri di valori reali. Non può essere classificato come di classe A o classe B, o fare in modo ridurrebbe notevolmente la precisione dell'output, come si intende installare l'output a predeterminati "bidoni" ...

È stato utile?

Soluzione

Dalla tua descrizione, sembra che si trovano ad affrontare un regressione problema, perché si vuole l'output per essere certi valori. Questo è diverso da classificazione problemi, che hanno come uscita la probabilità di ingresso appartenente a certa classe.

La chiave per usare le reti neurali per la regressione è che lo strato di uscita dovrebbe avere alcuna attivazione, che è, dovrebbe essere uno strato lineare. Come out appuntito da @JanvanderVegt, una funzione di perdita comune per problemi di regressione è l'errore quadratico medio (MSE) tra l'uscita di corrente e MFCC caratteristiche che computerizzata.

Se google "esempio di regressione tensorflow" si possono trovare decine di esempi completi, come questo o questo .

Altri suggerimenti

Quello che vi proponiamo è certamente possibile, si sarebbe solo ha n i nodi nel vostro strato di output, con n è la dimensione della vostra funzione MFCC vettore, ed è necessario definire una funzione di perdita che determina quali errori si effettua al momento. Se tutte le caratteristiche hanno una scala simile e analoga importanza è possibile utilizzare l'errore quadratico medio, ma si può ottenere creativo qui. In linea di principio non è molto diversa dalla classificazione multiclasse con uno strato softmax alla fine. In tal caso si ha c nodi di uscita dopo uno strato softmax ed una funzione di perdita di cross-entropia, nel tuo caso si ha n i nodi nel vostro strato di output dopo ad esempio, un pieno strato collegato con una funzione di perdita MSE. Alimentarlo una serie di esempi e dovrebbe fare il compito ragionevole se i dati sono rappresentati bene. Anche se sono incerti perché si vuole usare un approccio ML se questo è calcolabile, si perde la precisione e sono incerti quanto la velocità si vince.

Una molto facile esempio in cui tensorflow viene utilizzato per un compito di regressione e non un compito di classificazione è la regressione lineare con discesa del gradiente, che potete vedere qui: https://github.com/aymericdamien/TensorFlow-Examples/blob/master/notebooks/2_BasicModels/linear_regression.ipynb

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top