
决策树
|
163
from sklearn.tree import
export_graphviz
export_graphviz(
tree_clf,
out_file=image_path("iris_tree.dot"),
feature_names=iris.feature_names[2:],
class_names=iris.target_names,
rounded=True,
filled=True
)
然后,你可以使用 Graphviz 软件包中的 dot 命令行工具将此
.dot
文件转换为多种格式,
例如 PDF 或 PNG
注 1
。此命令行将
.dot
文件转换为
.png
图像文件:
$
dot -Tpng iris_tree.dot -o iris_tree.png
你的第一个决策树如图 6-1 所示。
图 6-1:鸢尾花决策树
6.2 做出预测
让我们看看图 6-1 中的树是如何进行预测的。假设你找到一朵鸢尾花,要对其进行分类。
你从根节点开始(深度为 0,在顶部):该节点询问花的花瓣长度是否小于 2.45cm。如
果是,则向下移动到根的左子节点(深度 1,左)。在这种情况下,它是一片叶子节点
(即它没有任何子节点),因此它不会提出任何问题:只需查看该节点的预测类,然后决
策树就可以预测花朵是山鸢尾花(class = setosa)。
注 1:graphviz 是一个开源图形可视化软件包,可从
http://wwwgraphviz.org/
获取。