首页 >> 漫画 >> 计算机科学 >> 文章

图灵测试,测的到底是什么?Comments>>

发表于 2014-06-10 15:57 | Tags 标签:,

2014年6月7日发生了一件事情:聊天程序“尤金·古斯特曼”(Eugene Goostman)在英国皇家学会举行的2014图灵测试大会上冒充一个13岁乌克兰男孩而骗过了33%的评委,从而按照图灵当初的定义,“通过”了图灵测试。

wpid-1vOvRIhUFpYqqct4Go2BtECzv4We5DH4ptF8rQrU229YAgAAUgEAAEpQ-2014-06-10-15-57.jpg

尤金的在线对话页面,不幸的是因为这一事件给服务器带来的压力,该网站已经几天无法访问了……

但是,通过了测试又怎么样呢?说明了什么问题呢?

图灵测试

1950年,阿兰·图灵在那篇名垂青史的论文《计算机械与智力》的开篇说:“我建议大家考虑这个问题:‘机器能思考吗?’”但是由于我们很难精确地定义思考,所以图灵提出了他所谓的“模仿游戏”:

一场正常的模仿游戏有ABC三人参与,A是男性,B是女性,两人坐在房间里;C是房间外的裁判,他的任务是要判断出这两人谁是男性谁是女性。但是男方是带着任务来的:他要欺骗裁判,让裁判做出错误的判断。

那么,图灵问:“如果一台机器取代了这个游戏里的男方的地位,会发生什么?”这台机器骗过审问者的概率会比人类男女参加时更高吗?这个问题取代了我们原本的问题:‘机器能否思考?’”而这,就是图灵测试的本体。

wpid-ON95-0E3q7X_a9i6Y_z6HdmrNF2UBs5RBNMMHHsnnJDQAQAAEAEAAEpQ-2014-06-10-15-57.jpg

【图片来源:BBC】

……等等,那现在这帮人在搞的图灵测试又是什么啊。

其实你可能已经注意到了图灵的真正目的。不是说“思考”没法定义吗?没关系,我们不去纠缠哲学,我们来制造一个可操作的标准。如果这台机器“表现得”和一个思考的人类(人类是会思考的,对吧?)无法区分,那么我们就大可把它当做是在“思考”。

当然,有些方面机器很难表现得和人类一样,比如有血有肉——但是既然我们关注的是思考,那么就可以选择一个有代表性的领域,图灵选择的就是“模仿游戏”。

而到了1952年,在一场BBC广播中,图灵谈到了一个新的具体想法:让计算机来冒充人。如果足够多的裁判(图灵选择的数字是30%)误以为在和自己说话的是人而非计算机,那就算作成功了。

可以看到,图灵测试的核心其实不是“计算机能否和人对话”,而是“计算机能否在智力行为上表现得和人无法区分”。冒充异性和冒充人类都不过是特例而已。
不过这个1952年版的图灵测试在后世被发扬光大,成了今天我们所知的图灵测试的唯一方法。这就带来了一些问题。

中文屋子

图灵测试自诞生以来产生了巨大的影响力,不光有支持,也少不得批评。其中最重要的批评之一,可能是1980年约翰·塞尔在《心智、大脑和程序》一文中提到的中文屋子思想实验了。

塞尔说,想象他锁在一间屋子里,手动模拟一个巨大的AI程序,和外界进行中文的对话。这个程序据说是“懂中文”的——至少,能以中文通过图灵测试。屋子里除了一堆纸(塞尔的原话是“bits of paper”)上写着运算的规则之外,别无他物。(好吧,为了人道起见也许应当添加基本的维生设施……)

wpid-zSd2XLPpglPljxUtUZSn4aE3n13-4LaPSxEHwJBSyFnOAQAAFwEAAEpQ-2014-06-10-15-57.jpg

【图片来源:rationallyspeaking.blogspot.com】

塞尔不懂中文,在屋子里摆弄符号显然也无助于他习得中文,屋子里也没有别的东西理解中文了。如果塞尔不“理解”中文,那么塞尔加上这堆纸也不能说是“理解”中文吧!虽然屋子的中文水平足以骗过中文使用者,但没有任何实体真的“理解”发生了什么。

换言之,所谓的图灵测试也是没有用的,就算通过了它也不能表明计算机在思考。

但问题还不仅限于图灵测试,按照这个实验,一台电脑和塞尔一样,都是只能识别弯弯扭扭的“符号”,对这些汉字符号的意义一无所知。这也正是计算机程序的问题,不管它是硅基的还是塞尔基的。这等于是说有理解力的强AI根本不可能出现!

这个思想实验看起来一目了然,完美符合直觉,而且很迎合了不少人的愿望——证明人类心智是独一无二的天赐产物,人类造不出赝品来。不过话说在前头,我(遵循丹尼尔·丹内特等人的观点)认为它是错的。

其实塞尔当初在伯克利讲座上首次提出这个实验的时候,就有听众反对说,锁在屋子里的人可能不懂他在处理什么东西,但他只是整个系统的一部分啊,他还有规则书,有演算纸笔,有一堆汉字的数据库,凭什么一定要他理解、而不能让整个系统理解?

塞尔的回答是:

“这个想法认为虽然一个人不懂汉语,不知怎么的他和他的那一堆纸联合起来就能懂汉语。一个不深陷意识形态之中的人,怎么会认为这想法可信,还真有点难以想象啊。”

也许吧,但是,真的只有“一堆纸”?

直觉泵的旋钮

这种思想实验——用丹内特的话说叫“直觉泵”——有个共同的问题。它的确给出了一个直觉的结论,但是这结论是来自一个完整的详尽的思想实验,而不像普通的逻辑推理那样来自具体而明确的几个前提。如果这个实验的某个细节,某个你觉得无足轻重的细节,欺骗了你的直觉呢?

最有名的直觉泵大概是有轨电车问题(Trolley Problem),1967年由英国哲学家费丽帕·弗特提出。铁轨上有五个小孩在玩,停用的岔轨上有一个小孩在玩,你要把车转移到岔轨上压死一个孩子救下五个吗?这是一个非常典型的关于道德问题的直觉泵。但是千万不要以为这实验就能完整地代表你的道德立场——如果我换一个条件,那个岔轨没有停用,也在正常运行,只是这趟车正好不往那走呢?如果我再换一个条件,根本就没有岔轨,那个小孩就在你身边玩,你把他推下去就能让车停下救另外五个小孩呢?如果那一个小孩是你的亲人呢?如果根本没有小孩、只有你自己决定是否要自己跳下去呢?

wpid-fkcW_kcHCC7c_htidC8PCfkegv0_v4orWNueQ8TIKXSABwAAOAQAAEpQ_640x360-2014-06-10-15-57.jpg

【有轨电车问题已经成为了一个大领域,有无数的变体。图片来源:Workman Publishing】

对待直觉泵,这正是丹内特的建议:研究它的细节,看看每个细节如果发生了改变会不会影响到最后产出的那个直觉。用他的话说,是“转动直觉泵的旋钮”。
回到中文屋子。塞尔说,他在手动模拟一个程序的运行——但是他没有说他是在哪一个层级上模拟。如果外面的人输入了一串中文,比如“你好啊”,屋子里的人在做什么?他是在做机器码(将寄存器23945的内容加到寄存器93756上)?是在做源码(定义常数p,令p=100)?是在做伪代码(将句子拆分为名词、动词、代词和修饰词,判断其是否为一个问题)?有没有注释可看?如果他在顶层,那么他会不会对自己在做什么有所理解?如果他只是底层的一个计算器,那他之上的繁复层级真的可以用“一堆纸”来轻描淡写地概括吗?

设想这样一个问题:写下一个英文大写字母D,把它逆时针旋转90度,然后把它放在一个英文大写字母J的上面。请问这让你想到了什么样的天气?

一个顶层的塞尔(或者干脆就是一个懂中文的塞尔)的脑海中会浮现出D躺在J上的这个形状。一个底层的塞尔当然对此一无所知,但是他身为计算器所驱动的那个中文屋子要怎么回答这个问题?如果这个中文屋真的通过了图灵测试,它当然不会被这道题难倒——但是解这道题的唯一办法,就是照着它的指示,把D躺倒,放在J上,对比记忆库,判断出这个形状最接近于雨伞,根据雨伞联想到雨天。这是底层的塞尔所不知道但中文屋作为一个整体必须在它的“内存”中做的事情。而这件事情和一个懂中文的塞尔解题时的所思所想又有何区别呢?

但是,如果简单地用“一堆纸”这个人畜无害的词,轻描淡写地描述中文屋,你的直觉就被误导了。如果一个中文屋真的完美通过了图灵测试,真的和人无法区分,它在和裁判对话时的“思维”状态必须是和真人高度类似的。假如图灵测试的裁判决定用苏格拉底式方法教授对方量子物理学,那么一个底层的做算术的塞尔当然不会因此学会量子物理——但是中文屋却会(别忘了,它通过了图灵测试——它能在智力行为上表现得和人无法区分)。这就像是给中文屋安装了一个新程序,能执行简单的量子物理计算和模拟。在这种情况下,你还凭什么说,因为底层的人没有理解,所以这间屋子也不能理解呢?

不过上面的论证其实都有一个麻烦。这些说的都是理想的图灵测试,是1950年图灵给出的最原始形态。而2014年6月7日这个聊天程序通过的那个“图灵测试”,和1950年图灵心中的那个测试,并不完全是一回事。

聊天机器人的“图灵测试”

如果你刚才几部分的内容没忘光,可能还会记得,我们反复强调了图灵测试的准则是“计算机在智力行为上表现得和人无法区分”。

但是现实中真要测的话总得有规章,而英国皇家学会的测试规矩是,在一系列时长为5分钟的键盘对话中,某台计算机被误认为是人类的比例超过30%,那么这台计算机就被认为通过了图灵测试。尤金在2014年的成绩是在总计150场对话里骗过了30个评委里的10个,比两年前提高了4个百分点(所以严格来说,并不是发生了什么大突破,只是在改良的过程中跨越了一个武断的阈值)。

麻烦来了:尤金的设计思路并不是“一台在智力行为上表现得和人无法区分”的机器,而是一台“能够在5分钟长度对话内尽可能骗过人类”的机器。

经济学有个所谓的古德哈特定律:一项指标一旦成为政策制定的依据,便立刻不再有效。政策制定者会牺牲其他方面来强化这个指标,使得这个指标不再具有指示整体情况的作用。类似的道理勉强也可以套用到别的领域里。某种意义上尤金·古斯特曼就是例证——它不但是专门设计的聊天机器人、缺乏任何其他领域的智力能力,而且为了骗过人类,还被特意设定成一个13岁的非英语母语的小孩,以便在很多问题无法回答或者出现错误的时候,让裁判误以为这是因为它年龄小,而非因为它欠缺人性。

这恐怕并非图灵当初设想的人工智能形态。当然更不是科幻爱好者恐惧(或者盼望)的天网觉醒。

wpid-eqk42CAiGbU_hH11e0V9oY1sjsSq3TZl_drllMYXc6xAAQAAigEAAFBO-2014-06-10-15-57.png

【也许要这样的人工智能才更接近图灵的本意吧……图片来源:xkcd,汉化:Ent】

无论是尤金的编写者还是程序的组织者,对此倒也心知肚明。编写者弗拉基米尔·维西罗夫说,“我们希望能借此激发人们对人工智能与聊天机器人的兴趣。”而组织者凯文·沃里克说,计算机冒充人会带来网络安全的问题,“理解这类实时在线交流如何让人们对某些事信以为真并对他们造成影响,是非常重要的事情。”没有人真的提到图灵测试本来的那个意义——判断计算机是否在思考;因为这也的确不是本来的那个图灵测试。

有一些人认为现在的整个人工智能领域都背离了初衷,比如侯世达。另一些人则认为图灵测试根本是无聊和过时的,和AI没有关系。有些人觉得现在的人工智能思路毫无问题,假以时日就能做出好用的AI。还有一些人认为强AI根本就是不可实现的。作为一个旁观者,我肯定无力判断哪几种观点是对的,但从个人来说,我是真的希望能出现一个程序,以原本的意义通过图灵测试的最初版——不光是为了计算机和人工智能的进展,也是为了理解我们自身的大脑。说到底,要弄懂一台机器的运作方式,还有什么办法比拆开来再装回去更好的呢?

参考文献和扩展阅读

作为丹尼尔·丹内特的粉丝,我针对这个话题推荐《意识的解释》和《达尔文的危险思想》两本书。前者直接讨论了AI的问题,后者则从演化的角度讨论了我们人脑这个“AI”的诞生为何是可以想象的。但如果只想走马观花看看他的观点,《直觉泵及其他思考工具》很不错。

来自物理学角度针对AI的讨论则有彭罗斯的《皇帝新脑》,虽然我不太赞同他的观点,但他讲了很多有趣的东西。

如果你对侯世达的路线有兴趣,《集异璧》当然是必推的作品,他的后续作品同样值得一看。

关于

本文首发于果壳网《图灵测试,测的到底是什么?

0
为您推荐

19 Responses to “图灵测试,测的到底是什么?”

  1. yak様说道:

    要是一个程序利用人体本身的缺陷(比如催眠)来让人产生与人类对话的错觉,这算不算通过了图灵测试?

  2. 解劲松说道:

    由人来定义的人工智能,是否合理?这不是既当运动员,又当裁判员吗?这样的比较有意义吗?

  3. 香芋说道:

    我只是想知道网址……

  4. Proton说道:

    这到底是果壳复制松鼠会还是松鼠会复制果壳,为啥老是看到一样的……

  5. Antericol说道:

    Ent大神什么话题都能聊

  6. Peter说道:

    晕了

  7. 第一宙斯说道:

    智能就是用一系列的逻辑判断条件,对事物进行分析,并得出结论(不管对错),进而进行反应或动作的过程的描述。

    • 隐矢宇说道:

      +1,人脑同样也就不过是个系统罢了。

  8. 申成2011说道:

    hehe

  9. xiaoban说道:

    我觉得应该从人类自身开始研究,看看人是如何从不能思考的胚胎发展成能思考的人的。

    又或许根本就没有“智能”这种东西,人只是一个输入输出装置。
    一片大森林,也进行新陈代谢,也有应激性,也很复杂,也能影响周围的环境。他或许也在进行类似的思考:“if 狼多了,then 兔子少了”
    或者“if 降水少了 ,then我要多喝水”,然后他用树当吸管狠狠地吸吮了一下土地里的水。

    那森林有“智慧”吗?如果森林没有,那人也没有。

  10. Andy Lee说道:

    我刚刚想写这个主题……就发现你已经写过了……

  11. 铁心一伟说道:

    那个加分项不错:说服测试者,令他认为自己是电脑,嘻,嘻……

  12. 冰火梦幻说道:

    GEB确实是天下第一奇书。
    不过我不知道侯世达还有后续作品……