码迷,mamicode.com
首页 > 其他好文 > 详细

单层决策树

时间:2019-02-14 22:16:12      阅读:563      评论:0      收藏:0      [点我收藏+]

标签:技术   man   algorithm   int   terminal   nal   leaves   观点   term   

Decision stump

基本原理

decision stump,决策树桩(我称它为一刀切),也称单层决策树(a one level decision tree),单层也就意味着尽可对每一列属性进行一次判断。如下图所示(仅对 petal length 进行了判断):

技术图片

从树(数据结构)的观点来看,它由一个内部节点(internal node)也即根节点(root)与终端节点(terminal node)也即叶子节点(leaves)直接相连。用作分类器(classifier)的 decision stump 的叶子节点也就意味着最终的分类结果。

 

从实际意义来看,decision stump 根据一个属性的一个判断就决定了最终的分类结果,比如根据水果是否是圆形判断水果是否为苹果,这体现的是单一简单的规则(或叫特征)在起作用。

 

显然 decision stump 仅可作为一个 weak base learning algorithm(它会比瞎猜 12

 

稍好一点点,但好的程度十分有限),常用作集成学习中的 base algorithm,而不会单独作为分类器。

 

既然 decision stump 仅可对一个属性进行一次判断获取最终的分类结果,显然我们寻找具有最低错误率的单层决策树。

技术图片

i 表示属性列,N 为样本集的大小,d 为属性列的个数。

代码实现

找到具有最低错误率的单层决策树,需要遍历全部的属性列,遍历属性列下所有可能的阈值(当然在一定的步长范围内),以及所有的 True/False 的分配,也即至少需要三层循环。

技术图片

单层决策树

标签:技术   man   algorithm   int   terminal   nal   leaves   观点   term   

原文地址:https://www.cnblogs.com/kexinxin/p/10380872.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!