人工智能导论 第一章 表示
人工智能原理
人工智能:研究如何在机器上实现人类智能的学科。
定义
人工智能是指由计算机实现的人造智能。人工智能就是用人工的方法在机器(计算机)上实现的智能。作为一门学科,人工智能可定义为:人工智能是一门研究如何构造智能机器(智能计算机)或智能系统,使它能模拟、延伸、扩展人类智能的学科。(能力)
人工智能是一门交叉边缘学科,与人工智能有关的学科有:计算机科学、数学、哲学、语言学、神经生理学、神经心理学、脑科学、认知科学、逻辑学、控制论等.(学科)
为什么要研究人工智能
1、现有计算机系统智能的局限性。
2、人类智能的局限性。学习能力因人而异、学习速度慢、效率低。
3、信息化社会的迫切要求。目标:
近期:用机器来模拟和实现人的部分/某些智力功能;
远期:全部甚至可以延伸人的智慧。智能:
有效获取、传递、处理、再生和利用信息,从而在任意给定的环境下达到预定目的的能力。
智能特征:
具有感知能力。通过视觉、听觉、触觉、味觉和嗅觉感知外部世界。
具有记忆与思维能力。记忆能存储由感知器官感知到的外部信息以及有思维所产生的知识。思维用于对记忆的信息进行处理。思维可分为逻辑思维和形象思维。
具有学习能力及自适应能力。
具有行为能力。
研究方法
结构派
(神经计算、生理学派、连接主义)
网络连接为主的联结主义;
主要观点:
智能活动的基元是神经细胞;
智能活动过程是神经网络的状态演化过程;
智能活动的基础是神经细胞的突触联结机制;
智能系统的工作模式是模仿人脑模式。主要特征:
1、通过神经元之间的并行协同作用实现信息处理,具有并行性、动态性、全局性。
2、通过神经元间分布式的物理联接存储信息。联想记忆、容错性。
3、通过神经元间连接强度的动态调整实现自学习和自适应功能。
4、善于模拟人类的形象思维过程。
功能派
(符号主义、心理学派、逻辑学派)
符号处理为核心的方法;
- 主要观点:
思维的基元是符号;
思维的过程是符号运算;
智能的核心是知识,利用知识推理进行问题求解;
智能活动的基础是物理符号系统,人脑电脑都是物理符号系统;
知识可用符号表示,可建立基于符号逻辑的智能理论体系。
行为模拟派
(行为主义、进化主义、控制论学派)
基于感知-行为模型的研究途径和方法。
- 主要观点:
智能行为的基础是感知-行动的反应机制;
智能系统的智能行为需要在真实世界的复杂境遇中进行学习和训练,在与周围环境的信息交互与适应过程中不断进化和体现;
强调智能系统与环境的交互,认为智能取决于感知和行动;
智能行为可以不要知识。
历史上的人工智能大师
阿伦•图灵(Alan Turing)
马文•明斯基(Marniv Lee Minsky)
约翰•麦卡锡 John McCarthy
爱德华•费根鲍姆 (Edward A. Feigenbaum)
数据和信息、知识
数据:包括事实和数字,未经加工的事实和符号。
信息:从数据中提炼出来的有关信息,经过分析处理的数据形成信息。数据是信息的载体和表示,信息是数据在特定场合下的具体含义。
知识: 是有关信息关联在一起所形成的信息结构,反映客观世界中事物之间的关系。
知识
知识的特性
客观性;
相对正确性: 一定条件、时间、环境;
进化性
依附性:离开载体的知识是没有的;
不确定性: 信息和关联的随机性、模糊性、不完全性、经验性;
可表示性;可利用性;可重用性;
共享性。
知识的层次
事实:知识的最底层,对象、符号和事件之间的各种关系;
概念:关于具有共同属性的一组对象、事件和符号的知识;
规则:一组操作和步骤,被用于完成某一目标,解决某一问题或产生某种结果;
启发式知识:是知识的最高层,是关于规则的知识,是事实、概念和规则的综合。
知识的分类
1 作用范围:常识性知识、领域性知识;
2 作用及表示:
事实性知识
过程性知识
控制性知识
3 确定性:确定性知识、不确定性知识
4 结构和表现形式:逻辑性知识、形象性知识
5 其他:领域知识、元知识
知识的表示方法
知识表示是研究用机器表示知识的可行性、有效性的一般方法;是理智推理的部分理论;是有效计算的载体;是交流的媒介(如语义网络);是对知识的一种描述,是一种机器可以接受的用于描述知识的数据结构。
基本方法
产生式规则、语义网络、框架、谓词逻辑、语义网、知识图谱等
基于逻辑的知识的表达:
一阶谓词,非经典逻辑(模态逻辑、模糊逻辑、时序逻辑、非单调逻辑);
面向对象的知识表示:
对象、框架、语义网;Agent;
基于规则的知识表达:
产生式系统;
基于模型的知识表示
状态空间表示
利用状态变量和操作符号,表示系统和问题的有关知识的符号体系。
- 三元组:(S,F,G)
图示
节点:对应相应的状态描述;
弧线:旁边标明算子表明操作及状态的变化;
最佳路径:两节点间具有最小代价;
问题1:设有三钱币,其初始状态为(反,正,反),每次翻转一个,连翻三次,问是否可达到(正,正,正)或(反,反,反)
引入三维状态变量Q=[q1,q2,q3],分别表示三钱币的状态,q=0表示正,q=1表示反;
S={[1,0,1]} , G={[0,0,0],[1,1,1]}
f1:把q1翻一面;
f2:把q2翻一面;
f3:把q3翻一面;
三元组:(S,{f1,f2,f3}, G)
问题2:在状态描述中应用变量
猴子、香蕉问题
定义状态和操作:
引入四维变量(w,x,y,z)
w:表示猴子所处的水平位置;
x:猴子是否在台子上(x=1在,x=0不在);
y:箱子所处的水平位置;
z:猴子是否拿到香蕉(z=1拿到,z=0没有拿到);定义操作
状态图
与或树表示
已知问题描述,通过一系列变换把问题最终变为一个子问题集合,并可以直接求解,解决初始问题。
(1)初始问题描述;
(2)分解/转换的规则/操作符;
(3)本原问题描述:具有明显解答,已解决的问题等。
与或图
用类似图的结构来表示把问题归约为后继问题的替换集合。
与图(分解):将复杂的大问题分解为一组简单的小问题(BCD都解决 A才解决);
或图(转化):将复杂的大问题变换为等价或等效的问题(BCD任一解决,A解决);
构成
初始节点:原始问题
终叶节点:本原问题,无后裔
与节点:子问题对应的节点为与逻辑
或节点:子问题对应的节点为或逻辑
可解节点:
(1)终叶节点一定为可解节点;
(2)非终叶节点为或节点,后继节点中至少有一个为可解节点;
(3)非终叶节点为与节点,后继节点全部为可解节点;
初始节点可解(分解转化结束,问题解决)
解为:一棵树
终叶节点是与或树中最底层的节点,它们没有后继节点。在与或树中,每个节点都代表一个子问题,而终叶节点代表的子问题已经被分解到无法再进行下去了,因此它们是最基本的问题单元。由于终叶节点没有后继节点,因此它们不需要进一步分解就可以得到问题的解决方案。因此,在与或树中,终叶节点被视为可解节点。
不可解节点
(1)没有后继的非终叶节点;
如果一个节点不在与或树的最底层,但是没有后继节点,那么它不是终叶节点。
(2)或节点其后继节点全部为不可解节点;
(3)与节点其后继至少有一个为不可解节点;
产生式规则表示法
基于规则的知识表示,产生式规则的基本结构
前提状态 -》 结论动作
IF 前提 THEN 动作/结论
- IF 动物是鸟 AND 会游泳 AND 不会飞
AND 有黑白两色
THEN 该动物是企鹅
基于规则的系统的三个主要模块:
- 知识库:存储大量规则;
- 数据库:问题的事实和从规则出发推出的事实,中间结果;
- 推理机:将关于问题的事实与知识库中的规则匹配,求解
优点:
(1)善于表达领域知识
(2)控制和知识相分离
(3)知识的模块性强
(4)便于实现解释推理
(5)便于使用启发性知识缺点:
(1)单条规则容易解释,但规则之间的逻辑关系难以确定
(2)规则数太大时(万数量级),知识库的一致性难以维护
(3)某些类型的知识难以表示,如结构性的知识。
谓词表示法
命题逻辑、谓词逻辑:人工智能应用中的两种逻辑
命题:具有真假意义的语句,大写英文字母表示。
无法描述客观事物的结构、逻辑特征、不同事物之间的共同特征;谓词:由谓词名和个体/客体变元/变元构成;个体表示某个独立存在的事物或抽象的概念;谓词名用于刻画个体的性质、状态或个体间的关系。 P(x1,x2, … , xn) n元一阶谓词、二阶谓词
谓词公式
连接词:将简单命题连接起来构成一个复合命题,表示复杂的含义。
非 与 或 蕴含 当且仅当 存在量词 全称量词(所有为真才为真)
两个谓词公式等价:
P、Q为两个谓词公式,D为其共同个体域,对D上的任何一个解释,P、Q都有相同的真值,称为等价。
谓词公式表示知识:
(1)定义谓词,指出每个谓词的确切含义;
(2)用连接词将相关谓词连接起来,用公式表达完成意义。
对于所有x来说如果它是机器人就是灰色
- 谓词逻辑中的蕴涵式和产生式规则的基本形式相同,是其特殊情况:
(1)谓词逻辑表示精确的知识,而产生式规则不仅可以表示精确知识,也可表示不精确的,例后跟可信度;
(2)在推理匹配过程中,产生式规则可进行不精确匹配。
语义网络法
语义网络是用图来表示知识,表示事物概念及语义关系。
节点:表示概念、实体、事物、事件等;
弧线或链线:表示关系。
表示
- 基本单元: <节点><语义关系><节点>
网络:<基本单元>组合 - 表示基本事物和概念:
表示情况、动作、事件:
用一节点表示,拥有一组向外的弧,表示不同的情况。
占用-1是占用的特殊事例
连接词逻辑关系
增设合取、析取节点;增设标注。
例: 与会者有男有女,有年老的,有年轻的。
量化(部分网络):网络分区+全称链
多元网络:一个节点有多个向外的弧。
常见语义联系
A member of 个体和集体
Composed of 构成
have 占有、拥有
Before, After ,At 时间
Located_on 事物间位置关系
Similar to 比较
A Kind of 分类
Part 聚集、从属
求解
- 继承推理:
语义联系上有继承含义,能有属性的继承。 - 匹配:
构造问题的语义网络片段;
与存储的语义知识网络进行匹配求解
优点:
联想性,体现联想思维过程;
自然性,表现问题直观,易于理解;
结构性,结构化的知识表示方式。缺点:
非严格性,无统一公认的形式表示体系;
处理复杂性;
对于判断性知识、深层知识或与时间因素相关的动态知识不善于表达。
知识图谱
知识图谱是一种揭示实体之间关系的语义网络,可以对现实世界的事物及其相互关系进行形式化地描述。现在的知识图谱已被用来泛指各种大规模的知识库。
知识图谱专注于如何以工程的方式,从文本中自动抽取或依靠众包的方式获取并组件广泛的、具有平铺结构的知识实例,最后再要求使用它的方式具有容错、模糊匹配等机制。
E={e1,e2,…,e|E|}是知识库中的实体集合,共包含|E|种不同实体;
R={r1,r2,…,r|E|} 是知识库中的关系集合,共包含 | R | 种不同关系;
S 属于 E ╳R ╳ E 代表知识库中的三元组集合
实体是知识图谱中的最基本元素,不同的实体间存在不同的关系。
关系用来连接两个实体,刻画它们之间的关联。
概念主要指集合、 类别、对象类型、事物的种类,例如人物、地理等;
属性主要指对象可能具有的属性、特征、特点以及参数,例如国籍、生日等;
-
知识图谱构建
从最原始的数据(包括结构化、半结构化、非结构化数据)出发,采用一系列自动或者半自动的技术手段,从原始数据库和第三方数据库中提取知识事实,并将其存入知识库的数据层和模式层,这一过程包含:
知识抽取
知识表示
知识融合
知识推理
每一次更新迭代均包含这四个阶段。
属性图:
节点(Nodes):是图中的实体,用表示其类型的0到多个文本标签进行标记,相当于实体。
边(Edges):是节点之间的定向链接,每条边连接一个“from node”和一个“to node” 。边是定向的且每条边都有一个标签,它们可以在任何方向上导航和查询。相当于实体之间的关系。
属性(Properties):是一个键值对,顶点和边都可以包含属性。
满足如下性质:
1)每个节点具有唯一的id
2)每个节点具有一组属性,每个属性是一个键值对;
3)每条边具有唯一的id
4)每条边具有一个标签,表示联系
5)每条边具有一组属性,每个属性是一个键值对
RDF:
RDF就是资源描述框架,可以理解成一种资源表示的模板,就是一种知识表达形式。就是只有实体及关系没有概念(domain和range).形式上也就是大家最常见的<实体-关系/属性-实体/属性值>三元组。
框架表示法
框架提供一种结构和组织,描述一种格式相对固定的语义网络的节点和槽。
以框架作为一基础单位,语义网络可看作框架集合。
构成
框架名
槽 : 指框架中的一个属性或特征,例如“颜色”、“大小”等。
侧面
值
约束条件
框架通常有描述事物各个方面的若干槽(slot)组成,每一个槽也可以根据实际情况\拥有若干个侧面(aspect),每一个侧面又可以拥有若干个值(value)。
表示及值的说明:
(1) 框架名的值允许带参数,被调用时需要提供;
(2) 槽值和侧面值可以是过程调用、谓词表达等;
(3) 槽值和侧面值可以定义某些约束和限定条件,例如范围、缺省值等等;
(4)约束部分为可选部分。
框架网络
(1)横向联系:框架中的槽值和侧面值是另一个框架的名字,例如教师框架、住址框 架、工资框架等之间的调用;
(2)纵向联系:用继承槽来建立纵向联系,下层框架可以继承上层框架的值,
例如教职工框架和教师框架之间。
槽、侧面的设置和组织
(1)充分表达各方面的属性
(2)充分表达相关事物之间的关系。常见槽:
ISA :概念类属关系,是一个、一类、一种;
AKO:具体类属关系,是一种;
Subclass:子类、子集;
Instance:AKO的逆关系,指出其下层框架;
Part of:部分与全部的关系;
Infer:表示两框架之间的逻辑关系,蕴涵,条件与结论;
(3)对槽和侧面进行合理组织
共性抽取,选择合适的槽
(4)有利于进行求解和推理
求解
默认推理,继承推理
相似网络:
候选框架不能满足项目匹配,寻找其它可选择的网络,建立一种框架的相似网络。
特点
结构性,嵌套式结构,深入表达;
自然性;
继承性;
不善于表达过程性的知识。
面向对象的表示法
以面向对象的观点进行描述。
研究领域和世界由各种对象构成,对象又可被划分成对象类。
面向对象方法学的观点,对象的形式定义为:
对象 ::= <ID, DS, MS, MI>,其中:
ID为对象标识名;
DS描述对象当前的内部状态和所具有的静态属性;
MS说明对象所具有的内部处理方法或对受理消息的操作过程;
MI为对象接收外部信息和驱动内部方法的对外接口。
继承性
单继承性:每一对象类只有唯一的父类;
多继承性:允许对象类从一个以上的父类中继承信息。
封装性
用于定义一个对象的实例属性和方法,仅仅属于该对象,对其他对象不可见。