我有一个想要建模的周期性信号。我想让信号能够及时拉伸和压缩,我不知道确切的轮廓。
目前,我正在将相位进展建模为随机游走,并通过将平均似然定义为相位上的正弦和余弦之和来捕捉周期性,其中余弦上的权重是要拟合的参数
即。
y = N(f(phase),sigma) = N(sum_i(a_i*sin(phase) + b_i*cos(phase)),sigma)
这似乎在某种程度上有效,但我想改变f的定义,使其不依赖于罪和余额的总和。
我正在研究高斯过程,并认为可以在那里找到解决方案 - 但我无法弄清楚如何(如果可能的话)在相位方面定义y使用GP。
pymc github网站上有一个例子:
y_obs = pm.gp.GP('y_obs', cov_func=f_cov, sigma=s2_n, observed={'X':X, 'Y':y})
这里的问题是X被定义为观察到的,而我需要将其建模为随机变量。
我试过这个表格:
y_obs = pm.gp.GP('y_obs', X = phase , cov_func=f_cov, sigma=s2_n, observed={ 'Y':y})
但这会导致错误:
File "/home/person/.conda/envs/mcmcx/lib/python3.6/site-packages/pymc3/distributions/distribution.py", line 56, in __init__
raise TypeError("Expected int elements in shape")
我是HB/GP/pymc3
的新手......甚至是stackoverflow。如果问题已经解决,请道歉。