对于varios类型的树有一个DecisionTreeClassifier(ID3,CART,C4.5),但是我不明白我应该传递哪些参数来模拟传统的ID3 algorithm行为?
我不确定这是sklearn实现和ID3算法之间的唯一区别,但是我知道你必须将标准从“gini”更改为ID3的“entropy”
DecisionTreeClassifier(criterion="entropy")
文件说
scikit-learn使用CART算法的优化版本 .
所以你可能无法模拟教科书中的ID3 .
http://scikit-learn.org/stable/modules/tree.html#tree-algorithms-id3-c4-5-c5-0-and-cart
使用Id3Estimator使用以下内容:
from id3 import Id3Estimator estimator = Id3Estimator()
然后适合您的数据
estimator.fit(X, y)
3 回答
我不确定这是sklearn实现和ID3算法之间的唯一区别,但是我知道你必须将标准从“gini”更改为ID3的“entropy”
文件说
所以你可能无法模拟教科书中的ID3 .
http://scikit-learn.org/stable/modules/tree.html#tree-algorithms-id3-c4-5-c5-0-and-cart
使用Id3Estimator使用以下内容:
然后适合您的数据