首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >机器学习数据预处理

机器学习数据预处理
EN

Stack Overflow用户
提问于 2017-02-21 14:19:44
回答 1查看 525关注 0票数 1

我有一个关于机器学习的数据预处理的问题。特别是转换数据,使其具有零均值和单位方差。我已经将我的数据分成两个数据集(我知道我应该有三个数据集,但为了简单起见,假设我有两个数据集)。我应该转换我的训练数据集,使整个训练数据集具有单位方差和零均值,然后在测试模型时转换每个测试输入向量,使每个测试输入向量呈现单位方差和零均值,还是将整个数据集(训练和测试)转换为单位变量和零均值?我的信念是,我应该这样做,这样我就不会在测试数据集中引入一种卑鄙的偏见。但我不是专家,所以我的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-21 16:44:32

只应在训练集上安装预处理器,然后在测试集上使用均值和方差变压器。在火车和测试上计算这些统计数据会泄露一些关于测试集的信息。

让我将您链接到深度学习的好航向,并向您展示引文(都来自安德烈杰·卡萨帕):

常见的陷阱。关于预处理的一个重要要点是,任何预处理统计数据(例如,数据平均值)必须只计算在培训数据上,然后应用于验证/测试数据。例如,计算平均值并从整个数据集的每一幅图像中减去它,然后将数据分割成train/val/test拆分将是一个错误。相反,必须仅在训练数据上计算平均值,然后从所有的分裂(train/val/test)中平均减去。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42369850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档