0
点赞
收藏
分享

微信扫一扫

【sklearn】使用sklearn实现决策树

【sklearn】使用sklearn实现决策树

1. 决策树介绍

决策树基于树的结构进行决策,从根节点开始,沿着划分属性进行分支,直到叶节点:
在这里插入图片描述

假设离散随机变量[公式]的概率分布为 P ( Y ) P(Y) P(Y),则其熵为

H ( Y ) = − ∑ P ( y ) l o g P ( y ) H(Y)=-\textstyle \sum{P(y)logP(y)} H(Y)=P(y)logP(y) = − ∑ ∣ C k ∣ ∣ D ∣ l o g ∣ C k ∣ ∣ D ∣ -\textstyle \sum{ \frac{ |C_k| }{|D|} log{ \frac{ |C_k| }{|D|} } } DCklogDCk

其中熵满足不等式 0 ≤ H ( Y ) ≤ l o g ∣ Y ∣ 0≤H(Y)≤log|Y| 0H(Y)logY
在进行特征选择时尽可能的选择在属性X确定的条件下,使得分裂后的子集的不确定性越小越好(各个子集的信息熵和最小),即 P ( Y ∣ X ) P(Y|X) P(YX)的条件熵最小
在这里插入图片描述

2. 使用sklearn实现决策树

决策树可视化

# 决策树可视化
import graphviz
from sklearn.tree import export_graphviz
dot_data = export_graphviz(model,out_file=None)# 这里的model就是模型名
graph = graphviz.Source(dot_data) # 将决策树模型可视化
graph.render('决策树可视化') # 生成决策树可视化PDF文件
举报

相关推荐

0 条评论