行业知识
决策树实验分析(分类和回归任务,剪枝,数据对决策树影响)
2026-11-02 08:10:57
来源:互联网转载
���录
1. 前言
2. 实验分析
2.1 导入包
2.2 决策树模型构建及树模型的可视化展示
2.3 概率估计
2.4 绘制决策边界
2.5 决策树的正则化(剪枝)
2.6 对数据敏感
2.7 回归任务
2.8 对比树的深度对结果的影响
2.9 剪枝
1. 前言
本文主要分析了决策树的分类和回归任务,对比一系列的剪枝的策略对结果的影响,数据对于决策树结果的影响。
介绍使用graphaviz这个决策树可视化工具
2. 实验分析
2.1 导入包
#1.导入包import osimport numpy as npimport matplotlib%matplotlib inlineimport matplotlib.pyplot as pltplt.rcParams['axes.labelsize'] = 14plt.rcParams['xtick.labelsize'] = 12plt.rcParams['ytick.labelsize'] = 12import warningswarnings.filterwarnings('ignore') 2.2 决策树模型构建及树模型的可视化展示
下载安装包:https://graphviz.gitlab.io/_pages/Download/Download_windows.html
选择一款安装,注意安装时要配置环境变量
注意这里使用的是鸢尾花数据集,选择花瓣长和宽两个特征
#2.建立树模型from sklearn.datasets import load_irisfrom sklearn.tree import DecisionTreeClassifieriris = load_iris()X = iris.data[:,2:] # petal legth and widthy = iris.targettree_clf = DecisionTreeClassifier(max_depth=2)tree_clf.fit(X,y)
#3.树模型的可视化展示from sklearn.tree import export_graphvizexport_graphviz( tree_clf, out_file='iris_tree.dot', feature_names=iris.feature_names[2:], class_names=iris.target_names, rounded=True, filled=True)
然后就可以使用graphviz包中的dot.命令工具将此文件转换为各种格式的如pdf,png,如 dot -Tpng iris_tree.png -o iris_tree.png
可以去文件系统查看,也可以用python展示
from IPython.display import ImageImage(filename='iris_tree.png',width=400,height=400)
分析:value表示每个节点所有样本中各个类别的样本数,用花瓣宽