如何在 pymc3 中创建 SkewNormal 随机变量?
How to create a SkewNormal stochastic in pymc3?
如何使用 DensityDist
为 pymc3 创建 SkewNormal 分布?有几个指向 github 页面的死链接解释了如何创建浮动的自定义随机指标。
exp
是在 theano 中实现的,但我不认为正态累积分布或 erf
函数是。
我想我不能只使用类似的东西:
F = DensityDist('F', lambda value: pymc.skew_normal_like(value, um, std, a), shape = N)
我在哪里从 pymc2 导入 skew_normal_like 分布?
erf
函数是在Theano中实现的。试试这个
skn = pm.DensityDist('skn', lambda value: tt.log(1 + tt.erf(((value - mu) * tt.sqrt(tau) * alpha)/tt.sqrt(2))) + (-tau * (value - mu)**2 + tt.log(tau / np.pi / 2.)) / 2. )
其中:
tau = sd**-2
更新:
SkewNormal 现在作为即用型 PyMC3 发行版的一部分包含在内。
如何使用 DensityDist
为 pymc3 创建 SkewNormal 分布?有几个指向 github 页面的死链接解释了如何创建浮动的自定义随机指标。
exp
是在 theano 中实现的,但我不认为正态累积分布或 erf
函数是。
我想我不能只使用类似的东西:
F = DensityDist('F', lambda value: pymc.skew_normal_like(value, um, std, a), shape = N)
我在哪里从 pymc2 导入 skew_normal_like 分布?
erf
函数是在Theano中实现的。试试这个
skn = pm.DensityDist('skn', lambda value: tt.log(1 + tt.erf(((value - mu) * tt.sqrt(tau) * alpha)/tt.sqrt(2))) + (-tau * (value - mu)**2 + tt.log(tau / np.pi / 2.)) / 2. )
其中:
tau = sd**-2
更新:
SkewNormal 现在作为即用型 PyMC3 发行版的一部分包含在内。