可视化决策树
from sklearn.tree import export_graphviz
export_graphviz(tree, out_file="tree.dot", class_names=["malignant", "benign"],
feature_names=cancer.feature_names, impurity=False, filled=True)
import graphviz
with open("tree.dot") as f:
dot_graph = f.read()
display(graphviz.Source(dot_graph))
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/d12ebd4c792cba5864729668c5f1e6af.png)
观察 worst radius <= 16.795 分支右侧的子结点,我们发现它只包含
8 个良性样本,但有 134 个恶性样本。树的这一侧的其余分支只是利用一些更精细的区别
将这 8 个良性样本分离出来。在第一次划分右侧的 142 个样本中,几乎所有样本(132 个)
最后都进入最右侧的叶结点中。
再来看一下根结点的左侧子结点,对于 worst radius > 16.795,我们得到 25 个恶性样本
和 259 个良性样本。几乎所有良性样本最终都进入左数第二个叶结点中,大部分其他叶结
点都只包含很少的样本