机器学习——决策树

在看了大佬的博客以后我再这里来说一下自己的理解,有不对的地方希望大家能够指正,谢谢


一、决策树的分类
决策树按照数据类型可以分为分类决策树跟回归决策树,二者的区别在于:分类决策树是对离散的数据变量来进行决策的,回归决策树是对连续的数据变量来进行决策的。
二、决策树的生成过程
1、进行特征选择
对已有数据根据数据本身的一些特征然后从中提取出可以划分数据的类别,比如性别、年龄等等。
2、生成决策树
根据第一步划分出的数据类别将数据从上到下递归的生成子节点,直到数据集不可分则停止决策树的生成。
3、剪枝
对于第二步生成的决策树由于我们分的类别可能比较多所以生成的决策树很容易发生过拟合现象,所以我们就需要对生成的决策树进行修剪,缩小树结构规模缓解过拟合现象。


案例讲解

对于原理问题这方面我个人认为一个例子可以帮助你更好的理解这个原理,所以下面我们就以一个例子来说明解释决策树的整个过程。

案例简述一下:
某公司开发了一款游戏,并且得到了一些用户的数据。如下所示:
在这里插入图片描述
横坐标表示年龄,纵坐标表示性别,红色表示喜欢这款游戏,蓝色表示不喜欢。现在要判断绿色点代表的那个用户是否喜欢这款游戏。本例中我们以性别年龄为特征来构建决策树

上图可以转化为:
在这里插入图片描述
在构建决策树的时候我们可以现根据性别将数据分成男女两类,然后根据年龄是否大于30岁再对数据进行二次分类,结果如下图所示:
在这里插入图片描述
决策树中每一个叶子节点就是一个判断结果,我们这里用概率作为最终判断结果。
对于要判断的那个绿色结点用户我们可以将他的特征套入决策树中然后得出结果,由决策树跟新用户特征 [男,年龄大于30] 可知该用户不喜欢这款游戏的概率是0.8,所以该用户很可能不喜欢这款游戏。
以上就是决策树的构建过程及最终的决策树

然而在构建决策树选取数据特征的时候数据特征选取的先后顺序不一样对应的决策树也就不一样,但是叶子节点还是一样的,而数据特征的先后顺序可以反应数据属性的重要性或者理解为在所有特征中占比重问题,比重越大说明该属性也就越重要,那么它对于决策结果的影响也就越大,最终的判定结果的确定性也就越大。
在物理中我们用来反应热力学系统之间的无序程度,熵值越大越无序熵值越小越有序,这里我们也可以用它来反应最终判断结果的确定性的程度。熵值越大说明最终结果确定性越高,结果越准确,反之可得。
一个属性的重要性,可以用它所产生的熵值大小来判断。使得熵值变的更小的属性,重要性更高!
2、生成决策树
我们将所有属性对应的熵值计算出来,将熵值按照从大到小的顺序排列起 来,然后把熵值最小的属性作为一级节点,次小的作为二级结点,然后依次类推搭建决策树。

3、剪枝
这个我目前还不是很了解,等以后再来补充吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值