gpt4 book ai didi

python - 如何解决形状问题的逆变换?

转载 作者:行者123 更新时间:2023-11-30 08:48:06 28 4
gpt4 key购买 nike

这是我的代码

scaler = MinMaxScaler() #default set 0~1
dataset= scaler.fit_transform(dataset)
...
make model
...
predicted = model.predict(X_test) #shape : (5, 1)

当我运行predict = scaler.inverse_transform(predicted)

ValueError 发生 ValueError:形状为 (5,1) 的不可广播输出操作数与广播形状 (5,2) 不匹配

我的模型有 2 个特征作为输入

我在多个方向尝试了 scaler.inverse_transform(predict)[:, [0]]reshape

但发生相同的 ValueError

如何解决这个问题?请给我一些建议

我需要您无价的意见,我们将不胜感激。

最佳答案

您以错误的方式使用了inverse_transform:虽然您已将fit_transform用于您的功能,但您正在使用inverse_transform 到您的预测,它们具有不同的形状,因此会出现错误。

不是inverse_transform的预期用途;看看docs了解更多:

inverse_transform(self, X)

Undo the scaling of X according to feature_range.

Parameters: X : array-like, shape [n_samples, n_features]

Input data that will be transformed. It cannot be sparse.

从你的帖子中并不清楚你为什么试图“转变回”你的预测;仅当您已经转换了标签(从您的帖子中不清楚您是否已这样做),并且您想要在标签的原始规模中缩减 MSE 等度量值时,这才有意义。在这种情况下,您应该为标签使用单独的缩放器 - 请参阅How to interpret MSE in Keras Regressor中自己的答案。了解详细信息(其中的示例是 StandardScaler,但原理是相同的)。

关于python - 如何解决形状问题的逆变换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57635791/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com