机器学习实战----决策树

一 基本信息

决策树是一种常见的机器学习算法。它是基于树的结构来进行决策,这很符合我们人类面临问题时候的处理机制。

包括:一般一棵决策树包括一个根节点、若干内部节点和叶节点。叶节点对应着决策结果。

目的:产生一棵泛化能力强,对处理未见示例能力强的决策树。决策树学习的本质是从训练数据中归纳出一组分类规则,与训练数据集不相矛盾的决策树可能会有很多个,我们需要一个与训练数据矛盾较小的决策树,同时具有很好的泛化能力。

决策树的学习算法通常是一个递归的选择最优特征,并根据该特征对训练数据进行分割,使得各个子数据集都有一个最好的分类过程。决策树的学习算法更像是从一堆训练数据中训练出一个模型,减少数据的不确定性。比如给我们一批训练数据,我们如何从训练数据中发现规律,为什么数据被分为不同的类别,是什么决定了分类。如何能正确的为新数据分类。但是仅凭给定的数据,去直接判断类别是随机的,是存在不确定性的,如何消除不确定性呢?不断引入信息,那什么是信息呢?特征是信息,我们可以借助数据的特征,那么借助数据的哪些特征呢?能最大消除不确定性的特征。根据这个特征对数据集进行切分。之后呢,再找能够最大消除各个被切分的数据集不确定性的各自的特征。如此循环下去直到所有的样本找到正确的标签(分类),这样决策树就诞生了。

       在决策树中,消除不确定的方法常用的有三种:ID3、C4.5、CART,他们分别采用的是信息增益、信息增益率和基尼指数

二 基本流程:

输入:训练数据集D,特征集合A,阈值ϵ

输出:决策树T

过程:1 判断数据集D中所有样本是否属于同一个类别Ck,如果是则返回单节点树T,标记类别为Ck。

           2 判断特征集合A是否为空,若为空,则将数据集D中样本数最大的类Ck作为该节点的类标记

           3 计算A中各特征对数据集D的信息增益,选择信息增益最大的特征Ag。

           4 如果Ag的信息增益小于阈值ϵ(预剪枝),则T为单节点树,将D中样本数最大类Ck最为该节点的类标记。

           5 否则,根据特征Ag的特征值切分数据集D。循环切分后数据集Di,如果切分的数据集Di为空,则标记为数据集D中样本最多的类。如果不为空,则以Di为数据集,以{A-Ag}为特征集,递归的调用1-5步。

上面的基本流程是ID算法的,采用的信息增益去选取特征,而C4.5采用的事信息信息增益率,CART采用的基尼指数。(本篇文章具体介绍信息增益、信息增益率与基尼指数的计算方法

想到了一个小?,有一袋子粮食,里面有玉米、黄豆、红豆、绿豆、芝麻和菜籽,要用筛子分开这一袋子粮食,倒入对应的粮食袋子里。有筛子孔从大到小的三个筛子如下图所示:一号筛子的孔大小正好介于玉米与黄豆之间,二号筛子孔介于黄豆与红豆之间,三号筛子介于红豆与绿豆之间,四号筛子孔介于绿豆与芝麻之

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值