Skip to main content
QUICK REVIEW

[論文レビュー] Effect Handling for Composable Program Transformations in Edward2

Dave Moore, Maria I. Gorinova|arXiv (Cornell University)|Nov 15, 2018
Software Engineering Research参考文献 1被引用数 6
ひとこと要約

この論文は、TensorFlowにおける確率的プログラミングフレームワークEdward2において、プログラム変換を組み込み可能でモジュラーなメカニズムとして代数的効果ハンドラを使用することを提案する。確率的演算(例:サンプリング)を拡張可能な効果として扱うことで、条件付き処理、トレース、再パrameterization、変分推論といった、ネスト可能で組み合わせ可能な変換がハンドラの組み合わせによって可能となり、ADVIAのような複雑な推論アルゴリズムの実装が著しく簡素化される。

ABSTRACT

Algebraic effects and handlers have emerged in the programming languages community as a convenient, modular abstraction for controlling computational effects. They have found several applications including concurrent programming, meta programming, and more recently, probabilistic programming, as part of Pyro's Poutines library. We investigate the use of effect handlers as a lightweight abstraction for implementing probabilistic programming languages (PPLs). We interpret the existing design of Edward2 as an accidental implementation of an effect-handling mechanism, and extend that design to support nested, composable transformations. We demonstrate that this enables straightforward implementation of sophisticated model transformations and inference algorithms.

研究の動機と目的

  • 確率的プログラミングフレームワークにおけるプログラム変換のためのモジュラーで組み込み可能な抽象化の欠如に対処すること。
  • Edward2の既存のインターセプションメカニズムが効果処理の偶然的実装であることが示され、それを形式的に再解釈すること。
  • 再パラメータリゼーション、条件付き処理、密度計算などの変換を、効果ハンドラを用いてネスト可能で組み込み可能な形で実装すること。
  • 効果ハンドラがADVIAや変分推論のような高度な推論アルゴリズムの実装をどのように簡素化できるかを示すこと。

提案手法

  • サンプリングなどの確率的演算を、ユーザー定義ハンドラがインターセプトおよび処理可能な代数的効果として扱う。
  • 条件付き処理、トレース、再パラメータリゼーションなどのプログラム変換を、サンプリング演算の振る舞いを変更するハンドラとしてモデル化する。
  • ハンドラが下位のハンドラに演算を転送することで、ハンドラの組み合わせを可能にし、効果チェーンを保持する。
  • `condition`、`trace`、`unconstrain`、`log_joint` などのハンドラを実装し、ハンドラのネストによって推論タスクをサポートする。
  • 再パラメータリゼーション中にヤコビアン補正を実装するために、TensorFlow Probabilityの `TransformedDistribution` と `Bijector` を使用する。
  • Edward2のインターセプションシステムを基盤とし、継続を暗黙的に行う制限付き効果処理の形式として再解釈する。

実験結果

リサーチクエスチョン

  • RQ1効果ハンドラは、確率的プログラミングフレームワークにおける組み込み可能でモジュラーなプログラム変換を実装するために使用可能か?
  • RQ2Edward2の既存のインターセプションメカニズムは、どのように効果処理として再解釈可能であり、モジュラリティと組み込み性が向上するか?
  • RQ3ADVIAのような複雑な推論アルゴリズムは、組み合わせ可能な効果ハンドラを用いてどの程度実装可能か?
  • RQ4非局所的プログラム変換(例:計算グラフ上の記号的代数)を表現する際、効果処理の限界は何か?

主な発見

  • Edward2のインターセプションシステムは、偶然的ではあるが機能的な効果処理の実装であることが示され、ハンドラがサンプリングの振る舞いを上書き可能である。
  • ハンドラの組み合わせにより、非制限的再パラメータリゼーション、その後の条件付き処理および対数密度の導出といった洗練された変換が実装可能である。
  • 非制限的変換、変分ガイドの構築、および結合密度の導出のためのハンドラを組み合わせることで、ADVIAの明確で組み込み可能な実装が可能になる。
  • 効果ハンドラは、条件付き対数確率を蓄積するトレースに類似したハンドラを介して、自動的に対数結合密度を導出可能である。
  • 拡張可能なハンドラインターフェースを通じて、非中心化や逆CDF変換などの再パラメータリゼーション技術が実装可能である。
  • ハンドラを用いてサンプリング演算をパラメータ化された分布に初期化・変換することで、自動的な変分推論が可能になる。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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