zoukankan      html  css  js  c++  java
  • 被惊艳到了!决策树可视化

    目前无论是机器学习竞赛还是工业界,最流行、应用最广泛的xgboost其实是优化后的GBDT(LightGBM里面的boosting比较经典稳定的也是GBDT哦!),而GBDT的基分类器最常用的就是CART决策树!掌握决策树,对理解之后的GBDT、LightGBM都有大有裨益。

    可视化的方式理解决策树,对深刻理解这个模型很有帮助。大家最熟知的决策树可视化实现方式是下面这种:

    dot_data = export_graphviz(
        clf,
        out_file=None,
        feature_names=df.columns[:-1],
        class_names=["good", "bad"],
        filled=True,
        rounded=True,
        special_characters=True,
    )
    graph2 = pydotplus.graph_from_dot_data(dot_data)
    graph2.write_png("./pics/tree.png")
    

    这种方法很好地展示了树的结构,但并不完美:
    1、基尼系数会占用图中的空间,并且不利于解释
    2、每个节点中各目标类别的样本数不够直观

    今天向大家介绍一个更为惊艳的决策树可视化库——dtreeviz ,我们直接看几张效果图


    dtreeviz有以下特色:

    • 利用有颜色的目标类别图例
    • 叶子大小与该叶子中的样本数成正比
    • 将≥和<用作边缘标签,看起来更清晰
    • 决策节点利用堆叠直方图展示特征分布,每个目标类别都会用不同的颜色显示
    • 在每个节点中各目标类别的样本数都用直方图的形式,这样可以提供更多信息

    dtreeviz同样依赖GraphViz,其安装配置方法可以参考我之前的文章(决策树的可视化

    GraphViz 搞定后,安装dtreeviz即可

    pip install dtreeviz             # install dtreeviz for sklearn
    pip install dtreeviz[xgboost]    # install XGBoost related dependency
    pip install dtreeviz[pyspark]    # install pyspark related dependency
    pip install dtreeviz[lightgbm]   # install LightGBM related dependency
    

    使用也很简单

    bingo

  • 相关阅读:
    wordpress程序打开太慢的解决方案(一步搞定)
    Emeditor代码编辑器常见的正则表达式总结
    网站关键词排名突然消失的原因正在努力侦破
    如何禁止百度对网站进行转码
    【web前端开发】浏览器兼容性处理大全
    导航悬浮于顶部代码学习
    用最简单的代码写出banner图轮播效果
    这段时间大量网站被k的原因分析
    Python的lambda学习
    随机数生成验证码
  • 原文地址:https://www.cnblogs.com/jpld/p/15676100.html
Copyright © 2011-2022 走看看