面向对象思想与人工智能
引言
人工智能系统,从概念的诞生起到现在(二十一世纪二十年代),已经有了一定的进步和发展,但是依然面对很多难以克服的困难。
-
缺乏知识表达
现在的人工智能系统,没有一个通用的方法来记录“知识”。人类的大脑里却可以存储各种各样的、不同类别的知识。 -
缺乏普适性
虽然当下的深度学习算法也具备这一类举一反三的学习能力,但是往往集中在一些真正非常相近的任务里。对人类来说,提取一大类问题里的本质抽象化则是一件非常容易的事情。 -
信息孤岛
目前,人类解决的AI问题犹如一个个分离的孤岛,比如说视觉是视觉,自然语言是自然语言,这些孤岛并没有被打通(这些人工智能系统不过是基于特定应用场景的专用算法)。 -
没有信息沟通
人类的文明是建立在沟通之上的,人与人相互沟通结成社会,社会基础上才有文明。目前的人工智能系统之间还没有沟通,因为各种不同的人工智能系统的信息表达方式不具备通用性。
如果用面向对象思想来对人工智能进行审视,我们会发现以上这些问题变得非常简单:
-
知识表达
知识,就是对于对象和其属性以及对象之间的关系的描述。例如:如果解释什么是船舶,我们会说明船舶的大小、制作材料、生产成本、价格、主要组成部分、驾驶方法、船舶与港口的关系等等。了解了船舶的这些属性,就具备了船舶的知识。 -
普适性
用面向对象思想来分析,举一反三就是寻找具有相同属性值的对象。例如:镇纸有很多种,有玉做的,有木雕的。但是有其通用属性:具有一定的重量,体积不能太大,底座平整。当人工智能系统要找一个东西做镇纸的时候,它知道任何一个具备这三种属性的东西,都可以作为镇纸。这就是举一反三的效果。 -
信息统一处理
在面向对象的世界里,对象具有各种类型的属性,例如西瓜有鲜艳的色彩,香甜的味道。这些信息虽然是通过人体不同的感觉器官获得,但都是对象的属性,存在于同一个对象上。不同种类的信息通过同一个对象实现了统一的处理。 -
信息沟通
人类的沟通方式是语言、文字、身体动作等。而在面向对象的世界里,所有的信息沟通都是传递对象的数据。
古代中国人认为“天圆地方”,他们还认识不到我们实际生活在一个巨大的岩石组成的球体之上。古希腊人生活在海边,他们发现从码头眺望归航的 帆船的时候,总是先看到桅杆的顶部,再看到帆,最后看到全船,因此他们猜测这个世界可能是个圆球。古希腊人埃拉托色尼甚至据此估算出了地球的直径。近代天文学发展起来后,人们开始争论是地球围绕太阳转,还是太阳围绕地球转。 事实上,人类对于世界的认识,就是来源于对于世界上每一个对象及其之间关系的认识。
按照面向对象的思想,世界是由无数个对象组成的。每个对象有自己的属性和状态,有的对象(例如动物)有自己的行为。各个对象之间存在因果、条件、关联等关系。 人工智能,既然是对这个世界进行研究和分析,也就是对世界上各个对象的分析的总和。因此从理论上讲,实现了对于每一个对象的分析,就可以实现人工智能。
本文的主题就是以面向对象思想来讨论人工智能系统的实现方案。
一 基本概念
人工智能的范围很广泛,包括图像识别,机器人,人脑-计算机接口等等,本文仅讨论人工智能中的逻辑思考。
逻辑思考,是主体(人或者人工智能系统)根据其对现实情况的了解和所掌握的知识,为了实现其目标而做出的逻辑分析过程。
“思考”由三个基本元素构成:
- 目标。由思考者主体的动机和价值判断来决定。
- 逻辑推理。实现目标的过程和方法
- 对象集合(或者叫做知识)。为前两个元素提供依据。
我们知道,一万多年前生活在洞穴里的原始人类,虽然他们的知识(元素3)和现代人类相比显得极为缺乏,但是由于他们有独立的价值判断(元素1)和逻辑推理的能力(元素2),因此也是具有智能的。 对于动物而言,由于其逻辑推理能力严重不足,知识也极度缺乏,因此其智能水平极低,但也不是完全没有智能。
现在世界上的计算机系统,需要依靠人类来告知计算机程序的目标,并且由人类编写详细的实现过程(程序)来实现目标。计算机自己没有目标(元素1),也无法自己”思考“出实现目标的解决方案(元素2)。 因此虽然其具有强大的数据存储和计算能力(元素3),但是不能称为智能系统。
人工智能系统是以终身学习并且服务于人类为目标, “对象集合”和各种短期目标作为系统输入,自行“思考”出实现目标所使用的方法和过程的系统。
二 对象的属性和基本处理方法
2.1 对象的属性
对象的属性可以分为以下四种:基本属性,扩展属性,对象属性,行为属性。
2.1.1 基本属性
人类生活在三维空间和一维的时间里。人类通过人体的五种感觉(视觉,听觉,味觉,嗅觉,触觉)器官对客观世界进行观察。基于这些观察,人类对于世界上对象的属性,以及对象之间的关系有了基本的认识,我们称之为常识。
根据常识,自然界里实际存在的实体有以下这些基本属性(可扩展),这些属性不可解释:
数量 时间 距离 位置 方向 颜色 透明 亮度 形状 重量 温度 硬度 力量 味道(味觉) 气味
2.1.2 扩展属性
扩展属性,是由这些基本属性派生出来的(例如速度,就是单位时间内位置改变的距离)。而各种人类创造出来的抽象对象(例如组织、权力等),其属性也是基于这些具体物体的属性派生出来(例如组织的严密,权力的大小)。
2.1.3 关系属性
在现实世界里,对象的大部分“属性”实际上也是一种对象。例如一个人的职业,可以看做是人的职业属性,但是职业本身也是一个抽象对象。这些对象和主体对象有一定的关系,所以称为关系属性。
2.1.4 行为属性
有些对象具有一种特殊的属性,我们一般称之为对象的行为,例如:这个人在奔跑。对象的行为(动作)就是对象属性的变化。
2.2 对象的基本处理方法
对于对象的基本处理方法有以下几种(可扩展):
- 创建对象
- 删除对象
- 修改对象属性
- 修改与其他对象的关系
- 执行对象的动作
- 获取对象的属性
- 获取对象之间的关系
- 分解对象
- 与其他对象组合为新的对象
- 影响对象(假痴不癫,声东击西,空城计,苦肉计,瞒天过海,暗度陈仓,打草惊蛇,欲擒故纵,抛砖引玉)
对于对象的处理,有多种基本对象处理方法。基本对象处理方法就像是锤子,剪刀等工具,然后根据目标来决定使用哪些工具,按照什么顺序来使用。而对于对象集合的处理,要根据这些对象之间的关系来选择合适的处理方法。
三 对象之间的关系
对象之间的关系,以及可以采用的处理方法,有以下这些种类(可扩展):
一. 集合关系
多个对象一起构成一个对象集合。集合中的对象,按照某种组织方式形成集合。