Welcome

首页 / 软件开发 / 数据结构与算法 / 机器学习基础(二)决策树

机器学习基础(二)决策树2013-11-14 csdn博客 cuoqu决策树也是有监督机器学习方法。 电影《无耻混蛋》里有一幕游戏,在德军小酒馆里有几个人在玩20问题 游戏,游戏规则是一个设迷者在纸牌中抽出一个目标(可以是人,也可以是物),而猜谜者可以提问题,设迷 者只能回答是或者不是,在几个问题(最多二十个问题)之后,猜谜者通过逐步缩小范围就准确的找到了答案 。这就类似于决策树的工作原理。(图一)是一个判断邮件类别的工作方式,可以看出判别方法很简单,基本 都是阈值判断,关键是如何构建决策树,也就是如何训练一个决策树。

(图一)

构建决策树的伪代码如下:

Check if every item in the dataset is in the same class:

If so return the class label

Else

find the best feature to split the data

split the dataset

create a branch node

for each split

call create Branch and add the result to the branch node

return branch node

原则只有一个,尽量使 得每个节点的样本标签尽可能少,注意上面伪代码中一句说:find the best feature to split the data, 那么如何find thebest feature?一般有个准则就是尽量使得分支之后节点的类别纯一些,也就是分的准确一 些。如(图二)中所示,从海洋中捞取的5个动物,我们要判断他们是否是鱼,先用哪个特征?

( 图二)