Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyMC3中的正弦回归_Python_Bayesian_Pymc - Fatal编程技术网

Python PyMC3中的正弦回归

Python PyMC3中的正弦回归,python,bayesian,pymc,Python,Bayesian,Pymc,我正在通过一个回归示例探索PyMC3。我从一条直线开始,然后移动到一个二次曲线,这非常有效。当我尝试移动到一个包含随机变量的正弦函数时,尽管事情变得糟糕 这是我的PyMC3代码: import pymc as pm import numpy as np trace = None with pm.Model() as model: alpha = pm.Normal('alpha', mu=0, sd=20) beta = pm.Normal('beta', mu=0, sd=2

我正在通过一个回归示例探索PyMC3。我从一条直线开始,然后移动到一个二次曲线,这非常有效。当我尝试移动到一个包含随机变量的正弦函数时,尽管事情变得糟糕

这是我的PyMC3代码:

import pymc as pm
import numpy as np

trace = None
with pm.Model() as model:
    alpha = pm.Normal('alpha', mu=0, sd=20)
    beta = pm.Normal('beta', mu=0, sd=20)
    mewmew = pm.Normal('mewmew', mu=0, sd=20)
    sigma = pm.Uniform('sigma', lower=0, upper=20)

    y_est = alpha + beta * numpy.sin(mewmew * x)

    likelihood = pm.Normal('y', mu=y_est, sd=sigma, observed=y)

    start = pm.find_MAP()
    step = pm.NUTS(state=start)
    trace = pm.sample(2000, step, start=start, progressbar=False)

    pm.traceplot(trace);
我得到这个错误:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-139-60a584151c07> in <module>()
      9     sigma = pm.Uniform('sigma', lower=0, upper=20)
     10 
---> 11     y_est = alpha + beta * numpy.sin(mewmew * x)
     12 
     13     likelihood = pm.Normal('y', mu=y_est, sd=sigma, observed=y)

AttributeError: sin
---------------------------------------------------------------------------
AttributeError回溯(最近一次呼叫上次)
在()
9西格玛=pm.均匀('sigma',下限=0,上限=20)
10
--->11 y_est=α+β*numpy.sin(mewmew*x)
12
13可能性=pm.正常('y',μ=y_est,sd=西格玛,观察到的=y)
归因者错误:罪

提前谢谢

发现PyMC3中内置了一个正弦函数。它叫“pymc.sin”。我在这里写了关于整个过程的博客: