Neil Zhu,简书ID Not_GOD,University AI 创始人 & Chief Scientist,致力于推进世界人工智能化进程。制定并实施 UAI 中长期增长战略和目标,带领团队快速成长为人工智能领域最专业的力量。
作为行业领导者,他和UAI一起在2014年创建了TASA(中国最早的人工智能社团), DL Center(深度学习知识中心全球价值网络),AI growth(行业智库培训)等,为中国的人工智能人才建设输送了大量的血液和养分。此外,他还参与或者举办过各类国际性的人工智能峰会和活动,产生了巨大的影响力,书写了60万字的人工智能精品技术内容,生产翻译了全球第一本深度学习入门书《神经网络与深度学习》,生产的内容被大量的专业垂直公众号和媒体转载与连载。曾经受邀为国内顶尖大学制定人工智能学习规划和教授人工智能前沿课程,均受学生和老师好评。
Roundtable discussion at the 6th IMS-ISBA meeting on “Data Science in the next 50 years”
Max Welling, University of Amsterdam
December 28, 2015
原文
有人曾经让我给出一些关于“未来 50 年的数据科学”话题的看法,特别是机器学习和统计学之间的关系。机器学习,相比统计学是一门更加年轻的学科。前者构建在统计学的基础之上,在若干年的发展过程也吸收了大量的统计学的哲学思想和众多的技术。例如,在机器学习中,我们几乎都在跟随 极大似然估计 或者 Bayesian 规则来进行估计,然后用 EM 方法来处理隐含变量。同样,机器学习前面一次热潮(在深度学习前面那次)就是关于无参贝叶斯方法,其实就是统计学的核心领域。同时,这两者之间也存在文化上的差异:统计学更加聚焦在统计推断上,也就是说通过随机样本来对总体的属性进行解释和测试,而机器学习则是更加关心预测,甚至预测的机制无法真正解释清楚(所谓的黑盒预测)。
在今天看到的往深度学习的偏移的范式给出了关于机器学习和统计学之间的文化鸿沟的一个优雅的描述。在图模型和无参数方法成为主要工具,而如 EM 和 MCMC 学习推断方法占据主要地位期间,两个学科进行了十多年的融合。
深度学习的成功可以用三个因素来解释:
- 规模化计算(例如,使用 GPU)
- 收集和处理海量数据
- 使用海量参数的模型,即使他们无法识别和解释
由于他们的关于计算机科学(非数学)的教育,因素 1 和 2 成为了机器学习专家们的第二天性。因素 3 是 1 和 2 的结果,也是一种对准确预测结果而非统计推断的重视。深度学习的范式越来越多地成为:搜集海量数据,确定需要优化的代价函数,设计一个神经网络使得梯度可以“end-to-end”传播,最后应用某种随机梯度下降的版本来最小化代价函数直到结束。不管你喜不喜欢,这个令人吃惊的效果就是在预测的这个场景下还没有出现能够战胜这个范式的方法。
在图模型流行的十年后,钟摆似乎已经从统计理论摆到了计算方面。对于数十亿的神经网络参数的解释好像也没有什么希望。甚至会不情愿去对结果进行某种校准的工作,来尝试量化预测的不确定性。
不过,我猜测这两个学科其实不会分开。他们代表了数据科学的两个关键部分,肯定是会长期整合在一起发展的。(并且,如果我们不刻意去区分这两个学科成不同的院系,可能会更有帮助。)对统计学家,我想说的是:如今再去小瞧可供分析的海量数据就很不妥了(实际上很多统计学家都是这样的)。分析海量数据,我们需要关系存储和分布式计算。我们常常听到统计学系里面的研究者在抱怨他们学生的编程能力。所以将计算机科学的课程安插到统计学的课程设计中是很合理的选择。还有那些复杂的黑盒预测模型呢?实际上这取决于问题本身,但是在假设真实世界就是无限复杂的前提下,模型的复杂性应该随着数据的规模扩展其实也就是我们需要付出的代价了。
一个让统计学和计算机科学完美结合的场景就是以模拟为形式的模型。实际上,这是大多数科学学科表达关于一个问题领域(如天气预报)的专家知识的方式。所有变量都有清晰的语义解释,并且统计学家的任务是在这些变量上进行推断。不过,这个任务需要大量的计算资源,还有关于在哪些地方使用以及如何使用这些已有的计算资源的细致考量。这个领域在统计学中被称作“近似贝叶斯计算”(Approximate Bayesian Computation)。在机器学习领域,一个新出现的范式——概率程序设计,就是用来解决同样的推断任务,同时带来一种专门的程序设计语言(比如说,基于图模型的)来表达这些模型。
一个关键的问题是,统计学和机器学习会不会在深度学习这个领域进行融合呢?换言之,统计学家会不会采用严重依赖计算的深度学习范式,而机器学习专家采用某些统计工具来丰富已有的领域呢?我认为会,我来说一下原因。尽管现在对某些特定的应用简单的预测方法就足够了,但是还有很多情景中不是这样的。例如在网页上预测如何投放广告。理论上讲,仅仅通过作出准确的预测,就可以获得回报。不过,确定那些导致某些结果的因素(这其实是一种统计推断的形式)会给出洞察并帮助设计出对不同的场景更加健壮的预测工具。还有,对校准的不确定性估计的采用将会帮助我们确定预测需要的是基于 covariates (基于内容的过滤)还是 用户点击行为(协同过滤)。另外,这还能够帮助平衡利用(提供我们知道用户会喜欢的广告)和探索(提供我们能够学习关于用户的某些知识的广告)。
更加一般地说,我们在真实场景中采用预测工具时候——比如说,让他们和人类进行交互,基于这些预测工具来产生决策——需要统计工具(例如,因果推理,校准 error-bars)。打个比方,内科医生想要理解为何一个算法认为这个病人会发展出 Alzheimer 疾病,他/她还想知道到这个预测结果正确的概率是多少。同样,自动驾驶汽车需要知道什么时候难以掌握当前的道路状况能够准确地把汽车控制权交还给人类司机。因此,对很多的应用,为了成功地和人类进行交互,机器需要对人类解释它们的推理(包含一些量化的置信度)。
最后,机器学习专家更加倾向于对建模的应用方法论方面的专注。(尽管在机器学习理论中的确有一整个子领域在处理理论问题)。所以,会有很多已被承认的方法事实上只有有限的理论基础,或者说,理论性质并没有得到深入的研究。例如,在很多研究者在使用或者发展半监督学习方法时,并不很清楚他们工作基于什么条件进行的。所以这个方面,其实统计学家能够给机器学习带来更多的理论上的贡献。
在数据科学领域中其实还有很多令人好奇的关于统计学和机器学习交叉的问题,例如:
- 公平决策制定
- 数据的偏差清除
- 隐私保护预测
- 因果性中关联的明晰化
- 可靠的高维度空间中的统计过程
...
我希望,这两个学科能够不断认识到自身工具间的互补性,然后在未来的研究中能够产生更多合作的成果。