当前位置:   article > 正文

决策树sklearn包细节讲解

决策树训练参数是在哪个工具包里的

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

1.决策树的sklearn包介绍

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

  1. from sklearn.tree import DecisionTreeClassifier
  2. 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直接导入即可

  1. import os
  2. import pydotplus
  3. from IPython.display import Image

graphviz是决策树可视化核心的包,它需要在网上下载后导入环境变量里面才可以,graphviz下载地址是

https://graphviz.gitlab.io/_pages/Download/Download_windows.html

下载后解压就是一大堆文件夹,只需要在python里面添加一句语句即可生

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/331053
推荐阅读
相关标签
  

闽ICP备14008679号