Georgia Tech

机器学习->监督学习->分类学习->决策树->ID3:

LOOP:

。选择A.<----best attribute.可以通过多种不同的方法确定最佳属性。

。把A作为节点的属性

。对于属性A的每个值,生成一个后代节点

。根据属性A可接受的值,讲训练样本分类到叶子中

。IF 训练样本完美分类:

停止操作

。ELSE:

每片叶子上进行迭代,轮流为分配到该叶子的训练示例挑选最佳属性,并持续此操作构建树,直至完成

 以上即为ID3算法。这里的关键问题是:何为最佳属性?

 最佳属性的挑选,一般考虑: 信息增益。

 信息增益,即捕捉我们通过挑选特定属性获取的信息量的数学方法。在了解特定属性的值后,数据集上设置标签的随机性的降低。

S即训练样本集,A特定的属性, S的熵和标签相关。 熵(ENTROPY)就是测量随机性的一种方法,是测量信息的一种方式,是对尚未看到的某些变量的随机性的测试方式。它对比了你闭上眼睛挑选一个训练样本时,知道获得的内容的可能性,与闭上眼调训一个训练样本时,不知道获得的内容的可能性。

ID3 偏置 (bias):

在考虑搜索空间的算法时,需操心两种偏置。

限定偏置(restriction bias)

优选偏置(preference bias)

限定偏置:就是你真正关注的假设集,在此处就是所有可能的决策树,这表示,我们不会考虑y=2x+3,不考虑2次曲线(决策树属于分类,肯定不可能是连续的函数),也不会考虑特定类型的非布尔函数,我们只考虑决策树及他们可表示的内容。

优选偏置:会告诉我们首选的假设集。

这种关于目标函数的必要假设就称为归纳偏置(Mitchell, 1980; desJardins and Gordon, 1995)。一个典型的归纳偏置例子是奥卡姆剃刀,它假设最简单而又一致的假设是最佳的。

ID3的归纳偏置又是什么呢? 即在大量的决策树中,ID3算法首选的决策树(假设集)是那个?

。good split at top. 即若两个决策树都是正确的,都代表了我们在意的函数映射,但是我们会挑选在根部就有一个比较好的数据分割的那个。

。correct over incorrect . 即一个树是顶部的好的分割产生了错的结果,而另一棵树是不好的分割但是结果正确,我们只能挑选结果正确的。

。ID3 prefer short trees. 这也是顶部的良好分割造成的。

机器学习->监督学习->分类学习->决策树->其他的考量:

连续值的问题:

以前我们观察过的决策树,不仅有离散的输入,还有离散的输出。若我们的决策树的节点,即Attribute是连续的(年龄,重量,距离),该如何处理,如何建模?

连续值可以转化为区间,就可以知道该如何评估了。以Age为例,可以划分成 (20<=Age<30)?op1:op2 这种形式。 对于一个连续变量而言,原则上说,需要检查的数值是无限多个。对于实际分割区间时,我们可以先看看训练集,然后只选择涵盖训练集数据的区间。

重复同一属性的问题:

有无必要在决策树的任何的既定路径上重复同一属性,比如选择了某个属性A,在该属性的下降路径上,可不可以再次询问有关A的问题?

若考虑已经分析过的一个属性,在该路径上,重复分析该属性,不会获得任何新的信息,因为已经知道答案了,没任何信息增益。因此决策树的既定路径上,重复同一非连续属性是没有必要的。但是是连续属性的话,就有必要。因为此时,你其实问的是一个不同的问题。这时其实是一个逼近的问题。

何时停止的问题:

首先想到的答案:当所有的数据都正确分类时,即可停止。 但是若数据有噪音,比如有对象相同,实例相同,但是标签不同的样本时(训练数据受损,不精确,录入错误,等等)!

回归的问题:

如何调整决策树,才能执行回归的操作?也就是说,不止有连续的输入,而且有连续的输出时,如何应用决策树?

这种连续的问题,若要应用决策树,必须面临数据的分割的问题。就是把输入输入,按某一标准进行分割,在分割的区间中,使用平均,方差,或投票去满足大部分数据。

原文地址:https://www.cnblogs.com/shonelau/p/6385395.html