(雷锋网出品)
有的学者认为机器学习只是统计学披了一层光鲜的外衣。而另一些讨论则认为涉及使用逻辑回归或者广义线性模型(GLM)的可以称作机器学习;否则就不是。
还有一些观点认为:是否执行元分析或许是区分两个领域的一个标准。
但,争论两者之间的边界,真的有意义吗?如果对这个问题进行严肃地思考,或许我们会发现,答案是否定的。
麻省理工Sam Finlayson 博士指出“过去关于机器学习和统计学之间的讨论很大程度上没有切中要害,因为这些讨论要么忽略了历史背景、要么‘回归方法’归属模棱两可”,因此这种争论事实上毫无意义。
1、历史背景的忽略:“机器学习”术语的诞生并不是为了区分统计学
达特茅斯会议期间合影数千年来,研究者们一直梦想建造“智能”设备,但“人工智能”一词却是到1956年才出现。John McCarthy 在当时的达特茅斯会议上提出这个术语,并将人工智能定义为:制造智能机器的科学和工程。
至此之后,人工之智能术语使用并流行到了今天。
而McCarthy能在会议上说服参会者使用这一术语很大程度上因为这个定义本身就是非常模糊的。
在那个年代,致力于“智能”的科学家们的研究视角还未转向“数据驱动”,而是专注于自动机理论、形式逻辑和控制论等东西。
也就 是说McCarthy当时想要创造一个术语来容纳所有这些范式,而不是倾向于任何特定的方法。
正是在这种情况下,Arthur Samuel(达特茅斯会议的与会者之一)在1959年提出了“机器学习”一词,并将其定义为一种研究领域,即不进行显式编程就可让计算机进行学习的研究领域。
之所以有此定义是因为Samuels和他的同事们希望通过让计算机拥有识别能力,并随着时间的推移不断改进这种能力来使得计算机变得更加“智能”。
在今天看来,这种研究方法似乎并不陌生,但先驱们却花费了数十年才让其成为AI研究的主导范式。
从当时研究者的意图来看,机器学习是为了描述计算机的设计过程而创建的,该过程利用统计方法来改善性能。也就是说该术语是旨在与构建智能机器的非数据驱动方法形成对比,不是为了与统计学形成对比。
毕竟统计学重点使用数据驱动的方法为人类提供有效信息。
另一个被普遍认可的机器学习的定义来自于Tom M.Mitchell 在1997年出版的教科书,他在书中提到:“机器学习领域涉及如何让计算机程序通过经验而自动改进的一类问题”。
另外,书中还有一个半正式定义:对于某类任务 T 和性能度量 P,计算机程序从经验 E 中学习,然后它在任务 T 中的性能 P 随着经验 E 的提高而提高。
2、关于谁“拥有”回归的争论没有抓住重点
当前许多人试图在统计方法和机器方法之间用二分法强硬的划定界限,但这显然是一种独裁的专制。
有的人特别执着的认为:回归驱动的研究方法是统计学专属,无论如何不能称作机器学习。
此类观点其实比目前“逻辑回归等于计量经济学”的观点还要愚蠢,两者同样挑起了激烈的争论。
六十年来机器学习社区一直在致力于“更好的计算机”,而并不关心是奇妙的方法还是统计数据哪个更优。
这也是为什么大多数教授在机器学习课程教学的时候,花大精力来教授广义线性模型及其变体。
所以说统计学在机器学习和人工智能的研究背景下是非常有意义的,机器学习术语涉及不同的方法,并致力于让“程序”变得智能。坦率地说,任何段位的统计学家都不能断言“脱离实际研究背景的统计学方法是有用的”。
回归方法归属之争其实在很大程度上同时低估了机器学习和统计,原因大致可以归纳为以下四个:
1.限制了经典统计方法在构建计算机程序方面所能发挥的核心作用;
2.忽略了机器学习对统计学的影响,实际上人工智能和计算机学科很大程度促进了统计学的复兴。例如Judea Pearl的因果关系开辟了新的统计学范式;
3.统计学和机器学习之间“强硬”的二分法在一定程度上弱化了建模决策中的重要信息,并且这种分类有时候毫无意义。
4.当前机器学习和统计学的顶级研究学者大多同时属于这两个领域。
其实,当前有很多研究都突出了统计学家与机器学习研究人员的丰富互动,例如著名学者Rob Tibshirani和Trevor Hastie没有纠结于方法论的边界线,而是利用机器学习研究人员开发的工具,从而帮助完善统计学领域的研究。并不是说Hastie和Tibs发明了新方法,而是意味着这些方法已经影响了统计学家和机器学习研究人员的日常工作。
3、许多“争论”在开始之前就已注定失败
目标的不同导致了方法和文化的差异,这也是为什么“机器学习”一词的含义自诞生以来发生了如此大的变化。
语言中的脱节让许多“争论”在开始之前就已注定失败。
如上文所述,机器学习这一研究领域之所以得以创立,便是由于计算机科学家试图创建和理解智能计算机系统,至今依旧如此。
主要的机器学习应用包括语音识别、计算机视觉、机器人/自动系统、计算广告、监控、聊天机器人等等。在尝试解决这些问题的过程中,机器学习研究者基本总是先从尝试经典的统计学方法开始,例如相对简单的广义线性模型(GLM)。
当然,长年累月,计算机科学家也不断提出了新的方法,让机器学习这一工具日益强大。
与其他任意背景下的进化一样,用于机器学习的统计学方法,其进化史也是在“物竞天择”的压力下所形成的。与统计学家相比,机器学习研究者往往很少关注:理解算法背后所执行的所有具体动作。这一点其实非常重要,并且越来越重要。
雷锋网制图
他们通常最关注的是模型误差。这样就导致机器学习研究者开发的方法往往会更加灵活,甚至不惜以牺牲可解释性为代价来实现更高的灵活性。这种离散式的进化,就很容易让机器学习和完全基于方法的统计学研究之间的界限变得模糊。
此外,也导致不少统计学家并不了解机器学习的历史。因此毫不惊讶地,他们会热衷于采用任何其他的术语来定义机器学习领域,即便这种做法毫无必要。出于同样的道理,基于“使用”的严格划分现在变得非常复杂,实际上现在很多机器学习从业者,即便当他们仅仅是在应用机器学习方法来做纯粹的数据分析,而不是驱动计算机程序时,他们依旧会称他们是在做机器学习。
虽然从严格的历史意义上而言,这种说法并不对,但是我认为也无需指责这种做法,因为这可能是出于习惯、文化背景或者“认为这种说法听起来来很酷”的综合影响。
所以在现实中,人们用到“机器学习”这个术语时,往往指的与机器学习本身非常不同的其他事情。人们可能用它来表达:“我正在用统计学方法来让我设计的程序学习”或者“我正在设计可以部署到自动化系统中的数据分析”。
又或者表达的意思是:“我正在使用一个最初由机器学习社区开发的方法,如随机森林,来做统计学数据分析”。而更普遍的情况是,他们使用这个词是在说:“我自己是一个机器学习研究者,我就是在使用数据做机器学习研究,我怎么高兴就怎么说。”
实际上,这一术语的不同用法并不令人惊讶也不成问题,因而这仅仅是由于语言的进化而导致的结果。然而当另一群人——数据科学家群起而辩“一个特定的项目是否能纯粹地冠之以机器学习或者统计学,二者选其一”时,就非常滑稽了。
在我看来,“数据科学家”这一术语原本就是由机器学习和统计学交汇而成的。而当这一争论发生时,大家往往都带着各不相同、定义模糊、并且表达不清的假设参与争论,一开场便是争论这些词的意思。而随后他们几乎不会花时间去了解这些词的出处或者听对方真正要表达的是什么,而仅仅是相互之间隔空喊话,声音大然而却并不清晰。
4、这整场“争论”差不多就是在浪费时间
现在,让我们将这些真实的问题摆在桌面上来谈:如今有很多机器学习研究者(或者至少是机器学习爱好者)对统计学的理解尚有不足。有一部分人确实就是一位机器学习研究者,然而也有许多专业的统计学家有时候也会认为自己是机器学习研究者。
而更严重的现实情况是,机器学习研究的发展走得如此之快,并且常常在文化上与统计学领域脱节得如此之远,以至于我认为对于即便是非常杰出的机器学习研究者而言,对统计学的某些部分“重新发现”或者“重新发明”都非常普遍。
这是个问题,也是种浪费!最后,由于大量第三方应用研究者非常喜欢用“机器学习”这个术语:为了让论文显得更时髦而在论文中大量应用这一术语,即便现实中他们所谓的“机器学习”既不是构建自动化系统也没有使用机器学习领域提出的方法。
(雷锋网)我认为,所有这些问题的解决方法,就是让人们更多地意识到:大多数机器学习的数据方法实际上就存在于统计学中。无论这些方法是用到了数据分析中还是设计智能系统中,我们的首要任务是培养对统计学原理的深刻理解,而不是执拗于机器学习和统计学领域的划分是正确还是错误。
关于很多工作是机器学习还是统计学的无休止的争论,最终只会分散人们的注意力,让他们无法花更多精力来进行“如何通过正确匹配问题和特定的工具来很好地完成工作”的必要对话和交流——相对而言,这才是更重要的事。与此同时,人们固执己见地对统计学和机器学习方法错误的二分法,会让很多研究者进一步养成没有必要就不使用复杂方法的习惯,仅仅是为了让自己感觉像是在做“真正的机器学习”。
这也会直接导致,人们会为了让自己的工作在方法论上听起来更时髦,就肆无忌惮地把自己的工作称作机器学习。
统计计算的黄金时代,正在推动机器学习和统计学领域变得空前的紧密。当然,机器学习研究诞生于计算机科学体系,而当代的统计学家越来越多地依赖于计算机科学界几十年来开创的算法和软件栈。他们也越来越多地发现机器学习研究者所提出的方法的用处,例如高维度回归,这一点尤其体现在计算生物学领域。