使用matlab神经网络lstm预测出现错误 不理解 这样子不是
%% 定义 LSTM 网络架构
%创建 LSTM 回归网络。指定 LSTM 层有 200 个隐含单元
numFeatures = 4;
numResponses = 1;
numHiddenUnits = 200;
layers = [ ...
sequenceInputLayer(numFeatures)
lstmLayer(numHiddenUnits)
fullyConnectedLayer(numResponses)
regressionLayer];
%指定训练选项。
%将求解器设置为 'adam' 并进行 250 轮训练。
%要防止梯度爆炸,请将梯度阈值设置为 1。
%指定初始学习率 0.005,在 125 轮训练后通过乘以因子 0.2 来降低学习率。
options = trainingOptions('adam', ...
'MaxEpochs',250, ...
'GradientThreshold',1, ...
'InitialLearnRate',0.005, ...
'LearnRateSchedule','piecewise', ...
'LearnRateDropPeriod',125, ...
'LearnRateDropFactor',0.2, ...
'Verbose',0, ...
'Plots','training-progress');
%% 训练 LSTM 网络
%使用 trainNetwork 以指定的训练选项训练 LSTM 网络。
net = trainNetwork(XTrain,YTrain,layers,options);
错误使用 trainNetwork (第 184 行)
训练序列具有特征维度 1,但输入层需要特征维度为 4 的序列。
出错 Untitled3 (第 54 行)
net = trainNetwork(XTrain,YTrain,layers,options);
这是啥原因呀 需要怎么修改
从神经网络的定义上看输入层的维度是4,现在的问题应该是用于训练的输入数据XTrain维度不是4,与神经网络的结构不匹配。
就是你用来训练输入的向量应该是4维的也,不然怎么和模型匹配啊
请问解决了吗 是什么问题