Upload
vanna
View
69
Download
0
Embed Size (px)
DESCRIPTION
人工知能特論 2011 平成24年1月13日(金). 東京工科大学大学院 亀田 弘之. 全体のまとめ. なぜ論理学の話をしたのか? 今までの話がどのように人工知能に関わっているのか? 最近はやりの Data Mining ( Text Mining, Web Mining Knowledge Discovery ) の側面から話をしましょう! ( DM は今や AI の一分野とも考えられる). 知識の発見. 知識 = 普遍の真理 真理の探究 こんなことが自動的にできると凄いよね!. 真実. Web. “高度データマイニング 2005 ”より. - PowerPoint PPT Presentation
Citation preview
人工知能特論 2011平成24年1月13日(金)
東京工科大学大学院亀田 弘之
全体のまとめ
• なぜ論理学の話をしたのか?• 今までの話がどのように人工知能に関わっ
ているのか?
• 最近はやりの Data Mining ( Text Mining, Web Mining Knowledge Discovery) の側面から話をしましょう!( DM は今や AI の一分野とも考えられる)
2
知識の発見
• 知識 = 普遍の真理• 真理の探究
こんなことが自動的にできると凄いよね!
3
真実
Web4
Advanced Data Mining高度データマイニング
東京工科大学大学院バイオニクス・情報メディア学専
攻科
Version 2
“ 高度データマイニング 2005”より
DM Methodology
6
DM Methodology
1. Exploratory data analysis(探索的データ解析)
2. Computational data mining(計算論的データマイニング)
3. Statistical data mining(統計的データマイニング)
7
DM Methodology
1. Exploratory data analysis(探索的データ解析)
2. Computational data mining(計算論的データマイニング)
3. Statistical data mining(統計的データマイニング)
8
1. Exploratory data analysis
a. 統計的データ解析 (SDA)
b. 探索的データ解析 (EDA)
9
統計的データ解析 (SDA の基礎 )1. 視覚的分析
• 表: 度数分布表 (frequency table)• 図: ヒストグラム (histogram)
2. 数値的分析• 代表値: 平均 (mean)
中央値 (median)モード (mode, 最頻値)
• ばらつき度:分散 (variance)平均偏差 (mean deviation; MD)標準偏差 (standard deviation)範囲 (range = 最大値ー最小値 )
• その他 四分位数 (quartile, 第一・二・三)外れ値
10
統計的データ解析 (EDA の基礎 )1. 視覚的分析
• 表: 度数分布表 (frequency table)• 図: ヒストグラム (histogram)
2. 数値的分析• 代表値: 平均 (mean)
中央値 (median)モード (mode, 最頻値)
• ばらつき度:分散 (variance)平均偏差 (mean deviation; MD)標準偏差 (standard deviation)範囲 (range = 最大値ー最小値 )
• その他 四分位数 (quartile, 第一・二・三)外れ値
11
1. 幹葉表示 (stem-and-leaf display)
2. 要約値 (letter value display)
3. 箱ヒゲ図 (box-whisker plots)
4. X-Y表示 (X-Y plotting)
5. 抵抗性のある直線回帰 (registant line)
6. 中央値分散分析 (median polish)
7. 時系列データのならし (smoothing)
探索的データ解析 (EDA)
12
探索的データ解析 (EDA)1. 幹葉表示 (stem-and-leaf display)
ヒストグラムに代わる手法2. 要約値 (letter value display)
平均値・標準偏差に代わるもの3. 箱ヒゲ図 (box-whisker plots)
分布の形と外れ値の図的表示
13
DM Methodology
1. Exploratory data analysis(探索的データ解析)
2. Computational data mining(計算論的データマイニング)
3. Statistical data mining(統計的データマイニング)
14
3. Statistical data mining
a. Statistic models (統計モデル)b. Statistic inference (統計的推論)c. Non-parametric model
d. General linear model
e. Log-linear model
f. Graphical modeletc.
15
DM Methodology
1. Exploratory data analysis(探索的データ解析)
2. Computational data mining(計算論的データマイニング)
3. Statistical data mining(統計的データマイニング)
16
2. Computational data mining
1. Cluster analysis (クラスター分析)2. Tree models (木モデル)3. Linear regression (線形回帰)4. Logistic regression (ロジスティック回帰)5. Neural networks (ニューラルネットワーク)6. ILP(Inductive Logic Programming;
帰納論理プログラミング)7. SVM(support vector machines)
etc.
17
a. Tree models (木モデル)b. Cluster analysis (クラスター分析)c. Linear regression (線形回帰)d. Logistic regression (ロジスティック回帰)e. Neural networks (ニューラルネットワー
ク)f. ILP(Inductive Logic Programming;
帰納論理プログラミング)etc.
2. Computational data mining
18
a .クラスター分析
i. Hierarchical methods (階層型法)ii. Non-hierarchical methods (非階層型
法)
19
a .クラスター分析(2)
• 基本的考え方:1. 近いデータをかき集めてグループを作る。2. 近いグループ同士をかき集めて新たなグ
ループを作る。3. これの繰り返し。
20
クラスター分析(例)
21
クラスター分析(例)
22
クラスター分析(例)
23
クラスター分析(例)
24
クラスター分析(例)
25
クラスター分析(2)
• 基本的考え方:1. 近いデータをかき集めてグループを作る。2. 近いグループ同士をかき集めて新たなグ
ループを作る。
近い => 距離 (distance) が主要な役割を果たす
26
距離って何だっけ?
27
距離 (distance)
• 空間Sの任意の2点 x,y の間に、1つの実数 d(x,y)が定義されていて、これが次の 4 つの条件を満たしているとき、 d(x,y) を2点 x,y 間の距離という。
),(),(),()4(
),(),()3(
0),()2(
0),()1(
yzdzxdyxd
xydyxd
xxd
yxd
28
29
2点間の距離
2点間の距離 d(x,y)x
y
空間S
30
2グループ間の距離は?
31
2グループ間の距離は?
グループA
グループA
グループBグループB
32
2グループ間の距離
距離 d(A,B)
グループA
グループA
グループBグループB
33
2グループ間の距離
距離 d(A,B)
グループA
グループA
グループBグループB
平均値・中央値
34
2グループ間の距離
距離 d(A,B)
グループA
グループA
グループBグループB
平均値・中央値
代表値間の距離代表値間の距離 35
いろいろな距離(関数)
.
.1),(,0),(.4
|}||,max{|),(.3
||||),(.2
)()(),(.1
2121
2121
221
221
etc
yxifyxdxxd
yyxxyxd
yyxxyxd
yyxxyxd
36
いろいろな距離(関数)(2)
• Euclidean distance (ユークリッド距離)• Mahalanobis disntance (マハラノビス距
離)• Edit distance (エディト距離)
etc.
37
b .木モデル
• 決定木 (decision tree)
38
決定木の用途
• 分類問題• 診断問題• 予測問題• 制御問題• パターン認識問題 etc.
39
その前に、ちょっと復習
40
木とは?
41
42
43
44
• これらをひっくり返すると…
45
46
• これらを抽象化すると…
47
木とは
48
木とは(2)
枝(branch)
49
木とは
節(node)
根 (root)
50
木とは
節(node)
根 (root)
葉 (leaf)
51
決定木の例 ( その1 )
クレジット利用者1000 人
適切利用者700 人
不適切利用者300 人
ブラックリスト者10 人
非ブラックリスト者290 人
負債あり500 人
負債なし200 人
利用状況
負債状況 履歴状況
52
決定木の例 ( その2 )
サイレン
車体の色 車体の大きさ
大型トラック 普通自動車消防車 パトカー
あり
白
救急車 軽自動車
なし
白黒赤 大
中小
53
決定木の作成(学習)
決定木の作成大量の例
決定木
54
決定木の作成(学習)
決定木の作成大量の例
決定木
分類問題の解55
56
人工知能特論 2009
東京工科大学大学院バイオニクス・情報メディア学専
攻科
Decision Tree for PlayTennis
Outlook
Humidity WindYes
Yes Yes No Yes
Sunny Rain
High Normal WeakStrong
Overcast
58
Training ExamplesDay Outlook
天候Temperature
温度Humidity
湿度Wind
風Play
Tennis
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
Sunny
Sunny
Overcast
Rain
Rain
Rain
Overcast
Sunny
Sunny
Rain
Sunny
Overcast
Overcast
Rain
Hot
Hot
Hot
Mild
Cool
Cool
Cool
Mild
Cool
Mild
Mild
Mild
Hot
Mild
High
High
High
High
Normal
Normal
Normal
High
Normal
Normal
Normal
High
Normal
High
Weak
Strong
Weak
Weak
Weak
Strong
Strong
Weak
Weak
Weak
Strong
Strong
Weak
Strong
No
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
No59
Top-down Induction ofDecision Tree
Main loop:
1. A ← the best decision attribute for next node
2. Assign A as decision attribute for node
3. For each value of A, create new descendant of node
4. Sort training examples to leaf nodes
5. If training examples perfectly classified, then HALT, else iterate over new leaf nodes.
60
Which attribute is the best?
A1=? A2=?[29+, 35-]
[21+, 5-] [8+, 30-]
[29+, 35-]
[18+, 33-] [11+, 2-]
T TF F
61
)1,1,0(
loglog)( 22
pppp
ppppSEntropy
Entropy
• S is a sample of training examples
• p+ is the proportion of positive examples in S
• p- is the proportion of negative examples in S
• Entropy measures the impurity of S
62
Entropy (エントロピー)
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.5 1
Entropy
63
Interpretation of Entropy
• Entropy(S) とは…2つのグループ(各生起確率が p+ と p- )を符号化するのに必要なビット数(情報 量 )
• その理由は…
P+ P-
64
Information Theory (情報理論)
• 生起確率 p のメッセージに対する最適符号長符号(optimal length code) は、 で与えられる。
• したがって、それぞれ確率 p+ と p- で生起する2つの組に対する平均符号長は、
で与えられる。これは Entropy の公式そのものである。
p2log
)log()log( 22 pppp
65
Entropy の本当の定義
• 無記憶情報源 S から、シンボル s1, s2, s3, …, sn
がそれぞれ p1, p2, p3, … ,pn の生起確率で出現するとき、この無記憶情報源 S のエントロピーは以下の式で定義される。
1...
,...,3,2,110
log)(
321
12
n
k
n
kkk
pppp
nkp
ppSEntropy
) (
66
Information Gain( 情報利得 )
• Gain(S,A) : 「もともと( S) のエントロピー」と「 A に着目する分類後のエントロピー」の差。これを情報利得と呼ぶ。
)(||
||)(),(
)(i
AValuesi
SEntropyS
SiSEntropyASGain
67
Which attribute is the best?
A1=? A2=?[29+, 35-]
[21+, 5-] [8+, 30-]
[29+, 35-]
[18+, 33-] [11+, 2-]
T TF F
)(||
||)(),(
)(i
AValuesi
SEntropyS
SiSEntropyASGain
68
Which is the best?- Selecting the next attribute -
Humidity Wind
[3+, 4-], E=0.985
[3+, 4-], E=0.985
[3+, 4-], E=0.985
[3+, 4-], E=0.985
[3+, 4-], E=0.985
[3+, 4-], E=0.985
high normal weak strong
Gain(S,Humidity)=0.151 Gain(S,Wind)=0.048
69
Training ExamplesDay Outlook
天候Temperature
温度Humidity
湿度Wind
風Play
Tennis
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
Sunny
Sunny
Overcast
Rain
Rain
Rain
Overcast
Sunny
Sunny
Rain
Sunny
Overcast
Overcast
Rain
Hot
Hot
Hot
Mild
Cool
Cool
Cool
Mild
Cool
Mild
Mild
Mild
Hot
Mild
High
High
High
High
Normal
Normal
Normal
High
Normal
Normal
Normal
High
Normal
High
Weak
Strong
Weak
Weak
Weak
Strong
Strong
Weak
Weak
Weak
Strong
Strong
Weak
Strong
No
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
No70
分類前のエントロピー
・ Yes 9 [9+, 5-]
・ No 5
94.0
)14
5(log
14
5)
14
9(log
14
9)( 22
SE
71
97.0)5
2(log
5
2)
5
3(log
5
3)(
26.0)5
0(log
5
0)
4
4(log
4
4)(
97.0)5
3(log
5
3)
5
2(log
5
2)(
767.0)(14
5)(
14
4)(
14
5)(
22
22
22
RainE
OvercastE
SunnyE
RainEOvercastESunnyEOutlookE
Outlook に着目する場合• Sunny [2+, 3-]• Overcast [4+, 0-]• Rain [3+, 2-]
72
811.0)4
3(log
4
3)
4
1(log
4
1)(
918.0)6
2(log
6
2)
6
4(log
6
4)(
00.1)4
2(log
4
2)
4
2(log
4
2)(
911.0)(14
4)(
14
6)(
14
4)(
22
22
22
CoolE
MildE
HotE
RainEOvercastESunnyETempE
Temperature に着目する場合• Hot [2+, 2-]• Mild [4+, 2-]• Cool [3+, 1-]
73
Humidity に着目する場合
• High [3+, 4-]• Normal [6+, 1-]
592.0)7
1(log
7
1)
7
6(log
7
6)(
985.0)7
4(log
7
4)
7
3(log
7
3)(
789.0)(14
7)(
14
7)(
22
22
NormalE
HighE
NormalEHighEHumidityE
74
Wind に着目する場合
• Weak [6+, 2-]• Strong [3+, 3-]
00.1)6
3(log
6
3)
6
3(log
6
3)(
811.0)8
2(log
8
2)
8
6(log
8
6)(
892.0)(14
6)(
14
8)(
22
22
StrongE
WeakE
StrongEWeakEWindE
75
情報利得を計算すると…
)()(),(
)()(),(
)()(),(
)()(),(
eTemperaturESEeTemperaturSGain
WindESEWindSGain
HumidityESEHumiditySGain
OutlookESEOutlookSGain
76
Decision Tree for PlayTennis
Outlook
Humidity WindYes
Yes Yes Yes Yes
Sunny Rain
High Normal WeakStrong
Overcast
77
決定木まとめ
• 決定木は分類器• 決定木が例から学習出来る• 過学習 (overfiting) 回避の工夫が必要
=>枝刈り (pruning)• 決定木学習は命題論理の命題学習に相当
=>述語論理への拡張が必要=>帰納的論理プログラミング
(ILP; Inductive Logic Programming)
78
79
高度データマイニングー ILP概説ー
東京工科大学大学院亀田弘之
Version 2
ILP What?
• 述語論理上で帰納推論を展開するアプローチであり、分類問題を解決することが出来る枠組み
81
ILP What?
• 述語論理上で帰納推論を展開するアプローチであり、分類問題を解決することが出来る枠組み
82
述語論理
• 対象間の関係を記述する知識表現
例:太郎は花子を愛している。 => 愛する(太郎 ,花子) => love ( taro,hanako )
83
述語論理
• 対象間の関係を記述する知識表現
記述のための言語が必要
=> love ( taro,hanako ) => P ( x1,x2 )
84
述語論理記述のための言語
• 変数• 関数• 述語• 論理結合子• 限量子• コンマ等
85
述語論理記述のための言語
• 変数:• 関数:• 述語:• 論理結合子:• 限量子 :• コンマ等: ,
,...)3,2,1( ixi,...)2,1,0,...;3,2,1( kif
k
i
,...)2,1,0,...;3,2,1( kiPk
i
86
項 (Term)
• 変数は項である。• 関数 F(t1, t2, …, tn) は項である。
ただし、 t1, t2, …, tn は項。• 以上のものだけが項である。
87
基礎項
• 変数を含まない項のこと。
88
アトム (atom)
• P(t1, t2, …, tn ) はアトムである。
ただし、 t1, t2, …, tn は項。
• t1, t2, …, tn すべてが基礎項のとき、p(t1, t2, …, tn ) を基礎アトム (ground atom)と呼ぶ。
89
論理式
1. 述語 P(t1, t2, …, tn ) は論理式。
2. F が論理式ならば、¬ F も論理式。3. F と G が論理式ならば、 (F G) ∧ と
(F G)∨ も論理式。4. F が論理式、 x が変数のとき、
∃ x F と ∀ x F も論理式。5. これらにより作られるものだけが論理式。
90
Problem 2 : この論理式の意味は どうなっているか?
Problem 1 : この論理式の構造は どうなっているか?
論理式の例
))))(,(,())(,(( 31
50
42
722
4221
212
51 xfffxPxxfxPxF
91
確認問題
次のうちどれが論理式?
),( 410023 xxQ
),( 41003
2 xxP
(), 1002
34 xPx
),( hanakotarolove
),( 41002
3 xxP
92
確認問題
次のうちどれが論理式?
),( 410023 xxQ
),( 41003
2 xxP
(), 1002
34 xPx
),( hanakotarolove
),( 41002
3 xxP
),( 41003
21004 xxPxx
93
),( hanakotarolove
),( 41002
3 xxP扱いたいのはこちら!論理式のシン
タックスはこちら。
94
P や x が何を意味しているのかわからなければ決まらない。
「解釈」の導入( 形式 → 内容 )
• 解釈 (Interpretation)
• なぜ「解釈」が必要なの?
• これって真 (true) なの偽 (false) なの?
),( 41002
3 xxP 各記号の解釈が必要!各記号の解釈が必要!
95
述語論理式の意味論
• 構造 A= ( UA,IA )ただし、 UA≠Φ (領域)
IA は論理式の各記号の意味割り当てをする写像。
この辺は抽象的なので、具体例で理解しよう。
96
とある世界を考える。
97
抽象化しよう!
98
とある世界
99
とある世界
100
とある世界
101
花子花子
太郎
愛愛102
論理式
言語化言語化
解釈解釈103
言語化言語化
解釈解釈
),( 41002
3 xxP ),( 41002
3 xxP
104
もう一息整理しよう!
105
言語化言語化
解釈解釈
太郎は花子を愛する
),( hanakotarolove
),( 41002
3 xxP ),( 41002
3 xxP
106
解釈の構築 ( 意味の割当て )
• UA={ taro, hanako }
• IA: x100 ↔ taro x4 ↔ hanako P3
2 (* , **) ↔ love(* ,** )
),( 41002
3 xxP ),( 41002
3 xxP
これに意味を持たせることができた!!
以下、省略…107
述語論理あれこれ
• Prenex Conjunctive Normal Form (PCNF)
• Skolem Standatd Form (SSF)– Skolem 定数– Skolem 関数– φ が充足不可能 SSF(φ) が充足不可能
• Herbrand Model (HM)– φ がモデルを持つ φ が HM を持つ な
ど
108
その他
• Resolution
• 代入• 包摂• 束構造• lgg(least general generalization) や
rlgg(reletively lgg)
• 高階論理• Paraconsistent Logic など
109
• 知識記述言語(知識表現)としての論理式
• 推論のために論理学を導入
推論体系完全性・妥当性・推論アルゴリズムの存在等の理由により、現在は通常“1階の述語論理”が採用されている。
この殻を破ればさらに発展がある筈!110
こんな準備しつつ、いよいよILPへ
111
以下、 Web より拝借した資料です
• 取り扱いに注意してください!
112
Inverse Entailment and ProgolInverse Entailment and Progol
Stephen MuggletonStephen Muggleton
有川研究室 修士有川研究室 修士 11 年年坂東 恭子坂東 恭子
一部亀田により改変 2010.01.08
発表の流れ発表の流れ
・はじめに
・帰納論理プログラミング( ILP )とは
・ Progol の説明
・まとめ
114
はじめに機械学習:決定木
背景知識を使おう一階述語論理式を学習しよう
帰納論理プログラミング(帰納論理プログラミング( ILPILP ))帰納論理プログラミング(帰納論理プログラミング( ILPILP ))
115
帰納論理プログラミングと帰納論理プログラミングとは?は?
機械学習 machine learning
論理プログラミング logic programming
帰納論理プログラミング
背景知識、正例、負例
負例を説明せず、正例を説明する仮説をみつける116
ILP ILP システムの例システムの例・ GOLEM : 1992 年 Muggleton らにより開発 rlgg (Relative Least General Generalization)
・ Progol :1995 年 Muggleton らにより開発 逆伴意( inverse entailment )に基づく
・ FOIL :1990 年 Quinlan により開発
・ GKS : 1995 年溝口により開発 など
117
Progol Progol とは?とは?
・ 1995 年 Muggleton により開発された ILP システム
・ C (Prolog) で記述されている。
・逆伴意(逆伴意( inverse entailmentinverse entailment ))の考えを採用
118
伴意 (entailment) とは?
A ⊨ B
・伴意 = 論理的帰結論理的帰結
・記号 ⊨ を使う
・ B は A の伴意である・ B は A の論理的帰結である
・背景知識+仮説 ⇒ 例記号を使って表すと
B(背景知識 ) ∧ H (仮説) ⊨ E (例)119
逆伴意逆伴意 (inverse entailment)(inverse entailment) ととは?は?
演繹定理より
逆伴意逆伴意: 伴意を逆向きに読む 背景知識と例から仮説を得る逆伴意逆伴意: 伴意を逆向きに読む 背景知識と例から仮説を得る
伴意: B(背景知識 ) ∧ H (仮説) ⊨ E (例)
H (仮説) ⊨ B(背景知識 ) → E (例)
120
ProgolProgol の仮説生成プロセスの仮説生成プロセス
逆伴意に基づき最も特殊な節(最弱仮説)を構成
最弱仮説を包摂する空間(最弱仮説空間)において、最良優先探索
最良な仮説の発見
121
仮説と最弱仮説の関係
ここが歳弱化節とすると...
探索空間が縮小される!
一般的
特殊
仮説
正例
仮説 正例特殊化
最弱仮説特殊化
正例
仮説 最弱仮説特殊化
122
最弱仮説の生成最弱仮説の生成
・ B ¬ E から最弱仮説を演繹的に計算可能
H (仮説) ⊨ B(背景知識 ) → E (例)
¬( B → E ) ⊨ ¬ H
B ¬ E ⊨ ¬ H
対偶をとって
すべてのモデルで真な基底リテラルの連言(): bot(B,E)
B ¬ E ⊨ ¬ bot(B,E) ¬ H は¬ bot(B,E)
の部分連言()123
証明:¬ H は¬ bot(B,E) の部分連言()
¬ H が¬ bot(B,E)以外の基底リテラルを含む
¬ bot(B,E) = l1 ・・・ ln
¬ H = l1 ・・・ ln lk lk+1
B ¬ E には lk , lk+1 を含まないモデルが存在
B ¬ E ⊭ ¬ H124
¬ H は¬ bot(B,E) の部分連言()
B ¬ E ⊨ ¬ bot(B,E) ⊨ ¬ H
対偶をとって
H ⊨ bot(B,E)
B ¬ E から最弱仮説を演繹的に計算可能B ¬ E から最弱仮説を演繹的に計算可能
最弱仮説MSH
125
正例: 負例:gf (波平,タラオ) gf (波平 ,カツオ)gf (洋平,カツオ) gf (舟,タラオ) gf (洋平,サザエ) gf (洋平,タラオ)gf (洋平,ワカメ)
背景知識: f (波平,サザエ), m (舟,ワカメ), f (波平, カツオ), f (波平,ワカメ), m (サザエ,タラオ), f (洋平,波平) p ( A, B ) :- f ( A, B ), p ( A, B ) :- m ( A, B )
126
海平
母
波平 舟
サザエ マスオ
タラオ
ワカメ カツオ
洋平
妹
127
正例 E+ : gf (波平,タラオ)について
B ¬ E ⊨ ¬MSH
B ¬ E= ¬ gf (波平,タラオ) f (波平,サザエ) m (舟,サザエ) f (波平,カツオ) f (波平,ワカメ) m (サザエ,タラオ) f (洋平,波平) p ( A, B ) :- f ( A, B ) p ( A, B ) :- m ( A, B )
¬MSH は基底リテラルの連言
= ¬ gf (波平,タラオ) f (波平,サザエ) m (舟,サザエ) f (波平,カツオ) f (波平,ワカメ) m (サザエ,タラオ) f(洋平,波平) p (波平,サザエ) p (舟,サザエ) p (波平,カツオ) p (波平,ワカメ) p (サザエ,タラオ) p(洋平,波)
¬MSH は B ¬ E のすべてのモデルで真¬MSH は B ¬ E のすべてのモデルで真
128
MSH =¬ (¬ gf (波平,タラオ) f (波平,サザエ) m (舟,サザエ) f (波平,カツオ) f (波平,ワカメ) m (サザエ,タラオ) f (洋平,波平) p (波平,サザエ) p (舟,サザエ) p (波平,カツオ) p (波平,ワカメ) p (サザエ,タラオ) p (洋平,波平) )
== gf (波平,タラオ) :- f (波平,サザエ) , m (舟,サザエ) , f (波平,カツオ) , f (波平,ワカメ) , m (サザエ,タラオ) ,f (洋平,波平) , p (波平,サザエ) , p (舟,サザエ) , p (波平,カツオ) , p (波平,ワカメ) , p (サザエ,タラオ) ,p (洋平,波平)
と同じ意味
129
最弱仮説から仮説を求める
一般的
特殊
仮説
最弱仮説
H (仮説) ⊨ MSH (最弱仮説)
最弱仮説を伴意する最良な仮説を求める最弱仮説を伴意する最良な仮説を求める
伴意を機械的に行うのは困難
伴意を包摂で近似し、仮説空間を探索しよう伴意を包摂で近似し、仮説空間を探索しよう
130
ProgolProgol の仮説生成プロセスの仮説生成プロセス
逆伴意に基づき最も特殊な節(最弱仮説)を構成
最弱仮説を包摂する空間(最弱仮説空間)において、最良優先探索
最良な仮説をみつける
131
A*-likeA*-like 探索 探索
・ Progol における探索方法 <=改善の余地あり!
・最弱仮説空間(最弱仮説を包摂する空間)を 探索し、最良仮説を得る
・ A* 探索が元になっている
132
A* A* 探索探索
・グラフにおける最良優先探索 ・評価関数 f(n) を最小にするパスをみつける。 f(n) = g(n)+ h(n) : n経由の最短解の見積りコスト
g(n):出発接点から接点 n までの経路のコスト
h(n): ヒューリスティック関数 n からゴールまでの見積りコスト
133
G
S
A
B
C
D
E
F
I
H
10
14
10
18
5
7
7
14
9
10
6
8
134
ヒューリスティック関数(ゴールとの直線距離)
S : 42A : 35B : 28C : 30D : 23E : 19F : 16H : 10I : 18G : 0
S f=36
A B
f=10+35=45 f=14+28=42
S E I
f=24+36=60 f=22+19=41 f=24+18=42
135
E f=22+19=41
B F H
f=31+10=41f=38+16=54f=30+25=55
E F G
f=40+19=59 f=44+16=60 f=41+0=41
よって、最良経路は、 S B E H G 136
G
S
A
B
C
D
E
F
I
H
10
14
10
21
18
7
12
14
9
10
13
8
137
A*-like 探索グラフの生成
・探索空間・・・最弱仮説( MSH )を包摂する空間
・( empty set )からはじまるグラフを作り、そのグラフ について最良優先探索を行う。
138
MSH(MSH( 最弱仮説最弱仮説 ))== gf (波平,タラオ) :- f (波平,サザエ) , m (舟,サザエ) , f (波平,カツオ) , f (波平,ワカメ) , m (サザエ,タラオ) ,f (洋平,波平) , p (波平,サザエ) , p (舟,サザエ) , p (波平,カツオ) , p (波平,ワカメ) , p (サザエ,タラオ) ,p (洋平,波平)
139
gf ( A, B )
gf ( A,B ): -f(A,C)
gf ( A,B ): -m(C,D)
gf ( A,B ): -m(C,B)
gf ( A,B ): -f(C,A)
gf ( A,B ): -p(A,C)
gf ( A,B ): -p(C,D)
gf ( A,B ): -p(C,B)
gf ( A,B ): -f(A,C),
m(D,C)
gf ( A,B ): -f(A,C),
m(C,B)
gf ( A,B ): -f(A,C),
f(D,A)
gf ( A,B ): -f(A,C),
p(A,C)
gf ( A,B ): -f(A,C),
p(D,C)
gf ( A,B ): -f(A,C),
p(C,B)
gf ( A,B ): -f(A,C),
p(D,A)
・・・・・・ ・・・・・・ ・・・・・・
最も特殊な節
gf(A,B):-f(A,C),m(D,C),f(A,E),m(C,B),f(F,A), p(A,C),p(D,C),p(A,E),p(C,B),p(F,A) 140
グラフ内 A*-like 探索・評価関数として記述長最小原理を使う。
・ compression gaincompression gain が最も大きいものが最良
{仮説のリテラル長}={仮説のリテラル長}={その時点の仮説のリテラル長}+{追加されるリテラル長}{その時点の仮説のリテラル長}+{追加されるリテラル長}
- ({仮説のリテラル長}+ {説明される負事例の数} )
{説明される正事例の数 }
compression gain =
gg((nn)) = = {仮説のリテラル長}+{説明される{仮説のリテラル長}+{説明される負事例}負事例}
141
・{追加されるリテラルの最小値}を ヒューリスティック関数ヒューリスティック関数で与える
・ f(n) =説明される正事例の数-{ g(n) + h(n)} が最大になる仮説を見つける
・全解探索(仮説空間すべて考慮)
h(n) = head部の出力変数がすべて、 body部の入力変数 として存在しない時に追加するリテラルの最小値
gf ( A,B ): -f(A,C)B についてのリテラルを追加
p(A,B,C): -q(A,D) B, C についてのリテラルを追加
142
gf ( A, B )
gf ( A,B ): -f(A,C)
gf ( A,B ): -m(C,D)
gf ( A,B ): -m(C,B)
gf ( A,B ): -f(C,A)
gf ( A,B ): -p(A,C)
gf ( A,B ): -p(C,D)
gf ( A,B ): -p(C,B)
gf ( A,B ): -f(A,C),
m(D,C)
gf ( A,B ): -f(A,C),
m(C,B)
gf ( A,B ): -f(A,C),
f(D,A)
gf ( A,B ): -f(A,C),
p(A,C)
gf ( A,B ): -f(A,C),
p(D,C)
gf ( A,B ): -f(A,C),
p(C,B)
gf ( A,B ): -f(A,C),
p(D,A)
・・・・・・ ・・・・・・ ・・・・・・
gf(A,B):-f(A,C),m(D,C),f(A,E), m(C,B),f(F,A), p(A,C), p(D,C),p(A,E),p(C,B),p(F,A)
4 - (0+3+2)= - 1
ー 2 0 - 2 - 1 - 2 0
ー 3 ー 1 ー 3 ー 1 ー 3 2 ー 3
4 - (10+0)= ー 6
例
4 - (1+2+1)= 0
・・・・・・ 最良な仮説
143
実世界での応用
・突然変異性物質の判別問題( King )
・データベースからの知識発見(嶋津,古川) 電子メール分類システム
・暗黙知の獲得(古川) 理想的な弓の動かし方
仮説:化合物の突然変異性に関するルール
事例:突然変異を有する化合物背景知識:化合物の原子と結合情報
144
まとめまとめ・ Progol における仮説生成
逆伴意に基づき,背景知識と正例から最弱仮説を生成
最弱仮説を包摂する木において A*-like 探索
・・ ProgolProgol の利点の利点探索空間が縮小される探索空間が縮小される
145
146
背景知識背景知識
・既に持っている知識
・背景知識があるとより正確な理論が 得られる
・背景知識として、事実とルールが利用 可能
147
背景知識なし正例: D1 = CuddlyPet(x) Small(x) , Fluffy(x) , Dog(x) D2 = CuddlyPet(x) Fluffy(x) , Cat(x)
背景知識あり背景知識: Pet(x) Cat(x) , Pet(x) Dog(x) Small(x) Cat(x)
D = CuddlyPet(x) Small(x) , Fluffy(x) , Pet(x)
C = CuddlyPet(x) Fluffy(x)
Cuddly :やわらかい Fluffy :ふわふわした
148
特殊な節とは?・節には半順序関係がある
一般的
特殊
一般的:多くの例を説明する特殊:少ない例しか説明しない
p(A,B) p(A,A).
一般的 特殊
p(A,B) p(A,B):-q(A,B)
>
>p(A,B) p(桂子 ,B)>
149
記述長最小原理記述長最小原理
・学習の記述量 ・・・機械学習にとって重要な問題
・記述量 の多い仮説が多くの例を説明できるのは 当然
できるだけ少ない記述量 で多くの例を説明はできないか?
記述長最小原理記述長最小原理記述長最小原理記述長最小原理150
包摂( subsumption )とは?定義: H1,H2:節 H1θ H⊆ 2 となるような代入 θ が存在
H1 は H2 を θ-subsume ( θ-包摂)する。例 : parent (花子 , 太郎) :- mother(花子 , 太郎 ) を考える包摂する節 parent(花子 , 太郎 ) parent (A, 太郎 ) : - mother(花子 , 太郎 ) parent (A, B) :- mother (A, B)
包摂 = 部分集合 + 逆代入
包摂しない節 parent(花子,次郎 ) parent (A, B) :- mother (B, A)
151
伴意と包摂の関係
A subsume(包摂する ) B A B⊨
伴意を包摂で近似する伴意を包摂で近似する伴意を包摂で近似する伴意を包摂で近似する
これがなり立つ!積極的に利用しよう
152
部分連言だと伴意されるA=l1 ・・・ ln
B=l1 ・・・ lnln+1
B の解釈は A の解釈でもある
B ⊨ A : B は A を伴意するB ⊨ A : B は A を伴意する
153
正例: 負例:gf (波平,タラオ) gf (波平 ,カツオ)gf (洋平,カツオ) gf (舟,タラオ) gf (洋平,サザエ) gf (洋平,タラオ)gf (洋平,ワカメ)
背景知識: f (波平,サザエ), m (舟,ワカメ), f (波平, カツオ), f (波平,ワカメ), m (サザエ,タラオ), f (洋平,波平) p ( A, B ) :- f ( A, B ), p ( A, B ) :- m ( A, B )
154
引用はここまで。
155
ILP は機械学習の主要な手法
• 人工知能の分野にも多くのインパクトを与えている。
• ILP も年々進化している。
• Logic も進化している!• 感性科学や脳科学も AI に関わって来ている
。
新しい AI の手法を自分の力で考え出そう!156
レポート課題
• 課題:論文“ Inverse entailment and Progol (Muggleton)” の Appendixes A.Definitions from logic (A1~ A3) を和訳せよ。
• 提出方法–提出期限:平成24年2月8日(水)17:00–提出先:研 A6階レポート提出ボックス–書式: A4レポート用紙(表紙を付けること)
157