杨灿:统计学习那些事儿
本文作者杨灿于2011年在香港科技大学电子计算机工程系获得博士学位,2011-2012为耶鲁大学生物统计系博士后,2012-2014耶鲁大学副研究员。2014至今为香港浸会大学数学系助理教授。本文写于作者博士毕业之际。
离校前闲来无事,觉得应该把自己的一些感受写下来,和更多的爱好者分享。
先介绍一下我是如何发现这个领域的。我本科学自动化,大四时接触到一点智能控制的东西,比如模糊系统,神经网络。研究生阶段除了做点小硬件和小软件,主要的时间花在研究模糊系统上。一个偶然的机会,发现了王立新老师的《模糊系统与模糊控制教材》。我至今依然认为这是有关模糊系统的最好的书,逻辑性非常强。它解答了我当年的很多困惑,然而真正令我心潮澎湃的是这本书的序言,读起来有一种“飞”的感觉。后来我终于有机会来到港科大,成为立新老师的PhD学生,时长一年半(因为立新老师离开港科大投身产业界了)。立新老师对我的指导很少,总结起来可能就一句话:“你应该去看一下Breiman 和Friedman的文章。”立新老师在我心目中的位置是高高在上的,于是我就忠实地执行了他的话。那一年半的时间里,我几乎把他们的文章看了好几遍。开始不怎么懂,后来才慢慢懂了,甚至有些痴迷。于是,我把与他们经常合作的一些学者的大部分文章也拿来看了,当时很傻很天真,就是瞎看,后来才知道他们的鼎鼎大名,Hastie, Tibshirani, Efron等。文章看得差不多了,就反复看他们的那本书“The Elements of Statistical learning”(以下简称ESL)。说实话,不容易看明白,也没有人指导,我只好把文章和书一起反复看,就这样来来回回折腾。比如为看懂Efron的“Least angle regression”,我一个人前前后后折腾了一年时间(个人资质太差)。当时国内还有人翻译了这本书(2006年),把名字翻译为“统计学习基础”。我的神啦,这也叫“基础”!还要不要人学啊!难道绝世武功真的要练三五十年?其实正确的翻译应该叫“精要”。在我看来,这本书所记载的是绝世武功的要义,强调的是整体的理解,联系和把握,绝世武功的细节在他们的文章里。
后来Tibshirani找到自己的恩师Efron。Tibshirani在“The Science of Bradley Efron”这本书的序言里写道:
He sat down and pretty much single-handedly solved the problem. Along the way, he developed a new algorithm, ‘least angle regression,’ which is interesting in its own right, and sheds great statistical insight on the Lasso.
我就不逐字逐句翻译了,大意是:Efron独自摆平了这个问题,与此同时发明了“Least angle regression (LAR)”。Efron结论是Lasso和Boosting的确有很紧密的数学联系,它们都可以通过修改LAR得到。更令人惊叹的是LAR具有非常明确的几何意义。于是,Tibshirani在序言中还有一句:
In this work, Brad shows his great mathematical power–not the twentieth century, abstract kind of math, but the old-fashioned kind: geometric insight and analysis.
读Prof Efron的文章,可以感受到古典几何学与现代统计学的结合之美(推荐大家读读Efron教授2010年的一本新书Large-Scale Inference,希望以后有机会再写写这方面的体会)!总之,Efron的这篇文章是现代统计学的里程碑,它结束了一个时代,开启了另一个时代。
这里,想补充说明一下Lasso的身世,它的全称是The Least Absolute Shrinkage and Selection Operator,读音不是[‘læso]而是[læ’su:],有中文翻译为“套索”,个人觉得这个翻译不好,太远离它本来的含义,不如就用Lasso。Tibshrani自己说他的Lasso是受到Breiman的Non-Negative Garrote(NNG)的启发。 Lasso把NNG的两步合并为一步,即L1-norm regularization。Lasso的巨大优势在于它所构造的模型是Sparse的,因为它会自动地选择很少一部分变量构造模型。现在,Lasso已经家喻户晓了,但是Lasso出生后的头两年却很少有人问津。后来Tibshirani自己回忆时说,可能是由下面几个原因造成的:1. 速度问题:当时计算机求解Lasso的速度太慢;2. 理解问题:大家对Lasso模型的性质理解不够(直到Efron的LAR出来后大家才搞明白);3. 需求问题:当时还没有遇到太多高维数据分析的问题,对Sparsity的需求似乎不足。Lasso的遭遇似乎在阐释我们已经熟知的一些道理: 1.千里马常有,而伯乐不常有(没有Efron的LAR,Lasso可能很难有这么大的影响力)。2.时势造英雄(高维数据分析的问题越来越多,比如Bioinformatics领域)。3.金子总是会闪光的。
LAR把Lasso (L1-norm regularization)和Boosting真正的联系起来,如同打通了任督二脉(数学细节可以参考本人的一个小结,当然最好还是亲自拜读Efron的原著)。LAR结束了一个晦涩的时代:在LAR之前,有关Sparsity的模型几乎都是一个黑箱,它们的数学性质(更不要谈古典的几何性质了)几乎都是缺失。LAR开启了一个光明的时代:有关Sparsity的好文章如雨后春笋般地涌现,比如Candes和Tao的Dantzig Selector。伯克利大学的Bin Yu教授称“Lasso, Boosting and Dantzig are three cousins”。近年来兴起的Compressed sensing(Candes & Tao, Donoho)也与LAR一脉相承,只是更加强调L1-norm regularization其他方面的数学性质,比如Exact Recovery。我觉得这是一个问题的多个方面,Lasso关注的是构建模型的准确性,Compressed sensing关注的是变量选择的准确性。由此引起的关于Sparsity的研究,犹如黄河泛滥,一发不可收拾。比如Low-rank 逼近是把L1-norm从向量到矩阵的自然推广(现在流行的“用户推荐系统”用到的Collaborative filtering的数学原理源于此)。有兴趣的童鞋可以参考我个人的小结(https://cloud.github.com/downloads/cosname/editor/Learning_from_sparsity.pdf)。
还必须提到的是算法问题。我个人觉得,一个好的模型,如果没有一个快速准确的算法作为支撑的话,它最后可能什么也不是。看看Lasso头几年的冷遇就知道了。LAR的成功除了它漂亮的几何性质之外,还有它的快速算法。LAR的算法复杂度相当于最小二乘法的复杂度,这几乎已经把Lasso问题的求解推向极致。这一记录在2007年被Friedman的Coordinate Descent(CD)刷新,至今没人打破。Hastie教授趣称这个为“FFT(Friedman + Fortran + Tricks)”。因为CD对Generalized Lasso问题并不能一网打尽,许多凸优化解法应运而生,如Gradient Projection, Proximal methods,ADMM (Alternating Direction Method of Multipliers), (Split) Bregman methods,Nesterov’s method (一阶梯度法中最优的收敛速度,Candes 的很多软件包都根据这个方法设计) 等等。哪个方法更好呢?这个就像问“谁的武功天下第一”一样。我只能回答“王重阳以后再也没有天下第一了,东邪西毒南帝北丐,他们各有各的所长,有的功夫是这个人擅长一些,而另外几门功夫又是另一个人更擅长一些”。有关L1的算法可能还会大量涌现,正如优化大师Stephen Boyd所说(2010年9月28日):“God knows the last thing we need is another algorithm for the Lasso.”
下面我谈谈自己的看法:
第一,通用逼近性能当然是一个好的性质,它表明模糊系统是很flexible的,但flexible的结构太多了,比如神经网络。问题往往不在flexible,而在太flexible导致overfitting。就如同SVM一样,没有L2-norm regularization,实践中的性能就会变得很差。
第二,快速算法,这是好的方法必备的,SVM,Boosting,Random Forest的算法都很快,而且可以直接用到高维,这一点上,我没有看到模糊系统的优势。
第三,可解释性:模糊系统对低维数据(比如2-4维)的确具有好的解释性(因为IF-THEN规则的前提和结论都很简洁),但这个时候其它工具也可以做得到,比如Gradient Boosting和Random Forests(很多例子可以在ESL这本书里看到)。
第四,充分的利用各种信息。立新老师指的是IF-THEN规则可以比较自由灵活的加入先验知识,并在他的书里面详细给出实例。遗憾的是,这些例子都在处理低维空间的问题。如何用IF-THEN规则解构高维空间呢?我个人看不到它们特殊的优势。然而,在统计学习里,利用不同的先验知识处理高维空间的例子比比皆是,比如Sparsity,group-structure,smoothness等等。
现在举一个Gradient Boosting machine(GBM,也叫MART)的例子来说明我的观点。根据Lasso和Boosting的关系,可以知道GBM已经用到了Sparsity的性质(L1-norm regularization)。GBM有两个参数可以反映我们的先验知识。第一个参数是深度(depth),控制每棵决策树的深度 。如果深度为1,即树桩结构(Stump),表明GBM将采用加法模型(Generalized Additive model),即不考虑变量之间的交互式作用(Interaction);如果深度大于1,则考虑交互式作用。因为交互式作用在非线性建模中比较重要,如异或(XOR)问题,没有考虑交互式作用将失败得很惨,所以这个参数设置反映了对非线性建模的先验。第二个参数是Shrinkage的大小。假设深度选取是合理的,在噪声比较小的时候,没有Shrinkage会比较好;噪声比较大的时候,有Shrinkage会好一些。实践中,使用GBM对高维数据分析,试错法(Trial and error)很容易使用,因为就这两个参数(通常depth=3~4;实际数据的噪声往往比较大,推荐设置Shrinkage=0.01)。模型构建好之后,GBM会告诉你哪些变量是重要的,变量之间的交互式作用如何等等,这样模型的结果也是比较容易理解。Random Forests也有相似的功能。好了,最后借Hastie教授的一幅图来总结一下,无疑,GBM(MART)是他们的最爱,也是我的最爱。
统计之都:专业、人本、正直的中国统计学门户网站。
关注方式:扫描下图二维码。或查找公众帐号,搜索 统计之都 或 CapStat 即可。
往期推送:进入统计之都会话窗口,点击右上角小人图标,查看历史消息即可。
统计之都欢迎诸位看官积极投稿,投稿信箱[email protected]
最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。