我可以使用决策树来比较属性对的值吗?

Posted

技术标签:

【中文标题】我可以使用决策树来比较属性对的值吗?【英文标题】:Can I use a decision tree to compare values for pairs of attributes? 【发布时间】:2014-06-12 14:52:55 【问题描述】:

我想使用决策树进行二元分类。我想知道我的方法是否适用于决策树。

我的数据集中的每个实例都有成对的属性,我已经确定对于某些对,我可以比较这些值来做出决定。例如,一个实例可能具有以下属性:

实例 = A1, A2, A3, A4, B1, B2, B3, B4

A1 和 B1 具有不同的值,但指的是相同的特征——这就是我将它们称为一对时的意思。我想做的是在树中有节点来比较一对的值:

               (A1 > B1)
               /        \
         (A2 < B2)   (A3 > B3)
         /       \   /       \
                  ...

这是使用决策树的有效方法吗?

对于这类问题有更好的学习方法吗?

【问题讨论】:

【参考方案1】:

这确实是一种有效的方法。您所需要的只是创建新的二进制功能,例如

C[i] = 1 if A[i] > B[i] else 0

或者只是

C[i] = A[i] - B[i] 

并将它们提供给普通的决策树算法,例如 R 中的 rpart 和 Python 中的 sklearn.tree.DecisionTreeClassifier

【讨论】:

以上是关于我可以使用决策树来比较属性对的值吗?的主要内容,如果未能解决你的问题,请参考以下文章

决策树补充

`graphviz` 在决策树的每个节点内呈现的值是啥意思?

机器学习 决策树

学习日记(2.20 决策树)

机器学习算法决策树-6 PRISM

17 丨决策树(上):要不要去打篮球?决策树来告诉你