エージェントアプローチ 人工知能
DESCRIPTION
エージェントアプローチ 人工知能. B4 片渕 聡. 目次. 19章 学習における知識 20章 統計的学習手法. 19章 学習における知識 目次. 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL) -帰納論理プログラミング (ILP) まとめ. 19章 学習における知識 目次. 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL) -帰納論理プログラミング (ILP) まとめ. 経験による学習. - PowerPoint PPT PresentationTRANSCRIPT
1
エージェントアプローチ
人工知能B4 片渕 聡
2
目次 19章 学習における知識
20章 統計的学習手法
3
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
4
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
5
経験による学習 仮説 ( 規則 )H と例 ( 入力 )D から分類 ( 出力 )C
を伴意 - H D ∧ ╞ C (H は未知 )
例 H : Father(y,z) Mother(x,y) GrandMother(x,z)∧ ⇒ D:Father(Tom,Bob) , Mother(Mary,Tom)
C:GrandMother(Mary,Bob)
上記の式の関係を伴意制約と呼ぶ
6
事前知識の利用 18章では新たな経験から規則を導出 -事前知識を用いていない
19章では事前知識を役立てる手法を紹介 -事前知識の利用で学習能力が大幅に向上 例:原始人 A が串を用いて調理している所を それまで素手で調理していた原始人 B が目
撃 することにより原始人 B は素手を使わない 調理法を学習することができる
7
論理による学習の表現 例を正確に分類するための目標述語 Q(x)
-例:レストランで待つかどうか (WillWait(x))
Q(x) と等価な論理表現 ( 仮説 ) の候補定義 C(x)
学習の目的は Q(x) と等価な C(x) の導出 -∀ x Q(x) ⇔ C(x)
8
論理による学習の表現(例:レストラン問題) 18章で作成した決定木を定式化すると ∀ x WillWait(x) ⇔ Patrons(x,some) ∨ ( Patrons(x,full)∧ ¬ Hungr
y(x) )
新たな例が加わると例に矛盾する仮説を修正 例: Patrons(X,Full) Wait(X,0-20)∧ ∧ Hungry(X) WillWait(X)∧ -この例は上記の式に矛盾 仮説 Patrons(X,Full) Wait(X,0-20) Hungry(X)∧ ∧ を追加
仮説
9
にせの負例・にせの正例 にせの負例 -実際は True なのに仮説が False を返す
例
にせの正例 -実際は False なのに仮説が True を返す
例
T T T F Fにせの負例
F T T F Fにせの正例
10
最良仮説探索 新たな例が与えられる度に仮説を改定する方法 -仮説の無矛盾性を維持
汎化 特化
11
汎化・特化 汎化 -仮説がにせの負例を含むようにすること
特化 -仮説がにせの正例を排除すること
T T T F F汎用化
F T T F F特化
12
最小選択探索 予め膨大な仮説空間を用意して 新たな例に矛盾する仮説を除去していく
初期仮説空間 H1 H∨ 2∨ …∨ Hn
例集合に矛盾した仮説をどんどん排除
後戻り ( 仮説の追加 ) の必要が無い
13
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
14
事前知識を用いた学習の概念
EBL ・ RBL ・ KBIL
帰納学習
背景知識( 事前知識 )
仮説 予測観測
蓄積
利用
15
説明に基づく学習 ( Explanation-Based Learning:EBL )
背景知識 B から一般的な規則 H を伴意 観察 D を背景知識を用いて説明 - H D ∧ ╞ C (H は未知 )
- B ╞ H
例 D: 串で調理している人がいる B: 串で食物を支えることができる H: 細くて硬い物体で食物を支えることが
できる
16
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
17
関連性に基づく学習 ( Relevance-Based Learning:RBL )
観察を説明するような一般規則を 背景知識を用いて導出 - H D ∧ ╞ C (H は未知 )
- B D C ∧ ∧ ╞ H
例 B: 特定の国の人は皆同じ言語で話す D:Fernando はブラジルの人でポルトガル語を
話す H: ブラジルに住む人はポルトガル語を話す
18
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
19
知識に基づく帰納学習 ( Knowledge-Based Inductive Learning:KBIL )
背景知識 B と新たな仮説 H で例を説明 - B∧H D ∧ ╞ C (含意制約)
帰納論理プログラミング
20
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
21
帰納論理プログラミング( Inductive Logic Programming:ILP )
含意制約を満たしつつ未知の仮説を導出 -例:家系図
George
Elizabeth
Mum
Philip
Charles Anne
22
背景知識を用いた例の説明 背景知識なしで Grandparent に対する仮説は Grandparent(x,y)⇔ [ z Mother(x,z) Mother(z,y)]∃ ∧ ∨ [ z Mother(x,z) Father(z,y)]∃ ∧ ∨ [ z Father(x,z) Mother(z,y)]∃ ∧ ∨ [ z Father(x,z) Father(z,y)]∃ ∧
背景知識 Parent(x,y) ⇔ Mother(x,y) Father(x,y)∨ を用いると簡略化が可能 Grandparent(x,y) ⇔ [ z Parent(x,z) Parent(z,y)]∃ ∧
23
トップダウン帰納学習手法 一般規則から例に合うように特殊化していく 例: Grandfather(x,y) の定義の学習 1.例を正例と負例に分ける 正例: <George,Anne>etc 負例: <Mum,Anne>et
c
2.左辺が空の節を構築 [] Grandfather(x,y)⇒ 3.これでは負例も含むので特化する ( 繰り返
し ) Father(x,z) Grandfather(x,y)⇒ Father(x,z) Parent(z,y) Grandfather(x,y)∧ ⇒
24
逆演繹による帰納学習 (1/2)
逆向き(逆融合)の証明を行う
¬ Grandparent(George,Anne)
Parent(Elizabeth,Anne)Grandparent(George,Anne)
¬ Parent(Elizabeth,y) Grandparent(George,y)∨仮説
KB
KB( 否定 )
{y/Anne}
25
逆演繹による帰納学習 (2/2)
1.目標例 C2 を規定 Grandparent(George,Anne)
2.空の節と C2 の否定を逆融合して
Grandparent(George,Anne) (C1) を生成
3. C1 と知識ベースにある
Parent(Elizabeth,Anne) とを逆融合4.仮説 ¬ Parent(Elizabeth,y) Grandparent(George,y)∨ を生成5.さらに逆融合していくことで新たな仮説が得られる
26
19章 学習における知識目次 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL)
-帰納論理プログラミング (ILP) まとめ
27
まとめ 事前知識の利用により学習能力が向上 汎化・特化を行い例に無矛盾な仮説を構築 説明による学習: B ╞ H 関連性による学習: B D C ∧ ∧ ╞ H 知識に基づく学習: B∧H D ∧ ╞ C 帰納論理プログラミング: KBIL の実行手法 -トップダウン帰納学習手法 -逆演繹による帰納学習
28
ここまで19章 演繹 -前提が真ならば結論も真だと認めざるを得ない
こと 前提 ⇒ 結論
29
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
30
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
31
確率モデルの学習 実環境は不確実性に満ち溢れている 経験から実環境の確率法則を学習
統計的学習 -確率推論の学習
32
統計的学習(例) くじ箱が5つあり、そこから一つ選んでくじ引き d: くじ引きであたりを引くという事象 h1:100% あたり P(d|h1)=1.0
h2:80% あたり P(d|h2)=0.8
h3:50% あたり P(d|h3)=0.5
h4:20% あたり P(d|h4)=0.2
h5:0% あたり P(d|h5)=0
※ dd はデータ、 h は仮説と呼ぶことにする
33
ベイズ学習 観測データが与えられた時の仮説の確率を計算 - P(hi|dd)=αP(dd|hi)P(hi) ( ベイズ規則 )
例:外れを 2 回引いたとき P(h5|dd)=α×12×0.2 0.2127≒
データを得た時にあたりを引く ( 事象 X) 確率分布は PP(X|dd)=ΣPP(X|hi)P(hi|dd) ( 定義 )
と予測できる
34
最大事後確率学習(Max A Posteriori:MAP)
与えられたデータの元で尤もらしい仮説を採用
- PP(X|dd)≒PP(X|hMAP) の近似
ベイズ学習の単純化 計算量の緩和
35
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
36
完全なデータからの学習 完全なデータ -モデルの全ての確率変数を含む観測デー
タ
完全なデータからの学習 -観測モデルの未知のパラメータの推定 -ベイジアンネットの条件付確率の学習
37
パラメータの最尤学習離散モデル 当たる確率 θ のわからないくじにおける θ の導出 1. N 個のくじを引いて c 個があたりだったとして このデータが得られる θ の尤もらしさ ( 尤度 ) は P(d|hθ)=θc ・ (1-θ)N-c (hθ :比率 θ の仮説 )
2.尤度の対数 ( 対数尤度 ) を取る L(d|hθ)=log(P(d|hθ))=clogθ+(N-c)log(1-θ)
3. θ で微分して得られた式を 0 にする θ を求める
dL(d|hθ) c l c dθ θ 1-θ N= + θ==0 ⇒
38
パラメータの最尤学習連続モデル 確率変数 θ が連続値をとる場合の最尤学習 ・ P(θ) が連続関数になる -離散モデルと同様の処理で求まる
意思決定には θ が最大になる仮説を採用 -離散モデルも同様
39
パラメータのベイズ学習 ベータ分布(一様分布)の利用 beta[a,b](θ)=αθa-1 ・ (1-θ)b-1
a,b: 超パラメータ ( 分布の形に影響 )
あたりを引いた場合 P(θ|d1)=αP(d1|θ)P(θ)=α’beta[a,b](θ) ・ θ
=beta[a+1,b](θ)
あたりを引くたびに a を 1 増やしはずれを引くたびに b を 1 増やすだけで 事後確率の更新が可能
40
素朴ベイズモデル 予測の対象 C を観測の対象 Xi から求める - PP(C|x1,x2)=αPP(C)PP(x1|C)PP(x2|C)
C P(x1)
t 0.1
f 0.5
C
X1
P(c)=0.5
X2
C P(x2)
t 0.8
f 0.2
41
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
42
隠れ変数を含む学習EMアルゴリズム 隠れ変数を用いることで問題を単純化できる -隠れ変数:学習の際に観測不能な変数
隠れ変数を用いることでややこしくなることも多い
EM アルゴリズム
A B
C D
A B
C D
E 隠れ変数
43
期待値最大化法(Expectation Maximization):EM
隠れ変数が存在する時の最尤学習を行う手法 -パラメータの更新 θ(i+1)=argmaxΣP(ZZ=z|x,θ(i))L(x,ZZ=z|θ)
ZZ: 全ての隠れ変数 L: 対数尤度
教師なしクラスタリング -対象の集合をカテゴリに分類・識別 ベイジアンネットの学習 隠れマルコフモデルの学習
θ
44
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
45
事例に基づく学習 ノンパラメトリック学習 -確率分布に関する仮定を設けずに行う学
習 ・パラメータの学習にはベータ分布を用いた
最近傍モデル カーネルモデル
46
最近傍法 ある点 x とその近傍にある点 x’ は似ているだろ
う -点 x の近くにある点だけを参照 ・ k 個参照する場合は k 近傍法
距離を測るための尺度 D(x,x’) を使用 -ハミング距離・マハラノビス距離 etc
47
カーネルモデル 観測データに距離によって重み付けを行う -重み付けにはよくガウス分布が使われる
K(x,xi)= e ( 赤字は全て未知 )
カーネル関数
確率密度関数 P(x) は P(x)=1/NΣK(x,xi)
1ω2√(2π)d
D(x,xi)2
2ω2
i
48
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
49
ニューラルネットワーク 人工的なニューロン ( 神経細胞 ) の働きの構
築 -電気的信号の収集・処理・伝達
Σ g ai
W0,i
Wj,i
収集 処理 伝達
ユニット i
50
ニューラルネットワークのユニット 入力: ini=ΣajWj,I ( 0 in≦ i 1≦ )
-ユニット j の活性度 ( 出力値 )aj
-ユニット j と i の ( 結合の ) 重み Wj,i
※固定入力 a0=-1 に対するバイアス重み W0,i
処理:活性度関数 g(ini) 人間が設定 出力: ai=g(ini) ( 0 a≦ i 1≦ )
j
51
ニューラルネットワークの構造 前向き結合ネットワーク -入力に対して出力をただ返す
回帰結合ネットワーク -出力値がもう一度入力に用いられる
52
前向き結合ネットワークにおける単純な計算下図の例では a5 を計算
a5=g(W3,5a3+W4,5a4)
=g(W3,5g(W1,3a1+W2,3a2)+W4,5g(W1,4a1+W2,4a2))
1
2
3
4
5
入力ユニット
隠れユニット出力ユニット
53
ニューラルネットワークにおける学習 ネットワーク全体の出力 ( 前スライド a5) が 他のネットワークに対する入力関数となる ネットワーク全体の関数は hW(a1,a2)
W を調節することでネットワークの関数が変
化 パラメータ W の調節による関数の変化の学
習
54
多層前向き結合ニューラルネットワーク(パーセプトロン) 隠れユニットを持たない前向き結合ネットワーク
-出力ユニットが1つのみ
ブール関数を表現可能 -閾関数パーセプトロン IFΣWjxj>h (h: 閾値 )
RETURN 1 I1 or I2
I1
I2
I1 xor I2 は表現不可
超平面
55
多層前向き結合ニューラルネットワーク 隠れユニット ( 変数 ) を含む前向き結合ネットワ
ーク 表現力の向上
誤差逆伝播アルゴリズム -出力値の誤差を最小にするアルゴリズム 任意の関数の近似に利用
1
2
3
4
5
56
カーネルマシン 単層ネットワークでは表現できる関数が乏しい 多層ネットワークでは局所的最適解が沢山出る
カーネルマシン -上のジレンマをある程度解消 複雑な関数を表現可能かつ 効率的な学習アルゴリズムを持
つ
57
20章 統計的学習手法目次 統計的学習とは 完全なデータからの学習 隠れ変数を含む学習 (EM アルゴリズム ) 事例に基づく学習 ニューラルネットワーク まとめ
58
まとめ 統計的学習:確率分布の学習 隠れ変数による問題の単純化や表現力の向上 仮定を設定しない学習:最近傍法・カーネルモ
デル ニューラルネットワーク:収集・処理・伝播
59
応用例:手書き数字認識 3 近傍法により下記の手書き数字も認識可能
各々の図形に近似している図形 (Best3) を参照 -これだけでは精度に難あり 専用ニューラルネットワーク Boosted ニューラルネットワーク
etc