我们是否需要对测试和训练数据集进行预处理?

数据挖掘 机器学习 Python 熊猫 预处理
2022-02-20 01:42:53

我得到了 2 个数据集,并且测试和训练数据集中都缺少值。我还需要预处理test.csv还是仅用于train.csv

2个回答

训练集和测试集都需要预处理。但是您应该注意数据泄漏,这意味着不应使用来自测试集的任何信息来预处理训练集。

例如,如果您尝试将 One-Hot 编码应用于分类标签,您应该在训练集上训练编码器(例如sklearn.preprocessing.OneHotEncoder)并应用经过训练的编码器来获取测试集的标签。

或者,如果您想对某个特征进行归一化,请计算训练集的均值和标准差,并使用它来归一化训练集和测试集。

数据预处理的主要原因是确保数据集的格式设置为它们包含的数据可以被机器学习算法解释和解析。

当您使用训练数据训练机器学习模型并使用带有测试数据的机器学习模型进行预测时。数据预处理必须同时应用于训练和测试数据