机器学习的学习随想01
作者:孟岩
【AI100 导读】本文是作者在学习机器学习的过程中随手记下的一些随想,内容涉及数学原理、算法分析、系统设计和产业趋势,脑洞随时开放,思路经常穿越,采取微博文体写作,不拘泥于主题,一事一议,可长可短。谬误在所难免,目的在于抛砖引玉。
1. 线性模型是机器学习算法当中特别重要的一个,它既是最容易入门的算法,也是效果最好的算法之一。带惩罚项的线性回归和逻辑回归,在各种问题的测试当中,总是能排到前几名去。这就有点像形意拳里的五行拳,既是入门套路,又是最高级的绝技,全看功力深浅。
2. 机器学习的本质是根据证据(观察到的数据)来猜测事物背后的规律。一般来说,规律是可以表示为某个函数的。所以机器学习从某种意义上来说就是根据数据,来猜测背后支配性的规律函数。很不严谨地引述一下魏尔斯特拉斯定理,一个闭区间上不管多么复杂的连续函数,总可以用多项式函数的线性组合无限逼近。所以不管多么复杂的规律,用广义线性模型总是可以表达出来的。有人说深度学习牛逼是因为深度学习能够表示的复杂度高,恐怕不尽然,难道线性模型不能表达很高的复杂度?深度学习真正的优势还是在于它可以自动学习特征。而特征工程对于线性模型来说,往往是最难搞也是最具决定性的步骤。
3. 线性模型的另一个缺点是容易过拟合。过拟合是所有机器学习算法的死穴,本质上并没有好的办法去解决,但有一些控制手段。线性模型的控制手段就是在优化目标中添加惩罚项。
4. 带惩罚项的线性回归,最经典的是岭回归(ridge regression)。在统计学里,这个方法的大名叫做“吉洪诺夫正则化(Tikhonov regularization)”,是由前苏联国立莫斯科大学数学系教授、苏联科学院院士安德烈·吉洪诺夫于1943年斯大林格勒战役烽火连天的时候提出来的。
这个数学家吉洪诺夫跟前苏联著名电影演员维亚切斯拉夫·吉洪诺夫好像没什么亲戚关系。演员吉洪诺夫在《春天的十七个瞬间》里塑造的党卫军旗队长施季里茨激励普京报名参加了克格勃,是前苏联影视经典形象。
然而数学家吉洪诺夫其实更牛,他21岁就从莫斯科大学拿到数学博士学位,27岁当教授,33岁成院士,放在哪个时代都是难以想象的天才人物。吉洪诺夫是在研究积分问题时提出这个正则化方法的,而且很快广为人知了。这大概还要归功于二战时期形成的反法西斯联盟,使得苏联的科学成果也能很快传到西方。冷战之后的苏联数学家就没有这么幸运了,很多成果发表几十年后都不为西方所知。比如支持向量机,是由另一个苏联数学家弗拉基米尔·瓦普尼奇于1963年提出来的,一直到三十年后的1992年才传到西方。很显然,如果不是苏联解体,瓦普尼奇移民美国,这个算法没准还会在苏联封闭更长时间。附带一提,瓦普尼奇现在在 Facebook。
5. 另一个流行的惩罚回归系数的线性模型算法是 LASSO,其提出者是斯坦福大学统计系教授罗伯特·蒂什拉尼(Robert Tibshirani)。
话说这个教授跟斯坦福大学的另一位统计学教授 Trevor Hastie 合著了两本书,其中 The Elements of Statistical Learning 是机器学习最经典的几本教材之一,号称 ESL,与 PRML 齐名。
但由于其数学太深,难度太大,两位教授又合著了一门简明教程,An Introduction to Statistical Learning,并且以此为教材开了一门在线公开课。我听了一点,还是觉得吴恩达的课更对胃口,所以弃剧了。再开个脑洞,ESL 这本书还有一个第三作者叫 Jerome Friedman,他是另一种惩罚线性回归算法Glmnet 的提出者。
很巧的是机器学习名著《概率图模型》的第二作者叫 Nir Friedman。难道叫 Friedman 的人很喜欢搞机器学习并且给别人做第二、三作者?不过想到经济学家弗里德曼和著名专栏作家弗里德曼应该都不懂机器学习,我也就释然了。
6. 其他的惩罚线性回归方法还有 ElasticNet, LARS, Glmnet 等。
7. 线性模型的一大优势是速度快,准确率又相当高,所以可以作为一个基线算法。解决任何问题,可以首先建一个线性模型作为基准,再去试其他的算法追求高精度。如果其他的算法效果不好,或者速度太慢,总还是可以回到线性模型。
8. 速度快也很重要,开发中便于快速迭代调参,应用中更适用于那些需要实时出结果的场合。前不久,地平线机器人的余凯在北大讲人工智能,说他看好互联网边缘的嵌入式人工智能,并且举了很多例子,是必须实时在嵌入式系统上给出判断结果的。我想如果他对于趋势的判断正确,那线性模型在未来嵌入式人工智能中肯定占据一个特别重要的位置,因为它快啊。
本文为 AI100 原创,转载需获同意。