input sequence for lstm network
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
hi - i am sorry for asking many questions on LSTM but i find the implementation very confusing in matlab. I have a 32x305296 array of doubles which is generated by embedding musical note tokens in 32 dimensions. Effectively, we have 305296 notes of dimension 32 each in a time sequence. I need to create a LSTM network to train and predict the next note. (so it's a classification problem rather than regression as the token must be one of the permissible notes). I have set up the NN below. When i run the code I get this error
"Invalid training data. For image, sequence-to-label, and feature classification tasks, responses must be categorical."
Bearing in mind that this is a time sequence of embedded notes and not a group of labels, how do i change the time series of tokens to a permissible type?
layers = BachBotNN(32,32,0.3);
function [layers]=BachBotNN(inputSize,numHiddenUnits,dropoutProb)
layers = [ ...
sequenceInputLayer(inputSize)
lstmLayer(numHiddenUnits,'OutputMode','sequence')
batchNormalizationLayer
dropoutLayer(dropoutProb)
lstmLayer(numHiddenUnits,'OutputMode','sequence')
batchNormalizationLayer
dropoutLayer(dropoutProb)
lstmLayer(numHiddenUnits,'OutputMode','last')
batchNormalizationLayer
dropoutLayer(dropoutProb)
fullyConnectedLayer(1)
softmaxLayer
classificationLayer
]
Risposta accettata
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Sequence and Numeric Feature Data Workflows in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!