机器学习(二十四):信息增益、独热编码和回归树

一、纯度测量方式——熵

第一步,定义p_{1}:一个子集里,某一类别的数据在子集中的占比

例如,下图这组输入数据,根据耳朵形状划分为两个子集,尖耳朵子集里,有四只猫,1只狗。则p_{1}是4/5

第二步,根据p_{1}计算熵,把熵用来测量纯度。

熵的计算公式:

熵和p_{1}的曲线如下:

熵计算的示例:

二、信息增益

信息增益:节点分裂以后,与分裂前相比,分裂以后熵的减少量。

以下图为例,根节点上,猫占比5/10,熵是1。根节点根据耳朵形状分裂以后,左节点的熵是0.72,右节点的熵是0.72,根据左右节点的权重计算出:分裂后的熵左节点权重*左节点熵+右节点权重*右节点熵=0.72。最后计算出信息增益,即熵减少量为0.28。

然后依次根据脸形状、是否有胡须,分别分裂根节点,计算信息增益,找出信息增益最大的特征。

使用信息增益的一个好处是,如果信息增益太小,就可以停止分裂。

信息增益公式:

w为左节点/右节点的权重。

三、决策树整体学习过程

1、所有训练数据从树的根节点上开始分裂

2、计算所有可能特征的信息增益,然后挑选信息增益最大的特征进行分裂

3、根据所选特征把数据集分裂成两个子集,把子集划分到左分支或右分支

4、在左/右分支上继续分裂过程,直至满足停止标准。停止标准是:

  •  当一个节点上全部是一个种类时,停止分裂。
  • 当继续分裂,会超过树的最大深度时,停止分裂。
  • 当纯度提高率低于阈值时,停止分裂。
  • 当子集的数据量低于阈值时,停止分裂。

四、独热编码

当一个特征有两个以上的可能值,可以使用独热编码。

示例:如果输入特征:耳朵形状具有多个可能值:尖的、软的、椭圆的,这种场景可以把耳朵形状特征拆成是否尖的、是否软的、是否椭圆的。

独热编码:一个特征有k个可能值,创建出k个二进制特征来替换它,值是0或1。

独热编码还可以用于神经网络、逻辑回归、线性回归。

五、连续值特征

当一个特证的可能值是连续的数值时,决策树如何分裂?

连续值特征处理方式:

  1. 把训练集数据范围内,选取不同值作为阈值
  2. 按照阈值分裂
  3. 不同阈值下进行信息增益计算
  4. 选取信息增益高的值作为阈值分裂节点

示例:如果输入特征是体重,体重的可能值是连续的数值。可以选定一个阈值,按照阈值来划分子集(当体重高于阈值、当体重低于阈值)

当分别以8、9、13作为体重阈值分裂,≥阈值时划入子集1,<阈值时划入子集2,分别计算子集1和子集2的纯度,最后计算分裂后的信息增益。

六、回归树

当输出结果不是0或1,而可能是连续数值时,可以使用回归树。

示例:

输入特征是耳朵形状、脸形状、是否有胡子,输出结果是体重,体重的结果不再是0或1

步骤一:训练集按照特征分裂出子集

步骤二:每个子集里的数据按照方差计算出结果

  • 方差计算公式:设有一组数据 X1, X2, ..., Xn,其均值为 μ,方差σ² = ∑(Xi - μ)² / n。

步骤三:按照权重,计算分裂后的方差减少值


 

学习来源:吴恩达机器学习,16.1-16.6节

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值