机器学习技法--Blending and Bagging

本文参考整理了Coursera上由NTU的林轩田讲授的《机器学习技法》课程的第七章的内容,主要围绕将不同hypotheses中具有预测性的features进行融合的aggregation技术,讲述了引入blending的动机,常用的blending方式(如uniform blending、linear blending和any blending等),介绍了利用bootstrapping技术的Bagging Meta Algorithm,并利用实际例子表现了aggregation的巨大威力和用处。文中的图片都是截取自在线课程的讲义。
欢迎到我的博客跟踪最新的内容变化。
如果有任何错误或者建议,欢迎指出,感激不尽!
--

本系列文章已发七章,前六章的地址如下:


Blending和Bagging都是Aggregation里面非常典型的做法。

Aggregation的动机

日常选股

假设你有T个朋友g1,g2...gT预测某支股票X是否会上涨gt(X)

你会怎么做?

  1. 根据他们的平常表现选择最可信的朋友---即validation
  2. 均衡(uniformly)地混合朋友们的预测---让他们一人一票,最后选择票数最多的结果
  3. 不均衡(non-uniformly)地混合朋友们的预测---每个人的票数不一,让他们投票,而票数的分配和问题有关,比如有人擅长分析科技类股票,有人擅长分析传统产业股票,因此在不同条件下,对不同人的信任度也不同,即如果[t 满足某些条件],则给朋友t多一些票。
  4. ...更多方式

对应到机器学习里面,把T个人的意见融合起来以获得更好的表现,就是aggregation模型,即aggregation models = mix or combine hypotheses for better performance.

数学形式

数学化以上操作:

  1. 选择平常表现(val)最好的人
  1. 等额投票
  1. 不等额投票(包括情形1、2)

包含了:

  • 选择,即αt = [[ Eval(gt)最小 ]]
  • 等额: 即αt = 1
  1. 根据条件合并预测(包括情形1、2、3)
  • 包含了不等额投票,即qt(X)=αt。

aggregation model是一个非常丰富的家族。

aggregation与selection的对比

selection: 选择出一个strong的hypothesis(强人主导)
aggregation: do better with many (possibly weaker) hypotheses(三个臭皮匠)

为什么aggregation可能会做得更好

  1. more power,more strong

如果只用垂直、水平线,怎样都做不太好,而如果能把垂直和水平的线结合起来,则可能会做得比较好。

如果等额混合不同的弱弱的hypotheses,就可能会得到一个比较强的G(x),比较复杂的边界,类似于之前的feature transform,它也扩展了我们的model的power。

  1. more moderate,more regularization

有若干条直线可以完美分割OO和XX,PLA会随机选择一条。如果等额混合不同的random-PLA hypotheses,则会收敛于中间那条large margin的直线,比较中庸,具有regularization的效果。因此aggregation具有more powerful和more regularization这两种看似对立的效果。

Uniform Blending

uniform blending for classification

blending: 已知gt。

uniform blending: known gt each with 1 ballot

  • 如果每个gt都一样(独裁政治),则G和g的表现是相同的。
  • 如果gt各不相同(多样性+民主),则多数派能纠正少数派。
  • 对多类别分类,一样的结果

对于regression如何做呢?

uniform blending for regression

  • 每个gt都一样,融合g效果变化不大
  • 每个gt都不太一样,有些gt(x) > f(x),而有些gt(x) < f(x),两者抵消,平均值可能会比单一值更加准确稳定。

因此,如果我们的aggregation要起作用,很重要的前提是gt要各不一样,畅所欲言,对于diverse hypotheses,即使使用非常简单的uniform blending,也可以比任何单一的hypothesis表现得更好。

uniform blending for regression work的理论保证

先讨论对于固定的确定的X

随便选一个gt,期望意义下的square error是

将gt的期望错误和G的错误联系在一起。

avg代表
1/T*Σ

推广到所有X上,对X分布取期望,得到

由此可知,最好的g是否比G好我们不得而知,但平均的g确实没有G表现好,我们的uniform blending对于square error regression确实work了。

bias-variance decomposition

考虑一个虚拟迭代过程(t = 1,2...T)

  1. 第t轮,取得N笔资料Dt,Dt来自分布PN(i.i.d)
  2. 通过A(Dt)学习获得gt

将刚刚得到的式子推广到无穷大

把一个演算法的表现拆分成bias-variance decomposition

而uniform blending就是减少variance,使表现更加稳定。

Linear and Any Blending

linear blending

linear blending: known gt, each to be given αt ballot

什么样的α是好的α?

min[αt>=0]Ein(α)

要求解的问题

有点类似two-level learning,先得到gt,再做LinReg。

linear blending = LinModel + hypotheses as transform + constraints

唯一的不同是要求αt>=0,而一般的LinReg没有要求Wt>=0。

constraints on α

在实际中,我们常常故意忽略掉α的约束,如果αt<0,就把对应的gt想象成gt'=-gt好了,对于regression可能比较奇怪,但是大部分时候constraints放在一边没有什么影响。

linear blending versus selection

之前我们都说gt直接给定,那么gt通常是怎么来的呢?

在实践中,常常g1∈H1,g2∈H2 ... gT∈HT,即g是从不同的model通过求最好的Ein来得到的,就像之前在model selection中发生的事情一样。

recall:
selection by minimum Ein --- best of best --- best of all

则 dvc = (∪Ht),这也就是为什么我们要用Eval而不是Ein来做选择。

recall:
linear blending 包含了 selection 作为特殊情况
即αt = [[ Eval(gt-) 最小 ]]

如果用Ein来做linear blending,即aggregation of best,模型复杂度代价比best of best还大,>= dvc = (∪Ht).

模型更加危险,因此实践中不建议使用Ein来选α,选择α时让Eval而不是Ein最小,gt-来自最小的E(train)。

Any Blending

从某个比较小的D(train),训练得到g1-,g2-...,gT-,把Dval中的(xn,yn)转换成(Zn=Φ-(xn),yn),Φ-(X) = (g1-(X), g2-(X) ... gT-(X))。

linear blending

注意最后回传的是Φ而不是Φ-,


我们不一定要用linear来合并{Zn,yn},可以用任何方法,即Any Blending,也叫作Stacking.

对Z空间中的资料不一定用Linear model,可用Non-linear model

any blending:

  • powerful,达成了根据条件来进行blending的目的
  • 有overfitting的危险,要小心使用
Blending in Practice

资料来临==>学习g==>validation set blending 得到G

  • a special any blending model

E[test](squared): 519.45 ==> 456.24

  • g、G 再做一次 linear blending ,test set blending: linear blending using Etest~

E[test](squared): 456.24 ==> 442.06

在实践中,blending是非常有用的,如果不考虑计算负担。

Bagging(Bootstrap Aggregation)

What We Have Done

blending: aggregate after getting gt
learning: aggregate as well as getting gt

gt的多样性很重要,如何得到不一样的g?

  • 通过不同的模型: g1∈H1,g2∈H2 ... gT∈HT
  • 同一模型的不同参数: 如GD的不同的η,SVM中不同的C
  • 演算法本来就有randomness: 如有不一样的randome seeds的随机PLA
  • 资料的randomness: within-cross-validation hypotheses gv-

接下来,我们尝试用同一份资料制造好多g,以产生多样性。

Revisit of Bias-Variance

  • consensus 比直接 A(D) 更加稳定,但是需要很多笔资料
  • 我们想要近似的g的平均,要做两个妥协
  1. 无限大T(很大的T)
  2. 只使用手中资料D,生成T个近似的gt=A(Dt),其中Dt~PN

我们需要用到统计学中的工具bootstrapping,它做的是从D中重新抽样来模拟Dt。

Bootstrap Aggregation

sampling with replacement 有放回的抽样

bootstrap aggregation:我们称为BAGging,一个简单的meta algorithm,在base algorithm A 之上。

Bagging Pocket In Action

每个Pocket演算法跑1000趟,使用25条Pocket线组合而成。

  • 每个来自bagging生成的g都很不一样
  • aggregation后形成了还算合适的non-linear边界来进行二元分类

如果base algorithm对数据随机性很敏感,则bagging通常工作得很好

在bootstrapping过程里,原来的N笔资料D里面再重新抽样N个D',则D'正好为D的可能性是N!/N^N。

Mind Map Summary


下一章我们讲述是否可以得到比Bagging更加diverse的hypotheses,从而使blending后的G更加strong,即逐步增强法。欢迎关注!

如果您对这一系列文章感兴趣,欢迎订阅我的专题或者关注我以获得最新的更新信息!

本文首发于我的博客,如果您想提前看到更多的内容或者懒于寻找之前的章节,可以直接来我的博客阅读长文版,感谢您的鼓励支持!

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

推荐阅读更多精彩内容