480 likes | 721 Views
Chapter 4 Knowledge Representation. 第四章 知识表示. 4.0 Knowledge. 一. What is Knowledge ?. Knowledge. 经过加工. Information. Feigenbaum: 经过加工(精炼、塑造、解释、选择、转换)的信息. Bernstein: 由特定领域的描述、关系和过程组成. Hayes-Roth: 事实+启发式规则+信念. 二. Attributes of Knowledge. 1) 范 围: 具 体 —— 一 般
E N D
Chapter 4Knowledge Representation 第四章 知识表示
4.0 Knowledge 一. What is Knowledge ? Knowledge 经过加工 Information Feigenbaum: 经过加工(精炼、塑造、解释、选择、转换)的信息 Bernstein: 由特定领域的描述、关系和过程组成 Hayes-Roth: 事实+启发式规则+信念
二. Attributes of Knowledge 1) 范 围: 具 体 —— 一 般 2) 目 的: 说明性 —— 指示性 3) 确定性: 不确定 —— 确 定 例:“常吃肥肉者高血压” ——是具体的、说明性的、不确定的知识 “如果有 A B,且有A,则有B ” ——是一般性的、指示性的、确定的知识 4) 相容性: 相 容 —— 矛 盾(信念)
三. Taxonomy of Knowledge 1) 事实(事实性知识、叙述性知识) 例:thief(john) likes(john, wine) 2) 规则(过程性知识) 例:may_steal(X, Y) if thief(X) and likes(X, Y) 3) 控制策略(元知识、超知识) ——推理策略(正向推理/逆向推理) —— 搜索策略(广度优先、深度优先、启发式)
四. Methodology of Knowledge Representation 1) Logic(逻辑表示法) 2) Production System(产生式表示法) 3) Semantic Net(语义网络表示法) 4) Frame(框架表示法) 5) Script(脚本表示法) 6) Object-Oriented(面向对象表示法)
4.1 Propositional & Predicate Logic (事实) 一. Propositional Logic(命题逻辑) 例: 冬天 winter 冷 cold 冬天冷 wintercold (规则) 局限性:1) 表达形式缺乏共性 例 苏格拉底是人 socratesman 帕拉图是人 platoman 曼森是人 mansonman 2) 无法表达一般知识 例 所有人都会死 缺乏共性
二. Predicate Logic(谓词逻辑) 使用相同的谓词 使用相同的谓词 例1:苏格拉底是人 man(socartes) 柏拉图是人 man(plato) 例2: 保罗的父亲是约翰 father(paul , john) 汤姆的父亲是皮尔 father(tom , pire) 例3: 所有人都会死 人皆有父 x大于5 gt(x,5) x - y小于3 lt(x-y,3) 优点: 1)表达同类事物形式一致,用同一谓词 2) 表达力强 可用量词表达一般性知识 可计算 可表达大于、小于、等于关系
三. 谓词逻辑表示法示例 例1:人皆有父 定义谓词:person(x) 表示x是人 father(x,y) 表示x的父亲是y 该知识表示为: 例2:师皆有生 定义:teacher(x) x是教师 student(x,y) x的学生是y 该知识表示为: 例3:整数非偶即奇 定义:I(x) x是整数 E(x) x是偶数 O(x) x是奇数 该知识表示为:
四、逻辑表示法的优点——便于推理和求证 例4:王宏是计算机系学生,李明是王宏的同班同学,凡是计算机系的学生都喜欢编程。 定义:student_of_comp_dept(x) x是计算机系学生 classmate(x,y) x是y的同班同学 likes(x,y) x喜欢y 则: student_of_comp_dept(wanghong) classmate(liming,wanghong) (x) student_of_comp_dept(x)→likes(x,programming)
4.2 Production System(产生式系统) E. Post 1943年提出,又称为基于规则(Rule-Based)的系统,它不仅是知识表示方法,而且是求解问题的系统。
一. Three Main Points 1) GD (Global Database) ——描述问题状态的事实的集合 例:八数码问题的GD 始态( 2 , 8 , 3 , 1 , 6 , 4 , 7 , 0 , 5 ) 目标( 1 , 2 , 3 , 8 , 0 , 4 , 7 , 6 , 5 ) 一般( A(0,0), A(0,1),A(0,2), A(1,0), A(1,1),A(1,2), A(2,0), A(2,1),A(2,2)) • 8 3 1 2 3 1 6 4 8 4 7 5 7 6 5
2) Rules ——可对GD进行的操作及其条件 if(条件) then(操作) 例:八数码问题的规则集 R1: ifA(I,J)=0 and J>0 then A(I,J):=A(I,J-1),A(I,J-1):=0 空格左移 R2: ifA(I,J)=0 and I>0 then A(I,J):=A(I-1,J),A(I -1,J):=0 空格上移 R3: ifA(I,J)=0 and J <2 then A(I,J):=A(I,J+1),A(I,J+1):=0 空格右移 R4: ifA(I,J)=0 and J<2 then A(I,J):=A(I+1,J),A(I+1,J):=0 空格下移
3) Search & Control Strategy ——选择操作及操作对象的原则(次序)。 搜索策略有:广度优先、深度优先、局部最佳优先和全局最佳优先。 控制策略包括回溯(backtracking)和图搜索。
二. Algorithm • GD始态 • until GD=目标态 do • begin • 按控制策略选一条Rule作用于GD的一个元素 • GDRule作用后的GD • end
三. Main Point(1) 1) GD结构要合适(可简化问题描述) 例:MC问题 用(m,c,b)表示左岸传教士,野人,船数 初始状态(3,3,1) 目标 (0,0,0) 比(m左,m右,c左,c右,b左,b右)好
三. Main Point (2) 2) 规则尽量简练 例:八数码问题 描述空格移动,只要4条规则 如描述每个位置的数码移动,需4*2+4*3+4=24条规则
三. Main Point (3) 3) 好的搜索控制策略是关键 避免原地转圈 缓解组合爆炸
四. Ability to Represent Uncertain Knowledge(产生式系统可以表示不确定性知识) 规则:if P then Q (可信度) 例 if deaf then mute (0. 9) 事实:对象,属性,值,可信度 例Li , age , 40 , 0.8
4.3 Semantic Net(语义网络表示法) Quillian 1968 研究人类联想记忆模型时提出。 语义基元:三元组(结点1,弧,结点2) 弧 是一个有 向 图 多个语义基元相连,形成语义网络 结点1 结点2
一. Arcs in Common Use 1) 类属关系 分类关系 a-kind-of 成员关系 a-member-of 实例关系 is-a 动物 鸟类 共青团 张强 人 李刚
Arcs in Common Use 2) 包含关系 part-of part-of 人体 头 手
Arcs in Common Use 3)属性关系 is have can 高 姚明 钱 财主 飞 鸟
Arcs in Common Use 4) 所有关系 owner 李四 车
Arcs in Common Use 5)时间关系 time after 9:00am 球赛 预赛 决赛
Arcs in Common Use 6)位置关系 located-on located-at located-under 桌子 书 桌子 椅子 桌子 凳子
Arcs in Common Use 7)相近关系 similar-to near-to 虎 猫 黑 天色
Arcs in Common Use 8) 推论关系 infer 等等 用功 成绩好
二. Examples top 例1: 桌子由4条腿和它们支撑的桌面组成 support part-of leg1 leg2 leg3 leg4 table
Examples 例2: clyde是robin(知更鸟), robin是一种鸟,科学家研究鸟 is-a a-kind-of studied-by clyde robin bird scientist
Examples I 例3: 我的车是棕黄色的,john的车是绿色的 owner is-a color is-a color owner car1 tan car car2 green john
Examples arch 例4: 拱(arch) a b c part-of part-of part-of is-a is supported-by not-about is-a is-a is is a lying object c b brick standing
person is-a is-a manager employee punching is is is agent object John event Tom location time today office 三. event结点—用来表示一个事件 例:今天john在办公室打了老板tom
四. The Inference of Semantic Net A B A C C • 继承 直接继承:由 is is 得 is 属性继承:通过继承得到所需结点的属性 由 is-a 和 can 得can clyde bird bird fly fly clyde
The Inference of Semantic Net(Cont.) 问题 owner color is-a 匹配可求得 what= tan I I car1 what? 2)匹配 已知 owner color is-a is-a color owner car1 tan car car car2 green john
4.4 Frame(框架表示法) When one encounters a new situation(or makes a substantial change in one’s view of a problem) one selects from memory a structure called a “frame”. This is a remembered framework to be adapted to fit reality by changing details as necessary. Minsky 1975 框架是以人们对一类事物的经验结构(“框框”,成规stereotyped )为基础设计的知识表达机制。
Frame Structure Frame name slot: value , value, …… . . . slot: facet: value, value, …… facet: value, value, …… . . . 框架可以附加如下过程:if_needed: ask if_added: check
例1 用框架表示打印机 Frame: printer superset: office-machine subset: {laser-printer, ink-jet-printer} energy-source: wall-outlet maker: Epson date: 1-April-2003
例2 用框架表示餐馆 Generic RESTAURANT specialization-of: business-establishment types: range: (fast-food,cafeteria,seat-yourself,wait-to-be-seated) default: wait-to-be-seated if-needed: if plastic-orange-counter then fast-food , if wait-for-waitress-sign or reservation-made then wait-to-be-seated , otherwise seat-yourself location: range: at ADDRESS if-needed: (look at the menu) name: if-needed: (look at the menu) food-style: range: (Chinese, American, France, Seafood) default: American if-needed: (update alternative of restaurant) alternative: range: all restaurants with same food style if_needed: (find all restaurants with the same food-style)
框架可以表示知识的层次结构 学生框架 本科生框架 硕士生框架 博士生框架
4.5 Script(脚本表示法) ——以某一特定范围内最可能发生的事件序列为基础设计的知识表达机制 • 脚本名 • 进入条件 • 角色 • 道具 • 场景1 • 场景2 • ········ • 结果 ——脚本描述一个因果链,用于NLP
A script is a structured representation describing a stereotyped sequence of events in a particular context. The script was originally designed by Schank and his research group as a means of organizing conceptual dependency structures into descriptions of typical situations. Scripts are used in natural language understanding systems to organize a knowledge base in terms of the situations that the system is to understand. Most adults are quite comfortable in a restaurant. They are met at the entrance or by a sign indicating that they should continue in and be directed to a seat. Either a menu is available at the table or presented by the waiter or the customer asks for it. We understand the routines for ordering food, eating, paying, and leaving.
Script:RESTAURANT Track:Coffee Shop Props:Tables Menu Food Check Money Roles:Customer Waiter Cook Cashier Owner Scene 1:Entering 顾客进入餐厅 注意桌子 看往哪里坐 朝桌子走去 在座位坐下 Scene 2:Ordering (Menu on table) 顾客拿起菜单 顾客招呼服务员 服务员走向顾客 (Customer ask for Menu) 顾客招呼服务员 服务员走向顾客 顾客向服务员要菜单 服务员去拿菜单 服务员走向桌子 服务员把菜单交给顾客 * 顾客从菜单中选择菜肴 服务员记下 服务员通知厨师 厨师制作菜肴 服务员说“没有” 进入Scene 4 不付款离开餐厅 进入Scene 3
Scene 3:Eating 厨师把菜肴交给服务员 服务员把菜肴交给 顾客吃下菜肴 Entry conditions: Customer is hungry Customer has money Results: Customer has less money Owner has more money Customer is not hungry Customer is pleased(optional) 返回Scene 2 * Scene 4:Leaving 服务员写帐单 顾客把钱交给服务员 顾客把小费交给服务员 服务员走向出纳员 服务员把钱交给出纳员 不付款离开餐厅 顾客离开餐厅
4.6 Object Oriented Representation(面向对象表示法) smalltalkC++ 对象、类、消息与方法 特征:模块性、封装性、继承性、多态性、 可维护性 AI语言:LISP——函数型 PROLOG——逻辑型 smalltalk(c++)——OO型
习 题: 1.用谓词逻辑表示一个事件或知识(内容自选) 2.用语义网表示一个事件或知识(内容自选)
第1~4 章 作业 • 第1章 搜索问题 • 1.1、1.3、1.5、1.6、1.7、1.12 • 第2章 与或图搜索 • 2.1、2.5、2.6 • 第3章 谓词与归结 • 3.16、3.18、3.21、3.22、3.23、3.24 • 第4章 知识表示 • 4.9、4.13、4.15、4.16