关注一下~,更多商业数据分析案例等你来撩
本文将专注于决策树的可视化过程,建模原理、结果分析和模型优化则会在未来的博文中呈现。P.S:决策树为客户流失预警项目的必会技能,相关数据源和超详细的代码解析可空降文末~~
前言
以下是笔者见过的对可视化初学者们最友好的概括:数据可视化是数据视觉表现形式的科学技术研究,主要是借助图形化的手段来清晰有效地传达与沟通信息。但这绝不意味着数据可视化必须为实现其功能而去深究枯燥的绘图代码,亦或是为了使图画看上去高端绚丽而显得过于复杂。
需求
决策树模型是解释性模型的鼻祖,也是最好解释的模型.最难解释的则是神经网络,所以TA 又被称为“黑盒模型”。所以两者一块学可以更好的比较优缺点。有些实践案例和业务运用上只需要效果好,能较快的响应和被使用就行,那决策树是一个不错的选择;如果领导坚持要求模型可解释,而且一定要在数据库中落地(如能写出 sql,让业务人员一下子就看懂,而且也能获得一些灵感),决策树就是一个很不错的模型。其实用户画像就是用户的特征,决策树也可以用来做用户画像。
决策树建模的结果需要可视化后才能很好的看出分类过程,方法便捷的同时还要兼具一定的美感。搜索引擎以及一些常见的程序员求助社区(Baidu, Google, CSDN, Stackoverflow, ,博客园,知乎等)等反馈的最常用的决策树可视化方法的关键词都包含 dot,Graphviz,先来看一下主要代码:
代码也不长,只需要往 sklearn.tree 的 export_graphviz 函数中传入指定参数即可。要想使上述代码成功运行,需安装额外的包还不算什么,但相信 graphviz 的配置过程还是难到了一部分 windows 客户,以下为官方用法的步骤拆解:
使用dot文件进行决策树可视化需要安装一些工具:
第一步:安装graphviz。linux可以用apt-get或者yum的方法安装。如果是windows,就在官网下载msi文件安装。无论是
linux 还是 windows,装完后都要设置环境变量,将 graphviz 的 bin 目录加到 PATH,比如 windows,将
C:/Program Files (x86)/Graphviz2.38/bin/加入了PATH
第二步:安装 python 插件 graphviz:pip install graphviz
第三步:安装 python 插件 pydotplus: pip install pydotplus
配置方面还是有点麻烦的,而且 “ graphviz + dot ” 的这个组合画出的许多图又都是如下这样的,在一定程度上欠缺美感。
所以笔者通过广阅资料和优秀的技术博文,加以实操总结和优化,最终发现 sklearn.tree 里面就已经有了自动实现决策树可视化的函数,只需通过添加不同参数并结合 matplotlib 便可快速绘制出较为精美的决策树,对数据可视化初学者十分友好。
效果实现
篇幅原因,这里只展示核心的可视化过程,简单的建模过程都放在了后台资源,文末回复关键词即可获取。
方法1:只添加最基本的参数(跟没可视化没什么区别,可读性很糟糕)
方法2:通过结合 matplotlib,添加参数来优化可视化结果
注:相关数据源和超详细的代码(python,Jupyter Notebook 版本 + 详细注释)已经整理好,在 “ 数据分析与商业实践 ” 公众号后台回复 “ 决策树可视化 ” 即可获取。
精彩回顾
Python map, apply, transform汇总(打标签法初阶到高阶)
Python 数据可视化:seaborn displot 正态分布曲线拟合图代码注释超详解(放入自写库,一行代码搞定复杂细节绘图)
这样问 bug,怪不得没人回你... | 程序员该有的提问技巧