智力测试体现了怎样的人工智能思想?
在1950发表的一篇著名论文《计算机械与智能》中,数学家艾伦·图灵详细讨论了“机器可以拥有智能吗?”问题。有趣的是,作为计算机科学和人工智能领域的先驱,图灵成功定义了什么是机器,却无法定义什么是智能。为此,图灵设计了一个叫做图灵测试的实验。图灵测试的核心思想是要求计算机在没有直接身体接触的情况下接受人类的询问,并尽可能伪装成人类。如果“足够多”的询问者在“足够长的时间”内,不能以“足够高”的准确度区分出被采访者是机器还是人类,我们就认为计算机通过了图灵测试。图灵将自己设计的测试视为人工智能的充分条件,主张通过图灵测试的计算机应被视为具有智能。
在运算方面,图灵在他的原始论文中是这样定义图灵测试的[2]:
”我们把下面的问题称为“模仿游戏”。游戏的参与者包括一个男人、一个女人和一个任何性别的审问者。提问者和另外两个人待在不同的房间,通过打字的方式和他们交流,保证提问者无法通过声音和笔迹来区分他们。两个被采访者分别用X和Y表示。提问者只是事先知道X和Y中只有一个女性,询问的目标是正确区分X和Y中哪个是女性。另一方面,X和Y两个受访者的目标是试图让受访者认为自己是女性。换句话说,男性面试者需要伪装成女性,而女性面试者需要努力证明自己。现在我们来问:如果把模仿游戏中的男性受访者换成电脑会怎么样?与人类男性相比,计算机是否会让审讯者更容易出现误判?”
有几个细节值得注意,很大程度上决定了图灵测试的有效性。
(1)首先,图灵测试中提问者和受访者的日常聊天并不普通,提问者的提问是针对身份认同的。这种情况下,提问者一般不会花时间聊天、闲聊,而是会开门见山地说:“为了证明你的身份,请配合我回答以下问题……”。事实上,目前网络聊天机器人有时会混淆真假,往往会采取在用户不知情的情况下,试图将对话引向不具有歧视性的话题的策略(比如“说说你自己”)。
(2)其次,人类受访者参与图灵测试是必不可少的。她是为了防止计算机采取“消极自认证”的策略而存在的,比如拒绝直接回答问题或者回避回答不相关的问题,就像一个真正不合作的人一样。在这种情况下,另一个积极作证的人类受访者可以确保讯问者总是有足够的信息来做出判断。类似的情况也适用于计算机试图模仿“特殊人类”的时候,比如蹒跚学步的孩子或者神志不清的病人。
(3)另外,图灵测试的原理是提问的交互方式本身不能揭示被采访者的身体特征。在图灵的时代,这几乎只能完全通过基于文本的自然语言来完成,所以图灵限制了双方基于打字的交流。但在多媒体技术发展的今天,视频、音频、图片等“虚拟内容”都可以通过计算机以非物理接触的形式呈现出来(这当然是图灵在60年前无法预料的!)。因此,允许审讯者使用多媒体内容作为辅助材料进行提问(比如“请告诉我这个视频的笑话在哪里”),似乎是对图灵测试原始定义的一个自然合理的补充。
(4)最后,今天普遍理解的图灵测试,不再严格区分人类参与者的性别。通常,我们允许人类受访者是任何性别,并且询问者的目标变成识别哪个受访者是人类。
此外,要完成一个具体的图灵测试,还要注意很多操作细节,比如多少人参与测试才算“足够”,多长时间的讯问才算“足够长”,多高的识别准确率才算“足够高”,如何挑选人类的讯问者和被讯问者来代表“人类”的识别和自证能力等。由于图灵测试的巨大影响力,几十年来人们一直试图挑战它,时不时会有“某个计算机程序成功通过图灵测试”的消息。我认为对于意义深远的实验,我们应该格外谨慎。只有在仔细检查了上述内容和其他重要细节之后,我们才能对结果的有效性做出正确的判断。像几年前的超光速实验这样的闹剧,应该尽量避免。
图灵测试和人工智能有什么关系?
如果有一天机器真的通过了图灵测试,意味着什么?这个问题涉及到图灵测试和人工智能的关系。的确,几乎所有关于人工智能的书都会谈到图灵测试,但有一个经常被误解的地方是,图灵测试是作为人工智能的一个充分条件提出来的,它没有也从未试图定义智能的范畴。图灵在他的论文中写得很清楚:
“机器能有智能吗?为了回答这个问题,我们首先要定义‘机器’和‘智能’。一种可能是按照大多数普通人的日常理解来定义这两个概念,但这样做是危险的。.....这里不打算定义这两个概念,转到另一个问题,这个问题与原问题密切相关,可以表达得更清楚。......(图灵测试的描述)...有人可能会说,这个测试对机器来说太严格了——毕竟人类不可能反过来伪装成机器,只能通过检查运算的速度和准确性。被认为具有智能的机器就不能和人类有所不同吗?这是一个强烈的反对意见,但至少在任何情况下,如果我们有能力建造一台能够成功通过测试的机器,就没有必要担心这个反对意见。”
图1:智能行为和人类行为的关系
有了集合的概念,我们就更容易理解图灵测试和人工智能的关系。如图1所示,对应于“所有智能行为”的集合和对应于“所有人类行为”的集合既有交集又有区别。有一些智能行为是人类自己做不到的(比如计算白棋会不会赢),但无论如何人类都被认为是智能的,所以如果能在各方面都达到“人类水平”,也就是完成两套的交集,就应该被认为是“智能的”。另一方面,人类的行为并不总是与智力有关。图灵测试要求机器完全模拟“人类的所有行为”,既包括两个集合的交集,也包括人类的“非智能”行为,所以通过图灵测试是“拥有智能”的有效充分条件。
图灵本人对机器能通过他的测试相当乐观。他大胆预言“到2000年,一台1GB内存或大小相近的计算机,能使普通人被质疑5分钟后的正确判断率不超过70%”。然而,直到今天,2014,还没有一台机器被认为通过了图灵测试。有趣的是,这次失败给我们带来了一个熟悉的应用——图形验证码。(每次输入验证码都是图灵测试!)
图灵测试进展缓慢,与人工智能界对图灵测试这个“充分条件”的研究热情不高有关。[5]这部分是由于主流人工智能研究和图灵测试所追求的目标不同,也是因为图灵测试本身就很难。让我们通过人工智能研究的三个重要特征,进一步讨论图灵测试和人工智能的异同,以及为什么图灵测试不太可能在短时间内得到解决。
第一,主流人工智能研究关注的是智能体的外部行为,而不是产生这种行为的内部过程。
在这方面,图灵测试的思路和人工智能是完全一致的。只关注外在行为是典型的功能主义/行为主义风格。其实也是人工智能经常被外界诟病的地方。“主观思维”的严格定义要求代理人具有自我意识。但一方面,严格来说,我们并不真正确定是否有客观证据证明“意识”的存在。更重要的是,人们发现智能行为和主观思维可以被认为是两个独立的问题,它们并不一定是交织在一起的。具体来说,可以从数学上证明,任何数字计算机的行为都可以通过查表来机械模拟。假设我们真的制造了一台有意识的机器A,我们总是可以通过查表的方式,让另一台机器B机械地模拟A的内部运作。问题是B是否有意识?如果每一个有意识的机器都可以被一个像B一样有机械查找表的机器模拟,那么我们就无法判断一个机器是真的在内部思考还是只是通过外部行为模拟思考的过程。[6]因此,它是否具有意识,从行为主义的角度来看,成了一个相对独立的“另一个问题”。同时,“有意识的机器总能被无意识的机器模拟出来”也说明了“拥有意识”并不能给机器带来额外的“行为能力”,这进一步降低了“拥有意识”在行为主义者眼中的重要性。
基于外部行为与主观思维之间的独立性,主流人工智能研究和图灵测试以外部行为的实现为唯一目标,这种观点被称为弱人工智能观。我们知道,每一门学科的研究都是建立在一个“基本假设”之上的。比如,支持物理研究的基本假设是“一切事物都受一套普遍的、永恒的规律约束”,物理研究的目的“只是”找出这套规律是什么。同样,“弱AI假说”认为,设计良好的计算机可以表现出不低于人类智能水平的外部智能行为。可以说,主流的人工智能研究都是基于弱人工智能的假设,研究如何实现这样的计算机。
图3:“机械查找表”的机器——席勒的“中文房”实验
第二,主流人工智能研究的重点是如何模拟人类的纯智力活动,而不是所有的脑力活动。
如前所述,人的心理过程不仅包括智力,还具有情感、审美能力、人格缺陷、社会文化习惯等一系列“非智力特征”。因为图灵测试的模仿对象是普通人,实际上它对这些非智力特征的要求甚至可能高于对纯智力的要求——作为一个普通人,他/她可能对象棋一无所知,但从照片上分辨不出美女/帅哥的可能性不大。
当然,“非智能特征”的引入本身并不妨碍图灵测试成为一个有效充分条件,但除非我们假设所有这些“非智能特征”都是拥有智能后的必然产物,否则我们不得不承认,图灵测试确实给机器智能的核心问题增加了太多具有挑战性但相关性较小的因素。正如经典教材《人工智能》所写,“航空领域努力制造性能良好的飞机,而不是让它们像鸽子一样飞,以便愚弄其他鸽子。”人工智能研究确实应该更多地关注与智力活动相关的抽象功能和一般原理。
第三,人工智能的终极目标是能够全面适应“人类环境”的单个智能体,而不是解决特定数学问题的算法。
在这一点上,图灵测试和人工智能研究的终极目标是一致的,但是现有的人工智能水平离这个目标还很远。事实上,“全面模拟人类的智力活动”正是人工智能区别于计算机科学其他分支的地方。我们通过比较人工智能软件和传统软件来说明这一点。首先,从最广义的角度来看,传统软件也应该属于人工智能的范畴:事实上,很多早期的计算机科学家,比如图灵,他们对计算机科学的研究都是以人工智能为驱动力开始的。所谓“计算”,本来就是人类众多智能活动中的一种。一个从未接触过计算机的人可能很难分辨出哪个更有资格代表“智能”(前者属于传统的软件范畴,后者属于传统的人工智能范畴):“从一个序列中找到所有的质数”和“从一张照片中找到一只狗”。另一方面,传统软件并不能代表人工智能的全部内涵。粗略来说,我们可以认为传统软件对应的就是这样一种“计算问题”。它们的相似之处在于问题本身是用一种算法(或非结构化的数学描述)来描述的,对它们的研究主要集中在如何找到更好的算法。【7】我们称之为“人工智能问题”的问题,可以理解为另一种“计算问题”。它们的共同特点是无法用算法或数学精确定义。这些问题的“正确答案”本质上取决于我们对这类问题的反应。对于人工智能问题,我们可以基于数学模型或计算模型来设计算法,但问题的本质不是数学的。
人工通用智能基于弱人工智能的假设,旨在全面模拟人类所有的智能行为。注意,图灵测试作为一个充分条件,在真正实现通用人工智能之前是无法求解的。另一方面,可以说现有的每一个AI分支的成功都是通过图灵测试的必要条件,而且大部分还没有达到“人类水平”。因为我们无法穷尽人类所有的智能行为,所以必须依靠有限数量的普适模型和算法来实现普适智能。目前,人们只能基于一些简单初级的模型来设计学习、推理和规划算法。默认情况下,这些AI分支的研究都是基于自身领域问题的弱人工智能假设,而支撑这些分领域研究的动力往往是其巨大的社会实用价值。虽然他们在很多具体的应用领域都取得了很大的成就,但似乎仍远没有达到图灵测试所要求的水平。