组合分类器学习笔记

组合分类器通过结合多个基分类器提高预测性能,如Adaboost、GBDT和随机森林。Adaboost重视错误样本,易过拟合;GBDT利用梯度提升,适合处理连续和分类任务;随机森林通过特征子采样和决策树集成降低方差。
摘要由CSDN通过智能技术生成

一、概念

由训练数据构建一组基分类器(base classifier),将每个基分类器的预测结果进行组合(ensemble)得到最终结果。

为什么组合分类器的效果好于基分类器?

设基分类器的误差为 ϵ \epsilon ϵ,对 N N N个组合分类器来说,只有超过一半以上基分类器都预测错误时,最终预测结果才错误。当基分类器互相独立时,组合分类器的错误率为

∑ i = N 2 N C N i ϵ i ( 1 − ϵ ) N − i \sum_{i=\frac{N}{2}}^NC_N^i\epsilon^i(1-\epsilon)^{N-i} i=2NNCNiϵi(1ϵ)Ni

ϵ < 0.5 \epsilon<0.5 ϵ<0.5时, e n s e m b l e ensemble ensemble的错误率更小。

因此当基分类器之间相关性不强;且基分类器分类误差小于0.5时,组合分类器的分类效果好于基分类器。

二、构建方法

如何在原始数据上构建多个分类器?

1. 对训练样本进行再抽样

对原始训练样本再抽样得到多个训练集,在每个训练集上训练一个分类器。

抽样方法:

  • bagging(bootstrap aggregating)

基分类器是并行产生训练的。

从数据集中随机有放回抽样N次,得到大小为N的训练集。每次抽样每个样本被抽到的概率为 1 − ( 1 − 1 N ) N 1-(1-\frac{1}{N})^N 1(1N1)N 趋近于 1 − 1 / e = 0.632 1-1/e = 0.632 11/e=0.632,故每次抽样得到的训练集大小为63.2%,验证集大小为36.8%。

重复抽样k次,最终通过基分类器结果的多数表决得到最终结果。

  • boosting

基分类器是迭代产生训练的。

不同于bagging的随机抽样,boosting每一轮训练结束后会调整样本的权值,增加分类错误样本的权值,减少分类正确样本的权值,根据权值进行下一轮抽样模型学习

三、模型实例

1. Adaboost

对第 j j j个分类器:

  • j = 0 j=0 j=0时样本初始权值为 1 / N 1/N 1/N
  • 计算基分类器的加权分类错误率 ϵ = ∑ i = 1 N ω i I ( y ^ i ≠ y i ) \epsilon = \sum_{i=1}^N\omega_iI(\hat y_i≠y_i) ϵ=i=1NωiI(y^i=yi)
  • ϵ > 0.5 \epsilon>0.5 ϵ>0.5则恢复所有样本权值为 1 / N 1/N 1/N,重新抽样。
  • 确定基分类器的重要性: α = 1 2 l n ( 1 − ϵ ϵ ) \alpha = \frac{1}{2}ln(\frac{1-\epsilon}{\epsilon}) α=21ln(ϵ1ϵ) ϵ < 0.5 \epsilon<0.5 ϵ<0.5 α > 0 \alpha>0 α>0; ϵ > 0.5 \epsilon>0.5 ϵ>0.5 α < 0 \alpha<0 α<0
  • 更新样本权值:分类正确的样本 ω ′ = ω Z × e − α \omega' = \frac{\omega}{Z}×e^{-\alpha} ω=Zω×eα;分类错误的样本 ω ′ = ω Z × e α \omega' = \frac{\omega}{Z}×e^{\alpha} ω=Zω×eα
  • 最终预测结果为 s i g n ( ∑ j = 1 K α j y ^ j ) sign(\sum_{j=1}^K\alpha_j\hat y_j) sign(j=1Kαjy^j)

优点:训练误差呈指数递减

e e n s e m b l e ≤ ∏ [ ϵ i ( 1 − ϵ i ) ] ≤ ∏ [ 1 − 4 γ i 2 ] ≤ e x p ( − 2 ∑ γ i 2 ) e_{ensemble} ≤ \prod[\sqrt {\epsilon_i(1-\epsilon_i)}] ≤ \prod[\sqrt{1-4\gamma_i^2}]≤exp(-2\sum \gamma_i^2) eensemble[ϵi(1ϵi) ]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值