人工智能一直是科技发展最前沿的课题之一,全世界科学家都在努力赋予机器人工智能,为人类提供更好的服务。
但是,如何才能判断机器是否具有人工智能呢?为此,科学界有一个非常简单的测试方法,那就是图灵测试。下面小编就来给大家讲讲图灵测试是什么?图灵测试内容、过程、原理。一、图灵测试是什么
图灵测试最早出现在1950年图灵发表的一篇名为《计算机械和智能》(Computing Machinery and Intelligence)的论文中,是判断机器是否具有人工智能的一套方法。而图灵测试是人工智能最初的概念,它甚至早于“人工智能”这个词本身,人工智能一词是在1956年才被提出的。图灵测试的方法很简单,就是让测试者与被测试者(一个人和一台机器)隔开,通过一些装置(如键盘)向被测试者随意提问。进行多次测试后,如果有超过30%的测试者不能确定出被测试者是人还是机器,那么这台机器就通过了测试,并被认为具有人工智能。 它的发明者图灵被誉为计算机科学之父、人工智能之父。
1966年,麻省理工学院(MIT)的教授约瑟夫·维森鲍姆发明了一个可以和人对话的程序,名为Eliza。Eliza被设计成一个心理治疗师,可以通过谈话帮助有心理疾病的病人。当时的人们十分惊讶,因为Eliza能够像真人一样与人交流几十分钟。但实际上这个程序并没有达到真正的智能,它用了一些语言技巧来装作自己理解了对方说的话。例如下面一段对话,模拟了当时Eliza和患者的对话程序。
Eliza: “我是心理治疗师,请问有什么问题。每次说完话,请按两次回车键。”
患者:“你好吗?”
Eliza:“还不错,跟我讲讲你自己。”
患者:“我感觉好孤独,好忧伤。”
Eliza:“为什么你感觉好孤独,好忧伤?”
患者:“家人和朋友都不关心我。”
Eliza:“跟我讲讲你的家庭。”
……
这段对话可以明显感觉到其实Eliza并不能理解患者说的话然后进行回应,而是在用引导性的话让这段对话延续下去。现在流行的微软小冰、苹果Siri、谷歌Allo以及亚马逊Alexa都是运用了类似的语言技巧,它们都是Eliza的现代加强版。它们给人感觉已经基本能与人沟通了,但是离真正的人工智能还是有所差距。图灵测试里,有一项非常有效的测试,就是不停地问对方同样的问题,看对方什么反应。比如,不断地问:你是你妈生的吗?问很多很多遍,如果对方总是不急不慢很有耐心的回答你这同一个问题,那么对话的多半是个聊天程序了。
到了2014年,为了纪念图灵逝世六十周年,雷丁大学在伦敦进行了一场图灵测试。其中一名叫尤金·古斯曼(Eugene Goostman)的聊天机器人程序达到了33%的成功率,即在场有33%的评判员误认为,尤金·古斯曼是一个真实的人。这是第一次通过图灵测试的程序,但是,也有人认为这场测试的时长只有5分钟,用短短5分钟来判断一个程序是否人工智能,实在太草率。但不可否认的是,时至今日,人工智能已经有了质的变化。在不久的将来,就会有程序能通过图灵测试,真的像人一样与人沟通。到那个时候,你就无法分清在网上和你暧昧的妹子是人还是机器;也无法判断警告你别乱发帖子的是网警,还是机器警。
二、图灵测试内容、过程
1950年。阿兰·图灵在那篇名垂青史的论文《计算机械与智力》的开篇说:“我建议大家考虑这个问题:‘机器能思考吗?’”可是由于我们非常难精确地定义思考。所以图灵提出了他所谓的“模仿游戏”:
一场正常的模仿游戏有ABC三人參与,A是男性,B是女性。两人坐在房间里;C是房间外的裁判,他的任务是要推断出这两人谁是男性谁是女性。
可是男方是带着任务来的:他要欺骗裁判,让裁判做出错误的推断。
那么,图灵问:“假设一台机器代替了这个游戏里的男方的地位。会发生什么?”这台机器骗过审问者的概率会比人类男女參加时更高吗?这个问题代替了我们原本的问题:‘机器是否能思考?’”而这。就是图灵測试的本体。
【图片来源:BBC】
……等等,那如今这帮人在搞的图灵測试又是什么啊。
事实上你可能已经注意到了图灵的真正目的。不是说“思考”没法定义吗?没关系,我们不去纠缠哲学,我们来制造一个可操作的标准。假设这台机器“表现得”和一个思考的人类(人类是会思考的,对吧?)无法区分,那么我们就大可把它当做是在“思考”。
当然,有些方面机器非常难表现得和人类一样,比方有血有肉——可是既然我们关注的是思考,那么就能够选择一个有代表性的领域,图灵选择的就是“模仿游戏”。而到了1952年,在一场BBC广播中,图灵谈到了一个新的详细想法:让计算机来冒充人。假设足够多的裁判(图灵选择的数字是30%)误以为在和自己说话的是人而非计算机。那就算作成功了。
能够看到,图灵測试的核心事实上不是“计算机是否能和人对话”,而是“计算机是否能在智力行为上表现得和人无法区分”。
冒充异性和冒充人类都只是是特例而已。
只是这个1952年版的图灵測试在后世被发扬光大。成了今天我们所知的图灵測试的唯一方法。
三、图灵测试原理
图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程,他把这样的过程看作下列两种简单的动作: 1)在纸上写上或擦除某个符号; 2) 把注意力从纸的一个位置移动到另一个位置; 而在每个阶段,人要决定下一步的动作,依赖于 (a) 此人当前所关注的纸上某个位置的符号和(b) 此人当前思维的状态。为了模拟人的这种运算过程,图灵构造出一台假想的机器,该机器由以下几个部分组成:
一条无限长的纸带。纸带被划分为一个接一个的小格子,每个格子上包含一个来自有限字母表的符号,字母表中有一个特殊的符号 表示空白。纸带上的格子从左到右依此被编号为 0, 1, 2, 。.. ,纸带的右端可以无限伸展。 一个读写头。该读写头可以在纸带上左右移动,它能读出当前所指的格子上的符号,并能改变当前格子上的符号。 一个状态寄存器。它用来保存图灵机当前所处的状态。图灵机的所有可能状态的数目是有限的,并且有一个特殊的状态,称为停机状态。
一套控制规则。它根据当前机器所处的状态以及当前读写头所指的格子上的符号来确定读写头下一步的动作,并改变状态寄存器的值,令机器进入一个新的状态。 这个机器的每一部分都是有限的,但它有一个潜在的无限长的纸带,因此这种机器只是一个理想的设备。图灵认为这样的一台机器就能模拟人类所能进行的任何计算过程 下面我们用另一种思想来理解图灵机: 注:以下内容来自百度文库: 小虫的比喻:我们不妨考虑这样 一个问题。假设一个小虫在地上爬,那么我们应该怎样从小虫信息处理的角度来建立它的模型呢?
首先, 我们需要对小虫所在的环境进行建模。我们不妨假设小虫所处的世界是一个无限长的纸带,这个纸带上被分成了若干小方格,而每个方格都只有黑白两种颜色。黑色表示该方格有食物,白色就表示没有。假设小虫仅具有一个感觉器官:眼睛,而且它的视力差得可怜, 也就是说它仅仅能够感受到它所处的方格的颜色。因而这个方格所在的位置的黑色或者白色的信息就是小虫的输入信息。其次, 小虫有输出动作,它可以在方格上前移,后移,还可以涂写方格成黑色或者白色。最后,小虫还会有两种内部状态,即{饥饿,吃饱}。这样小虫的行动按照下面的程序进行:
程序:
输入 当前内部状态 输出 下时刻的内部状态
黑 饥饿 涂白 吃饱
黑 吃饱 后移 饥饿
白 饥饿 涂黑 饥饿
白 吃饱 前移 吃饱
即如果当前处于饥饿状态,则有食物就吃掉,没有食物就“吐出食物”;如果当前处于吃饱的状态,则如果没有食物就前移,如果有就后退,并且转入饥饿状态。那么当小虫子读入黑白白黑白??这样的纸带的时候, 会怎样行动呢?小虫用圆圈表示,它从最左边开始 移动,灰色表示饥饿状态,白色表示吃饱状态。 箭头表示移动的方向。从上到下,小虫一步一步 地根据纸带的颜色和它自己的内部状态查
找规则表中的对应项而采取行动。例如第 5 步读入方格是黑色,内部状态为吃饱,根据这两项输入信息查找规则表找到对应项是第二项,根据小虫应该后移,且内部状态变为饥饿。不难看到,到 了第 8 步,情况跟第4步完全相同,输入都是白色纸带和饥饿状态,根据程序,小虫将重复4-8之间的动作,并一直持续下去??。尽管从长期来看,小虫会落入机械的循环,然而当你输入给小虫白色信息的时候,它的反应可能完全不同 (如第 4 步和第 6 步的行为) 所以 ,只要小虫子的内部状态和程序非常复杂,那么小虫的行为也会越来越超出你的想象! 相信你 已经明白了这个小虫模型,那么你就掌握了图灵机的工作原理,因为从本质上讲,这个小虫模型就是一台图灵机。 图灵机是一个会对输入信息进行变换给出输出信息的系统。比如前面说的小虫,纸带上的一个方格一个方格的颜色信息就是对小虫的输入,而小虫所采取的行动就是它的输出。不过这么看,你会发现,似乎小虫的输出太简单了。因为它仅仅就有那么几种简单的输出动作。然而,不要忘了,复杂性来源于组合!虽然每一次小虫的输出动作很简单,然而当把所有这些输出动作组合在一起,就有可能非常复杂!比如我们可以把初始时刻的纸带看作是输入信息,那么经过任意长的时间比如说100年后,小虫通过不断的涂抹纸带最后留下的信息
就是输出信息了。那么小虫完成的过程就是一次计算。事实上,在图灵机的正规定义中,存在一个所谓的停机状态,当图灵机一到停机状态,我们就认为它计算完毕了,因而不用费劲的等上100年。 我们自然可以通过组合若干图灵机完成更大更多的计算,如果把一个图灵机对纸带信息变换的结果又输入给另一台图灵机,然后再输入给别的图灵机??,这就是把计算进行了组合。也许你还在为前面说的无限多的内部状态,无限复杂的程序而苦恼,那么到现在,你不难明白,实际上我们并不需要写出无限复杂的程序列表,而仅仅将这些图灵机组合到一起就可以产生复杂的行为了。