如何在决策树学习之前预处理不同类型的数据(连续、离散、分类)

数据挖掘 数据挖掘 随机森林 数据 决策树 预处理
2021-09-15 13:34:12

我想使用一些决策树学习,例如随机森林分类器。

我有不同类型的数据:连续的、离散的和分类的。为了获得一致的结果,我必须如何预处理数据?

1个回答

决策树的好处之一是序数(连续或离散)输入数据不需要任何重要的预处理。事实上,无论任何缩放或平移归一化,结果都应该是一致的,因为树可以选择等效的分裂点。决策树的最佳预处理通常是最简单的或最适合可视化的预处理,只要它不改变每个数据维度中值的相对顺序即可。

没有合理顺序的分类输入是一种特殊情况。如果您的随机森林实现没有内置方法来处理分类输入,您可能应该使用 1-hot 编码:

  • 如果一个分类值有 n 类别,您使用编码值 n 维度,每个类别对应一个。
  • 对于每个数据点,如果它在类别中 k, 相应的 k第维设置为 1,其余设置为 0。

这种 1-hot 编码允许决策树在一次拆分中执行类别相等性测试,因为对非序数数据进行不等式拆分没有多大意义。