1983IllinoisDe Jong 1986 Mitchell Keller KedarCabelli ExplanationBased Generalization
解释学习 1983年美国Illinois大学的De. Jong提出。 1986年, Mitchell, Keller 和 Kedar-Cabelli 提出了解释的泛化 (Explanation-Based Generalization, 简称EBG)的统一框架, 1986年De. Jong 和Mooney提出全局取代解释泛化Explanation Generalization using Global Substitutions, 缩写EGGS) 方法 1987年卡耐基-梅隆大学的Minton 和 Carbonell提出解释特化 (Explanation-Based Specialization,简写EBS)学习方法 2021/9/20 高级人 智能-解释学习 史忠植 5
例子 § § 目标概念:一对物体<x, y>,SAFE-TO-STACK(x, y),其中 STACK(x, y) NOT(FRAGILE(y))∨LIGHTER(x, y)。 训练实例: • ON(OBJ 1, OBJ 2) • ISA(OBJ 1, BOX) • ISA(OBJ 2, ENDTABLE) • COLOR(OBJ 1, RED) • COLOR(OBJ 2, BLUE) • VOLUME(OBJ 1, 1) • DENSITY(OBJ 1, . 1) • … 2021/9/20 高级人 智能-解释学习 史忠植 17
SAFE-TO-STACK(OBJ 1, OBJ 2)解释树 SAFE-TO-STACK(OBJ 1, OBJ 2) LIGHTER(OBJ 1, OBJ 2) WEIGHT(OBJ 1, . 1) VOLUME(OBJ 1, 1) 2021/9/20 LESS(. 1, 5) DENSITY(OBJ 1, . 1) 高级人 智能-解释学习 史忠植 WEIGHT(OBJ 2, 5) ISA(OBJ 2, ENDTABLE) 19
SAFE-TO-STACK(OBJ 1, OBJ 2)解释的泛化过程 SAFE-TO-STACK(x, y) R 1: SAFE-TO-STACK(p 1, p 2) {x/p 1, y/p 2} LIGHTER(p 1, p 2) LIGHTER(x, y) R 2: LIGHTER(p 1, p 2) {x/p 1, y/p 2} WEIGHT(p 1, w 1) LESS(w 1, w 2) WEIGHT(p 2, w 2) WEIGHT(x, w 1) LESS(w 1, w 2) WEIGHT(y, w 2) R 3: WEIGHT(p 1, v 1*d 1) R 4: WEIGHT(p 2, 5) {x/p 1, v 1*d 1/w 1} VOLUME(p 1, v 1) DENSITY(p 1, d 1) {y/p 2, 5/w 2} ISA(p 2, ENDTABLE) VOLUME(x, v 1) DENSITY(x, d 1) LESS(v 1*d 1, 5) ISA(y, ENDTABLE) 2021/9/20 高级人 智能-解释学习 史忠植 20
STRIPS的解释泛化算法 for each equality between pi and pj in the explanation structure do let be the MGU of pi and pj for each pattern pk in the explanation structure do replace pk with pk 2021/9/20 高级人 智能-解释学习 史忠植 26
泛化过程的形式化描述 for each equality between expression and in the explanation structure: if is the antecedent of a domain rule and is the consequent of a domain rule then let = the most general unifier of and let = (* update SPECIFIC substitution) let = the most general unifier of and let = (* update GENERAL substitution) else let = the most general unifier of and let = (* update SPECIFIC substitution) 2021/9/20 高级人 智能-解释学习 史忠植 32
EGGS解释泛化算法 let be the null substitution {}. for each equality between structure do: and in the explanation let be the result of applying to . let be the MGU of let be 2021/9/20 . . for each pattern replace and in the explanation structure do: with . 高级人 智能-解释学习 史忠植 33
The EGGS Algorithm (Mooney, 1986) bindings = { } FOR EVERY equality between patterns P and Q in explanation DO bindings = unify(P, Q, bindings) FOR EVERY pattern P DO P = substitute-in-values(P, bindings) Collect leaf nodes and the goal node 2021/9/20 高级人 智能-解释学习 史忠植 34
Prolog简单的元解释器 prolog(Leaf): -clause(Leaf, true). prolog((Goal, Goal 2)): prolog(Goal 1), prolog(Goal 2). Prolog(Goal): clause(Goal, Clause), prolog(Clause). 2021/9/20 高级人 智能-解释学习 史忠植 41
EBG程序 prolog_ebg(X_Goal, X_Gen, [X_Goal], [X_Gen]: -clause(X_Goal, true). prolog_ebg((X_Goal, Y_Goal), (X_Gen, Y_Gen), Proof, Gen. Proof): prolog_ebg(X_Goal, X_Gen, X_Proof, X_Gen. Proof), prolog_ebg(Y_Goal, Y_Gen, Y_Proof, Y_Gen. Proof), concat(X_Proof, Y_Proof, Proof), concat(X_Gen. Proof, Y_Gen. Proof, Gen. Proof). prolog_ebg(X_Goal, X_Gen, [Proof], [Gen. Proof]): clause(X_Gen, Y_Gen), copy((X_Gen: -Y_Gen), (X_Goal: -Y_Goal)), prolog_ebg(Y_Goal, Y_Gen, Y_Proof, Y_Gen. Proof), concat([X_Goal], [Y_Proof], Proof), concat([X_Gen], 2021/9/20 [Y_Gen. Proof], Gen. Proof). 高级人 智能-解释学习 史忠植 42
例子“自杀” 目标概念:suicide(x) 领域理论:一组子句或称规则。 suicide(x):-kill(x, x). kill(A, B):-hate(A, B), possess(A, C), weapon(C). hate(A, A):-depressed(A). possess(A, C):-buy(A, C). weapon(Z):-gun(Z). 训练例:一组事实子句。 depressed(john). buy(john, gun 1). gun(gun 1). suicide(john). 可操作性标准:暂时简单地处理为静态标准。 operational(depressed). operational(gun). operational(buy). 2021/9/20 高级人 智能-解释学习 史忠植 43
suicide(john)的解释结构 suicide(john) kill(john, john) hate(john, john) depressed(john) 2021/9/20 possess(john, gun 1) buy(john, gun 1) 高级人 智能-解释学习 史忠植 weapon(gun 1) gun(gun 1) 44
目标概念suicide(x)的泛化过程 goal concept R 1 suicide(x) suicide(a) R 2 kill(a, a) kill(x, x) kill(A, B) hate(x, x) R 3 hate(A, B) x/A depressed(A) depressed(x) 2021/9/20 possess(A, C) possess(x, C) R 4 possess(A, C) x/A, Z/C buy(A, Z) buy(x, Z) 高级人 智能-解释学习 史忠植 x/a {x/A, x/B} weapon(C) R 5 weapon(C) Z/C gun(Z) 45
Problem-Space Search • Problem space: – Start state, goal state – Operators (actions that transform state) • Soar assumption: every cognitive behavior can be characterized as search for a sequence of operators leading from a start state to a goal state – Routine behavior – Problem-solving – Meta-cognition / search control • “Universal weak method” 2021/9/20 高级人 智能-解释学习 史忠植 48
Impasse-driven deliberation and learning • Soar’s standard process for selecting action includes several intermediate decision points • If each such decision is completely determined by existing productions, the action is “routine” • Underdetermined decisions (zero or multiple conflicting productions) create an “impasse” – Results in deliberation (e. g. problem space search) – Results in learning a new rule that prevents impasse in future similar situations 2021/9/20 高级人 智能-解释学习 史忠植 49
Processing Input Propose Operator If cell in direction <d> is not a wall, --> propose operator move <d> Compare Operators Apply Operator Select Operator If operator <o 1> will move to a empty cell and operator <o 2> bonus food --> will move to a normal food, operator <o 1> < --> operator <o 1> > <o 2> Output If an operator is selected to move <d> --> create output move-direction <d> Production Memory East North South North>>East South<> East 2021/9/20 North = South movedirection North Working 高级人 智能-解释学习 史忠植 Memory 50 This slide borrowed from John Laird
Processing: Subgoals Input Propose Operator Compare Operators Tie Impasse North > East South > East North = South North Select Operator Apply Operator Output Chunking creates rules that create preferences based on what was tested South Evaluate-operator = 10 (North) 2021/9/20 North Evaluate-operator = 10 (South) = 10 高级人 智能-解释学习 史忠植 = 10 Evaluate-operator = 5 (East) Chunking creates rule that applies 51 evaluate-operator This slide borrowed from John Laird
Representation and Methodology Memories Rule Memory Match Procedural Knowledge Long-term Knowledge Act Conflict Resolution Working Memory 2021/9/20 高级人 智能-解释学习 史忠植 Declarative Knowledge Short-term Knowledge 52 This slide borrowed from John Laird
求解过程 1. G 1 solve-eight puzzle 2. P 1 eight-puzzle sd 3. S 1 2 7 3 8 6 1 4 5 4. O 1 place-blank 5. =>G 2 (resolve-no-change) 6. P 2 eight-puzzle 7. S 1 8. =>G 3 (resolve-tie-operator) 9. P 3 tie 2021/9/20 史忠植 10. S 2 (left, up, 高级人 智能-解释学习 down) 54
11. O 5 evaluate-object(O 2(left)) 12. =>G 4 (resolve-no-change) 13. P 2 eight-puzzle 14. S 1 15. O 2 left 16. S 3 2 8 7 3 1 6 4 5 17. O 2 left 18. S 4 19. S 4 20. O 8 place-1 2021/9/20 高级人 智能-解释学习 史忠植 55
EBL and unification grammar: example • S: [] --> NP: [num=N, pers=P], VP: [num=N, pers=P] • VP: [num=N, pers=P] --> V: [type=trans, num=N, pers=P], NP: [] • NP: [num=sing, pers=3] --> NAME: [] • NP: [num=N, pers=3] --> DET: [num=N], NBAR: [num=N] • NBAR: [num=N] --> 2021/9/20 高级人 智能-解释学习 史忠植 ADJ: [], NBAR: [num=N] 66
Example, contd. • • • NAME: [] --> john V: [type=trans, num=sing, pers=3] --> has DET: [num=sing] --> a ADJ: [] --> red NBAR: [num=sing] --> car 2021/9/20 高级人 智能-解释学习 史忠植 67
Example, contd. • Training example: “John has a red car” S NP VP NP NBAR 2021/9/20 NAME V DET John has a ADJ red NBAR car 高级人 智能-解释学习 史忠植 68
依赖表例子 知识库: Rule 1. Sentence(S 0, S): -noun-phrase(S 0, S 1), verb-phrase(S 1, S). Rule 2. noun-phrase(S 0, S): -determiner(S 0, S 1), noun(S 1, S). Rule 3. noun-phrase(S 0, S): -name(S 0, S). Rule 4. verb-phrase(S 0, S): -intransitive-verb(S 0, S). 2021/9/20 高级人 智能-解释学习 史忠植 69
依赖表如下: 谓词符号 Head sentence 1 noun-phrase 2, 3 1 name, determiner, noun. verb-phrase 4 1 intransitive_verb. 2021/9/20 Body 基本谓词 intransitive_verb, name, determiner, noun. 高级人 智能-解释学习 史忠植 70
- Slides: 74