大家好,又到了一个愉快的周五,我们今天继续带来机器学习系列文章的第三期。
在第一篇文章中,我们硬核科普了“当我们谈论机器学习的时候我们在谈论什么”:
小鹏汽车:小鹏专业课 | 当我们谈论机器学习的时候我们在谈论什么?(一)
在第二篇文章中,我们为大家解读了机器学习在日常生活中的应用领域:
小鹏汽车:小鹏专业课 | 当我们谈论机器学习的时候我们在谈论什么?(二)
今天,我们为大家带来第三篇文章“好吧,机器学习也不过如此”,带你来真正认识机器学习风光下隐藏的危机。
第四篇:学习-从被动学习到主动学习
第五篇:技巧-深度学习的昨天,今天,明天
第六篇:总结-你可能不知道,AI有17种门派
最近,一个在德国学自控的朋友问我,机器学习会是一场泡沫吗?
他的担心不无道理。
目前国内的AI市场遇冷明显,2017年中国创业公司吸纳了全球48%的AI投资,占比首超美国,然而到2018年只占不到25%[1]。
国内外的普遍情况是,机器学习落地都开始回归理性。例如原本号称2019年量产L3自动驾驶的车厂们纷纷把时间线往后推3-5年[2]。学界也从新兴技术的跟风灌水转向更有理论深度的反思。Google研究员Ali Rahimi更是在2017年NIPS Test-of-Time Award演讲中呼吁不要让机器学习成为炼金术 [3]。

2014-2018年世界AI领域股权融资占比,中国在2017年独占鳌头[4]
2018年6月,著名咨询公司Gartner给出的AI技术成熟曲线(Hype Cycle)显示机器学习已经度过萌芽期(Innovation Trigger)和期望峰值(Peak of Inflated Expectations),正在往泡沫破碎的低谷期(Trough of Disillusionment)回落,并且将在2-5年后遇到下一个发展瓶颈:

2018年AI技术成熟曲线,机器学习刚刚走过期望峰值,现实正在打破过分美好的幻想和泡沫[5]
毫无疑问,泡沫是存在的,机器学习光鲜的那一面在过去几年被过分放大。
但泡沫并不可怕,大部分新兴技术都会经历这样的成熟曲线——可怕的是泡沫大而不破。本系列在第二篇文章介绍了一些机器学习不常见但实实在在的应用:
小鹏汽车:小鹏专业课 | 当我们谈论机器学习的时候我们在谈论什么?(二)
今天我们来从技术角度戳一戳机器学习的泡沫,聊一聊它的局限和挑战,告诉你们机器学习也不过如此。
硬核预警,前方干货出没,没时间的朋友可以直接拉到最后看思维导图(当然不要忘记点赞哦)
机器学习最大的优势在于数据驱动,打破了传统基于规则的范式[6]。
然而巨大的优势背后隐藏着巨大的痛点:很多场景下,大量高质量数据并不那么容易获得。
主要原因有二,一是基础设施没跟上,导致数据采集不上来;二是,数据往往存在结构性问题,质量不够好。
针对前者举个简单的例子:
智能城市的概念说了很多年,一个特点是按需供暖,根据区域历史用暖预测未来的需求,提前计划生产和分配。这件事在算法理论层面并不难,难的是采集暖网中的各种数据。因为需要改造传统的机械式热量表,搭建通信网络,建设一整套物联网系统。这种基建改造成本直接阻碍了大规模机器学习的落地。
至于数据结构性问题,通常表现在两个方面:
一是数据不平衡(imbalanced data),例如工厂里检测故障或不合格的产品,往往几千几万个样本里才会有一例故障或者不合格的样本。这种极端不均衡的数据很难有效训练一个机器学习模型。
二是数据偏见(biased data)。即便是通过合理方式采样出平衡的数据集,数据本身依然可能存在内禀的偏见(或者说倾向性)。例如你爱看xx头条的某一类新闻,然后发现xx头条只给你推送这一类新闻,因为你和与你相似的用户贡献的浏览数据带有明显的倾向性(biased),导致机器学习模型在推送的时候形成了类似的倾向;
再例如,用在线求职信息判断一个候选人是否有足够的资质,机器学习可能会倾向于把女性误判为资质不够,因为用于训练的现实数据里职场成功的女性远少于男性。机器学习模型像是个老实孩子,不挑不拣,教什么学什么。这就要求我们尽可能保证数据的平衡性和客观性。
数据的质和量是机器学习的第一个挑战。
处理好了数据,开始训练模型,便面对第二个挑战:模型鲁棒性。
我们希望算法准确度高,更希望在各种条件、环境、扰动下准确度依然高。可惜现实并非如此。只要细微改动几个参数,模型可能会work或者完全不work。这让深度学习从业人员自诩调参侠,纷纷表示给网络调参是一门玄学(NVH工程师们有没有同感?)。
此外,有着强大性能的神经网络很容易受到外界干扰甚至攻击。2014年Google的一项研究发现:给图像加入肉眼不可见的噪声竟可以让一个原本极为准确的分类神经网络完全失效[7]。2017年相似的研究发现,黑客可用通过在输入图像上加入精心设计的对抗样本(Adversarial Patch)准确控制神经网络的分类结果。神经网络用于安防、支付、自动驾驶领域已不罕见,而如此极易被攻击的属性留下了巨大的系统安全漏洞。
今年7月,百度就演示了如何用对抗样本“欺骗”自动驾驶感知系统。面对普通的障碍物,系统早早就识别出来并且选择绕行,而放在路中间的对抗样本则完全被无视[8]。

有了数据,有了模型,机器学习面临第三个挑战:模型解释性。
解释性体现在两个方面,一是如何(How),一是为什么(Why)。
前者解释模型是如何通过这样的输入得到那样的输出,强调相关关系;后者解释为什么这样的数据、参数、特征会得到那样的输出,强调因果关系。

关于解释性有一个常见的误解:只要机器学习算法work,性能好,那我们就用,解释性差一点没关系。
其实带着这种实用主义的想法去做电影推荐、游戏AI完全OK。然而,一旦涉及到财产、生命、社会影响,那么我们必须要求算法有足够的解释性。
你可以用神经网络预测票圈里其他人的旅游地点,然后炫耀你的算法多么准确,轻松随意。但假设你要根据预测的地点为你的公司做投资,那么只有一个黑盒模型就完全不够了,你需要更靠谱和透明的逻辑说服你自己和老板。
说到黑盒模型,不得不提另一个误解:机器学习都是黑盒,解释性都很差。
实际上,这种观点至多对了一半。很多机器学习算法都可以从“如何”的维度做出很好的解释,例如线性回归,支持向量机,决策树,等等——算法本身有一套人类可以理解的逻辑去解释模型是怎么根据输入得到输出的。即便是像神经网络这样最为抽象的模型,也可以通过与模型无关的方法(例如Partial Dependence Plot, Permuted Feature Importance, Global/Local Surrogate)来系统性地研究输入与输出间的相关关系[9]。
机器学习真正缺少的是对“为什么”的解释能力,这会带来潜在的风险。微软研究员Rich Caruana曾以诊断肺炎患者死亡率举例[10]:
我们有两个预测患者死亡率的模型,一个是机器学习模型,另一个是基于规则的模型。
后者经过训练之后形成了一种“患者有哮喘史则肺炎死亡率低”的规则,而实际上数据里也的确呈现出这种明显的相关关系。机器学习是否也学到了这种相关关系呢?我们不知道,但希望没有。
因为医生证实哮喘史本身并不能导致肺炎患者死亡率降低,本质原因是,得过哮喘的人更警惕,从而早发现早治疗,相对提高肺炎存活率。哮喘病史只是诸多特征里一个假性的指标,对于判断肺炎死亡率真正起作用的变量是发病到就诊的时间。
然而面对一个复杂的机器学习任务,真正起作用的变量可能是在数据里体现不出来的(比如患者从感染到就诊的时间差,无从统计),模型习得的相关关系可能是有偏见和隐患的(例如错误地倾向于预测有哮喘历史的肺炎患者死亡率低,致使病人不重视,耽误了宝贵的治疗时间)。这种时候,我们更需要清晰的因果推理来解释输入输出间的关系。
以上简单介绍了机器学习面临的三方面挑战:
对大量高质量数据的依赖,以及模型鲁棒性和模型解释性的缺失。由此衍生出伦理法律方面的讨论,请移步本系列文章第一篇,此不赘述。
小鹏汽车:小鹏专业课 | 当我们谈论机器学习的时候我们在谈论什么?(一)
其实很多时候,我们看到的问题都只是表象,真正的问题在深处:
目前的机器学习,本质是一种对训练数据的“死记硬背”。一旦跳脱训练集涵盖的范围,基本无法工作,不能像人类一样知识迁移、举一反三。机器学习有这样那样的瓶颈和挑战,往往是其本质决定的。在机器学习走向通用人工智能的道路上,步履维艰。要克服现有的局限,需要从骨子里打破、创造一些东西。
在我们的第四篇文章中,也将给大家介绍机器学习未来趋势之一Active Learning,打破现有被动学习的范式,让机器像人类一样通过提问来实现主动学习。
最后附上本文思维导图,请大家参考:

来源:知乎 www.zhihu.com
作者:小鹏汽车
【知乎日报】千万用户的选择,做朋友圈里的新鲜事分享大牛。
点击下载