人工智能课的半期考试论文,说是半期,其实和作业也相差不多,直接照原样贴过来。人工智能接触不多,没有什么理论依据,也算是个人的一点幻想了。希望如果被老师或者助教Google到这篇博客不要以为是我直接抄下来的就好。附加一句,上课用的那本书真的不太适合当教材,支离破碎的书啊,希望下学期考虑换教材吧。
知识表示的意义、方法与特点大多从课本习得,只摘取一部分,做为开篇两段,不做赘述,主要内容放在对人类实际知识表示的个人见解和新模型的设计上。
意义与主要方法
知识表示、知识推理和知识应用是传统人工智能的三大核心研究内容。其中知识表示是基础,知识推理实现问题求解,而知识应用是目的。知识表示是把人类知识概念化、形式化或模型化。一般的就是运用符号知识、算法和状态图等来描述待解决的问题。知识表示的主要方法包括状态空间法、问题归约法、谓词演算法、语义网络法、框架表示法、本体表示法、过程表示法和神经网络表示法。
现有知识表示特点及问题
现有的知识表示方法最大的特点是,其应用都具有范围局限性。不存在一种知识表示方法对所有的问题都能有效适用。例如,状态空间法表示简单,单只适用于解空间较小的简单问题,框架作为一种结构化表示方法,可以用于表示事物之间的组织形式,各个客观事物之间的联系,但是框架是一种静态的只是表示法,不容易用来表示人的思维判断过程。
人类自身的知识表示
相对于现有的知识表示方法而言,人类大脑中的知识表示方式有很大的不同。个人认为,人类内在的知识表示仅用神经元的生物电传递这一种物理形式,完成了包括事物之间的联系,逻辑推理方法,经验及对事物的抽象等多种类型的知识。作为一种现有的知识表示形式,如果不能完成人类知识表示所能实现的功能便说明它与人类自身的知识表示形式有着本质区别,无法正确的模拟人的思维过程,即不能全面的作为人工智能的一种知识表示。
从现有的情况而言,即使是适用面比较广的的知识表示方法也不能有效合理地模拟人类的只是表示,我个人的看法是,现有的知识表示方法满足不了需求主要有两方面原因。
一方面是现有的知识表示法面向的对象是计算机,或者说是确定性图灵机,但是并不能证明人的大脑也是确定性图灵机结构的。
既然是用这种构造形式,那么无论是数据存储和知识推理过程设计的再完善,其依然是属于线性的。但从我个人的生物知识来看,人脑的构造不属于线性构造。虽然不了解其运作机制,但是人脑神经元之间的连接是高维的,即一个神经元可以同时与多个神经元相连接,一个信号会产生多方向的传递,如此看来人脑的推理形式应该更接近于非确定性图灵机。如此便可以解释为什么对于线性知识(如文本信息)计算机的存储及处理能力远超过人类,但是,对于网状信息(如语义网等联系类信息),人类的存储处理能力可以远强于一般的个人计算机。高维数据在线性化的过程中其所需的空间时间资源将呈指数及增长。
另一方面也是由于图灵机本身构造问题。
当前的知识表示方法使用的前提是有确定性的逻辑。这里就存在两个问题,一个是确定性,另一个是逻辑性。
虽然存在不确定性、模糊数学等类似的模糊思想存在,但他们的基础依然是确定而抽象的数值。作为正常的人类,都会出现记忆模糊和记忆错误的情况,而当记忆模糊时经过再次的外界刺激便会强化记忆,因此人类的知识表示形式应当是具有变化性的,就如同遗传算法中存在突变的可能一样,个人推测人类的创造性就来源于此。
对于逻辑性而言,自从罗素悖论被提出来,人们就已经意识到逻辑本身是有缺陷的,这种缺陷可以有图灵机的停机问题表现出来。但是在逻辑诞生之前,在人类上万年的生活中并没有体现出这种悖论的存在。由此姑且可以推断,人类内在的逻辑和我们现在使用的形式化的逻辑是存在区别不能完全等同的。
如果是将人脑作为图灵机来看待,由现在对图灵机的认识来看(Rice定理),不能通过图灵机判定关于图灵机本身性质,可以推断出人类本身并不能判定人类大脑所具有的性质。通过这个不严密的推理可以看出,如果人脑是图灵机结构,那么我们将无法判断一个机器或者知识表示是否能正确模拟人脑。
从很多年以前便有领域内的专家提出中文屋的问题,我一直对这个想法不太认同。人工智能思想兴起时人们一直把让计算机理解问题作为研究目标,虽然现在改用统计学或其他方法去代替,但是人们的最终目标没有改变。然而有什么证据可以说明人类对语言的理解是他们所认为的那样呢?我一直对人类的抽象理解能力心存怀疑,人类对语言的理解为什么一定像他们所想的一样神秘莫测,为什么人类的抽象能力不能是建立在一个基于经验链接概率上。也就是说其实对人而言,语言本身并没有什么抽象意义,它只是链接了一类事物。简单举例来说,当人们听到桌子、椅子这些词时,大脑中就会如照相机一样具体化出相关的景象,所以对这类的名词,人和机器都是使用映射的方法,唯一的区别是计算机无法具化出这种实际物体。而对于表达感情或动作的词语,他们或许也只是链接了一系列人类的行为表现,而在人类进行大脑具化时,无法对一类不完全相同的行为具化出一幅有代表性的影像,因此便将这个过程模糊化,让人们出现了抽象的感觉。而对语言中的连词等没有实际意义的词语,在语言诞生的早期是不存在的,因此可以认为它们对人类的意义仅仅是基于经验的,例如“和”这个词,在第一次认知这个词之前,它对我毫无意义,但是经过经验积累现在它对我而言作用就是把两幅具化出来的影像连成一幅。
由上述所得,人类和机器如果说在理解上有区别的话,最大的区别便是人类可以在大脑中形成影像,并且可以对这种影像概念进行链接、局部删除等处理,而人所说的抽象能力可能就是这种语言到影像的映射。正如前文所言,机器最大的问题在于它是线性结构,没有视觉能力也就不可能产生影像,不能产生人类所有的抽象能力。再好的知识表示方法也只能尽可能的去模拟这一点,无法完全达到。
从这个角度讲,我个人比较推崇语义网的表示形式,虽然无法具化,但是它可以充分表示一种高维的联系。然而语义网本身的最大的问题在于它的连接上的依据是抽象的,这可能便于人理解,但不便于计算机处理。如果能够将连接设计成类似于马尔科夫模型的基于概率的状态转换连接,这样就可以依概率将事物全部联系在一起(从《数学之美》上看来,Google翻译好像就是这么做的,但是它只有四阶的联系,远没有达到足够广的覆盖性,而且没有交互性,也就不存在经验积累等过程)。最必要的一步在于这种知识表示设计一定要是动态的,联系本身会随着时间自动产生衰减,也会因为外部刺激而再次得到加强,其中应该带有一定的随机性,即部分连接概率会产生极小概率无根据的跳变,以此来模拟人类大脑本身存在的信息传递错误。
展望
虽然我对量子一类的概念完全不懂,作为展望我想稍微提一下量子计算机。根据我的耳闻,量子计算机本身是具有极强的不确定性(这一点我不能证实),仅凭这一点,我就可以不负责任的断言,它会优于现存的所有确定性知识表示形式,因为它是具有生物基础的,而不是依据形而上的数理逻辑。