【机器学习入门】决策树算法(一):ID3(Iterative Dichotomiser 3)算法

决策树:

决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。

决策树通过把数据样本分配到某个叶子节点来确定数据集中样本所属的分类。

ID3(Iterative Dichotomiser 3)算法

提出者:

ID3(Iterative Dichotomiser 3)算法由罗斯·昆兰(Ross Quinlan)提出,用来从数据集中生成决策树。

原理:

ID3算法是在每个节点处选取能获得最高信息增益的分支属性进行分裂。

在说信息增益之前,我们先来说下“熵”的概念:

熵(entropy):

熵在信息论中被用来度量信息量,熵越,所含的有用信息越,其不确定性就越大;而熵越小,有用信息越少,确定性越大。

例如“太阳东升西落”这句话非常确定,是常识,其含有的信息量很少,所以熵的值就很小;而“六月下雪”这句话所包含的信息就很多,所以熵值很大。

在决策树中,用熵来表示样本集的不纯度,如果某个样本集合中只有一个类别,其确定性最高,熵为0;反之,熵越大,越不确定,表示样本集中的分类越多样

熵(entropy)的公式:

设S为数量为n的样本集,其分类属性有n个不同取值,用来定义m个不同分类Ci(i=1,2,…,m),则其熵的计算公式为:

举例来说,如果有一个大小为10的布尔值样本集Sb,其中有6个真值、4个假值,那么该布尔型样本分类的熵为:

得到了熵作为衡量样本集合不纯度的指标,下一步就可以计算分支属性对于样本集分类好坏程度的度量——信息增益

信息增益:

由于分裂后样本集的纯度提高,则样本集的熵降低,熵降低的值即为该分裂方法的信息增益

S为样本集,属性A具有v个可能取值,即通过将属性A设置为分支属性,能够将样本集S划分为v个子样本集{S1,S2,…,Sv}。对于样本集S,如果以A为分支属性的信息增益Gain(S,A),其计算公式如下:

由信息增益公式可以发现,当分支属性取值非常多的时候,该分支属性的信息增益就会比较大

因此使用ID3算法进行决策时就是挑选信息增益最大的作为分支,以此进行分类。

ID3算法工作的基本流程:

  1. 对训练数据进行预处理,对缺失值、异常值进行再处理

  1. 计算每个特征与目标变量的信息增益,选择信息增益最大的特征作为根节点。

  1. 对根节点的特征的每一个取值构造一个子节点,把根节点相应的记录分配到相应的子节点上。

  1. 重复上述步骤,直到所有的子节点都是叶子节点或者没有可以分裂的特征为止。

ID3算法的优缺点:

优点:

  1. 简单易懂:ID3算法简单易懂,使用决策树表示学习结果,方便理解。

  1. 高效:ID3算法计算复杂度低运行速度快,适用于处理大量数据

缺点:

  1. 容易过拟合:ID3算法不能有效地处理过多的特征,容易导致过拟合

  1. 偏向于选择分裂效果好的特征:ID3算法偏向于选择分裂效果好的特征,对于数据中的噪声特征敏感

  1. 只能处理离散型特征:ID3算法只能处理离散型特征,不能处理连续型特征。


  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值