决策树,生成树的结构(根节点,叶子节点,非叶子节点),可以做分类,也可以做回归任务
问题:
如何构造我们想要的树
构造树的时候容易有什么问题,怎么解决
根节点和非叶子节点都是特征,叶子才是包含样本的节点。
树是什么样的树,怎么构造,它的效果怎么评估
当我们把这颗树构造好了,那么测试它就是走一遍这棵树看最后结果怎么样
那么难点就不是测试它,而是在如何构造我们想要的树
构造的难点在于 我们怎么知道那个是根节点和非叶子节点,即哪个特征才是合适的作为分类的条件
那么我们引入熵——表示混乱程度的量,
如果里面有多个类,比如有1,2,3,4,5五个值五个类那么熵值是大的,
而如果是1,1,1,1,2 五个值中有2类,那么熵值是小的
而通常这个类会是我们的label,即数据中的y
(训练过程中就是为了让熵值尽量小的分类过程)
比较熵值 我们用信息增益——熵值的差值
如果以某个特征作为节点分开了数据,发现熵值减少了,那么信息是增益的,信息增益的值即熵值的差值
但是如果有一个特征是ID,即每个数据的标识,那么用信息增益来计算,会发现ID的熵值是0,信息增益很大
(因为每一个分类中就只有一个数据)
那么这个时候ID会被选为节点。但我们并不是想要这个分类
因此我们这个时候应该要用信息增益率