小编uda*_*dai的帖子

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

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

假设我有两个节点的PGM XY.让我们说X->Y是图表.

并且X采用两个值{0,1},并且 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)
Run Code Online (Sandbox Code Playgroud)

这里Y0ValsY对应于X值= 0 Y1Vals的值,并且是Y对应于X值= 1的值.

计划是从这些中抽取MCMC样本,并使用Y0_pY1_p 填充离散贝叶斯网络的概率...所以概率表适用P(X) = (X_p,1-X_p)P(Y/X):

  Y  0 …
Run Code Online (Sandbox Code Playgroud)

bayesian-networks pymc pymc3 probabilistic-programming

5
推荐指数
0
解决办法
414
查看次数

在 Apache Spark 和 Elephas 中使用 Keras 模型作为广播变量

我有一个预训练权重 [h5df] 约 700mb 的 keras 模型。我想将它与 Apache Spark 一起用作广播变量。1. 这似乎是不可能的,因为 keras 模型本身不是火花感知的,也不是可序列化的。2. 用谷歌搜索一下,我发现 Elephas 库可以完成这项工作。所以尝试在 ElephasTransformer 中包装 Keras 预训练模型。这引发了多个错误(我使用 python 2.7)。例如在 Elephas 的文件 ml_model.py 中,“from pyspark.ml.util import keyword_only”,导入不可用。即使我尝试将其注释掉并在代码中进行适当的修改时,它似乎也无法处理 keras 模型的广播,因为它会在其中一个密集层中引发张量错误。

如何在 apache spark 中使用预训练的 keras 模型作为广播变量?

broadcast apache-spark keras

3
推荐指数
1
解决办法
1624
查看次数