决策树实战
每个标题对应notebook文件,同学们可以自己运行一下。
01 What is Decision Tree
我们先来看一个简单的决策树代码,使用scikit-learn里的DecisionTreeClassifier。
我们还可以绘制决策边界,更直观的了解决策树是怎么划分数据的。
具体代码参照01-What-is-Decision-Tree.ipynb
02 Entropy
决策树又称为判定树,是运用于分类的一种树结构,其中的每个内部节点代表对某一属性的一次测试,每条边代表一
个测试结果,叶节点代表某个类或类的分布。
那么如何确定每个节点在哪个特征上做划分?每个特征在哪个值上做划分?
我们引入信息论中的熵的概念。
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
# 加载鸢尾花卉数据集
iris = datasets.load_iris()
X = iris.data[:,2:]
y = iris.target
from sklearn.tree import DecisionTreeClassifier
dt_clf = DecisionTreeClassifier(max_depth=2, criterion="entropy", random_state=42)
dt_clf.fit(X, y)
评论0