本节书摘来自华章出版社《机器学习与R语言(原书第2版)》一书中的第1章,第1.2节,美] 布雷特·兰茨(Brett Lantz) 著,李洪成 许金炜 李舰 译更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.2 机器学习的使用与滥用
大多数人听说过下国际象棋的计算机深蓝(Deep Blue)—第一台和一位世界冠军对弈并获胜的计算机,或者在电视问答游戏节目Jeopardy中击败两个人类对手的计算机Watson。基于这些令人震惊的成绩,有人预测计算机智能将在许多信息科学领域取代人类,就像在农田中机器取代了农民,在组装线上机器人取代了工人一样。
事实上,即使机器取得了如此划时代的成绩,但它们仍然在充分理解问题的能力方面相对受限。它们还纯粹是没有方向的智能机器。计算机也许在发现大型数据集的精细模式上胜过人类,但是它仍然需要人类来指导其分析并把结果应用到有意义的行动上。
机器不善于询问问题,甚至不知道询问什么问题。在以计算机能够理解的方式提出一个问题时,计算机可以较好地回答这些问题。现在机器学习算法和人们的伙伴关系就像猎犬和它的训练者之间的关系:猎犬的嗅觉可能比它的训练者强很多倍,但是没有仔细的引导,猎犬可能最终只是在追逐自己的尾巴。
为了更好地理解机器学习在现实世界中的应用,下面考虑它们成功应用的一些案例、一些还有待提升的地方、它们的害处大于好处的场合。
1.2.1 机器学习的成功使用
在增强而不是替代一个特定学科专家的专业知识时,机器学习取得了很大成功。它和医生一起战斗在根除癌症战斗的前线,帮助工程师和程序员努力创建智慧家园和汽车,帮助社会科学家建立社会如何运作的知识。为此,机器学习应用在无数的商业、科学实验室、医院和政府组织中。任何生成或者聚集数据的组织至少应用一种机器学习算法来使得数据有意义。
尽管不可能列出机器学习的每一个应用案例,但最近成功应用机器学习故事的调查包含了多个著名的应用:
识别电子邮件中不需要的垃圾邮件。
细分目标广告的客户行为。
预测天气行为和长期的气候变化。
减少虚假信用卡交易。
给出暴风雨和自然灾害后经济损失的精确估计。
预测大选的结果。
开发自动驾驶飞机和自动驾驶汽车的算法。
优化家庭和办公楼中能量的使用。
预测最可能发生犯罪行为的区域。
发现与疾病相关联的基因序列。
到本书结尾,你将理解教授计算机执行上述任务的基本机器学习算法。现在,我们可以说不管什么背景,机器学习过程都是一样的。不管什么样的任务,算法使用数据,并找出构成进一步行动的基础的模式。
1.2.2 机器学习的限制
尽管机器学习应用广泛且具有巨大的潜力,但理解它的限制仍然是重要的。现在,机器学习无论如何还不能代替人类大脑。机器学习对探索它学习的严格参数之外的灵活性很差,并且没有常识。记住这些,在把它们设置到真实世界问题前,应该特别小心地认识什么是算法能够确切学习到的。
如果没有建立在过去经验上的使用期,计算机就是在做出关于下一步做什么这样的简单常识性推断上的能力都是有限的。例如,许多网站上弹出的横幅广告。这些广告是基于对上百万用户的浏览历史的数据进行挖掘而得出的模式。根据这些数据,浏览销售鞋子网站的人应该看到鞋子的广告,而浏览床垫的人应该看到床垫的广告。问题是这将成为无休止的循环,导致提供更多的鞋子或者床垫的广告,而不是提供鞋带和鞋油,或者床单和毯子的广告。
许多人熟悉机器学习在理解或翻译语言,或者识别语音和手写体这些问题上的能力不足。也许,这种机器学习失效的最早例子是1994年的电视剧《The Simpsons》中的片段,它展示了一款Apple Newton掌上设备的仿制品。那时,Newton公司以其最先进的手写体识别而声名鹊起。不幸的是,Apple设备不时会识别失败。在电视剧的片段中展示了这一点,一条恐吓的留言“Beat up Martin”被Newton错误地识别为“Eat up Martha”,如下图所示。
从1994年起,机器理解语言的能力有了充分的提升,例如Google、苹果和微软公司都信心十足地通过语音识别来提供虚拟门房服务。当然,目前这些服务都还是在努力地回答一些相对简单的问题。更有甚者,在线翻译服务有时会把幼儿都理解的句子翻译错误。许多设备上的文本预测特性导致了大量幽默性的自我更正失败(autocorrect fail)网站,这些网站展示了计算机能够理解基本语言但是完全没有理解上下文。
这些错误中的某些是在预料之中的。语言很复杂,有字面意思和潜在含意,即使人类有时也不能正确理解句子的含意。也就是说,机器的这些类型的错误表明了一个重要的事实,即机器学习只能与它学习的数据一样好。如果语义在输入数据中没有直接表明,与人类一样,计算机只有做出最好的猜测。
1.2.3 机器学习的伦理方面
本质上,机器学习就是一个帮助我们理解世界上复杂数据的工具。与其他工具一样,它可以用于好的方面也可以用于坏的方面。当机器学习被广泛且冷酷无情地应用时,人类被视作实验室的小白鼠、自动机或者没有头脑的消费者,这时会带来问题。当由一个没有感情的计算机来自动执行时,一个看起来没有危害的过程可能导致意料之外的后果。
基于上述原因,那些没有考虑潜在道德伦理的机器学习或数据挖掘应该是不称职的。
由于机器学习是一个相对较新、正处于发展之中的学科,所以与之相对应的法律法规和社会准则尚不确定,并且一直在变化。在获取和分析数据时要小心谨慎,避免违法、违反服务条例或者数据使用协议,避免滥用人们的信任,避免侵犯消费者或公众的隐私。
Google是一个可能收集私人信息比其他任何同行都多的机构,其非正式的公司箴言是:不作恶。这可以作为你的一个比较合理的道德指引起点,但可能还不够。最好的方法可能是遵循希波克拉底誓言(Hippocratic Oath),这是一个医学原则,它声明:“首先,不要带来坏处。”
零售商通常使用机器学习来进行广告投放、精准营销、仓储管理,或者商店中货品的陈列。根据客户的购买记录,许多零售商甚至在结账时有专用设备为客户打印优惠券。客户可以在他们想要购买的特定商品上获得折扣,其代价是给出他们的个人信息。当初,这好像没有危害。但是,在实际应用时,还是需要对可能发生的事情考虑得长远一些。
下面是一个美国大型零售商应用机器学习来识别哪些需要邮寄优惠券的孕妇的故事,可能是虚构的故事。零售商希望的是,如果收到优惠券的妈妈得到很大的折扣,她们会成为忠实的客户,之后会购买利润颇丰的商品,例如尿布、婴儿奶粉和玩具。
通过机器学习方法,零售商在客户购买记录中识别出哪些商品有很大的可信性,用这些商品来预测一个妇女是否怀孕,同时预测婴儿大致临产的时间。
这个零售商根据这些数据发出了促销邮件后,一个生气的男人联系到了他们,询问为什么他的只有十几岁的女儿收到了适用于孕妇的商品优惠券。他很生气,认为商家好像是在鼓励青少年怀孕。之后,零售商的一个经理出来道歉。然而最终道歉的却是这个父亲。他和他的女儿对质后,发现她确实怀孕了。
无论前面的故事是否属实,从中得到的教训是,在盲目地应用机器学习的结果前还应该有一些常识。尤其是,在有关敏感信息方面,例如健康数据,这是必需的。当更谨慎一些时,这家零售商应该预测到可能的结果,并且在揭示机器学习发现的模式时更加谨慎。
某些司法规定可能不允许你把种族、民族、宗教或者其他一些受保护类型的数据用作商业用途,但是,你要牢记的是把这些数据排除在分析之外可能还不够,因为机器学习算法可能会不可避免地自己来学习这些信息。例如,如果某一特定群体的人一般生活在一个特定地区,购买特定的商品或者他们的行为能唯一地确定他们这个群体,那么有些机器学习算法可以从一些其他因素中推算出那些受保护的信息。在这种情况下,除了受保护的信息之外,也要排除所有可能的潜在识别这群人的数据。
除了合法性的结果外,使用数据不当有可能会触及道德底线。如果一部分顾客认为是隐私的个人生活被公开,他们可能会感到不舒服或者害怕。最近,当用户感到应用程序的服务协议条款发生变动,或者认为他们的数据被用于超出了他们原本同意应用程序可以使用的范围时,有几个备受瞩目的网络应用出现了大量的用户流失现象。对隐私的界定会由于内容、年龄层、地点的改变而不同,这就增加了合理使用个人数据的复杂性。在你开始你的项目之前先考虑文化差异的因素是很明智的。
事实上,你“能够”把数据应用于一个特定的目的并不总是代表你“应该”这样做。