百面机器学习|第十二章集成学习知识点(一)

前言

如果你能找到这里,真是我的幸运~这里是蓝白绛的学习笔记,本集合主要针对《百面机器学习——算法工程师带你去面试》这本书。主要记录我认为重要的知识点,希望对大家有帮助。

第十二章 集成学习

1、集成学习的种类

  1. 集成学习是一大类模型融合策略和方法的统称,其中包含多种集成学习的思想。
  • Boosting:Boosting方法训练基分类器时采用串行的方式,各个基分类器之间有依赖。其基本思想是将基分类器层层叠加,每一层在训练的时候,对前一层基分类器分错的样本,给予更高的权重。测试时,根据各层分类器的结果的加权得到最终结果。
  • Bagging:Bagging方法在训练过程中,各基分类器之间无强依赖,可以进行并行训练。为了让基分类器之间相互独立,将训练集分为若干子集。由于个体之间存在差异性,最终做出的判断不会完全一致。在最终做决策时,每个个体单独作出判断,再通过投票的方式作出最后的集体决策。其中很著名的算法是基于决策树基分类器的随机森林
  1. 从消除基分类器的偏差和方差的角度来理解Boosting和Bagging方法的差异。基分类器的错误率要大于集成分类器,基分类器的错误是偏差和方差两种错误之和
  • 偏差主要是由于分类器的表达能力有限导致的系统性误差,表现在训练误差不收敛。Boosting方法通过逐步聚焦于基分类器分错的样本,减小集成分类器的偏差。
  • 方差是由于分类器对于样本分布过于敏感,导致在训练样本数较少时,产生过拟合。Bagging方法则是采取分而治之的策略,通过对训练样本多次采样,训练多个不同模型进行综合,来减小集成分类器的方差。用简单多数投票方法来集成结果,超过半数基分类器出错的概率会随着基分类器的数量增加而下降

2、集成学习的步骤和例子

  1. 集成学习一般可以分为以下3个步骤:
    (1) 找到误差相互独立的基分类器。
    (2) 训练基分类器。
    (3) 合并基分类器的结果。
    第(3)步合并基分类器的方法有voting和stacking两种。stacking是用串行的方式,把前一个基分类器的结果输出到下一个分类器,将所有基分类器的输出结果相加作为最终的输出(或用更复杂的方法,将各基分类器的输出作为特征,用逻辑回归作为融合模型进行最后的结果预测)。
  2. Adaboost采取了Boosting的思想,对分类正确的样本降低了权重,对分类错误的样本升高或者保持权重不变。在最后进行模型融合的过程中,也根据错误率对基分类器进行加权融合
    另一个非常流行的是梯度提升决策树,思想是每一棵树学的是之前所有树结论和的残差,这个残差是一个加预测值后能得真实值的累加量。比如预测年龄,真实年龄是25岁,第一棵树预测22岁,则第二棵树将年龄设为3岁去学习。使用残差继续学习,就是GBDT中的Gradient Boosted所表达的意思。

3、基分类器

  1. 最常用的基分类器是决策树,主要有以下3个方面的原因:
    (1) 决策树可以较为方便地将样本的权重整合到训练过程中,而不需要使用过采样的方法来调整样本权重。
    (2) 决策树的表达能力泛化能力,可以通过调节树的层数来做折中。
    (3) 数据样本的扰动对于决策树的影响较大,因此不同子样本集合生成的决策树基分类器随机性较大,这样的“不稳定学习器”更适合作为基分类器。此外,在决策树节点分裂的时候,随机地选择一个特征子集,从中找出最优分类属性,很好地引入了随机性。
  2. 除了决策树,神经网络模型也适合作为基分类器,主要由于神经网络模型也比较“不稳定”,而且还可以通过调整神经元数量、连接方式、网络层数、初始权值等方式引入随机性。
  3. Bagging的主要好处是集成后的分类器的方差,比基分类器的方差小,所采用的基分类器最好是本身对样本分布较为敏感的(即所谓不稳定的分类器),这样Bagging才能有用武之地。
    线性分类器或者K近邻都是较为稳定的分类器,本身方差就不大,所以用他们做基分类器Bagging并不能在原有基分类器的基础上获得更好的表现,甚至可能因为Bagging的采样,导致它们在训练中更难收敛,从而增大了集成分类器的偏差。

4、偏差与方差

  1. 有监督学习中,模型的泛化误差来源于两个方面:偏差和方差。
  • 偏差:所有采样得到的大小为m的训练数据集训练出的所有模型的输出的平均值和真实模型输出的偏差。偏差通常是由于我们对学习算法作出了错误的假设所导致的,比如真实模型是某个二次函数,但我们假设模型是一次函数。由偏差带来的误差通常在训练误差上就能体现出来
  • 方差:所有采样得到的大小为m的训练数据集训练出的所有模型的输出的方差。方差通常是由于模型的复杂度相对于训练样本m过高导致的,比如一共有100个训练样本,而我们假设模型是阶数不大于200的多项式函数。由方差带来的误差通常体现在测试误差相对于训练误差的增量上
    12-4 偏差与方差示意图
  1. 从减小方差和偏差的角度解释Boosting和Bagging的原理:
  • Bagging能够提高弱分类器性能的原因是降低了方差
  • Boosting能够提高弱分类器性能的原因是降低了偏差
    Bagging:Bagging是Bootstrap Aggregating的简称,意思就是再抽样,然后在每个样本上训练出来的模型取平均。假设有n个随机变量,方差为\sigma^2,两两变量之间的相关性为\rho,则n个随机变量的均值\frac{\sum X_i}{n}的方差为\rho*\sigma^2+(1-\rho)*\sigma^2/n。在随机变量完全独立的情况下(\rho=0),n个随机变量的方差为\sigma^2/n,也就是说方差减小到了原来的1/n。当然模型之间不可能完全独立。为了追求模型的独立性,诸多Bagging的方法做了不同的改进。比如在随机森林算法中,每次选取节点分裂属性时,会随机抽取一个属性子集,而不是从所有属性中选取最优属性,就是为了避免弱分类器之间过强的相关性。
    Boosting:Boosting训练好弱分类器后,我们计算弱分类器的错误或残差,作为下一个分类器的输入。这个过程就是在不断减小损失函数,使模型不断逼近“靶心”,即使模型偏差不断降低。(Boosting不会显著降低方差,因为Boosting的各弱分类器之间是强相关的,缺乏独立性,所以不会对降低方差有作用)
  1. 泛化误差、偏差、方差和模型复杂度的关系:
    如下图所示。对于给定的学习任务和训练数据集,我们需要对模型的复杂度做合理的假设。如果模型复杂度过低,虽然方差很小,但偏差会很高;如果模型复杂度过高,虽然偏差低,但方差会很高。


    12-4 泛化误差、偏差、方差和模型复杂度

小结

这是本章的第一部分,主要讲了Bagging、Boosting的训练方法,典型的用到Bagging的方法有随机森林,典型的用到Boosting的方法有Adaboost、梯度提升决策树。第一部分还从偏差和方差的角度解释了Bagging和Boosting的原理。之前虽然知道Bagging和Boosting,但是并没有想过模型的偏差和方差,这一点非常有启发。

结尾

如果您发现我的文章有任何错误,或对我的文章有什么好的建议,请联系我!如果您喜欢我的文章,请点喜欢~*我是蓝白绛,感谢你的阅读!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容