level 9
来源:http://blog.csdn.net/hellolulu/archive/2006/05/26/756223.aspx 内容:强人工智能、超级智能的概念、应用、原理、市场分析、运作模式。
2007年05月20日 05点05分
1
level 9
强人工智能的基本原理 如果一个从没接触过电脑,可能连开机这样的简单事情也做不了。强人工智能之所以让人感觉深不可测,只是我们接触和研究它的时间太少了而已。真正的自编程/创造性人工智能的原理非常之简单。就象1+1=2那么简单,但是,往往是这种简单的东西,要说清楚反而比较困难。 简单的说,自编程强人工智是这样一种简单的系统,它通过自组织、自验证、主动学习的功能来实现自编程,从而不断提高自己的智能。自组织功能:所谓自组织,实际上就强人工智能自己能够有效组织代码形成程序。这个看起来这个似乎很难,实际上很简单,比如说,强人工智能通过语音识别直接接受人类的语言,人们只需要把一个方法的基本步骤通过自然语言告诉给强人工智能,自编程/创造性人工智能把每一个步聚转换成相应的代码,就形成一个新的程序。也就是自编程/创造性人工智能可能通过自然语言交流的方式学会了新的方法。反复进行这样的操作,强人工智能就会变得越来越聪明。这种方法看起来自编程/创造性人工智能的学习过程跟人没什么二样。 自组织的创新的功能:对于人来说,人可以通过学习或创造来实现新的方法。但其本质都是利用“既有方法”组合而成的,从来没有凭空产生的新方法。在所有情况下,这些方法都是线性的,即一个步骤接着下一个步聚。之所以我们感觉有时我的步骤是结构性的,只是因为我们的线性步聚中用到的“既有方法”本身包括一些线性步聚,而形成结构性的步聚。 同时我注意到人在刚开始学生某件事时,会经常出错,我学开车的时候就会这样,老是操作失误,不断被老师教训。而实际上任何人都会犯错,存在错误的认识。 因此不能够要求强人工系统做什么事都必须100%正确。这样的系统是开发不出来的。而允许犯错误的强人工智能则比较容易实现,它只需要把任意“既有方法”组合起来,即实现了“创新”,即使这种“创新”是错误的。实际上人类的创新也是这样的过程。“创新”方法经过验证,优胜劣汰。最终获得有价值的“创新”。这里实际上要求我们在意识上把“创新”和“验证”的步骤清楚的分割开来。把“创新”和有价值的“创新”区分开来。当然,创新不是件容易的事,不管是对人还是对强人工智能。人类创新的方式只有二种,一种是苦思冥想方式,这种方式是先给定需求、目标,然后去寻找出可行或最优的方法(其实所谓的方法就是处理问题的步骤,这里的步骤指的是已知的基础方法,这些基础方法既可以是人类先天具有的、也可以是后天通过学习、创新获得的方法。用这种方式,人类的创新过程实际上有个几个固定步骤。具体的步骤是,首先会有大脑中形成许多毛胚想法,然后快速的把检验它的有效法(我们的这部分活动不容易被人意识到,除非你经常反省自己,对自己的思维进行跟踪)。通过过滤,人类会在脑海里得到初步可行的方案,然后再通过实践去验证它的有效性。自编程/创造性人工智能可以模拟人类的创新步聚来实现创新。的具体作法是,简单的问题通过问题的类型快速找到该处理类问题的函数集,然后依次(或随机挑选)方法进行测试是否能达到目标。复杂问题(问题本身也一定是由既有类型库描述)就可以先分解成多个既有类型的子问题。分别找到处理该子类问题的函数集进行分别测试。并判断它们的组合是否符合完成总目标。 既有类型库:强人工智能系统在初始的时候,就已经定义了部份基础数据类型。但随着强人工知能系统的成长,它会把一些常用的基础数据类型组合固定下来做为既有类型库,同时固化下来的有该组合的相关处理函数库。以便以未来的方法检索和获取速度。
2007年05月20日 05点05分
3
level 9
自组织的管理功能:如果我们家里的东西都是乱扔乱放的话,就有可能在需要的时候找不到它。同样信息也需要管理,保证信息在需要的时候能马上提取出来。现在最成功的信息管理检索系统如Google、百度等。这是一门相对成熟的技术,所以我不打算再在这多费笔墨。自组织在这里是作用是自动找到组织信息的存放及其检索信息较合适方法。 自组织的验证功能:不论是人还是强人工智能系统,都会产生大量错误的方法,人类社会也是通过试误成长起来的。人和强人工智能也都需把那些错误的方法清理出去,以减少存贮空间占用。在这里这就需要有验证功能以判断新组便方法的正误。当然强人工智能不会一次验证通不过就把某个新办法当成垃圾处理掉,它采用一定的清理策略以保证机器有一定的模糊性或者鲁棒性什么的。 垃圾信息方法清理策略:如果不清理垃圾信息,估计强人工智能的存贮空间再大也不够用。但是一个信息是否需要删除不是仅仅判断它是否正确或有用。而主要是判断某一项信息被重复使用的次数及它最后被调用到现在的间隔时间。使用次数越多的信息将被保存越久(从最后一次使用算起)。“过期”的信息不管正确有用与否都要被清除。 防止信息组合爆炸:人与强人工智能在进行创造性活动时,都必须进行以组合信息和方法对象来创造出新的方法或数据对象。如果这种创造不加以优化处理,就会出现这样的大问题。假设有一亿个既有方法对象(人的记忆体的实际数量会更大)。如果我们要从中选出二个方法或数据对象进行组合以产生满足目的的新方法对象。那就需实践1亿亿次。这样的效率是绝不可能被接受的。所以就需要考虑防爆策略。防爆策略的关键就是对数据方法对象分类与分级和随机抽取。信息分类与分级一个比较现实的例子就是,起一座大夏,可能需要以下几种人,建筑设计师、结构设计师及建筑工人等等,结构设计师可能干不好建筑设计师做的活,工人干不了结构设计的活。相反,建筑设计师也不太可能干好结构设计师的活,而结构设计师可能也不掌握砌砖的技巧。他们的技能不完全相同,但是完成一栋大厦,需要这几种人参与。当我们要设计大厦外形的时候我们绝对不会去找工人去做这间事。当工人砌砖的时候,他可能也只有五六种砌砖的技巧。在这里,大厦比喻的是一个大问题,建筑设计师、结构设计师、比喻的是不同类型、不同层次的方法。意思就是说大问题可以分解成不同层次不同类型的子问题,这些子问题非常独立,在处理子问题时我们只好从非常有限的备选方法中选择。因为子问题的解决办法非常有限,在做大问题时,强人工智能不过是从有限的对象选择范围内进行有限的组织和验证而已。 这样做以后,上例在做随机组合时就不再需要再组合一亿亿次,而很有可能只需要做5*5=25种组合测试。这样强人工智能和人脑都容易处理了。 假设同样要创造的新方法数据对象的每个子步骤都只有5个备选方法,但是步聚达到20步以上。那么这样需要测试的组合也非常之大,达到5的20次方等于95367431640625次。这种组合也是应该避免的。解决这类问题的办法很简单,就是限制强人工智能做这种多步的创新活动。因为这种事不管是人还是强人工智能都做不来。但这又引发了一个新的问题,那就是我们人类做的很多复杂的事,具体步骤都不少于20步,一个例子就是写长篇小说。光字数都超过数十万。 其实这没什么好奇怪的,不过要解释清楚这件事,我们得回过头来分析了解下“既有对象”,对象包括数据及方法,所谓”既有对象”包括既有数据和既有方法,不仅仅指的是系统初始化时预定义的基本对象,更多的是系统在运行过程产生并固化下来的对象,利用“既有对象”进行组合,不仅仅利用基本对象。还会引用其它的后天产生的“既有对象”,形成”既有方法”嵌套。这种嵌套不限层数,所以一些“既有对象”分解决成基本对象时,对象数量非常巨大。所以利用既有方法进行组合时,实际产生的对象会非常之复杂,分解后的基本步骤可能达到了成千上万(人类大脑运作时需要对既有对象分解成基本对象进行处理,容易让人误解我们的创新都是从基本对象开始,造成步聚繁多的映象)。但实际组合过程仅仅是二个“既有对象”组合而已。 结论:强人工智能完全可以模拟人类的创造性活动。
2007年05月20日 05点05分
4
level 9
强人工智能的自验证功能强人工智能如果没有自验证能力,会变成无头苍蝇,强人工智能无法判断自己所作所为的结果是否正确或有效。强人工智能系统会是个盲目的系统。从而不可能实现学习及创新的能力。 然而验证本身也不存在一种通用的方法。不同的事物显然需要不同的验证方法。我们不也不可能预先写好所有这些验证程序。因此强人工智能必须具备自我创造各种验证方法功能。在这方面,我们可以先研究人类是怎么样形成验证功能的,然后再尝试用程序去替代它。人类的验证功能主要有以下几种,来源于现实,来源是假想。来源于现实指的是人类通过长期观察客观世界得到的一些非常稳定的信息,这些信息可以来源于客观世界,也可以来源于学习。来源于假想主要是来源来”既有信息”的随机组合。但是问题是,这样创造出来的验证功能本身也需要加行验证。否则新创造出的验证功能同样无法判断其是否有用。这里就需要一个能够验证“验证方法”有效的方法,如果这个验证“验证方法”本身也需要自动创造的话,那么强人工智能就会变得非常困难。幸运的是,这种验证“验证方法”的方法可以用一种固定的程序来实现。并且这段原理相当简单,它的关键仅仅是统计信息对象重复出现的次数是否达到阀值。当信息对象重复的次数达到一定的,就会被认为该信息对象比较稳定。而这些信息对象就对应了现实的客观事物。从而形成了强人工智能的检验功能。实际上,你可以把这段程序看成是数据挖掘。强人工智能的主动学习 学习是人快速提高智能的办法。同样自编程/创造性人工智能人工智能也必须具备象人类一样的学习能力。才有可能达到或超过人类的智能。问题是,自编程/创造性人工智能人工智能是怎么实现学习能力的?人类的学习方法的主要途径是:1、观察目标对象(外形或动作)。2、通过其它人语言、文字传授。强人工智能可以通过模拟人类的这二类行为来达到学习的目的。自编程/创造性人工智能人工智能是如何观察目标对象(外形或动作)的?首先我们应该给强人工智能配置一台摄像头。然后通过机器视觉系统来观察目标对象(外形或动作),机器视觉系统本身做为自编程/创造性人工智能人智能的重要部份在下面的章节具体介绍。在这里我们先假设机器视觉系统已经能够给自编程/创造性人工智能人智能系统通过视觉分辨客观世界的能力。即对于视觉上不同的客观事物,机器视觉总是能给出不同的描述数据及相关的快速辨别方法。包括外观及动作。这些外观、动作数据的积累,就是学习的一种过程。自编程/创造性人工智能是如何通过其它人语言、文字传授知识的?自然语言及文字的实质是对客观事物进行编号。语言、文字传授知识实际上都是做同一件事,即告诉某个主体(客观事物)的相关处理方法。在自编程/创造性人工智能系统看来,就是先找到相应的分类(如果找不到的话就建造新分类),并在相应的分类下建造相关的方法。这样处理这件事的程序流程是完全一致的,即就个功能可以是一段固定代码。即找到记忆存贮中对应的对象,然后在他的相关方法库中增加相应的方法,实际上是用“既有方法”名称排出来的方法步骤。自编程/创造性人工智能的硬件我个人认为,自编程/创造性人工智能硬件系统可以是一台普通的带摄像头和麦克风的PC机,也可以是人形机器人,专用研发网络系统,更可以是整个互联网。 自编程/创造性人工智能的BIOS 我们开发自编程/创造性人工智能系统,其实就是要开发自编程/创造性人工智的BIOS程序。自编程/创造性人工智能BIOS程序是需要人参与开发的全部程序。其它的“程序”则不需要去编写,而是由自编程/创造性人工智能系统自己创造出来。 如果要对自编程/创造性人工智的BIOS程序进行工作量的大致估算的话,我推测这是一个五个人的团队*二至三年的工作量。市场分析 当前人工智能产品的市场可以说还远远没有进入发展轨道。这主要是由于人工智能还非常不成熟,可以广泛应用的产品非常少。强人工智能研究更是处于停滞的状态。但是人工智能一旦有了重要的突破,特别是强人工智能的突破,必定会产生广泛的应用,同时产生难以估计的市场。当然不是所有的东西都是可以计算出来,包括机器人的市场空间有多大。
2007年05月20日 05点05分
5