人工智能是一门外向型学科。它不仅要求学习它的人了解人工智能的知识,还要求有比较扎实的数学、哲学、生物基础。这里有一些由边肖编辑和分享的关于人工智能期末论文的文章。欢迎阅读!
人工智能期末论文第一部分
人工智能的研究领域
人工智能的研究更多的是结合具体的领域进行,如专家系统、机器学习、模式识别、自然语言理解、自动定理证明、自动编程、机器人学、博弈论、智能决策支持系统、人工神经网络等。
人工智能是一门外向型学科。它不仅要求学习它的人了解人工智能的知识,还要求有扎实的数学、哲学、生物基础。只有这样,一无所知的机器才能模拟人的思维。
因为人工智能的研究领域非常广阔,一般是面向应用的,也就是说人在哪里工作都可以用,因为人工智能最根本的目的是模拟人的思维。因此,我们可以从众多应用领域中选取几个有代表性的方面,来看看人工智能的发展需要做哪些工作。
下面我们就具体应用专家系统来看一下人工智能的主要研究领域。
专家系统是目前人工智能中最活跃、最有效的研究领域。它是一个基于知识的系统,从人类专家那里获取知识,用于解决只有专家才能解决的难题。专家系统定义如下:专家系统是一个程序系统,在某一特定领域拥有大量的知识和经验。它应用人工智能技术,模拟人类专家的思维过程来解决领域内的各种问题,其水平可以达到甚至超过人类专家。专家系统是在人工智能研究处于低潮时提出的。它的出现和巨大的潜力,不仅使人工智能走出了困境,也走上了发展期。
专家可以分为解释、诊断、预测、设计、规划、控制、监控、维护、教育和调试。从系统上可以分为集中式专家系统、分布式专家系统、神经网络专家系统、符号系统和神经网络专家系统。
人机界面我就不多解释了,只是一个用户界面。它的实现可以采取不同的形式,也可以非常复杂。人们希望能够像人类专家一样与机器交流,而不是使用简单的命令,而是使用人类语言来完成交互工作,这就要求人机界面具有自然语言理解的功能。但是专家系统能不能用,还是要看中间层,人可以在那里思考。如果想让机器像人一样思考,那么推理机制是必不可少的,它在很大程度上决定了这个专家系统的效率和可用性。
就推理而言,一般可分为精确推理和不精确推理。精确推理有以下特点:
精确推理是利用确定性知识进行推理。精确推理所依据的知识是明白无误的,即1是1,2是2,没有任何含糊之处。一点来说,精确推理有它的好处,就是能精确推理。在推理的过程中,你不用担心结论的准确性。下一步的每一步都是完全正确的,没有什么可能是对或错的。它的
精确推理和人类的思维模式有很大的区别。人类的思维有准确的一面,但人类的思维大多还是模糊不确定的。人类思考的结果往往是什么是可能的,什么是大概的,但精确推理的结果中绝对没有什么是可能的。
精确推理是一种单调推理,即随着新知识的加入,结论或证明的命题只会单调增加,这与人类的思维结构明显不同。新知识可能会增加人类思考的结果,但绝不会单调增加。
准确的推理需要知道所有的信息才能进行推理,这显然与人不同。人们可以根据一些情况做出一些假设和推论来产生一个结果,但精确的推理是不可能的。
精确推理以经典逻辑为基础,经典逻辑可以说是一种符号形式推理,关注的是符号之间的形式联系,而不是符号与符号之间的深层语义联系。也正因为如此,精确推理在人工智能中的应用受到了限制。如果让这个逻辑去解决一些问题,做一些确定性的工作,还是可以的,但是如果让它去做更复杂的工作,就不行了。我们可以想象机器翻译中的例子。人类语言中有些句子根本没有语法,只能从语义上理解。这个时候,再精确的推理也没有用。
让我们看看人类思维的另一个方面,不精确的方面。我们知道,所谓推理,就是从已知事实出发,运用相关知识,逐步推导出结论或证明某一假设不成立的思维过程。专家系统中的知识来自于该领域的人类专家,而这种知识往往是不确定的。在这种情况下,如果仍然使用经典逻辑进行精确推理,就需要将客观事物原有的不确定性和客观事物之间的不确定关系归入确定性,人为地在没有明确类属关系的事物之间划出界限,这无疑会舍弃事物的一些重要属性,从而失去真实性。不确定推理是一种基于非经典逻辑的推理,是对不确定知识的应用和处理。严格来说,所谓不确定性推理,就是从最初的不确定性证据出发,经过不确定性知识的应用,最后得出一定程度的不确定性,但却是合理(或接近合理)的结论的思维过程。
在处理不确定性时,涉及到确定性推理中不存在的几个基本问题:如何表达这种不确定性,如何根据表达的不确定性进行推理得到一个(或多个)结论,如何处理推理过程中不确定性引起的结论的不确定性,如何评价结果。
因为计算机是处理数字的装置,不确定性的表达最终是用一个有范围的数值来表示,有利于推理中结论不确定性的计算。
解决问题总是需要推理,而推理出来的结论能不能用,需要一个衡量的方法。测量方法不同于具体的推理方法。现有的推理方法基本走两条路径,一是基于一般理论,二是基于模糊数学。前者发展历史悠久,很多现成的成果可以借鉴。但是,由于概率是建立在大样本统计的基础上的,后者克服了前者的缺点,并且是根据模糊集理论发展起来的,这为不确定性的判断和获取开辟了一条新的途径。
现在让我们回到我们的专家系统的基本结构图。我们知道,人类的推理活动是建立在一定的知识基础上的。我们在解决几何问题时,总是需要知道一些基本的公理(或定理)。医生看病,至少要有一些基本的医学知识,才有说理的物质条件。推理是以知识为基础的。
知识是一些事实或事实的抽象,我们称之为概念。知识是对客观事物属性的认识。知识有其自身的特点:
相对正确。任何知识都有一定的适用范围,不能说一门知识没有适用范围就能用或不能用;
不确定性。由于现实世界的复杂性,很多事实和概念都不能说是绝对正确的。就像哲学中没有绝对真理一样,知识本身也是不确定的。
代表性。同样的,如果知识可以表达,就应该口述,用东西记录,感知,如果不能表达,那谁能理解,甚至不能表达,所以根本不能应用。不能用的东西,不管我们知不知道,对于面向应用的人工智能来说是没有意义的。
事实与概念、概念与概念、事实与事实之间有联系。这种联系有两种,静态的和动态的。
静态接触。比如,我们一提到“早晨”这个概念,就会想到“日出”或者“公鸡打鸣”这样的事实。有时这种联系是双向的,即等价的,而有时是单向的。我们可以把“日出”等同于“早晨”,但如果把“公鸡打鸣”等同于“早晨”,十有八九我们可能是错的。
动态接触。除了静态的联系,还要看到事实和概念之间存在着动态的联系,这在机器翻译中得到了很好的体现。比如上一篇文章,我们看到了一个概念A,它建立了概念B之间的联系,那么,我们必须承认,下面的A和B之间是有联系的,哪怕这种联系在生活中根本不存在。只要上面已经承认了这种联系,我们就必须承认这种联系的存在。更具体地说,我们在翻译一部科幻小说的时候,已经说过,早晨太阳在这个地方的北面升起,所以“太阳从北面升起”就和“早晨”这个概念有关。在这篇文章的翻译中,我们应该注意到,关于朝日的一切都是在北方升起的。但是,必须注意,这个连接不能作为静态连接带到下一篇文章中。如果你记住了这个联系,带到下一篇文章,那你就麻烦大了。
前面已经说过,知识是对客观事物某种属性的描述,正因为客观事物是相互联系的,所以知识也必然是相互联系的。这是知识连接存在的本质原因。
知识作为机器智能的一部分,必须能够让机器知道知识是什么,这就涉及到知识表示的问题。这个问题就好比人们记录一个事实的方式不同。比如,对于聋人来说,你不可能把“早晨”和“鸡鸣”联系在一起。至于机器,简直就是一块又聋又瞎的石头,没有感情(更不用说感情了)。它只理解数字和一些人为规定的数据结构,所以如何让它理解知识,尤其是知识之间的联系,是一个重要的问题。一个专家系统的推理系统做得再好,没有知识做后盾也是一事无成。
同时,知识表示影响推理机制的运行。推理机制和知识表示是相关的。一种知识表示可以有利于一种推理机制的运行,而另一种则不利于这种推理机制的运行。因此,知识表示的选择也必须基于要处理的具体领域。具体的知识表示如下:
一阶谓词的逻辑表示。它在经典逻辑中把一些知识表示为谓词表达式,因为是谓词的形式,所以方便推理,但是有很多知识根本不能表示为谓词。关键原因是谓词只能表达精确的知识,而不能有效表达不确定的事物。同时,这种表示不能很好地反映知识的内在联系,寻找知识内在联系的任务还得由推理系统或另一个系统来完成,比较麻烦。
生产符号。它的基本形式类似于我们的IF语句,因为它类似于计算机中的一些现成语句,所以处理起来要方便得多。它注意到了联系和知识的应用范围,但在表达结构知识方面存在先天不足。
框架表示。它的基本做法是把很多东西放在一起组成一个集合,然后把这个集合中的联系和事实表达出来,这比前两种科学要多得多。在机器翻译中,如果一个老太太谈到VC,我们不应该把它和微软联系在一起,而应该等同于维生素c,这种记法限制了概念可以出现的场合,这可能是它的不足之处。但与前两种表示法相比,它是一种深受人类思维欢迎的表示法,它无形中反映了知识的适用范围。更重要的是,可以遗传。在这一点上,更接近人的思维。
语义网络方法。我们可以想象我们自己的知识体系,其中一些是结构化的,但另一方面,它是一个网络,一个普遍联系的网络,而语义网络表征只是人类知识体系网络化一面的表征,它可以使联想推理在其上很好地发挥作用,为复杂推理奠定坚实的基础。它非常接近人类的思维,但它不能正确地表示类属关系。它体现了网络,却忽略了事物的上等本质。框架表示和语义网络表示在这一点上是互补的。
脚本符号。这种表示法在自然语言理解中得到了应用,因为自然语言理解的特殊性需要这样一种表示法。它正确地表示了事物之间的上下文关系、静态关系和动态关系,充分考虑了场景(语境),但世界上的场景太多了,几乎不可能保存下来。这就限制了它的应用范围。
就知识表示的几种方法而言,有的接近人类表示,有的远离人类表示。总体来看,我们可以看到一个特点:接近人类思维的表征会给计算机表达造成一些麻烦,而接近机器的表征则不能完全表达人类的知识结构。机器人和人类是有区别的。这种差异可能会开始鼓励人们开始研究新结构的计算机,从而最大限度地减少机器与人类思维的差异。但是,目前人类的思维结构和人脑的结构还不能清楚地了解,所以不清楚这样的机器能在多大程度上缩小人和机器的思维差距。而且目前来看,要取代那么多电脑是不现实的,所以需要采用另外一种方法,让机器和思维更接近人类的思维。
有人说人工智能是数据库加搜索。在某种程度上,这句话确实能说明人工智能的现状。无论是在知识库端还是推理机端,都涉及到搜索过程。
一般来说,搜索有两种,一种是非启发式搜索,一种是启发式搜索。非启发式搜索不改变搜索策略,不使用搜索过程中获得的中间信息。盲目低效,小问题可以,大问题不可能。启发式搜索在搜索过程中加入了与问题相关的启发性信息,用来引导搜索到相对较小的范围,加快获取结果的过程。我们都知道计算机中存在一个NP-完全问题,也正因为如此,非启发式搜索在很多情况下是不可用的。然而,虽然启发式搜索利用了搜索的中间结果,但它减少了搜索量,比非启发式搜索看起来更好。它得到的解是否是最优解,往往是一个令人头疼的问题。一般来说,随着非启发式搜索的发展,搜索所需的空间迅速增加;随着启发式搜索的发展,搜索空间有所增加,但增加的幅度远远小于非启发式搜索。问题空间有些地方因为中间信息的获取,根本不需要搜索。随着计算机硬件性能的不断提高和实际系统的需求,不能使用非启发式搜索的地方现在都有了,所以非启发式搜索在实际应用中仍然被广泛使用。
使用搜索方法,我们现在可以看到我们想要搜索的内容。数据结构确定算法的实现。对于已知的问题,我们可以用状态空间或与/或树的表示来表示一个待搜索的问题空间。
由于工程实践的需要,搜索结果有时可能是次优解,而不是最优解(有时最优解没有标准)。我们可以想,机器翻译中一句话的翻译可能有很多种,哪种翻译最好呢?因此,除了广度优先搜索算法之外,还有许多进化搜索算法正在研究中,如遗传算法、模拟火灾算法等。他们的一些搜索方法与问题无关,能在相对较短的时间内找到最优解(或次优解),特别适用于问题空间的比较。
以遗传算法为例。我认为更重要的一点是,我们不必关心它是怎么做的,而只关心它做了什么。这是和传统搜索算法最大的区别。人工智能的追求是让机器拥有类似人类的智能。如果你能告诉计算机做什么,它可以自己做,而不用你告诉它怎么做,那么人工智能已经实现了。
现在让我们回到上面的专家系统基本结构图。有了推理机和知识库,我们就可以正常实现用户的功能,但是我们也要注意到,另一个重要的组成部分,知识获取部分,就是一个人类专家只能成为人类专家,也就是在实践的过程中不断丰富自己的知识,让自己的结论结合实践后反馈给自己,让自己修正自己的错误。人是一个负反馈系统。而上面说的没有知识获取的专家系统,根本没有反馈。这个机器专家,现在是这个水平,以后也是这个水平。它所知道的,根本不会因为自己的修行而改变。因此,它不能满足工程的实际需要。知识获取的工作就是建立这样一种反馈机制,将获得的结果反馈给知识库,并对已知知识进行修改,使结果更加准确和可用。如果它能借鉴实例,那就更好了。程序员不用把所有的规则都写给专家系统,只需要把计算机标注的例子交给计算机,它就会生成自己的知识库,这样就更像一个人了。因此,如果一个专家系统具有自学习的功能,那么系统的可维护性和可用性将会大大提高。
机器学习在这样的需求下应运而生。机器学习的方法有以下几种:
机械学习。它的另一个名字,死记硬背,可以直接体现它的特点。是最简单最原始的学习方法,也是机器的强项,人的弱项。
引导学习。这种学习方式是外部环境给系统提供一般性的指令或建议,系统将其转化为详细的知识,送入知识库。在学习过程中,要对知识进行反复评估,使其不断完善。
归纳学习。我们可以看到,机器擅长的不是归纳,而是演绎。适用于从特殊到一般,不适用于一般到特殊。从特殊到一般的归纳是人类特有的,是智慧的标志。具体的归纳学习方法有很多,但其本质都是让计算机学会从一般中得出规则。
类比学习。类比是一种通过比较相似事物的学习。它是建立在类比推理的基础上的,也就是把记忆中的新事物和旧事物进行比较。如果发现它们之间的某些属性相同,则可以推断(假设)它们的其他属性也相同。
基于解释的学习。这是近年来出现的一种新的学习方法。它不是通过归纳或类比的方式学习,而是利用相关领域知识和一个训练实例来学习某个目标概念,最终生成目标概念的一般描述,这是一种可以形式化表达的一般知识。
以上学习方法是获取知识,通过一种方便的方法获取知识。如前所述,由于机器的思维方式与人类有很大的不同,让机器通过自己的学习生成自己容易理解和使用的知识也是机器学习的目标之一。
就人工智能的研究领域而言,前述系统可以表示为下图:
这种系统是控制中的负反馈系统,结果再次应用于知识库,于是知识库不断修正以满足系统的需要。但是我们注意到,在上图中,如果把结果应用到推理机会中,会得到什么结果。
我们前面讨论的专家系统、推理机和机器学习的区别在于,我们仍然需要告诉他们如何去做,而不是仅仅告诉他们做什么,他们就会去做。人工智能的两种研究方法,一种是寻找人类智能的数学解释。只要找到数学解释,那么就可以实现人工智能;另一种是用一种软件或硬件结构来模拟人脑的结构,用类似仿生学的方法来模拟人的思维。神经网络基于后一种想法。从某种意义上说,对于神经网络来说,结果是它改变的不是知识库,而是推理机的结构。也是研究人工智能的重要方法。
神经网络也模拟人脑中神经元的功能,希望通过模拟人脑的基本单位神经元功能来模拟人脑的功能。它通过某些例子训练一个神经网络,就像教一个孩子一样。经过训练后,这个神经网络可以完成特定的功能。它通过学习实例修改知识库和推理机的结构,达到人工智能的目的。
最后还有一个应用领域,就是模式识别。我觉得应该应用在知识挖掘上,因为现在越来越多的数据是在工程上获得的。从这些数据中人工确定某个规律并不容易,更不要说在这些数据中发现新的规律了。因此,有必要进行数据挖掘,它的应用对于决策支持系统有着重要的意义。
人可以思考,人工智能也需要思考,这就是推理;人可以学习,人工智能需要学习;人可以有知识,所以人工智能也需要有知识。
人工智能就是模拟人脑的活动。人类已经可以用很多新的技术和材料代替人体的很多功能。只要模拟人脑,人们就可以完成人工生命的研究工作,创造自己,这不仅在科学上,而且在哲学上都具有划时代的意义。
最后,我们来总结一下人工智能的各个研究领域。参考人在各种活动中的作用,我们能得到人工智能的领域只是活动而不是人。人们从事智力活动的领域就是人工智能研究的领域。人工智能就是应用机器的优势来帮助人类进行智力活动。人工智能研究的目的是模拟人类神经系统的功能。
下一页,分享《更好的人工智能》期末论文。