我想使用决策树进行二进制分类。我想知道我的方法是否是决策树的有效方法。
我的数据集中的每个实例都有一对属性,我已经确定对于某些对,我可以比较这些值来做出决定。例如,实例可能具有以下属性:
instance = {A1,A2,A3,A4,B1,B2,B3,B4}
A1和B1有不同的值,但是引用相同的功能 - 这就是我在将它们称为一对时的意思。我想要做的是在树中有节点来比较一对的值:
(A1 > B1)
/ \
(A2 < B2) (A3 > B3)
/ \ / \
...
这是使用决策树的有效方法吗?
针对此类问题是否有更好的学习方法?
答案 0 :(得分:0)
这确实是一种有效的方法。您所需要的只是创建新的二进制功能,如
C[i] = 1 if A[i] > B[i] else 0
或只是
C[i] = A[i] - B[i]
并将它们提供给普通的决策树算法,例如Python中rpart
上的R中的sklearn.tree.DecisionTreeClassifier
。