栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

对训练数据进行拟合变换并对测试数据进行变换

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

对训练数据进行拟合变换并对测试数据进行变换

让我们以sklearn.preprocessing.StandardScaler转换为例。

从文档中,这将:

通过去除均值并缩放到单位方差来标准化特征

假设您正在使用如下代码。

import numpy as npfrom sklearn.model_selection import train_test_splitfrom sklearn.preprocessing import StandardScaler# X is features, y is labelX_train, X_test, y_train, y_test = train_test_split(    X, y, test_size=0.33, random_state=42)

调用时

StandardScaler.fit(X_train)
,它的作用是根据中的值计算均值和方差
X_train
。然后,调用
.transform()
将通过减去均值并除以方差来变换所有特征。为了方便起见,可以使用一步来完成这两个函数的调用
fit_transform()

您只想使用训练数据来适合缩放器的原因是,您不想使用测试数据中的信息来偏向模型。

如果

fit()
要查看测试数据,则需要为每个特征计算一个 新的
均值和方差。从理论上讲,如果您的测试和训练集具有相同的分布,则这些值可能非常相似,但实际上通常并非如此。

相反,您只想使用在训练数据上计算出的参数来转换测试数据。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/669232.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号