词向量-不过是AI在玩20个问题——《人工智能商》书摘
今天推荐一本书,英文名是:AIQ How Artificial Intelligence Works And How We Can Harness Its Power For A Better World。这本书讲述的绝不仅仅是人工智能的含义、来源、原理,更重要的是它们在日常生活中的重要价值和意义。这些都是构成你“AIQ”的基本要素,也是人工智能时代的使用说明书。
以下来自该书第四章,经出版社授权发布,是小编看过的对词向量的原理及应用最通俗,最有趣的讲解:
×××××××××××××××××××××××××××××××××××××××××××××
通过 20 问将词语转化成数字是很容易的。现在,让我们对规则做三处改动—以便使它更加接近人工智能必须使用的游戏,同时使我们得到的词语向量拥有尽可能丰富的意义。
第一处规则改动:**结果不是简单的输赢。相反,你会得到“语义接近性”分数,即你与词语内在含义的接近程度。**我们不要去追究“接近”的具体含义。在人工智能领域,有一个详细的数学答案,你只需要把你知道的最具公平思想的人想象成裁判。
例如,假设答案是“熊”:如果你的最终答案是熊,你会得到 100 分。 如果你猜的是狗或狼獾,你可能会得到 90 分。从生物演化史来看,你很接近。如果你猜的是蚊子,你可能会得到 50 分。至少,你猜的是另一种动物。 如果你猜的是止咳糖浆,你会得到 2 分。你差得很远,但咳嗽可能会以某种微妙的方式使你想起咆哮的熊。
这种记分方式与现实中大多数自然语言处理系统的设计要求类似。例如,如果你将约翰·菲茨杰拉德·肯尼迪所说的“Ich bin ein Berliner”翻译成“我是德国人”,你就错了,但这比“我是可颂甜甜圈”更加接近正确答案。
第二处规则改动是,**每个答案不是简单的是或否,而是 0(完全不是)和 1(完全是)之间的数字。**以“它是熊吗”为例。对于真正的活熊,你的回答是 1。 对于帕丁顿熊这种会说话的熊,你可能会回答 0.9。它虽然也是熊,但不是实际存在的熊。对于斯克鲁奇,你可能会回答 0.65。他并不是熊,但他拥有类似于熊的强烈倾向。(在《圣诞颂歌》中,弗雷德的家人甚至抱怨说,“‘它是熊吗’的回答应该是‘是’,因为否定的回答足以使他们排除斯克鲁奇先生。”) 对于拉斐尔·纳达尔,你可能会回答 0.2。他在电视上看起来很可爱,一点也不像熊,但他是活的,而且经常发出咕噜声。
根据这种规则变化,我们有了由连续数值组成的词语向量—每个问题的答案是 0 到 1,而不是 0 或 1。答案是灰色的,而不是非黑即白的。下面是最大的规则改动:你必须在每次游戏中提出相同的问题。这一定会使你的下一次维多利亚式客厅游戏变得索然无味,因为它将每一次 20 问游戏变成了人口普查游戏,就像填写枯燥而重复的调查表格一样。
不过,请把疑虑放在一边。试着提出将“斯克鲁奇”“螺丝刀”“烧烤”“篮球”“红细胞”“认识论”等所有词语相区别的足够宽广丰富的问题。不容易,对吧?不过,这就是人工智能自然语言模型的工作方式。警告:我们需要的问题远远不止 20 个,因为我们不能根据前面的回答调整后面的问题。所以,在人工智能领域,我们玩的是 300问游戏。我们不会直接介绍应该提出哪些问题。相反,让我们说说过程。
你的第一想法可能是采用委员会形式:将一些聪明人聚集在一个房间里,告诉他们,只有提出 300 个能够为所有英文单词和短语提供独特编码的问题,他们才能离开。这可能是类似于生态馆的社会学趣味实验。不过,如果你认为这种方法可能有效,那么你对委员会的信心可比我们大多了。至少,这需要很长很长时间。在用手机订比萨饼时,我们可不希望征求某个委员会的意见。于是,我们只剩下了一个制定问题的良好途径:让算法选择。
算法能提出怎样的问题呢?关于意义的问题是不行的,因为机器不理解意义。不过,它们理解词语协同位置统计学—即在人类写出的真实语句中,哪些词语倾向于和哪些词语共同出现。这些统计数字是极好的意义替代品。下面是这种问题的一个例子:“提取含有‘炸薯条’‘番茄酱’或‘面包’的所有句子。该词语是否同样频繁地出现在这些句子中?”
当然,这是神经网络在新一集《老友记》中可能让罗斯提出的那种问题。重要的是,它也是机器可以提出和回答的问题,因为它不需要理解,只需要统计。当然,如果你只能提出 300 个问题,那么上面这个问题就太狭隘了。不过,基本假设—提出关于词语协同位置统计学的问题—是合理的。我们在此忽略了许多细节,但这就是词语转向量模型的基本原理。
通过试错,它可以学习 300 组良好的探测词(类似于上面例子中的“面包”和“番茄酱”)。接着,**它不断重复 300问游戏,根据英语中每个单词或短语与探测词的协同位置统计数据得到它的词语向量。**得到的词语向量可以排成矩阵,一行一个词语,就像几页前的“斯克鲁奇”和“小蒂姆”一样。这是一个巨大的矩阵,拥有 300 列和几百万行。在下一页,我们给出了一个 4 列和 40 行的子集,以便让你感受一下算法学会提出的问题。
例如,在第一列,我们看到“路由器”“像素”“防火墙”等词语,它们对于问题一的答案非常接近 1。显然,算法学会了提出“这个词语是否倾向于出现在拥有计算机词语的句子中”这样的问题。a(别忘了,根据我们修改后的规则,1 表示“完全是”,0 表示“完全不是”。)类似地,在第三列,我们看到“烘焙”“熏”“牛肉”“烤”等词语,它们的答案都很接近 1。
算法一定学会了提出关于用火烹饪的问题。它还学会了提出关于大学和犯罪法律的问题—在表格没有显示的其他列中,它还学会了提出关于动物、政治、体育、健康以及其他数百个主题的问题。**应用词语向量这种策略带来了极为微妙的语言画面。**人工智能研究人员甚至喜欢用一个小把戏炫耀词语向量的丰富性:仅仅通过加减法回答SAT 式类比问题。
例如,考虑类比“男人之于国王,正如女人之于—?”如何将这个类比表述为适合用词语向量算术描述的数学问题?下面是答案。提取“国王”一词的向量,然后减去“男人”一词的向量。(我们可以像加减数字一样加减向量,因为向量是由数字组成的。)直观来看,通过从“国王”中减掉“男人”,我们剥夺了a ,当然,算法不知道这个问题“与计算机有关”。
它只知道这个问题与涉及其他词语的协同位置统计量有关,而我们作为人类可以将这些词语解释成与计算机有关。国王”一词的男性成分,得到了一个可能表示中性王室概念的新向量。现在,用这个新向量加上“女人”一词的向量,从而在数学上重新引入性别成分—这次是女性成分。换句话说,就是取出“国王”一词,将其变成女性。用算术来表述,就是“国王 - 男人 + 女人”。词语转向量模型的答案正是如此:如果你真的进行这种算术,你就会得到“女王”的词语向量。其他类比也是一样的道理,也是使用加减法。
各国首都:伦敦 - 英国 + 意大利。词语转向量模型的答案:“罗马”。词语时态:captured- capture+ go。词语转向量模型的答案:“went”。 哪个冰球球队在哪个城市比赛:加拿大人 - 蒙特利尔 + 多伦多。词语转向量模型的答案:“枫叶”。实际上,词语转向量模型已经学会了只用 SAT 数学考试技能参加 SAT 词语考试。**它的基本模型完全不了解君主制、性别、地理、语法、曲棍球或者关于现实世界的任何事情。**它只知道通过训练数据获取的词语使用统计性质,以及概率规则。
这可能是一个小把戏,或者只是程序员的高级消遣,但它也突显了一个重要事实:当你将词语转化成向量时,你可以用数学方法处理它们。这对于打造人工智能语言系统非常重要。计算机不理解词语,但它们理解数学。以语音识别软件为例,比如支持亚历克莎或谷歌语音的那种软件。词语向量在这里的帮助很大,因为它们可以将语句的上下文编码为计算机能够处理的数学语言。例如,它们可以为“rows”和“rose”等同音异义词语提供重要的区分信息。
虽然这些词语听上去是相同的,但它们拥有不同的词语向量—即在人工智能版大型 20问游戏中拥有不同的答案—在任何特定语句中,其中一个向量通常更适合周围词语的向量。当然,“更适合”的含义非常复杂,这里就不详加论述了。它涉及向量算术的复杂计算,可以在语音信息存在歧义时提供解决问题的概率,比如:
或者
或者
词语向量从数学上清晰描述了在人类倾听者看来非常简单的事情:有时一个词语更适合上下文,有时另一个词语更适合上下文。通过一些适用于特定任务的重要修改,同样的基本数学模型可以驱动机器翻译、聊天机器人、语音搜索系统……甚至是可以撰写棒球报道的神经网络。
人机交谈
我们希望你已经理解了使我们走到今天的一些重要思想。现在,机器使用语言的能力显然已经超出了临界点。这种改善是由高速计算机和巧妙的算法驱动的,比如神经网络和词语转向量模型。更重要的是,它也是由数据—我们的数据—驱动的。会讲话的机器不会使我们获得某种新的语言天赋。它们只是反映了我们自己的语言。未来将会如何?我们当然不知道,但我们知道一些可能的趋势。
首先,**语言模型将会得到个性化。**你周围的机器将会适应你的表达方式,就像它们适应你的观影偏好一样。因此,它们可以更好地理解你。例如,考虑苹果手机的历史轨迹。要想使用苹果 6,你需要让它知道你的指纹。要想使用苹果 X,你需要让它了解你的脸。
不难想象,对于未来的苹果手机,你首先需要讲一段睡前故事,让它知道你的声音。其次,要想通过这些新的自然语言处理工具获益,同时不让它们用于毁灭性目的,我们必须制定良好的政策和深思熟虑的法规。能够编写《老友记》剧本的算法看上去很可爱,但是没有什么用处。
当某人在选举期间用同样的算法在网上散布假新闻时,这个算法看上去就更加危险了。虽然我们本质上是乐观派,但我们不是政策专家,不知道这种问题的正确答案。不过,我们知道,这些问题本身需要得到讨论。从火焰到基因剪接,在每一项新技术的历史发展中,总会有那么一个时刻,“快速前进和披荆斩棘”对于成年人来说不再是一个合乎道德的观点。
对于计算机和语言,这个时刻已经到来。**不过,即使我们意识到潜在缺陷,我们也不要忘记优点。**如果你认为我们今天已经有了更聪明的自然语言处理算法和很大的数据集,那么你还没有看到全部。想一想,数亿人正在通过语音在手机上编辑电子邮件,或者使用谷歌翻译,或者与脸书和微信上的机器人交谈。每一次交流都会导致更丰富的模型和更好的性能,因为这些机器只是在利用我们留在身后的数据轨迹。随着它们的改进,它们还有许多改进空间—这些机器应该会成为各行各业和日常生活中的常用工具。
如果愿意,你可以称我们为盲目的技术乐观派,但我们认为这很神奇。我们不愿意让任何人进行重复劳动—至少在发达国家,许多重复劳动具有机械性质,会使我们久坐并患病。为什么医生需要每天花费几个小时输入数据?为什么盲人需要被迫使用布莱叶键盘?为什么律师需要每人花费数百个小时查找数百万页文件?为什么上班族必须花费几十年的生命输入电子邮件?为什么欧盟每年需要花费几亿欧元将一切文本翻译成 23 种官方语言?为什么你必须愚蠢地用手指向手机发布命令?你见过航空公司登机台使用的计算机吗?我们不想让别人亲自吸走地板上的灰尘,或者为你的收件箱过滤垃圾邮件。我们可以用吸尘器和算法完成这些任务。那么,输入又有什么区别呢?
×××××××××××××××××××××××××××××××××××××××××××××
7个故事让你读懂人工智能时代的底层逻辑Netflix称霸影音产业的创新商业模式“个性化推荐”,源自“二战”流亡数学家为拯救无数飞行员而发明的“生存推荐系统”;“宇宙有多大?”这一流传数千年的大哉问,与“机器学习”大有关联;实时监控系统诞生自牛顿最严重的一次“数学错误”……7个故事带你认知人工智能时代的底层逻辑。
以下内容来自本书序言:
**不管你考察人工智能的哪些方面,你都会找到一个被人们长期研究过的思想。**所以,从各方面来看,最大的历史谜团不是人工智能为什么会在今天出现,而是它为什么没有在很久以前出现。要想解释这个谜团,我们必须考虑将这些宝贵思想带入新时代的三个强大的技术力量。
**第一个使人工智能成为可能的力量是计算机长达几十年的指数增长速度,通常被称为摩尔定律。**你很难直观地理解计算机目前的速度有多快。过去的常见说法是,阿波罗宇航员登陆月球时使用的计算能力还比不上一只袖珍计算器。不过,这种说法已经无法使人产生共鸣了,因为……袖珍计算器是什么东西?所以,让我们用汽车来类比。1951 年,尤尼瓦克是速度最快的计算机之一,每秒可以进行 2000 次计算,而速度最快的汽车之一阿尔法罗密欧 6C 的时速可达 180 公里。之后,汽车和计算机都在提速。不过,如果汽车能像计算机那样提速,那么现代阿尔法罗密欧的速度将达到光速的800 万倍。
人工智能的第二个助推器是新的摩尔定律:**随着人类所有信息的数字化,可用数据量出现了爆炸式增长。**美国国会图书馆拥有10 太字节的存储量,但是谷歌、苹果、脸书、亚马逊四大科技公司 2013 年一年收集的数据就是这个数字的大约 12 万倍。而且,从互联网视角来看,这已经是上一代的事情了。数据积累的加速节奏比阿波罗火箭还要快。2017 年,YouTube 每分钟上传的视频超过300 小时,Instagram 每天贴出的照片超过 1 亿张。更多的数据意味着更聪明的算法。
第三个支撑人工智能的因素是云计算。消费者几乎看不到这种趋势,但它对人工智能产生了巨大的民主化影响。为说明这一点,我们要对数据和石油进行类比。假设 20 世纪早期的所有公司都拥有一些石油,但是它们需要独自建设基础设施,以便开采、运输和提炼石油。如果一家公司有了利用石油的新思想,它需要面对巨大的固定起步成本。因此,大多数石油都不会得到使用。同样的逻辑也适用于数据,即 21 世纪的石油。如果用自己的数据打造人工智能系统需要购买所有的装备和专业人才,大多数爱好者和小公司都会面对难以负担的成本。不过,微软 Azure、IBM 和亚马逊 WebServices 等平台提供的云计算资源将这种固定成本转化成了可变成本,极大地改变了大规模数据存储和分析的支出比重。今天,任何想要使用个人“石油”的人都可以租用其他人的基础设施,以降低成本。
当你将这四种趋势 — 更快的芯片、大量数据、云计算以及最重要的优秀思想 — 放在一起时,用人工智能解决实际问题的需求和能力就会出现爆炸式增长。