![6a388193f7c778f6fb859fdbc7e768ed.png](https://i-blog.csdnimg.cn/blog_migrate/04490c02cf4a9427ef26071dff49edae.jpeg)
很久没做笔记是因为我高估了自己的毅力。现如今都是各种XGBoost的天下了,谈这些ID3、C4.5、CART有何用,还是那句话,模型算法不管复杂不复杂,输出了才能理解的更深刻,理解了才是自己的。
从LR到决策树
简单的线性分类器面对下面的相亲问题是这样的:
![294af77819a84114ce3e99ad6b6db2a3.png](https://i-blog.csdnimg.cn/blog_migrate/57eb76fbe4224aed4ece5bc10b3ae9a6.jpeg)
每一个权重W都通过训练数据的标签SGD梯度下降得以更新。
但换个人的思考方式,要是你去相亲,只要他没钱,无论他是帅破天际,也会去的,毕竟大家看重的是内在。
![d014e9ce67dc0829bb08683d7e061af0.png](https://i-blog.csdnimg.cn/blog_migrate/66131bfa779b6214df0fa383ad1c84f2.jpeg)
简单,解释性好,逻辑没毛病。
专业表达
决策树是基于树结构来对实例进行决策的一种基本的分类和回归的机器学习方法。决策树由结点和有向边组成,结点分为内部结点(表示一个特征的划分)和叶子结点(表示一个类别或输出)。
- 每个“内部结点”对应于某个属性上的“测试”
2·每个分支对应于该测试的一种可能结果(即该属性的某个取值)
3.每个“叶结点”对应于一个“预测结果”
学习过程:通过对训练样本的分析来确定“划分属性”(即内部结点所对应的属性)
预测过程:将测试示例从根结点开始,沿着划分属性所构成的“判定测试序列”下行,直到叶结点(人话先看是不是丑的,行那再看有房吗,再看有车波。。。我不相了,欺负人)
决策树学习(训练过程)(生成树的过程)
训练数据集:
其中,
决策树学习包括3个步骤:特征选择、决策树生成、决策树修剪。
特征选择
特征选择在于选取对于训练数据具有分类能力的特征。这里这里不得不提下信息熵(entropy)和信息增益(information gain)。
信息熵
![3aef3fd7fcc9232db55b6a02d9d39fa4.png](https://i-blog.csdnimg.cn/blog_migrate/1e9ed93744cf07f84d5fa047bb7c47e7.jpeg)
假设箱子里有红黄蓝3类球,想要知道这个箱子纯不纯,使用上图公式:极端最纯的情况是清一色,就是一类占了100%,其他2类个数为0,带入上面公式(这里K = 3,P 1= 1,P2 = 0,P3 = 0),那么Ent(D) = -(0+0+0) = 0 ;现在算下最杂乱的情况,每个类占