我们可以在数据集中对“独立变量”应用特征缩放吗?

我有一个包含8个因变量的数据集(其中2个为分类数据)。我已经应用了ExtraTreeClassifier()来剔除一些因变量。我还对X和y进行了特征缩放。

 from sklearn.preprocessing import StandardScaler sc = StandardScaler() X = sc.fit_transform(X) X = sc.transform(X) y = sc.fit_transform(y) y = sc.transform(y)

之后,我将数据集进行了如下拆分:

from sklearn.cross_validation import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X_new, encoded2, test_size = 0.25, random_state = 0)

现在,我正在应用DecisionTreeRegressor算法进行预测。但我希望得到实际的预测值(目前我得到的是缩放后的值)。如何做到这一点?是否有其他方法可以实现?因为我目前的方法给出的RMSE=0.02,而如果我不对因变量进行特征缩放,RMSE=18.4。请建议如何解决这种问题。


回答:

首先,对目标变量(y)进行缩放并不是必需的,但如果你确实进行了缩放,StandardScaler和其他类似的预处理技术都有一个inverse_transform函数,通过它你可以得到原始值。

StandardScaler的文档中可以看到:

inverse_transform(X[, copy]) 将数据缩放回原始表示

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注