Jeopardy, IBM 和 Wolfram|Alpha
近一期的时代杂志讲 Singularity,据说人类到 2045 年将进入半电子人时代,电脑获得意识,人类开始衰亡。怀疑的人也有,但半月前,IBM 开发的 Watson 系统在 Jeopardy!(一译《危险边缘》)中战胜人类对手似乎加剧了人们对机器的预期,引得雀跃或焦虑。本文写在 Jeopardy! 开赛前,Stephen Wolfram 谈论 Wolfram|Alpha 和 Watson 之间的差异,以及,在该领域做过的分析和经验。
大约在 Wolfram|Alpha 上线一个月前,我和 IBM 的某个团队通过一次电话,我谈了谈 Wolfram|Alpha 在知识计算中的远景。几周之后,这个团队宣布,他们将利用在自然语言处理方面的积累,试着开发一个能在 Jeopardy 中 PK 的系统。
当时觉得用这样的方式来展示工作成绩真是不错,何况还可凸显一下 IBM 的综合实力。现在,一年半过去,Jeopardy 开赛在即,IBM 赚到了足够的眼球。不管结果如何(IBM 理应赢得比赛),一件事情是确定的:IBM 所做的将会改变人们对人机交互的认知。
Wolfram|Alpha 发布那会,人们总认为它是一个「新的搜索引擎」——因为在大尺度上的信息搜索,人类掌握的基本上也只有关键字搜索这一项,但是 IBM 的计划显示了另一种绝佳的方案:问题回答。而当人们熟悉了这种模式,便会更清楚的了解 Wolfram|Alpha 的潜能。
那么,Wolfram|Alpha 和 IBM Watson 到底有什么关系?
Watson 采用的基本方法由来已久,和搜索引擎使用的信息检索机制一脉相承:先从文本文档入手,然后以统计学方法构建一个系统,将提问和文档中的回答联系在一起。(首先是寻找符合问题的文本 —— 使用同义词或其他语言转换方法。难点是找出一系列可能符合提问的回答,然后用各种不同的办法为其赋值,最后将得分最高的那个作为答案)
这种方法可以追溯到 50 年前,人们刚开始研究人工智能的时候。之后的时月,这项领域不断获得进展 —— 特别是,记录在近 20 年的 TREC 会议的问答竞赛环节中。IBM Watson 虽然沿用旧法,但是系统工程更为复杂,功能更专一。
(但)Wolfram|Alpha 是完全不同,更为激进的一个东西,它所采用的范式也已不同。原因是 Wolfram|Alpha 不处理文档,或任何源自文档的东西,它直接处理原始的精确的,可计算的知识。它的内核不是统计上的文本,而是知识真实的显现。
Wolfram|Alpha 可以接受以自然语言输入的问题,不过,它会把自然语言转化成一个精确的,可用于计算的内部格式,接着运用这个格式,通过知识计算获取答案。
需要许多技术和新的想法才能构筑这个系统,老实说,在研发 Wolfram|Alpha 之时我并不确定这项目标是否能够达成,但经过多年艰辛和突破,它运转顺利,我也很开心。现在 Wolfram|Alpha 每日回答成千上万的问题,涉及海量话题。
某种意义上说 Wolfram|Alpha 完全理解问题的含义,它不是用统计学办法配对答案,答案是根据它所掌握的知识计算出来的、,并且,许多答案都是全新的:从未存在,或被人类记载。
IBM 的方法,主要的工作是根据 Jeopardy 的规则完善统计上的配对流程,并针对特殊情况,加入一些处理的办法。
对 Wolfram|Alpha 来说,最重要的工作是为系统增加可计算的知识。保存数据、连接实时信息,注入专门行业的知识,部署可用于计算的算法 —— 并构建通用语法,分析来自外界的自然语言。
在开发 Wolfram|Alpha 的过程中,我们逐步构建其在不同领域的知识,先解决简短,在实践中重要的问题。这和挑战 Jeopardy 所需的全然不同,也意味着我们的路途和 IBM 的差异。假以时日,毫无疑问 Wolfram|Alpha 能够在 Jeopardy 中一搏,虽然达成方式会和 IBM 完全不同,但那不是我们今日的目标。
(现在,Wolfram|Alpha 大约知道 Jeopardy 提问中 75% 的内容,我觉得不算太差,虽然离我们真正达成的目标还很远。)
过去的几周以来,我对这项计划所涉及的技术怀抱好奇。不如彻底忘记 Wolfram|Alpha 一会儿,想想看,挑战 Jeopardy 用什么办法最显著?
用一个简单而且古老的搜索引擎怎么样?输入 Jeopardy 的一些线索,然后看看哪些文档符合要求。嗯,为了好玩,我们做了一次测试。随机导入 20 万条 Jeopardy 线索(问题),接着把这些问题输入搜索引擎,然后看看(a)正确的答案是否出现在搜索结果页的标题或预览部位,(b)看看正确答案出现在搜索结果页首页的比例。当然,我们在操作中删除了那些专谈 Jeopardy 的站点。
于此,大概可以了解现代搜索引擎的图景了。这些数据告诉我们,越先进的搜索引擎,原始结果和最终结果就越相同,那么这说明,用户体验的其他方面有可能变得更为重要(例如 Wolfram|Alpha integration)。
在处理 Jeopardy 问题上,搜索引擎的表现力予人深刻印象,当然,这种办法并不完整:它只给出了可能的结果,并没有告诉真正的回答。也可以用几种简单的技巧推进这个办法,例如从首页标题中获得回答 —— 优秀的搜索引擎的成功率约是 20%。
显然,必需要做额外的工作才能在 Jeopardy 中亮相,这就是 IBM 所做的。
那么 Watson 意义是什么?它只是另一个像是人工智能的东西,仅做计算就能实现。(因此,可认为是计算等价原理的另一个证据)
但在一个更实际的层面,它和 IBM 有史以来的业务核心不谋而合:处理企业和其他组织的内部数据。
有两种典型的的企业数据:结构化的(通常是数值,在未来将可以自动获取),和非结构化的(通常是文本或图形)。IBM Jeopardy 的方法是从非结构化的文本数据中获取答案 —— 潜在的关联应用可能是挖掘医疗或专利文档,或者在诉讼阶段做电子化搜寻。近些年来,搜索引擎也被广泛在这些工作中 —— 那么通过 Jeopardy 计划,IBM 成为了自然语言处理大军中的一员。
谈到处理结构化的企业数据,Jeopardy 使用的方法关联度不大,在该领域已存在一个庞大的工业集团 —— 帮助人们用结构化的方式研究结构化的数据。
正是在这个领域,Wolfram|Alpha 做出了显著的突破:首次以完全自由的非结构化方式发掘结构化的数据。例如将企业用的数据输入到订制版的 Wolfram|Alpha,然后便可接受自然语言输入,通过算法获得结果,并生成完整的报告。
那么,Wolfram|Alpha 和 Watson 之间如何协作?虽然现在还谈不上,但是如果未来诞生了 Watson 2.0,最好是能调用 Wolfram|Alpha 的 API。IBM 显然已经使用了一定数量的结构化数据和规则给备选答案赋值。但我们发现,在自然语言处理的过程中仍有许多可为之处。特别当涉及到回答多种多样的问题时,就需要 Wolfram|Alpha 的计算办法。
另一方面,对于 Wolfram|Alpha 中的数据,我们专注在可定义的结构化数据源,但有时候,你没有选择,只能试着从非结构化的文本数据源中提取结构化的数据。以我们的经验,总有一个不可靠的过程(最高可以达到 80% 的准确率)—— 迄今为止,我们只是积累数据,以供后续研究。但也许通过 Watson 采用的办法,能够获得大量以概览计的备选回答——便可作为 Wolfram|Alpha 计算知识引擎的一部分。
未来可期,但现在,我盼望着 IBM 在 Jeopardy 的表现。
IBM 在重要的研发上有其悠久和独特的历史——一些令人失望的小公司时至今日也不会反对的。我在 IBM Research 有几位朋友(难过的是,一些已离世),IBM 作为一个公司有许多的地方值得尊重。很高兴在这样的比赛中看到 IBM 身影,这个领域又是我所喜欢的。
好运,Watson,我为你加油。