pgmpy/pgmpy

Python Toolkit for Causal and Probabilistic Reasoning

解决的问题

pgmpy 提供了一个基于图形模型的因果和概率推理框架。它允许用户构建、学习并执行复杂模型的推理,这些模型用于表示变量之间的依赖关系,从而能够发现因果关系,并基于观测证据预测结果。

工作原理

该库实现了多种图形模型的数据结构,包括有向无环图(DAG)、贝叶斯网络和结构方程模型。它为多个关键任务提供了模块化、可组合的 API:

  • 结构学习: 从数据中学习模型结构,并支持整合专家知识。
  • 参数估计: 从观测数据中估计条件概率分布(CPD)。
  • 推理: 计算后验分布(概率推理)或干预分布(因果推理)。
  • 模拟: 基于指定的证据或干预生成合成数据。

该工具尽可能与 scikit-learn 兼容,使其能够集成到标准的机器学习流水线中。

适用人群

适用于从事概率图模型、因果发现和因果推断的研究人员和开发者。

主要亮点

  • 广泛模型支持: 支持 DAG、PDAG、MAG、PAG、贝叶斯网络、动态贝叶斯网络和结构方程模型。
  • 因果工具集: 包含因果发现、识别和验证的算法。
  • 灵活的数据处理: 支持离散数据、线性高斯数据以及具有任意关系的混合数据(通过 Torch 后端)。
  • 模块化 API: 采用统一且可组合的 API,使库具备可扩展性,并与 scikit-learn 流水线兼容。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目