图灵测试介绍 图灵机的工作原理详解

测量仪表

1473人已加入

描述

图灵测试简介

图灵测试(TheTuringtest)由艾伦·麦席森·图灵发明,指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。

进行多次测试后,如果有超过30%的测试者不能确定出被测试者是人还是机器,那么这台机器就通过了测试,并被认为具有人类智能。图灵测试一词来源于计算机科学和密码学的先驱阿兰·麦席森·图灵写于1950年的一篇论文《计算机器与智能》,其中30%是图灵对2000年时的机器思考能力的一个预测,目前我们已远远落后于这个预测。

图灵测试测试内容

图灵提出了一种测试机器是不是具备人类智能的方法。即假设有一台电脑,其运算速度非常快、记忆容量和逻辑单元的数目也超过了人脑,而且还为这台电脑编写了许多智能化的程序,并提供了合适种类的大量数据,那么,是否就能说这台机器具有思维能力?

图灵肯定机器可以思维的,图灵测试他还对智能问题从行为主义的角度给出了定义,由此提出一假想:即一个人在不接触对方的情况下,通过一种特殊的方式,和对方进行一系列的问答,如果在相当长时间内,他无法根据这些问题判断对方是人还是计算机,那么,就可以认为这个计算机具有同人相当的智力,即这台计算机是能思维的。这就是著名的“图灵测试”(TuringTesTIng)。当时全世界只有几台电脑,其他几乎所有计算机根本无法通过这一测试。

图灵测试

要分辨一个想法是“自创”的思想还是精心设计的“模仿”是非常难的,任何自创思想的证据都可以被否决。图灵试图解决长久以来关于如何定义思考的哲学争论,他提出一个虽然主观但可操作的标准:如果一台电脑表现(act)、反应(react)和互相作用(interact)都和有意识的个体一样,那么它就应该被认为是有意识的。

为消除人类心中的偏见,图灵设计了一种“模仿游戏”即图灵测试:远处的人类测试者在一段规定的时间内,根据两个实体对他提出的各种问题的反应来判断是人类还是电脑。通过一系列这样的测试,从电脑被误判断为人的几率就可以测出电脑智能的成功程度。

图灵预言,在20世纪末,一定会有电脑通过“图灵测试”。2014年6月7日在英国皇家学会举行的“2014图灵测试”大会上,举办方英国雷丁大学发布新闻稿,宣称俄罗斯人弗拉基米尔·维西罗夫(VladimirVeselov)创立的人工智能软件尤金·古斯特曼(EugeneGoostman)通过了图灵测试。虽然“尤金”软件还远不能“思考”,但也是人工智能乃至于计算机史上的一个标志性事件。

图灵机的工作原理详解

关于图灵机背景

图灵机的历史发展图灵机被公认为现代计算机的原型,这台机器可以读入一系列的零和一,这些数字代表了解决某一问题所需要的步骤,按这个步骤走下去,就可以解决某一特定的问题。这种观念在当时是具有革命性意义的,因为即使在50年代的时候,大部分的计算机还只能解决某一特定问题,不是通用的,而图灵机从理论上却是通用机。

图灵机的产生一方面奠定了现代数字计算机的基础(要知道后来冯•诺依曼就是根据图灵的设想才设计出第一台计算机的)。另一方面,根据图灵机这一基本简洁的概念,我们还可以看到可计算的极限是什么。也就是说实际上计算机的本领从原则上讲是有限制的。请注意,这里说到计算机的极限并不是说它不能吃饭、扫地等硬件方面的极限,而是仅仅就从信息处理这个角度,计算机也仍然存在着极限。这就是图灵机的停机问题。

图灵测试

图灵机原理及分析

图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程,他把这样的过程看作下列两种简单的动作:1)在纸上写上或擦除某个符号;2)把注意力从纸的一个位置移动到另一个位置;而在每个阶段,人要决定下一步的动作,依赖于(a)此人当前所关注的纸上某个位置的符号和(b)此人当前思维的状态。为了模拟人的这种运算过程,图灵构造出一台假想的机器,该机器由以下几个部分组成:

一条无限长的纸带。纸带被划分为一个接一个的小格子,每个格子上包含一个来自有限字母表的符号,字母表中有一个特殊的符号表示空白。纸带上的格子从左到右依此被编号为0,1,2,。..,纸带的右端可以无限伸展。一个读写头。该读写头可以在纸带上左右移动,它能读出当前所指的格子上的符号,并能改变当前格子上的符号。一个状态寄存器。它用来保存图灵机当前所处的状态。图灵机的所有可能状态的数目是有限的,并且有一个特殊的状态,称为停机状态。

一套控制规则。它根据当前机器所处的状态以及当前读写头所指的格子上的符号来确定读写头下一步的动作,并改变状态寄存器的值,令机器进入一个新的状态。这个机器的每一部分都是有限的,但它有一个潜在的无限长的纸带,因此这种机器只是一个理想的设备。图灵认为这样的一台机器就能模拟人类所能进行的任何计算过程下面我们用另一种思想来理解图灵机:注:以下内容来自百度文库:小虫的比喻:我们不妨考虑这样一个问题。假设一个小虫在地上爬,那么我们应该怎样从小虫信息处理的角度来建立它的模型呢?

首先,我们需要对小虫所在的环境进行建模。我们不妨假设小虫所处的世界是一个无限长的纸带,这个纸带上被分成了若干小方格,而每个方格都只有黑白两种颜色。黑色表示该方格有食物,白色就表示没有。假设小虫仅具有一个感觉器官:眼睛,而且它的视力差得可怜,也就是说它仅仅能够感受到它所处的方格的颜色。因而这个方格所在的位置的黑色或者白色的信息就是小虫的输入信息。其次,小虫有输出动作,它可以在方格上前移,后移,还可以涂写方格成黑色或者白色。最后,小虫还会有两种内部状态,即{饥饿,吃饱}。这样小虫的行动按照下面的程序进行:

程序:

输入 当前内部状态  输出  下时刻的内部状态

黑  饥饿      涂白   吃饱

黑  吃饱      后移   饥饿

白  饥饿      涂黑   饥饿

白  吃饱      前移   吃饱

即如果当前处于饥饿状态,则有食物就吃掉,没有食物就“吐出食物”;如果当前处于吃饱的状态,则如果没有食物就前移,如果有就后退,并且转入饥饿状态。那么当小虫子读入黑白白黑白„„这样的纸带的时候,会怎样行动呢?小虫用圆圈表示,它从最左边开始移动,灰色表示饥饿状态,白色表示吃饱状态。箭头表示移动的方向。从上到下,小虫一步一步地根据纸带的颜色和它自己的内部状态查

找规则表中的对应项而采取行动。例如第5步读入方格是黑色,内部状态为吃饱,根据这两项输入信息查找规则表找到对应项是第二项,根据小虫应该后移,且内部状态变为饥饿。不难看到,到了第8步,情况跟第4步完全相同,输入都是白色纸带和饥饿状态,根据程序,小虫将重复4-8之间的动作,并一直持续下去„„。尽管从长期来看,小虫会落入机械的循环,然而当你输入给小虫白色信息的时候,它的反应可能完全不同(如第4步和第6步的行为)所以,只要小虫子的内部状态和程序非常复杂,那么小虫的行为也会越来越超出你的想象!相信你已经明白了这个小虫模型,那么你就掌握了图灵机的工作原理,因为从本质上讲,这个小虫模型就是一台图灵机。图灵机是一个会对输入信息进行变换给出输出信息的系统。比如前面说的小虫,纸带上的一个方格一个方格的颜色信息就是对小虫的输入,而小虫所采取的行动就是它的输出。不过这么看,你会发现,似乎小虫的输出太简单了。因为它仅仅就有那么几种简单的输出动作。然而,不要忘了,复杂性来源于组合!虽然每一次小虫的输出动作很简单,然而当把所有这些输出动作组合在一起,就有可能非常复杂!比如我们可以把初始时刻的纸带看作是输入信息,那么经过任意长的时间比如说100年后,小虫通过不断的涂抹纸带最后留下的信息

就是输出信息了。那么小虫完成的过程就是一次计算。事实上,在图灵机的正规定义中,存在一个所谓的停机状态,当图灵机一到停机状态,我们就认为它计算完毕了,因而不用费劲的等上100年。我们自然可以通过组合若干图灵机完成更大更多的计算,如果把一个图灵机对纸带信息变换的结果又输入给另一台图灵机,然后再输入给别的图灵机„„,这就是把计算进行了组合。也许你还在为前面说的无限多的内部状态,无限复杂的程序而苦恼,那么到现在,你不难明白,实际上我们并不需要写出无限复杂的程序列表,而仅仅将这些图灵机组合到一起就可以产生复杂的行为了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分