第14周Python机器学习周记

时间:第14周

&关于计划:

决策树的学习--使用ID3算法:


(1)数据处理部分:

计算香农熵;

划分数据集合;

选择最好的数据集划分方式;

构建决策树;

(2)Matplotlib绘图部分:

基本节点绘制函数;

构造注解树、使用决策树执行分类;

(本文内容参考于《机器学习实战》)


&内容摘要:

1.计算香农熵以及准备数据集:


img_b514e52b58d0c13543d540b7733df137.jpe
图片发自简书App

测试代码:

(1)计算准备好的数据集的香农熵;

(2)新增一个键值(maybe),计算香农熵,观察其变化(熵越高,则混合的数据也越多);


img_ba7e349cea392f5697c60449a5580b61.jpe
图片发自简书App

2.首先,关于append函数跟extend函数的区别:


img_04943b3777d1457fd9571d480b6d1e68.jpe
图片发自简书App

接着,定义函数,按照给定特征划分数据集:

img_1e7a7395cc7925d7b788441bf28de687.jpe
图片发自简书App

测试:


img_fdf5f7f8cdaca8a80e2d103557b421a2.jpe
图片发自简书App


img_85a825e4a2000a40cf203c54c27ce392.jpe
图片发自简书App

3.选择最好的数据集划分方式:

代码:


img_06cd4ff9b2017ee22e07b9d00a21072d.png

测试:

代码运行结果告诉我们,第0个特征是最好的用于划分数据集的特征

img_95cf13be8fc941a86f7926e65bd8fa1c.png


4.绘制树节点的函数设计:


img_c4316f1215824338d7a51bf61474f993.jpe
图片发自简书App


img_2cf3e58aa3728e8f7c616308a69e9b2a.jpe
图片发自简书App