pgmpy/pgmpy

Python Toolkit for Causal and Probabilistic Reasoning

何を解決するか

pgmpy はグラフィカルモデルを用いた因果的・確率的推論のためのフレームワークを提供します。ユーザーが変数間の依存関係を表現する複雑なモデルを構築・学習・推論できるようにし、因果関係の発見や観測された証拠に基づく結果の予測を可能にします。

動作方法

このライブラリは、有向非巡回グラフ(DAG)、ベイズネットワーク、構造方程式モデルなどのグラフィカルモデル用のさまざまなデータ構造を実装しています。以下の主要なタスクに対してモジュール化・合成可能なAPIを提供しています:

  • 構造学習: データからモデル構造を学習し、専門知識を統合できる機能を備えています。
  • パラメータ推定: 観測データから条件付き確率分布(CPD)を推定します。
  • 推論: 事後分布(確率的推論)または介入分布(因果的推論)を計算します。
  • シミュレーション: 指定された証拠や介入に基づいて合成データを生成します。

可能な限り scikit-learn と互換性を持たせる設計となっており、標準的なMLパイプラインに統合できます。

対象ユーザー

確率的グラフィカルモデル、因果発見、因果推論に取り組む研究者や開発者向けです。

特徴

  • 広範なモデル対応: DAG、PDAG、MAG、PAG、ベイズネットワーク、動的ベイズネットワーク、構造方程式モデルをサポート。
  • 因果ツールキット: 因果発見、識別、検証のためのアルゴリズムを含む。
  • 柔軟なデータ処理: 離散データ、線形ガウスデータ、任意の関係を持つ混合データ(Torchバックエンド経由)に対応。
  • モジュール化API: 統一的で合成可能なAPIを採用し、拡張性とscikit-learnパイプラインとの互換性を実現。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト