Hi. GP creation is falling when I try to make it with not-1d input space:
import pymc3 as pm
import numpy as np
from sklearn.datasets.samples_generator import make_moons
X, Y = make_moons(noise=0.2, random_state=0, n_samples=15)
with pm.Model() as GP:
l = np.array([0.2, 1.0])
K = pm.gp.cov.ExpQuad(input_dim=2, lengthscales=l)
M = pm.gp.mean.Zero()
s = pm.HalfCauchy('s', 2.5)
y_obs = pm.gp.GP('y_obs', mean_func=M, cov_func=K, sigma=s, observed={'X': X, 'Y': Y})
The error is happening in the last line:
log_thunk_trace: There was a problem executing an Op.
Traceback (most recent call last):
File “C:/Users/neuro/PycharmProjects/share_spec/gaussian_process.py”, line 13, in
y_obs = pm.gp.GP(‘y_obs’, mean_func=M, cov_func=K, sigma=s, observed={‘X’: X, ‘Y’: Y})
File “C:\Users\neuro\Anaconda2\lib\site-packages\pymc3\distributions\distribution.py”, line 39, in new
return model.Var(name, dist, data, total_size)
File “C:\Users\neuro\Anaconda2\lib\site-packages\pymc3\model.py”, line 534, in Var
total_size=total_size, model=self)
File “C:\Users\neuro\Anaconda2\lib\site-packages\pymc3\model.py”, line 1018, in init
self.logp_elemwiset = distribution.logp(**self.data)
File “C:\Users\neuro\Anaconda2\lib\site-packages\pymc3\gp\gp.py”, line 76, in logp
return MvNormal.dist(mu, Sigma).logp(Y)
File “C:\Users\neuro\Anaconda2\lib\site-packages\pymc3\distributions\multivariate.py”, line 200, in logp
delta = value - mu
File “C:\Users\neuro\Anaconda2\lib\site-packages\theano\tensor\var.py”, line 147, in sub
return theano.tensor.basic.sub(self, other)
File “C:\Users\neuro\Anaconda2\lib\site-packages\theano\gof\op.py”, line 674, in call
required = thunk()
File “C:\Users\neuro\Anaconda2\lib\site-packages\theano\gof\op.py”, line 843, in rval
fill_storage()
File “C:\Users\neuro\Anaconda2\lib\site-packages\theano\gof\cc.py”, line 1698, in call
reraise(exc_type, exc_value, exc_trace)
File “”, line 2, in reraise
ValueError: Input dimension mis-match. (input[0].shape[1] = 15, input[1].shape[1] = 2)
Am I doing smth wrong?