如何使用pymc参数化概率图模型?

2024-01-14

如何使用 pymc 参数化概率图形模型?

假设我有一个带有两个节点的 PGMX and Y。 可以说X->Y是图表。

And X有两个值{0,1}, and Y也有两个值{0,1}.

我想使用 pymc 来学习分布的参数并填充 用于运行推理的图形模型。

我能想到的方法如下:

X_p = pm.Uniform("X_p", 0, 1)
X = pm.Bernoulli("X", X_p, values=X_Vals, observed=True)
Y0_p = pm.Uniform("Y0_p", 0, 1)
Y0 = pm.Bernoulli("Y0", Y0_p, values=Y0Vals, observed=True)
Y1_p = pm.Uniform("Y1_p", 0, 1)
Y1 = pm.Bernoulli("Y1", Y1_p, values=Y1Vals, observed=True)

Here Y0Vals的值是Y对应于X值 = 0 和Y1Vals的值是Y对应于X值 = 1。

计划是从中抽取 MCMC 样本,并使用以下方法:Y0_p and Y1_p填充离散贝叶斯网络的概率...所以概率表 为了P(X) = (X_p,1-X_p)P(Y/X):

  Y  0       1
X 
0   Y0_p   1-Y0_p
1   Y1_p   1-Y1_p

问题:

  1. 这是这样做的正确方法吗?
  2. 这不是很笨拙吗,特别是如果我有的话X有数百个离散值? 或者如果一个变量有两个父项X and Y每个有 10 个离散值?
  3. 我能做点更好的事吗?
  4. 有没有什么好书详细介绍我们如何进行这种互连?

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用pymc参数化概率图模型? 的相关文章

  • pymc3 中的自定义可能性

    如何在 PyMC3 中定义自定义可能性 在 PyMC2 中 我可以使用 pymc potential 我尝试使用pymc Potential然而 在 PyMC3 中 布尔运算似乎无法应用于参数 我收到类似的错误this当我这样做时 例如 以
  • 使用“LKJCorr”先验修改 PyMC3 中的 BPMF:使用“NUTS”的 PositiveDefiniteError

    我之前实现了原来的贝叶斯概率矩阵分解 BPMF 模型中pymc3 看我之前的问题供参考 数据源和问题设置 根据 twiecki 对该问题的回答 我使用以下方法实现了该模型的变体LKJCorr相关矩阵的先验和标准差的统一先验 在原始模型中 协
  • PyMC 3 中的生存分析

    我尝试移植简单的生存模型从这里 介绍中的第一个 从 PyMC 2 到 PyMC 3 但是 我没有找到任何与 观察到的 装饰器等效的东西 并且我尝试编写新发行版失败了 有人可以提供一个例子 这是如何在 PyMC 3 中完成的吗 这是一个棘手的
  • PyMC3 Dirichlet 过程多元高斯混合模型

    我无法让我的形状适用于狄利克雷过程高斯混合模型 我的数据observations有形状 number of samples number of dimensions 每个高斯均值应从各向同性先验中得出 每个高斯协方差应为单位矩阵 我以为我设
  • 用可变速率拟合上限泊松过程

    我正在尝试使用最大后验估计来估计泊松过程的速率 其中速率随时间变化 这是一个速率线性变化的简化示例 ax b import numpy as np import pymc Observation a actual 1 3 b actual
  • 安装和导入后,colaboratory 将不会承认 arviz

    在Google的合作实验室中 安装了arviz然后导入arviz没有错误 但在代码单元中 pm plot posterior samples 得到错误 arviz未安装 尝试绘制贝叶斯代码 pm plot posterior samples
  • Python 贝叶斯信念网络分类器

    谁能推荐一个用 Python 实现的贝叶斯信念网络分类器 它可以根据描述多个相互关联对象的一系列事实的稀疏网络的输入生成信念概率 例如鉴于 FOL 中表述的事实 X 饿了 是一只猴子 正在吃东西 如下所示 isHungry x isMonk
  • 如何使用 pymc 制作离散状态马尔可夫模型?

    我试图找出如何正确制作离散状态马尔可夫链模型pymc http pymc devs github io pymc index html 举个例子 查看nbviewer http nbviewer ipython org github shp
  • 如何使用pymc参数化概率图模型?

    如何使用 pymc 参数化概率图形模型 假设我有一个带有两个节点的 PGMX and Y 可以说X gt Y是图表 And X有两个值 0 1 and Y也有两个值 0 1 我想使用 pymc 来学习分布的参数并填充 用于运行推理的图形模型
  • PyMC - 方差-协方差矩阵估计

    我读了下面的论文 http www3 stat sinica edu tw statistica oldpdf A10n416 pdf http www3 stat sinica edu tw statistica oldpdf A10n4
  • 使用 PyMC3 进行贝叶斯概率矩阵分解 (BPMF):使用“NUTS”的 PositiveDefiniteError

    我已经实施了贝叶斯概率矩阵分解 https www cs toronto edu amnih papers bpmf pdf算法使用pymc3在Python中 我还实现了它的前身 概率矩阵分解 PMF 看我之前的问题 https stats
  • pymc3 具有来自核密度估计的自定义似然函数

    我正在尝试将 pymc3 与从一些观察数据派生的似然函数一起使用 这些观察到的数据不符合任何好的标准分布 所以我想根据这些观察来定义我自己的数据 一种方法是对观测值使用核密度估计 这在 pymc2 中是可能的 但与 pymc3 中的 The
  • 使用 PYMC3 对 RV 求和

    我正在尝试从图像中实现模型 我是 PyMC3 的新手 我不确定如何正确构建模型 我的尝试如下 sample data logprem np array 8 66768002 8 49862181 8 60410456 8 54966038
  • 使用Python3.x创建贝叶斯网络并学习参数[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在为 Windows 上的 python3 x 寻找最合适的工具来创建贝叶斯网络 从数据中学习其参
  • 在 PYMC3 中使用自定义可能性会导致“expected ndarray”错误

    我正在尝试在 PYMC3 中使用自定义分布 广义极值或 GEV 分布 我已经编写了一些代码来计算这个 但我得到一个错误 ValueError 需要一个 ndarray 应用导致错误的节点 MakeVector dtype float64 l
  • 从本地源安装 anaconda 库

    一段时间以来 我一直尝试在非常复杂的代理后面的 Windows PC 上安装 pymc 有效地使其安装在未连接到互联网的计算机上 我尝试在 condarc 文件中设置代理但未成功 但仍然收到错误消息 conda安装 chttps conda
  • 我无法导入 pymc3

    我无法导入 pymc3 安装后出现以下错误消息 根据我安装的其他人指出的问题 pip 安装 pymc3 conda 安装 m2w64 工具链 conda安装theano 尝试导入 theano 时我也收到相同的错误消息 导入错误 无法从 t
  • 多维 PyMC3 观察

    我的模型有一个 LogNormal RV C 形状为 W D W 中的每一行和 D 中的每一列都有一个正在拟合的参数 我试图将我的观察结果指定为 W D 矩阵 但是 这会导致 theano 编译错误 raise Exception Comp
  • PyMC:马尔可夫系统中的参数估计

    简单的马尔可夫链 假设我们想要估计系统的参数 以便我们可以在给定时间步 t 的状态的情况下预测系统在时间步 t 1 的状态 PyMC 应该能够轻松处理这个问题 让我们的玩具系统由一维世界中的移动物体组成 状态是对象的位置 我们想要估计潜在变
  • 可以在 pystan 或 pymc3 中使用样本权重吗?

    如果我观察到的数据集具有权重 例如跟踪多重性 是否可以将其提供给 pystan 或 pymc3 类似于函数签名 http mc stan org rstanarm reference stan glm html http mc stan o

随机推荐

  • jOOQ - 与嵌套子查询连接

    假设我想知道是谁写的CLRS在书中数据库 表BOOK AUTHOR带连接表BOOK AUTHOR SelectConditionStep
  • 如何在R语言中展开用户和环境变量?

    有什么方法可以扩展 R 中的波浪号和环境变量吗 例如 在Python中 您可以通过写出以下一组代码来获取它 import os os path expanduser r workspace return Users yourname r w
  • 条件编译的注意事项[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 什么时候进行条件编译是个好主意 什么
  • Vagrant ssh 连接到主机 127.0.0.1:2222 端口 22: 文件号错误

    每当我尝试连接到本地 Vagrant 时 运行时都会收到此错误ssh email protected cdn cgi l email protection 2222来自 Windows git bash ssh connect to hos
  • HTML 5 文件加载图像作为背景图像

    是否可以通过 HTML 5 文件 API 加载图像并使用 javascript jquery 将其设为 css 背景图像 如果可能的话 是如何做到的 dronus 在评论部分发布了这个链接 给了我一个很好的答案 sveinbjorn org
  • 如何为 jsoncpp 编写 cmake 模块?

    我想用jsoncpp用于编写 C 代码来解析 JSON 文件 让我解释一下我做了什么 我创建了一个CMakeLists txt我做了一个FindJsoncpp cmake以及一个简单的 c 文件来测试jsoncpp 当我在不使用 cmake
  • 如何使用返回可变引用的迭代器创建自己的数据结构?

    我已经在 Rust 中创建了一个数据结构 我想为其创建迭代器 不可变迭代器很简单 我目前有这个 并且运行良好 This is a mock of the real EdgeIndexes class as the one in my rea
  • 背景图像CSS不工作

    我正在使用 bootstrap 构建一个简单的网站 但我似乎无法让背景图像 css 样式正常工作 我想把它放在我的 jumbotron div 上 这是我网站的第一部分 除了导航栏 有些人将其称为英雄部分 这是我的代码 我哪里出错了 mai
  • OpenMP 和 C++11 多线程

    我目前正在从事一个混合高性能计算 HPC 和交互性的项目 因此 HPC 部分依赖于 OpenMP 主要是具有大量相同计算的 for 循环 但它包含在具有 GUI 和多线程的更大框架中 目前通过 c 11 线程实现 std thread an
  • 临时表范围?

    我在存储过程中使用临时表 tempTable 我用它来运行 ASP net 报告 报告服务 我正在做类似的事情 eg Code SELECT INTO tempTable FROM Contacts WHERE ContactID lt 1
  • 引用 JSON (Javascript) 对象的元素

    如何引用 JSON Javascript 对象的元素 示例 alert homes Agents 1 name
  • 如何使用 Android 地图实用程序库显示 InfoWindow

    我在用着Google 地图 Android API 实用程序库 http googlemaps github io android maps utils 为了以集群的方式显示地图中的多个标记 我已按照说明进行操作 并查看了库中的示例 但我不
  • Jasper Reports 中的空白子报表

    我正在尝试启动我在 iReport 中创建的报告 其中包含主报告和子报告 在 iReport 中 子报表启动正常并包含数据 但是当我尝试从 java 代码中启动它时 子报表为空 到目前为止我所做的 我在主报告中有一个名为 SUBREPORT
  • 单元格为空,但 IsEmpty 不起作用

    我正在编写一个 IF 语句 它使用 IsEmpty 函数来确定 True 或 False 我在具有值 例如 PRB2039 的单元格和空白单元格上尝试了它来测试我的代码 结果是相同的 我删除了格式 并在新工作表上尝试了它 我不知道我做错了什
  • 哪里可以找到 C++11 参考论文/数字以及书籍参考 [重复]

    这个问题在这里已经有答案了 可能的重复 c 11标准在哪里 https stackoverflow com questions 7747069 where is the c11 standard 我想购买 下载一些东西 首先 我想要官方 c
  • Ruby 2.3 安全导航运算符 '&. 之间有什么区别?和“尝试!”来自 ActiveSupport 的方法?

    是否是安全操作员 从 Ruby 2 3 开始try ActiveSupport 中的方法可以互换吗 如果不是 它们之间有什么区别 一个关键的区别是try 是一个额外的方法调用 而 不是 我能想到这会造成一个 诚然是人为的 差异 1234 g
  • MapView 注释中的较长字幕(swift)

    我有一个带有显示标题和副标题的注释的地图视图 字幕有时比注释的宽度长 所以我想知道是否可以使它们成为多行 到目前为止它的编码是这样的 func annotate newCoordinate title String subtitle Str
  • 用静态类型语言实现干净且类型安全的状态机?

    我用 Python 实现了一个简单的状态机 import time def a print a return b def b print b return c def c print c return a if name main stat
  • 使用 awk 根据两个字段删除文件中的冗余

    我试图根据前两列的值删除一个非常大的文件 约 100 000 条记录 中的重复行 而不考虑它们的顺序 然后打印这些字段 其他列 所以 根据这个输入 A B XX XX A C XX XX B A XX XX B D XX XX B E XX
  • 如何使用pymc参数化概率图模型?

    如何使用 pymc 参数化概率图形模型 假设我有一个带有两个节点的 PGMX and Y 可以说X gt Y是图表 And X有两个值 0 1 and Y也有两个值 0 1 我想使用 pymc 来学习分布的参数并填充 用于运行推理的图形模型