微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Pymc3中定义Rayleigh Prior?

如何解决如何在Pymc3中定义Rayleigh Prior?

我想先定义瑞利(Rayleigh),以适应下图中分布的观察结果。当前的尝试是作为Gamma分布,但是如您所见,这是一个很差的表示。

使用Scipy的统计模块,我拟合了许多潜在的连续PDF,并通过KS测试(瑞利)找到了最合适的结果。

不幸的是,PYMC3的连续PDF库中没有Rayleigh优先级。

如果有人可以向我展示如何定义此内容,我将不胜感激。当前代码如下:

N_SAMPLES = 30000

y = df.demand

with pm.Model() as demand_model:
    # Uninformed priors for unkNown model parameters 
    mu = pm.Uniform('Mu',4000,8000)
    sigma = pm.Uniform('Sigma',8000)
    # Define demand prior
    demand = pm.Gamma(
        'Demand',mu=mu,sigma=sigma,observed=y
        )
    # Step size
    # step = pm.Metropolis()
    
    # Draw posterior samples
    demand_trace = pm.sample(N_SAMPLES,tune=3000,random_seed=SEED)
    prior = pm.sample_prior_predictive()
    posterior_predictive = pm.sample_posterior_predictive(demand_trace)

post

非常感谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。