研究課題
PRISMは将棋の戦略や文章の曖昧性の解決といった複雑な確率事象を表現し、事象の分布の統計的パラメータをデータから自動的に学習する能力を持つ、世界的に見てもユニークなプログラミング言語である。今年度は確率的モデリング言語としての能力を更に強化するため、様々な改良を行い、PRISM1.11として公開した。PRISM1.11では、(1)PRISMの探索部分の実装言語であるB-Prologの最新バージョンであるB-Prolog7.0との統合を行い、メモリ効率を向上させた。(2)並列EM学習が行えるようになった。確率文脈自由文法のパラメータ学習ではCPU数にほぼ比例して数十倍の速度向上がみられた。(3)決定性のアニーリング方式に基づいたEM学習が利用できるようにした。これはEM学習の局所解の問題を避けるのに効果が期待できる。(4)N-viterbiアルゴリズムを実装し、上位N個のビタビ解を求められるようにした。(5)次に述べるようにベイズ的学習法である変分ベイズ学習法を実装した。確率モデリングでは通常最尤推定に基づくパラメータ学習を行うが、PRISMでは新たにパラメータにディリクレ分布を事前分布として導入し、ディリクレ分布のハイパーパラメータを変分ベイズ学習により学習出来るようにした。そのためPRISM用の変分ベイズ学習アルゴリズムを導出し、実装した。PRISMの変分ベイズ学習は従来知られていた隠れマルコフモデルや確率文脈自由文法をはるかに越える範囲の変分ベイズ学習を可能にしており、例えば、バイオフィフォマティクスで使われるプロファイル隠れマルコフモデルの変分ベイズ学習が可能になった。
すべて 2008 2007 その他
すべて 雑誌論文 (3件) (うち査読あり 3件) 学会発表 (1件) 備考 (1件)
Theory and Practice of Logic Programming, Vol.8,No.1
ページ: 81-109
コンピュータソフトウェア Vol.24,No.4
ページ: 2-22
人工知能学会誌 Vol.22,No.3
ページ: 306-319
http://sato-www.cs.titech.ac.jp/ja/publication/