Skip to main content
QUICK REVIEW

[論文レビュー] A Dynamic Programming Algorithm for Inference in Recursive Probabilistic Programs

Andreas Stuhlmüller, Noah D. Goodman|arXiv (Cornell University)|Jun 15, 2012
Bayesian Modeling and Causal Inference参考文献 12被引用数 23
ひとこと要約

この論文では、再帰的確率的プログラムにおける正確な推論を可能にする動的計画法のアルゴリズムを提示している。このアルゴリズムは、それらのプログラムを依存関係(循環的を含む)を明示的にモデル化する要因分解された和積ネットワーク(FSPN)にコンパイルすることで実現される。アルゴリズムは、強く連結な成分(SCC)をトップロジカル順序で処理し、固定点反復を用いてそれらを解くことで、従来の手法が失敗する証拠無限のケースですら効率的な周辺化を可能にする。

ABSTRACT

We describe a dynamic programming algorithm for computing the marginal distribution of discrete probabilistic programs. This algorithm takes a functional interpreter for an arbitrary probabilistic programming language and turns it into an efficient marginalizer. Because direct caching of sub-distributions is impossible in the presence of recursion, we build a graph of dependencies between sub-distributions. This factored sum-product network makes (potentially cyclic) dependencies between subproblems explicit, and corresponds to a system of equations for the marginal distribution. We solve these equations by fixed-point iteration in topological order. We illustrate this algorithm on examples used in teaching probabilistic models, computational cognitive science research, and game theory.

研究の動機と目的

  • ネストされた条件付き確率と自己再帰によって生じる、単純な列挙では非効率的となる再帰的確率的プログラムにおける正確な推論の課題に対処すること。
  • 計算グラフが無サイクルでなければならないという既存の動的計画法の制限を克服し、証拠無限の計算を扱えるようにすること。
  • 再帰呼び出しの間で共有される部分構造を活用することで、部分分布が互いに循環的に依存する場合でも、効率的な周辺化を可能にすること。
  • モデル固有の推論アルゴリズムを必要とせず、任意の離散的確率的プログラミング言語用の関数的インタプリタと組み合わせて動作する汎用的ソリューションを提供すること。
  • 教育、認知科学、ゲーム理論の実用的応用を支援するため、構造的に複雑だが小さなモデルにおいて正確な推論を可能にすること。

提案手法

  • 確率的プログラムを、部分分布間の依存関係(再帰的を含む)を再現する要因分解された和積ネットワーク(FSPN)にコンパイルする。
  • 部分分布の依存関係グラフを構築し、周辺分布を規定する方程式系を表現する。
  • 循環的依存関係を処理するため、依存関係グラフの頂点を強く連結な成分(SCC)にクラスタリングする。
  • 各SCC内での方程式系を固定点反復により解き、正しい周辺分布への収束を保証する。
  • SCCのトップロジカル順序を用いて、依存関係の順序を尊重する形で成分を処理する。
  • インタプリタの再帰的構造を活用して、再利用可能な部分計算を自動的に露呈させ、推論ロジックをハードコードすることなく効率的な周辺化を実現する。

実験結果

リサーチクエスチョン

  • RQ1確率的自己再帰と証拠無限の計算を含む再帰的確率的プログラムにおいて、正確な推論を効率的に行うことは可能か?
  • RQ2動的計画法を、確率的プログラムにおける部分分布間の循環的依存関係に対しても一般化できるか?
  • RQ3モデル固有の最適化を必要とせず、関数的インタプリタから汎用的な推論アルゴリズムを構築できる範囲はどの程度か?
  • RQ4ネストされた条件付き確率を含む小さな複雑なモデルにおいて、このアプローチは拒否サンプリングやMCMCに比べてどの程度の性能向上を達成するか?
  • RQ5この手法は、従来の方法では非効率となる認知科学やゲーム理論の古典的問題(例:青い目島民のパズル)を処理できるか?

主な発見

  • アルゴリズムは、証拠無限の計算を伴う再帰的確率的プログラムに対しても正確な周辺分布を計算でき、IBAL や PRISM といった従来の動的計画法では対応できない。
  • MCMC や拒否サンプリングが指数的拒否率により失敗するにもかかわらず、この手法は人口4人の青い目島民のパズルに対しても正確な推論を可能にする。
  • トップロジカル順序で並べた強く連結な成分に対する固定点反復は、部分分布間の循環的依存関係が存在する場合でも、正しい周辺分布へ収束することが保証される。
  • 部分計算の共有と重複するパスの探索の回避により、単純な列挙や拒否サンプリングよりも効率的である。
  • このアプローチは、再帰的および循環的依存関係を扱えるように、和積ネットワークの適用範囲を拡張し、より広いクラスの確率的プログラムに適用可能となる。
  • 実験的評価では、このアルゴリズムが構造的に複雑な小さなモデルにスケーリング可能であり、認知科学やゲーム理論分野における教育および研究に適していることが示された。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。