590 likes | 832 Views
エージェントアプローチ 人工知能. B4 片渕 聡. 目次. 19章 学習における知識 20章 統計的学習手法. 19章 学習における知識 目次. 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL) -帰納論理プログラミング (ILP) まとめ. 19章 学習における知識 目次. 学習の論理的な定式化 説明に基づく学習 (EBL) 関連性に基づく学習 (RBL) 知識に基づく学習 (KBIL) -帰納論理プログラミング (ILP) まとめ. 経験による学習.
E N D
エージェントアプローチ人工知能 B4 片渕 聡
目次 • 19章 学習における知識 • 20章 統計的学習手法
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
経験による学習 • 仮説(規則)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) • 上記の式の関係を伴意制約と呼ぶ
事前知識の利用 • 18章では新たな経験から規則を導出 -事前知識を用いていない • 19章では事前知識を役立てる手法を紹介 -事前知識の利用で学習能力が大幅に向上 例:原始人Aが串を用いて調理している所を それまで素手で調理していた原始人Bが目撃 することにより原始人Bは素手を使わない 調理法を学習することができる
論理による学習の表現 • 例を正確に分類するための目標述語Q(x) -例:レストランで待つかどうか (WillWait(x)) • Q(x)と等価な論理表現(仮説)の候補定義C(x) • 学習の目的はQ(x)と等価なC(x)の導出 -∀x Q(x) ⇔ C(x)
論理による学習の表現(例:レストラン問題)論理による学習の表現(例:レストラン問題) • 18章で作成した決定木を定式化すると ∀x WillWait(x) ⇔ Patrons(x,some) ∨ ( Patrons(x,full)∧¬Hungry(x) ) • 新たな例が加わると例に矛盾する仮説を修正 例:Patrons(X,Full)∧Wait(X,0-20)∧ Hungry(X)∧WillWait(X) -この例は上記の式に矛盾 仮説Patrons(X,Full)∧Wait(X,0-20)∧Hungry(X)を追加 仮説
にせの負例・にせの正例 • にせの負例 -実際はTrueなのに仮説がFalseを返す例 • にせの正例 -実際はFalseなのに仮説がTrueを返す例 にせの負例 F F T T T にせの正例 F F F T T
最良仮説探索 • 新たな例が与えられる度に仮説を改定する方法 -仮説の無矛盾性を維持 • 汎化 • 特化
汎化・特化 • 汎化 -仮説がにせの負例を含むようにすること • 特化 -仮説がにせの正例を排除すること 汎用化 F T F T T 特化 F F F T T
最小選択探索 • 予め膨大な仮説空間を用意して 新たな例に矛盾する仮説を除去していく • 初期仮説空間 H1∨H2∨ …∨Hn 例集合に矛盾した仮説をどんどん排除 • 後戻り(仮説の追加)の必要が無い
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
事前知識を用いた学習の概念 • EBL・RBL・KBIL 蓄積 背景知識 (事前知識) 利用 帰納学習 仮説 観測 予測
説明に基づく学習(Explanation-Based Learning:EBL) • 背景知識Bから一般的な規則Hを伴意 観察Dを背景知識を用いて説明 -H∧D ╞ C (Hは未知) -B ╞ H 例 D:串で調理している人がいる B:串で食物を支えることができる H:細くて硬い物体で食物を支えることができる
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
関連性に基づく学習(Relevance-Based Learning:RBL) • 観察を説明するような一般規則を 背景知識を用いて導出 -H∧D ╞ C (Hは未知) -B∧D∧C ╞ H 例 B:特定の国の人は皆同じ言語で話す D:Fernandoはブラジルの人でポルトガル語を話す H:ブラジルに住む人はポルトガル語を話す
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
知識に基づく帰納学習(Knowledge-Based Inductive Learning:KBIL) • 背景知識Bと新たな仮説Hで例を説明 -B∧H∧D ╞ C(含意制約) • 帰納論理プログラミング
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
帰納論理プログラミング(Inductive Logic Programming:ILP) • 含意制約を満たしつつ未知の仮説を導出 -例:家系図 George Mum Elizabeth Philip Charles Anne
背景知識を用いた例の説明 • 背景知識なしで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)]
トップダウン帰納学習手法 • 一般規則から例に合うように特殊化していく 例:Grandfather(x,y)の定義の学習 1.例を正例と負例に分ける 正例:<George,Anne>etc 負例:<Mum,Anne>etc 2.左辺が空の節を構築 [] ⇒ Grandfather(x,y) 3.これでは負例も含むので特化する(繰り返し) Father(x,z) ⇒ Grandfather(x,y) Father(x,z) ∧ Parent(z,y) ⇒ Grandfather(x,y)
逆演繹による帰納学習(1/2) • 逆向き(逆融合)の証明を行う 仮説 ¬Parent(Elizabeth,y)∨ Grandparent(George,y) {y/Anne} KB Parent(Elizabeth,Anne) Grandparent(George,Anne) KB(否定) ¬Grandparent(George,Anne)
逆演繹による帰納学習(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.さらに逆融合していくことで新たな仮説が得られる
19章 学習における知識目次 • 学習の論理的な定式化 • 説明に基づく学習(EBL) • 関連性に基づく学習(RBL) • 知識に基づく学習(KBIL) -帰納論理プログラミング(ILP) • まとめ
まとめ • 事前知識の利用により学習能力が向上 • 汎化・特化を行い例に無矛盾な仮説を構築 • 説明による学習: B ╞ H • 関連性による学習: B∧D∧C ╞ H • 知識に基づく学習: B∧H∧D ╞ C • 帰納論理プログラミング:KBILの実行手法 -トップダウン帰納学習手法 -逆演繹による帰納学習
ここまで19章 • 演繹 -前提が真ならば結論も真だと認めざるを得ないこと 前提 ⇒ 結論
20章 統計的学習手法目次 • 統計的学習とは • 完全なデータからの学習 • 隠れ変数を含む学習(EMアルゴリズム) • 事例に基づく学習 • ニューラルネットワーク • まとめ
20章 統計的学習手法目次 • 統計的学習とは • 完全なデータからの学習 • 隠れ変数を含む学習(EMアルゴリズム) • 事例に基づく学習 • ニューラルネットワーク • まとめ
確率モデルの学習 • 実環境は不確実性に満ち溢れている 経験から実環境の確率法則を学習 • 統計的学習 -確率推論の学習
統計的学習(例) • くじ箱が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 ※dはデータ、hは仮説と呼ぶことにする
ベイズ学習 • 観測データが与えられた時の仮説の確率を計算 -P(hi|d)=αP(d|hi)P(hi) (ベイズ規則) 例:外れを2回引いたとき P(h5|d)=α×12×0.2≒0.2127 • データを得た時にあたりを引く(事象X)確率分布は P(X|d)=ΣP(X|hi)P(hi|d) (定義) と予測できる
最大事後確率学習(Max A Posteriori:MAP) • 与えられたデータの元で尤もらしい仮説を採用 -P(X|d)≒P(X|hMAP)の近似 • ベイズ学習の単純化 • 計算量の緩和
20章 統計的学習手法目次 • 統計的学習とは • 完全なデータからの学習 • 隠れ変数を含む学習(EMアルゴリズム) • 事例に基づく学習 • ニューラルネットワーク • まとめ
完全なデータからの学習 • 完全なデータ -モデルの全ての確率変数を含む観測データ • 完全なデータからの学習 -観測モデルの未知のパラメータの推定 -ベイジアンネットの条件付確率の学習
パラメータの最尤学習離散モデル • 当たる確率θのわからないくじにおけるθの導出 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 ⇒ θ=
パラメータの最尤学習連続モデル • 確率変数θが連続値をとる場合の最尤学習 ・P(θ)が連続関数になる -離散モデルと同様の処理で求まる • 意思決定にはθが最大になる仮説を採用 -離散モデルも同様
パラメータのベイズ学習 • ベータ分布(一様分布)の利用 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増やすだけで 事後確率の更新が可能
素朴ベイズモデル • 予測の対象Cを観測の対象Xiから求める -P(C|x1,x2)=αP(C)P(x1|C)P(x2|C) P(c)=0.5 C X1 X2
20章 統計的学習手法目次 • 統計的学習とは • 完全なデータからの学習 • 隠れ変数を含む学習(EMアルゴリズム) • 事例に基づく学習 • ニューラルネットワーク • まとめ
隠れ変数を含む学習EMアルゴリズム • 隠れ変数を用いることで問題を単純化できる -隠れ変数:学習の際に観測不能な変数 • 隠れ変数を用いることでややこしくなることも多い EMアルゴリズム A B A B E 隠れ変数 C D C D
期待値最大化法(Expectation Maximization):EM • 隠れ変数が存在する時の最尤学習を行う手法 -パラメータの更新 θ(i+1)=argmaxΣP(Z=z|x,θ(i))L(x,Z=z|θ) Z:全ての隠れ変数 L:対数尤度 • 教師なしクラスタリング -対象の集合をカテゴリに分類・識別 • ベイジアンネットの学習 • 隠れマルコフモデルの学習 θ
20章 統計的学習手法目次 • 統計的学習とは • 完全なデータからの学習 • 隠れ変数を含む学習(EMアルゴリズム) • 事例に基づく学習 • ニューラルネットワーク • まとめ
事例に基づく学習 • ノンパラメトリック学習 -確率分布に関する仮定を設けずに行う学習 ・パラメータの学習にはベータ分布を用いた • 最近傍モデル • カーネルモデル
最近傍法 • ある点xとその近傍にある点x’は似ているだろう -点xの近くにある点だけを参照 ・k個参照する場合は k近傍法 • 距離を測るための尺度D(x,x’)を使用 -ハミング距離・マハラノビス距離etc
カーネルモデル • 観測データに距離によって重み付けを行う -重み付けにはよくガウス分布が使われる K(x,xi)= e (赤字は全て未知) カーネル関数 • 確率密度関数P(x)は P(x)=1/NΣK(x,xi) D(x,xi)2 2ω2 1 ω2√(2π)d i
20章 統計的学習手法目次 • 統計的学習とは • 完全なデータからの学習 • 隠れ変数を含む学習(EMアルゴリズム) • 事例に基づく学習 • ニューラルネットワーク • まとめ
ニューラルネットワーク • 人工的なニューロン(神経細胞)の働きの構築 -電気的信号の収集・処理・伝達 W0,i ユニットi Σ g ai Wj,i 収集 処理 伝達
ニューラルネットワークのユニット • 入力:ini=ΣajWj,I(0≦ini≦1) -ユニットjの活性度(出力値)aj -ユニットjとiの(結合の)重みWj,i ※固定入力a0=-1に対するバイアス重みW0,i • 処理:活性度関数g(ini)人間が設定 • 出力:ai=g(ini) (0≦ai≦1) j