首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

学习笔记-简单建决策树(一)

董圆成的公众号

学习篇

个人总结 | 学习借鉴 | 经验分享

用一个简单的事例来理解决策树,花了几天时间怎么也看不懂可视化之后的图形到底是个什么鬼,重新坐在那里整理思路,按照数据集进行划分,按照熵增益程度作判断首要和次要,判断条件是否符合要求,得到True和Flase,然后依照数据源进行按照树模型推断结果才理解,有时候越是简单的东西越需要时间去看清它

数据集的观测值很少只有14行,是某公司客户买电脑的数据,字段分别有:年龄,收入,学生,信用率,买电脑

样本数据截图

这里做一个数据集的标准化,是作为1;否作为0,等级变量为1.2.3,这里做标准化只是为了更加清晰的了解。

数据标准化之后

导入需要的模块,导入数据集,分离解释变量和被解释变量(建树需要),使用sklearn.tree建树,设置参数情况,这里使用熵增益(也可以使用基尼系数),最大深度开始可以随便设置,样本最小分割量大于1就可以,后期通过网格搜索调整参数数值(后面介绍),这次只是把决策树建立出来。因为python建树后,是看不到图形的,sklearn只能导出dot文件,而我们需要一个工具读取这个dot文件然后绘制成图形。需要安装graphviz.msi(可以在官网进行下载),安装后将bins路径设置为环境变量,安装完环境变量需要重启电脑,然后安装2个包graphviz和pydotplus,使用pip3 install/pip install 在cmd窗口执行命令

最终得到的决策树

-LOVE&PEACE-

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181113G0RSCD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券