1、决策树概括
- 目标值是分类型变量,特征值(属性值/自变量)可以是分类型,也可以是连续型。
2、决策树的划分依据—信息增益、信息增益比
决策树的生成:
- 贪婪算法:只能局部最优(具有单一属性分类的节点最佳,到此节点认为分类达到准确)
- 根据某一属性对数据进行分裂,以达到某一标准的最优值
3、3种决策树的原理
·ID3
准则:信息增益最大的准则
·C4.5
。信息增益比最大的准则
·CART
。分类树:基尼系数(GINI)最小的准则在sklearn中可以选择划分的默认原则
。优势;划分更加细致(从后面例子的树显示来理解)
4、决策树API
·class sklearn.tree.DecisionTreeClassifier(criterion='gini',max_depth=None,random_state=None)
。决策树分类8器
。criterion:默认是'gini'系数,也可以选择信息增益的'entropy'
。max_depth:树的深度大小
。random_state:随机数种子
5、tree可视化
安装GraphViz
下载地址:https://graphviz.gitlab.io/_pages/Download/Download_windows.html
选择msi文件下载,安装即可。安装完成后,将bin目录加入到系统path环境变量中
安装graphviz的python库
使用conda install python-graphviz(或者 pip install graphviz)命令安装即可
安装pydotplus
cmd下pip install pydotplus
生成树文本的API:
sklearn.tree.export_graphviz(estimator,out_file='tree.dot',feature_names=["","",...]) #该函数能够导出DOT格式
tree.export_graphviz(模型预估器,导出目录,特征值(变量)名称)
可视化展现API
网站:http://webgraphviz.com/ 然后粘贴tree.dot,并执行(需要安装和配置环境变量)
或者:打开cmd,切换到tree.dot目录下,执行:dot -Tpdf tree.dot -o output.pdf ,打开pdf