机器学习并非“万能”:5个机器学习的真实失败案例
题记:春节临近,也懒得写一些深度的技术性文章来分享给大家,最近看了一些东西,感觉很有意思,且对大家很有启发,现share给大家。这篇文章是发表于2018年12月28日《计算机世界》报纸的一篇文章,由Bob Violino写作,Charles编译的,题目为:盲目冒进:机器学习的5 个失败案例。本人将主要内容提炼出来,并加上个人观点,供大家参考。
机器学习如此火热,导致目前很多领域都积极进行“机器学习化”和“人工智能融合”,相比较于传统的学科或工具,如统计学、运筹学、概率论等,机器学习对建模的理论假设要求相对宽松,更注重预测的效果,其训练过程常常是个“黑箱子”,尤其是深度学习。
机器学习如此强大,但是它是“万能”的吗?或者说只要给出一系列特征变量及其“大数据”,就能建立模型并预测吗?
然也,机器学习也可能会出现严重错误,让你后悔当初的冲动。本文借鉴真实企业在机器学习上的实际经验,介绍机器学习可能出错的5 种方式,让你有所思考与启发。
教训一:错误的假设会让机器学习出现偏差
该案例来自一家Projector PSA的美国公司,它是一家设计和构建专业服务自动化软件的公司,用于帮助咨询公司XX更好地经营其业务。其中有一项专业服务自动化就是为咨询公司的项目人员配置、人力资源优势有效发挥提供帮助。
咨询公司XX的员工都是训练有素的专业顾问,并在多年的项目工作中积累了大量的数据(包括项目的资金、参与员工、工作时间等等),这些数据都被Projector PSA自动化软件跟踪并记录下来,现在Projector PSA公司想根据这些数据进行机器学习训练,来预测每个项目所需要的时间,并与实际完成时间相比较,从而评判项目经理们的工作规划的准确性。
首席运营官Steve Chong 介绍说,Projector PSA 已经开始和一家客户开展了一项研究,该客户聘用了数百名项目经理,根据一部分项目经理们的以往数据作为数据集进行训练,然后,再根据机器学习算法学到的知识,对其他的项目经理进行分类。
预测结果很糟糕:一些经验最丰富、训练最有素的项目经理归类为最糟糕的违规者,因为他们的预测工作时间和实际工作时间的差异性很大。而某个项目经理A因为较小的预测方差和差异性,而被机器学习评价很高。
Chong 解释说:“这些错误不是由机器学习算法本身造成的,而是由我们最初训练时所采用的假设造成的。还有一个原因是最初仅依赖于数据,而没有充分理解数据所代表的现实。”
一些经验最丰富、训练最有素的项目经理往往被公司指派到最困难的项目上,而那个评价很高的项目经理A在公司发送自己实际工作时间时,往往比较夸大,导致从来没有超出或者低于预算的情况。
后来,该公司训练了其机器学习算法来识别这些新的配置文件,感觉它能更好地反映现实了。
教训二:对机器学习训练结果缺乏人为监督会出现意想不到的偏差
来自巴西金融服务公司Mejor Trato的一个案例,该公司的人力资源部门,使用该公司内部开发的机器学习聊天机器人,与未来的新员工进行沟通,进行实时聊天和电话回答一系列问题。
在初次使用聊天机器人时,出现了两个关键问题。一是发错了给求职者的个人资料/职业表格,另一个问题是,面试时间与人力资源部门会议时间相冲。在开始的几个星期里,人力资源部门必须派人监督每次谈话,以便在必要时纠正聊天机器人。
首席技术官Cristian Rennella说:我们犯了一个错误,以为一切都解决了,而没有去监督聊天机器人。教训是,一定至少要有几个月的时间全时监督聊天机器人。Rennella 介绍说:“机器学习在开始的时候能用于90%的答案,但是剩下的10%应该有人类进行监督以纠正算法。”
随着时间的推移,90%这一比例会增长到高达99%,她说:“但我们不能停止关注可能出现的偏差,以及新出现的情况——当我们开始这个项目时,这些都是出乎意料的。”
教训三:糟糕的数据标签会损害机器学习结果
俄罗斯的两家联营公司 Ashmanov Neural Networks 和 SOVA (Smart Open Virtual Assistant)为其商业客户开发了基于机器学习的产品。这包括视频分析、自然语言处理、信号处理和神经网络。
同时担任两家公司首席执行官的Stanislav Ashmanov 介绍说,两家公司在机器学习上遇到的最大问题之一是难以标注的糟糕的数据。Ashmanov 说:“几乎不可能提供高质量的数据标签。通常,从事数据标记工作的人很草率,因为他们工作起来总是很匆忙。更重要的是,真的是很难让每个人都以同样的方式去理解怎样接替这些任务。”
结果,数据包含了多个标记样本,例如图片中错误识别的轮廓,这严重影响了被训练的神经网络的表现。在短时间内收集大量数据也是很有挑战性的。Ashmanov 说,数据收集可能需要几个月的时间。而且,从公开可用来源收集的数据,例如在互联网上找到的数据,并不能总是准确地反映现实。
例如,在演播室或者实验室拍摄的图像与真实街景或者工厂生产车间得到的快照截然不同。结果,神经网络的性能会降低。作为客户项目的一部分,当公司训练神经网络来识别网络上发布的自拍照中的眼镜时,便出现了这种出错的例子。他们从社交媒体上收集了一些照片,并对其进行标记。Ashmanov 说,神经网络的表现很差,因为它把有黑眼圈的人误认为戴着眼镜。
另一位客户提交了一个城市的两张卫星图像。任务是找出图像中的汽车,教会神经网络去识别它们,并计算它们的近似程度。这个例子的问题是,神经网络把建筑物屋顶的窗台识别为汽车,因为它们在外观上相似——小、矩形,并且大部分颜色是黑的。
Ashmanov 说:“这一切都归结于对边缘的仔细划分,创建启发式方法,以及改进初步数据处理和后处理证据检查等。”
教训四:有细微差别的分类问题会让机器学习产生混淆
Casepoint 是为法律部门和其他市场提供电子发现技术的一家美国公司,该公司采用机器学习进行文档分类和预测分析。通过使用该技术,法律部门能够显著减少对文档进行审查和分类所花费的时间。
使用机器学习对文档进行分类是有效的,但并非完美无缺。该公司发现的一个缺点是过分依赖于机器学习来解决有细微差别的微妙的分类问题。例如,在法律领域,机器学习文档分类器经常用于识别能够符合“生成文档请求”的文档。甲方要求提供有关某一主题或者内容的文档,乙方则使用机器学习文档分类器帮助筛选文档库,找到对应的文档。
Carns 说,这种方法效果非常好,律师们已经开始经常使用这种文件技术辅助审查(TAR)方法。他说,“如此的成功导致了盲目地使用机器学习文档分类器进行更精细和更细微的分类,例如找到受律师客户特权保护的文档。”
尽管很容易使用机器学习来训练文档分类器以找到特权文档的内容,但是文档是否具有法律特权在很大程度上取决于文档的受众、机密性、接收时间以及与法律建议或者诉讼的关系。Carns说,大多数机器学习文档分类器不能对这些附加的情景线索进行详细的分类。
Carns 说,“这并不意味着机器学习文档分类器不能帮助对潜在的特权文档进行下拉选择和分类。但法律专业人士不应该仅仅依靠机器学习来确定特权。”他说,目前人类律师需要手动审查可能享有特权的文档,以便就法律特权是否适用作出最终裁决。
教训五:测试/训练污染会让机器学习感到困惑
美国自动化公司Indico 多年来为客户提供企业人工智能和深度学习服务,一直困扰该公司最大的一个问题是机器学习测试和训练数据的污染。
一名客户创建了模型来确定一条新闻是否会影响其股价。由于很难准确地确定影响时间,因此公司创建了一个模型来预测第二天的影响。首席技术官Victoroff 说:“他们没有意识到,自己忽略了确保清洁的测试/训练分类的数据科学基础。因此,他们在预测次日影响的任务上表现出接近100%的准确性,而实际上,该模型并不比随机预测好多少。”
另一个例子来自关注其内部自然语言处理(NLP)系统的客户。该客户的某个部门多年来一直在为机器学习模型创建和更新特性,并且基于相同的搜索集来不断地测试它们。该部门也体验到了测试/训练污染的影响。Victoroff 说:“只要你看到出现测试错误并改变算法以纠正测试错误时,你的数据就不再准确了。”
在这个特殊案例中,人们没能很好地理解问题。在内部,该模型对于某一任务的准确率达到近100%的程度。Victoroff 说:“但在实际中,这个系统几乎不起作用,因为它们无意中污染了自己的结果。任何企业在机器学习领域都会犯的最严重的错误就是测试/训练污染问题。
笔者认为这条教训让人不是很理解,但是也是大家疏忽的,因为我们在做机器学习训练时,经常会采用不同算法去测试统一数据集,只有在集成学习、神经网络或深度学习等方面会有通过机器学习来对测试技数据进行调整的,如boosting、误差反向传播算法等。但对于该类问题还不是很清楚。