著名分析师 Benedict Evans:如何才能真正理解“机器学习”?
编者按:伴随着这几年的炒作,机器学习已经变得非常“普通”。但是很多人在谈论或者思考机器学习或者人工智能对我们的经济体系或者社会带来什么影响时,还在不断地重复着“正确或者不正确的废话”,比如“数据是新的石油”、“人工智能将接管所有的工作”等等。日前,A16Z合伙人,著名分析师Benedict Evans发表了一篇文章,深入地讨论了应该怎样去思考机器学习,以及机器学习带来的影响。文章员标题为“Ways to think about machine learning”,由36氪编译,希望能够为你带来启发。
现在,我们进入机器学习爆发阶段已经有四五年了,几乎每个人都听说过它。它的影响不仅仅体现在每天都会有新的创业公司出现,也不仅仅体现在大型技术平台公司正在围绕它进行自我改造,还在于《经济学人》或《商业周刊》等杂志都对其进行了一系列封面报道,许多科技行业之外的大型公司也在推进一些相关的项目。我们知道,这是下一个大事件(Next Big Thing)。
更进一步说,我们基本上都在理论层面上对神经网络有所了解,我们知道,它可能与模式和数据有关。机器学习会让我们在数据中找到某种模式或结构,这些模式或结构是隐式和概率性的(因此是需要“推断”的),并不是显式的,以前只有人才能找到。现在,机器学习解决了一些以前“电脑做起来很难,人做起来非常简单”的问题,或者是说是“人很难向电脑描述”的事情。此外,我们还看到了一些很酷的(或令人担忧的,取决于你怎么看)演讲和视觉演示。
不过,我认为我们对机器学习到底意味着什么还没有一个明确的概念:即机器学习对科技公司或更广泛的经济体系中的公司来说意味着什么?如何从结构上思考它能够带来什么新事物?或者说,机器学习对我们所有人意味着什么?它实际上能够解决什么重要的问题?
“人工智能”这个术语并没有提供任何帮助,情况往往是一提起“人工智能”,相关的讨论就会结束了。当我们说“人工智能”的时候,就好像电影《2001太空漫游》(2001:A Space Odyssey)中的黑色巨石出现了一样,我们都变成了猿类,尖叫着挥舞着拳头。你不能对“人工智能”进行分析。
事实上,我认为,我们可以提出一堆对发展或更深入理解无益的方式来谈论机器学习当前的发展。例如:
数据是新的石油
Google和中国(或者Facebook,或者亚马逊,或者BAT )拥有所有的数据
人工智能将接管所有的工作
当然,也有讨论人工智能本身
或许,与此相比,更有用的话题可能是:
自动化
支持技术层
关系数据库
为什么是关系数据库?它们是一个新的基础支持层,改变了计算的能力。在20世纪70年代末关系数据库出现之前,如果你想让数据库显示“所有购买这种产品并居住在这个城市的客户”,通常需要一个定制的工程项目。数据库的结构不能够使任何随意的交叉引用查询都是一件简单、常规的事情。如果你想问一个问题,必须有人来去构建它。数据库是记录保存的系统;关系数据库的出现,将它们转变为商业智能系统。
这改变了数据库在一些重要方面的用途,从而创造了新的用例和价值数十亿美元的新公司。关系数据库给我们带来了Oracle,但也给我们带来了SAP,SAP和它的同行给我们带来了全球即时供应链——它们给我们带来了苹果和星巴克。到20世纪90年代,几乎所有的企业软件都是一个关系数据库——PeopleSoft和CRM以及SuccessFactors,还有数十个类似的软件都运行在关系数据库上。没有会说SuccessFactors或Salesforce“永远不会成功,因为Oracle拥有所有的数据库”。相反的是,关系数据库技术成为了一个支持层,成为了所有公司的一部分。
所以,这是今天思考机器学习的一个很好的基础方式。机器学习会是一个步骤,改变我们可以用计算机做的事情。它将是不同的公司的不同产品的一部分。最终,几乎所有的东西里面都会有机器学习,也没有人会去在意。
这里一个重要的相似之处是,尽管关系数据库具有规模经济效应,但网络效应或“赢家通吃”效应非常有限。如果B公司从同一个供应商处购买相同的数据库软件,但同样使用这家供应商软件的A公司使用的数据库不会变得更好:如果Caterpillar购买相同的数据库,则Safeway的数据库不会变得更好。机器学习实际上也是如此:机器学习完全是基于数据的,但是数据对于特定的应用来说,也是特定的。更多的手写数据将会使手写识别器更好,更多的燃气轮机数据也将使预测燃气轮机故障的系统更好,但一个应用的数据对另一个应用没有帮助。数据是不可替代的。
这就是在谈论机器学习时最常见的误解的核心——在某种程度上,机器学习是一种单一的、通用的东西,在通往HAL 9000(译者注:《2001太空漫游》中号称有完美记录从不犯错的人类最高科技的结晶)的道路上,谷歌或微软各自建立了一个,或者说,谷歌“拥有所有的数据”;IBM有一个实际上被称为“沃森”的东西。实际上,使用这种视角来看待自动化是错误的:在自动化的每一波浪潮中,我们都想象我们正在创造一些拟人化的东西或具有通用智能的东西。在上世纪20、30年代,我们想象钢铁侠拿着锤子在工厂里走来走去,在50年代,我们想象人形机器人在厨房里走来走去做家务。但我们没有机器人仆人,我们有用来清洗的机器。
用来清洗的机器是机器人,但它们不是“智能的”。它们不知道什么是水,什么是衣服。而且,即使是在狭窄的清洗领域,它们也不是通用的——你不能把盘子放在洗衣机里洗,也不能把衣服放在洗碗机里(或者更确切地说,你可以,但是你不会得到你想要的结果)。它们是另一种自动化,在概念上与传送带或取放机没有什么不同。同样,机器学习可以让我们解决计算机以前无法有效解决的各类问题,但每一个问题都需要不同的实现方式、不同的数据、不同的途径,而且往往需要不同的公司。它们都是自动化的一部分。每个都是用来清洗的机器。
因此,谈论机器学习的挑战之一,就是在数学的机械解释和对通用人工智能的幻想之间找到中间地带。机器学习不会创造HAL 9000 (至少,很少有业内人士认为它很快就会创造HAL 9000),但把它称为“只是统计数字”也没有用。回到与关系数据库的相似之处上,这可能相当于谈论1980年的SQ。你可以做令人印象深刻的语音识别和图像识别演示,但同样,一家普通公司会怎么做呢?正如前不久美国一家媒体公司的一个团队对我说的那样:“嗯,我们知道,我们可以用机器学习来索引十年来我们采访运动员的视频——但是我们在寻找什么?”
那么,对于真正的公司来说,机器学习中用于清洗的机器是什么?我认为有两套工具可以用来思考这个问题。首先是从一系列数据类型和问题类型的角度来思考:
机器学习可以很好地为你提出的问题(而且你得有相关的数据)提供更好的结果,仅仅作为分析或优化技术。例如,我们的投资组合公司Instacart建立了一个系统,来优化个人购物者在超市中的路线,这个系统为相关的超市提供了50%的提升(这是由三名工程师利用谷歌的开源工具Keras和Tensorflow建立的)。
机器学习可以让你对已有的数据提出新的问题。例如,正在找发现的律师可以用机器学习搜索有关“愤怒的”电子邮件,或者“焦虑的”或异常的线索或文档集群,以及进行关键字搜索。
第三,机器学习可以用来分析新的数据类型——计算机以前无法真正读取音频、图像或视频,但现在,有机器学习的出现,这种可能性越来越大。
在这里面,我觉得分析影像是最令人兴奋的。以前,只要我们有计算机,就能处理文字和数字,但图像(和视频)大多是不透明的。现在,它们可以像“阅读”一样,去“看到”图像和视频。这意味着图像传感器(和麦克风)变成了一种全新的输入机制——与其说是“摄像头”,不如说是产生(潜在的)机器可读数据流的新的、强大的和灵活的传感器。今天看起来不像计算机视觉方面的问题都将变成计算机视觉方面的问题。
这不是关于识别猫咪图片的问题。我最近遇到一家为汽车公司提供座椅的公司,它在一个便宜的DSP芯片上安装了一个神经网络,并配有一个便宜的智能手机图像传感器,用来检测面料是否有褶皱(我们应该期待在非常小的、便宜的小部件中使用各种类似的机器学习用途,只做一件事,就像这里所描述的一样)。把它描述为“人工智能”是没有用的:它只是将一项以前无法自动化的任务能够自动化了。
这种自动化的感觉是思考机器学习的第二种工具。发现面料是否有褶皱不需要20年的经验,它只需要一个哺乳动物的大脑。的确,我的一位同事认为,机器学习可以做任何你可以训练狗做的事情,这也是思考人工智能偏差的一个有用的方式(狗到底学到了什么?训练数据中有什么?你确定吗?你怎么问?),但也是有限的,因为狗的确有通用的智力和常识,不像我们所知道的任何神经网络。吴恩达(Andrew Ng)表示,在不到一秒钟的时间里,机器学习就可以做任何你能做的事情。谈论机器学习更像是在寻找一种比喻,但我更喜欢这样的一种比喻:它给了你无限多的实习生,或者是无限多的10岁的孩子。
五年前,如果你给一台计算机一堆照片,它只能按尺寸大小进行排序。一个10岁的孩子可以把照片按照男人和女人进行分类,一个15岁的孩子可以按照酷和不酷对照片进行分类,一个实习生可以按照有趣与否来进行分类。今天,用机器学习,计算机可以做10岁和15岁孩子做的事情,它可能永远做不了实习生做的事情。但是如果你有100万个15岁的孩子来看你的数据,你会怎么做?
也就是说,机器学习不需要像有数十年经验专家那样进行判断。我们不是让专家自动化。相反,我们会要求“听所有的电话,找到有愤怒情绪的电话”。读所有的邮件,找到有焦虑情绪的邮件。看10万张照片,找到看起来很酷的人。
从某种意义上说,这是自动化一直在做的事情。Excel没有给我们带来人造会计师,Photoshop和Indesign没有给我们人造图形设计师,蒸汽机也没有给我们人造马。(在早期的‘人工智能’浪潮中,国际象棋计算机并没有给我们一个在盒子里的脾气暴躁的中年俄罗斯人。)相反,我们大规模地将独立的任务自动化。
在某种意义上说,机器学习不仅能找到人类已经能识别的东西,而且能找到人类无法识别的东西,或者找到10岁(或50岁)的人不能识别的模式、推论或暗示的层次。最好的例子是Deepmind 的 AlphaGo。AlphaGo并不像国际象棋计算机那样下棋,而是通过依次分析每一个可能的动作。相反,它被赋予了规则和一块棋盘,并让它试图自己制定策略,与自己进行比人类一生所能做的更多的游戏。也就是说,与其说这是1000个实习生,不如说是一个速度非常快的实习生,你给你的实习生1000万张照片,他们回来说“这是一件有趣的事情,但是当我看到第300万张照片时,这种模式就开始出现了”。那么,哪些领域足够狭窄,我们可以告诉一个机器学习系统规则(或者给它打分),它能够让我们看到所有数据,就像人类永远做不到的那样,并带来新的结果?
我花了相当多的时间拜访大公司,谈论它们的技术需求,它们通常有一些非常明显的触手可及的机器学习成果。有很多显而易见的分析和优化问题,还有很多明显的图像识别问题或音频分析问题。同样,我们谈论自动驾驶汽车和混合现实的唯一原因是因为机器学习能使它们成为可能——机器学习为汽车提供了一条途径,去了解周围情况和人类驾驶员可能会做什么,如果我正在戴一副可以显示任何东西的眼镜,这就会为混合现实提供了一条了解我应该看到什么的途径。但在我们讨论了面料是否有褶皱或情绪分析之后,这些公司的相关人员往往会停下来问,‘那么,还有什么呢?’机器学习还能实现哪些其他功能,以及它将发现哪些未知数?我们大概还有10到15年的时间,才会对这一切感到无聊。
本文来自: 36氪