我想使用一些决策树学习,例如随机森林分类器。
我有不同类型的数据:连续的、离散的和分类的。为了获得一致的结果,我必须如何预处理数据?
我想使用一些决策树学习,例如随机森林分类器。
我有不同类型的数据:连续的、离散的和分类的。为了获得一致的结果,我必须如何预处理数据?
决策树的好处之一是序数(连续或离散)输入数据不需要任何重要的预处理。事实上,无论任何缩放或平移归一化,结果都应该是一致的,因为树可以选择等效的分裂点。决策树的最佳预处理通常是最简单的或最适合可视化的预处理,只要它不改变每个数据维度中值的相对顺序即可。
没有合理顺序的分类输入是一种特殊情况。如果您的随机森林实现没有内置方法来处理分类输入,您可能应该使用 1-hot 编码:
这种 1-hot 编码允许决策树在一次拆分中执行类别相等性测试,因为对非序数数据进行不等式拆分没有多大意义。