Function to trainNetwork returns an unexpected error

3 visualizzazioni (ultimi 30 giorni)
My code returns the following error for this function call - What is the fix for this?
net = trainNetwork(X_train, categorical(y_train), layers, options);
Error using trainNetwork (line 191)
Too many input arguments.
Error in LSTMGomz (line 63)
net = trainNetwork(X_train, categorical(y_train), layers, options);
Caused by:
Error using nnet.internal.cnn.trainNetwork.DLTInputParser>iParseInputArguments (line 75)
Too many input arguments.
  2 Commenti
Matt J
Matt J il 7 Giu 2024
You would have to attach a .mat file providing inputs X_train, categorical(y_train), layers, options for us to run with.

Accedi per commentare.

Risposta accettata

Matt J
Matt J il 8 Giu 2024
Modificato: Matt J il 8 Giu 2024
Your X_train and y_train data were in some weird format that trainNetwork cannot recognize. Try this instead,
Xdata = num2cell(readmatrix('LSTMdataIn.xlsx')',1)';
N=200;
train_ratio=0.8;
split_index=round(train_ratio*N);
inputSize = height(Xdata{1}); % Number of features in the input data
numClasses = height(Xdata)/N; % Number of categories
Xdata=reshape(Xdata,N,numClasses);
ydata=repmat(1:numClasses,N,1);
X_train=Xdata(1:split_index,:);
y_train=ydata(1:split_index,:);
X_test=Xdata(split_index+1:end,:);
y_test=ydata(1:split_index+1:end,:);
layers = [
sequenceInputLayer(inputSize)
lstmLayer(100, 'OutputMode', 'last')
fullyConnectedLayer(numClasses)
softmaxLayer
classificationLayer
];
options = trainingOptions('adam', 'MaxEpochs', 100);
net = trainNetwork(X_train(:), categorical(y_train(:)), layers, options);
Training on single CPU. |========================================================================================| | Epoch | Iteration | Time Elapsed | Mini-batch | Mini-batch | Base Learning | | | | (hh:mm:ss) | Accuracy | Loss | Rate | |========================================================================================| | 1 | 1 | 00:00:00 | 20.31% | 1.6082 | 0.0010 | | 9 | 50 | 00:00:00 | 79.69% | 0.4997 | 0.0010 | | 17 | 100 | 00:00:00 | 82.81% | 0.2851 | 0.0010 | | 25 | 150 | 00:00:01 | 76.56% | 0.3004 | 0.0010 | | 34 | 200 | 00:00:01 | 79.69% | 0.2844 | 0.0010 | | 42 | 250 | 00:00:01 | 82.81% | 0.2591 | 0.0010 | | 50 | 300 | 00:00:01 | 76.56% | 0.2918 | 0.0010 | | 59 | 350 | 00:00:02 | 79.69% | 0.2794 | 0.0010 | | 67 | 400 | 00:00:02 | 82.81% | 0.2565 | 0.0010 | | 75 | 450 | 00:00:02 | 76.56% | 0.2902 | 0.0010 | | 84 | 500 | 00:00:03 | 79.69% | 0.2782 | 0.0010 | | 92 | 550 | 00:00:03 | 82.81% | 0.2557 | 0.0010 | | 100 | 600 | 00:00:03 | 76.56% | 0.2895 | 0.0010 | |========================================================================================| Training finished: Max epochs completed.
  3 Commenti
Ernest Modise - Kgamane
Ernest Modise - Kgamane il 9 Giu 2024
Hi Mat, You have created an interesting data structure for this purpose. I would like to spend time on learning how to configure the data structure. Please send me tops to look at.
Matt J
Matt J il 9 Giu 2024
It's just a cell array of numeric data. You had tables nested inside cells, I think.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Image Data Workflows in Help Center e File Exchange

Prodotti


Release

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by