决策树sklearn包细节讲解

本文详细介绍了使用sklearn包构建决策树的相关知识,包括决策树的参数如criterion、max_depth等,以及决策树的可视化方法和代价复杂度剪枝路径。同时,针对可视化过程中的中文乱码问题提出了解决方案。
摘要由CSDN通过智能技术生成

本篇介绍一些决策树的sklearn包tree的知识点,关于决策树的原理可参考文章决策树之原理与调参

1.决策树的sklearn包介绍

python可以实现分类树和回归树两种:

from sklearn.tree import DecisionTreeClassifier
from sklearn.tree import DecisionTreeRegressor

介绍几个调参比较重要的参数。


criterion:划分标准,就是决策树的分裂标准。对于分类树,可选“gini”或“entropy”,即Gini不纯度或信息增益;对于回归树,可选“mse”,“friedman_mse”和“mae”,即均方误差、改进型的均方误差和平均绝对误差

max_depth:决策树的最大深度

min_samples_split:非叶子节点最小分割样本数

min_samples_leaf:叶子节点最小样本数

max_features:搜寻最佳分裂的最大特征数量

ccp_alpha:CCP算法的误差率增益率α阈值,小于该值的误差率增益率对应的节点都会被剪枝

决策树的应用方法除了sklearn包统一的predict外,还有几个输出方法需要介绍一下:

apply:返回每个样本被预测为的叶子节点索引

decision_path:返回决策路径

cost_complexity_pruning_path:返回两个参数,第一个是CCP剪枝后决策树序列T0,T1,...,Tt对应的误差率增益率α;第二个是剪枝后决策树所有叶子节点的不纯度

这里介绍一下sklearn内值包对决策树的索引编码规则。

从根节点开始,先穷尽左边所有路径,再倒序返回右边路径,并从0开始依次编码

举一个例子:

2.决策树可视化

一颗决策树训练完毕后,为了评估决策树的效果,一方面,我们当然希望可以把它可视化,方便阅读;另一方面,希望可以对每一个节点的信息做一些数据分析。本节从可视化和决策树结果数据分析两个角度介绍一些工具。

首先,在Python可以实现可视化,需要用到os、pydotplus、Image和graphviz等包,其中os、pydotplus、Image直接导入即可

import os
import pydotplus
from IPython.display import Imag
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

整得咔咔响

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值