Python LSTM RNN预测的反向缩放输出错误

Python LSTM RNN预测的反向缩放输出错误,python,tensorflow,keras,lstm,recurrent-neural-network,Python,Tensorflow,Keras,Lstm,Recurrent Neural Network,我使用LSTM模型预测股票的未来open价格。在这里,数据被预处理,模型被构建和训练,没有任何错误,我使用标准的Scaler来缩小数据框中的值。但是在从模型中检索预测时,当我使用scaler.reverse()方法时,它给出了以下错误 ValueError: non-broadcastable output operand with shape (59,1) doesn't match the broadcast shape (59,4) 完整的代码是一个太大的jupyter笔记本,无法直接显

我使用LSTM模型预测股票的未来
open
价格。在这里,数据被预处理,模型被构建和训练,没有任何错误,我使用标准的Scaler来缩小数据框中的值。但是在从模型中检索预测时,当我使用
scaler.reverse()
方法时,它给出了以下错误

ValueError: non-broadcastable output operand with shape (59,1) doesn't match the broadcast shape (59,4)

完整的代码是一个太大的jupyter笔记本,无法直接显示,因此我将其上传到了一个

中,这是因为模型使用形状预测输出(59,1)。但您的定标器适合(251,4)数据帧。在y值形状的数据框上创建新的缩放器,或者将模型密集层输出更改为4维而不是1维。 缩放器适合的数据形状,它将仅在
缩放器.逆变换期间采用该形状

旧代码-形状(n,1)

trainY.append(df\u for\u training\u scaled[i+n\u future-1:i+n\u future,0])

更新的代码-形状(n,4)-使用所有4个输出

trainY.append(df_for_training_scaled[i+n_future-1:i+n_future,:])