【问题标题】:Preprocessing raw data in Machine Learning using Python使用 Python 在机器学习中预处理原始数据
【发布时间】:2018-03-11 09:39:49
【问题描述】:

我有一个包含 9 个特征 [数字] 的原始数据集,第 10 列是一个分类 [国家 = 法国、德国、印度、中国、墨西哥]。数据集有 20000 行。许多数值特征列都缺少数据,而且它们没有按比例排列。我应该预测位于数据集中第 5 列位置的特征值。

我应该如何处理它?

我应该:

  1. 使用 Imputer 预处理整个原始数据集(用于丢失 数据),用于分类和特征尺度的编码器。

  2. 在训练和测试集中拆分预处理数据。

或者其他方式:

  1. 将原始数据拆分为训练集和测试集
  2. 仅预处理训练集。

我感到困惑的原因:一旦我对原始数据集进行了预处理,分类列就会爆炸成 5 个新列。那么如何从这个数据集中剪掉自变量和因变量(第 5 列)以分别生成 x 和 y 数组,我可以在这个公式中将其拆分为 x_trainx_testy_trainy_test

 from sklearn.cross_validation import train_test_split
 x_train,x_test,y_train,y_test = 
 train_test_split(x,y,test_size=1/3,random_state=0)

【问题讨论】:

  • 所有用于训练或测试的数据都应该以相同的方式处理。进行机器学习时,您训练模型以接收特定类型(或缩放)的输入以获得所需的输出。因此,您要测试(或使用训练模型)的数据应该与用于训练模型的数据具有相同类型(或相同规模)。您可以处理所有内容然后拆分,或者您可以拆分数据集然后使用相同的方法处理两个组...
  • 感谢您的回复。这有帮助。您是否建议我在预处理步骤之前将因变量(在本例中为第 5 列)作为数据集的最后一列?这样做,我可以更好地控制变量。因为一旦我进行了分类变量编码,这是我数据集中的最后一列,它就会爆炸成多列。然后它对如何 iloc 自变量和因变量感到困惑。你有什么建议。
  • 我不同意您应该缩放然后拆分,请参阅下面的答案。
  • 我同意@Jblasco 先拆分然后进行处理并在测试中应用相同的处理。想一想在所有可用数据都是训练数据而所有看不见的或新数据都是测试数据的真实世界场景中您将如何进行。在这种情况下,如何将测试数据与训练数据一起处理。

标签: python machine-learning scikit-learn


【解决方案1】:

如果您使用的是 Pandas,您可以通过提及列名而不是列位置来预处理数据。通过这种方式,您无需担心目标变量在数据集中的位置。

如果你不使用 Pandas,那么最好取出目标变量,然后对数据集进行预处理

对于上述两种方法,您可以对整个数据集进行预处理,也可以将它们分成两部分进行预处理。

【讨论】:

    【解决方案2】:

    据我所知,您应该先分离数据,然后从训练集中推断出您需要应用的转换,并将其应用于训练和验证/测试集。

    原因是,如果您使用所有数据,您将获得比仅使用训练数据集更多的信息(例如,您可以更好地测量用于处理列的均值或标准差)。这意味着您使用训练数据集和验证/测试数据集的提示来训练您的数据,这不利于您稍后从中得出的预测。这称为数据窥探或数据挖掘 (https://en.wikipedia.org/wiki/Data_dredging)。

    【讨论】:

    • 我对 ML 很陌生,所以在学习的过程中不断进步。您如何看待我的后续问题:您是否建议我在预处理步骤之前将因变量(在本例中为第 5 列)作为数据集的最后一列?这样做,我可以更好地控制变量。因为一旦我进行分类变量编码,这是我数据集中的最后一列,它就会爆炸成多列。然后它对如何 iloc 自变量和因变量感到困惑。你有什么推荐
    • 我特别是先做自变量和因变量的分离,然后进行拆分,再进行预处理。但这取决于您使用的库。
    • 您可以将第 5 列移到最后,这取决于您的方便。确保正确拆分数据集。对于分类编码,您使用了哪个函数。?我想你已经使用了 scikit 的标签编码器。如果是这样,您可以使用 keras 的to_categorical() 来生成用于训练模型的虚拟值。
    猜你喜欢
    • 2018-08-18
    • 1970-01-01
    • 2020-06-15
    • 2017-12-15
    • 2015-08-18
    • 2018-03-07
    • 2020-09-07
    • 2014-02-17
    • 1970-01-01
    相关资源
    最近更新 更多