Sklearn:管道转换()?

用户3595632

这是我用于预处理火车数据的代码:

stock_pipeline = Pipeline([
    ('std_scaler', StandardScaler()),
])
train_pipelined_features_np = stock_pipeline.fit_transform(train_features_df)

训练结束后,我准备对测试数据进行预处理。但想知道我必须使用stock_pipeline.fit_transform(test_features_df)stock_pipeline.transform(test_features_df)...

由于管道只有StandardScaler(),所以我认为这fit()不会做任何事情。所以我认为fit_transform()和 'transform()` 会做同样的事情。但是结果各不相同...

有什么不同?

安德烈·卢基亚年科

让我们看看,有三种不同的东西:“fit”、“transform”、“fit_transform”。

当您拟合某些数据时,Scaler“记住”它,因此如果您拟合火车 - 将计算列车上的参数,如果您拟合测试 - 将计算参数 pn test。

转换时,您使用“记住的”参数。所以通常你在训练数据上拟合模型并对其进行转换。然后用这些“记住”的参数转换测试数据。

当您使用 fit_transform 时,Scaler 学习所选数据的参数并对其进行转换。

所以回答你的问题:如果你使用 fit_transform,Scaler 将根据测试分布缩放测试数据,它会与 train 不同;如果您使用变换,则测试数据将被缩放为训练数据。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

sklearn 子集拟合管道 - 重用转换

如何将sklearn管道转换为pyspark管道?

sklearn管道-如何在不同的列上应用不同的转换

如何将sklearn管道转换为普通代码?

在sklearn管道中获取costum转换器的实例变量

具有多个转换和估计器的 Sklearn 管道

带管道的sklearn StackingClassifer

带管道的sklearn GridSearchCV

sklearn 管道的参数无效

Sklearn管道ValueError:无法将字符串转换为浮点型

如何从 sklearn 管道转换器中提取特征名称?

自定义sklearn管道转换器,提供“ pickle.PicklingError”

使用 .predict() 方法时,sklearn 中的管道对象是否会转换测试数据?

sklearn管道的自定义转换器,可同时更改X和y

在sklearn转换器管道上创建一个fork,以允许数据通过

在自定义转换器中创建新数据框时,SKlearn 管道无法工作

Sklearn 管道转换特定列 - ValueError:要解包的值太多(预期为 2)

在sklearn管道中合并的多个管道?

结合Sklearn管道中的功能

在Sklearn管道中使用VotingClassifier

管道中CountVectorizer的Sklearn NotFittedError

保存sklearn管道的中间结果

使用自定义转换器子类对sklearn管道评分时出现AttributeError,但在拟合时却未出现

图形管道视图转换

管道命令输出转换?

使用Sklearn的TfidfVectorizer转换

sklearn:在RandomizedSearchCV中使用管道吗?

sklearn估计器管道的参数无效

如何在Sklearn管道中执行Onehotencoding