拆分数据前后规范化步骤的正确顺序是什么

数据挖掘 机器学习 预处理
2021-09-21 05:35:09

我对时间序列数据使用分类模型,在将数据拆分为训练和测试之前对数据进行规范化。现在,我知道训练和测试数据应该分开处理,以防止数据泄露。这里规范化步骤的正确顺序是什么?在滑动窗口的帮助下拆分数据后,我是否应该分别应用步骤 1、2、3 来训练和测试?我在这里使用一个滑动窗口来比较每小时(测试)与之前的 24 小时数据(训练)。这是我目前在管道中使用的顺序。

  1. 移动平均线(平均值)
  2. 每小时重新采样
  3. 标准化
  4. 将数据拆分为训练并使用滑动窗口进行测试(长度为 24 小时(训练),每 1 小时滑动一次(测试))
  5. 使用训练数据拟合模型
  6. 使用测试数据进行预测
1个回答

假设我理解正确,我认为您的流程可以这样,但我不确定第 3 步“标准化”:

  • 步骤 1 和 2 都可以,因为这不会将任何类型的信息从测试集泄漏到训练集。
  • 如果标准化步骤涉及计算整个数据(包括测试集)的值(例如平均值和标准差),然后使用这些值标准化整个数据,那么这可能是一个问题。我建议在拆分后移动第 3 步,以便标准化仅基于训练集,然后“按原样”应用于测试集。