0
编者按:作者Vasant Dhar博士是纽约大学数据科学中心和Stern商学院教授。本文中,Dhar博士讨论了我们如何理解人工智能系统所学到的知识,并随着技术的不断进步预估可能发生的最差的情况。
今年三月,当微软发布的Tay聊天机器人被玩坏后迅速下线,这引发了关于人工智能的广泛讨论。同样引发人们激烈讨论人工智能的,是今年2月谷歌无人车引发的事故。我们是否应该设计最小化不良行为的智能学习机器呢?
虽然刚才提到的两项意外相对来说都是小事故,我们从中看到了一个大问题:在复杂环境中,要控制适应性学习机器是非常难的。著名的控制论专家Norbert Wiener在50年前就已经警告过我们这是个麻烦事:“如果我们为了自己的目的,要使用一种我们没法有效干涉其内在运行机制的机械代理…我们最好确认再确认,机器所设定的目标真的是我们最初想要达到的目标,而不只是我们最初目标的近似模拟。”
学习机器的问题在于,他们基于自己所见到的数据进行自我训练,“训练数据”没法完全代表未来将要遇到的情景。有一种情况叫做“边缘案例”或者“Rumsfeldian未知数”,因为它们事先是无法预知的。人类通常在面对这种“边缘案例”的时候,表现得都还不错,不需要进行事先“训练”,例如通过应用常识、寻找类比或者研究样本等方式。
目前来说,这些让人头痛的问题还没有解决之道。但是,系统的设计者很有必要评估一下每一项应用在未来边缘案例中的风险,系统可能发生的最坏的情况。
首先,训练中的错误分析是很有必要的,可以帮助我们理解系统所学到的是什么。这不是小事。举个例子,在一个最近的项目中,研究人员评估了一天中不同时间段的电视观众,发现系统的预测在某一些时段、某一些区域内错得特别离谱。
一项错误的细节分析显示,系统不知道在某些时段、某些地区有特殊的体育节目。通过加入此项信息并对系统进行重新训练,系统在问题案例中的表现大大改善,而在其他案例中的表现没有变化。这说明系统学会了在之前出错的案例中运用新的知识。虽然这不能解决整个问题,但这是一个改善系统的例子。
另一种策略是利用互联网上可以获得的人类智能,来创造出机器有可能范错的边缘案例。众筹是一种常用的获得、处理边缘案例的方法。我的一些同事设立了一个叫做“超越机器”的系统,人类被要求指出机器预测将会出错的地方。每一次人类都能成功指出错误案例,机器可以更好地学习这些案例,从而在未来正确应对类似案例。
还有其他的方法,有一些是自动化的方法,这为学习过程增添了难度,难度是为了诱导机器出错。举个例子,我们可以人为地创造难度案例,只要稍微调整一下真实训练案例,目标就是为了诱导机器犯错。在系统对于自己的预测非常自信的时候,这样的方法尤其有用,因为机器无法区分真实的案例和经过调整的案例。这说明机器的学习效果还不够强,我们还不该放心地将其用于自动化应用。此类策略的目标是引入目前数据中没有的新案例,有时候新案例甚至会有些奇怪,从而训练系统更加完善和强大。
另外,我们还需要评估最差情况下的犯错成本。这在金融行业的风险评估中是一个很大的专业领域,使用严重性概念和频率来将风险量化为金钱或其他类似的单位。要使用这种框架,我们需要梳理各种结果可能有的损失分布,包括边缘案例在内,即便是我们没法预先预计这些事件。如果这些分布没法可靠地进行评估,我们可能应该判断认为,目前系统还没准备好进行自动化功能应用。
Via TechCrunch
雷峰网原创文章,未经授权禁止转载。详情见转载须知。