とりあえず、イメージは分かりました。
しかし、本題の帰納論理プログラミングよりも、最後の講義資料に載っていた”確率と述語論理の融合”でまとめられていた資料が目に留まりました。
「ベイジアンネットワークの表現力の向上」
- KBMC (Knowledge-Based Model Construction)
- CPTの構築にPrologを使い、述語論理の表現力をBNへ。
- 節の含意部に確率を与える。
- 意味論も確率空間もない → あくまでBNの構造とCPTの構築のために述語論理を用いる。
- SLP (Stochastic Logic Programimng)
- 確率文脈文法の拡張。
- 節の含意部に確率を与える。
- 確率空間の議論がない。
- 論理式の証明に確率を割り当てたので、意味論的に問題が多い。(exp. P(A∧A)≠P(A)となる可能性がある)
- PRISM (Programing in Statistical Modeling)
- 最初から単一の確率空間を構成して、その上で論理式の確率を議論する立場をとる。
- 論理プログラムの意味論の確率的拡張を与える。
KBMCのアプローチだと、基本的に確率空間をあらかじめ定義することはないそうです。
あくまで知識の表現としてだけに述語論理を用いて、確率を語るためには一度確率的命題論理(BNなど)を構築する必要があると思って間違いはないでしょうかね。
Bayesian Logic ProgramやLogical Bayesian NetworksもKBMCの立場からのアプローチなので、確率空間を考えたりはしてないんですね。
個人的には、PRISMやProbLogのような確率空間をあらかじめ定義するような手法の方が理解しやすいです。
たぶん、実際にPRISMでプログラムを書いたことがあるからでしょうけど。
とりあえず、ProbLogにさらに興味を持ってきたのでさらに勉強してみたいです。
0 コメント:
コメントを投稿