如何解决预测后如何取消数据缩放?
我有一个具有2个特征(价格和数量)和1个预测变量(价格)的数据集,并使用LTSM模型根据上一组价格预测下一个价格。
首先,我缩放数据集:
#Scale the data
scaler = MinMaxScaler(feature_range=(0,1))
scaled_data = scaler.fit_transform(dataset)
最后我想对它进行缩放:
#Get the models predicted price values
predictions = model.predict(x_test)
predictions = scaler.inverse_transform(predictions)
但是这不起作用,并且出现此错误:
ValueError: non-broadcastable output operand with shape (400,1) doesn't match the broadcast shape (400,2)
解决方法
此错误的意思是:您缩放了两个特征,即形状的价格和体积(400,2),但是,在缩放时,您仅给出形状的预测价格(400,1)>
一种简单的解决方案是使用两个单独的缩放器-一个将取消缩放响应变量,即价格(以及相关的输入功能,再是价格),第二个将其余功能缩放。
,您尝试过此吗:
predictions = scaler.inverse_transform(predictions.reshape(-1,1)).reshape(-1)
,
我决定将零列添加到预测数据集,对其进行缩放,然后删除未使用的列。愚蠢但为我工作
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。