程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为?

开发过程中遇到sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为的问题如何解决?下面主要结合日常开发的经验,给出你关于sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为的解决方法建议,希望对你解决sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为有所启发或帮助;

我在 sklearn.preprocessing 中使用 MinMaxScalar 函数来规范化我的一些变量(数组)的属性,以便在模型创建和训练之后在模型(线性回归)中使用它 我用 x_test(splited usind Train_test_split) 测试了我的模型并将结果存储在一些 variable(say preDicted) 中,为了评估目的,我想用原始数据集评估我的预测,因为我使用了“@H_941_3@minMaxScalar.inverse_transform”函数,该函数有效好吧,当我的代码按以下顺序排列时,

x_Train,x_test,y_Train,y_test=Train_test_split(x,y,test_size=0.25,Train_size=0.75,random_state=27)

sc=MinMaxScaler(feature_range=(0,1))
x_Train=sc.fit_transform(x_Train)
x_test=sc.fit_transform(x_Train)
y_Train=y_Train.reshape(-1,1)
y_Train=sc.fit_transform(y_Train)

当我像下面的代码一样更改顺序时,它会引发我的错误 具有形状 (379,1) 的可广播输出操作数与 广播形状 (379,13))

x_Train,1))
x_Train=sc.fit_transform(x_Train)
y_Train=y_Train.reshape(-1,1)
y_Train=sc.fit_transform(y_Train)
x_test=sc.fit_transform(x_Train)

please compare the two photos for better understanding of my query

解决方法

从链接的打印屏幕图中可以看出您使用 same @H_941_3@minMaxScaler 来fittransform 火车并测试 x 数据,以及训练 y 数据(这是没有意义的)。

正确的流程是

  1. 使用训练 x 数据拟合缩放器。 fit_transform() 还会变换(缩放)x_Train
sc = MinMaxScaler(feature_range=(0,1))
x_Train = sc.fit_transform(x_Train)
  1. 还使用 相同 缩放器缩放测试 x 数据。不要fit在这里;只需缩放/转换即可。
x_test = sc.transform(x_test)
  1. 如果您认为 y 数据也需要缩放,则必须为此安装另一个缩放器。也可能是不需要缩放 y 数据。
# Option A: Do not scale y-data
# (do nothing)

# Option B: Scale y-data
sc_y = MinMaxScaler(feature_range=(0,1))
y_Train = sc_y.fit_transform(y_Train)
  1. 训练模型 (lr) 后,您可以使用缩放后的 x_test 和模型进行预测:
# Option A:
preDicted = lr.preDict(x_test)

# Option B:
y_test_scaled = lr.preDict(x_test)
preDicted = sc_y.inverse_transform(y_test_scaled)

大佬总结

以上是大佬教程为你收集整理的sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为全部内容,希望文章能够帮你解决sklearn.preprocessing.MinMaxScalar 中“inverse_transform”函数的奇怪行为所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: