Пример #1
0
# Outputs (7 joint torques)
Ytrain = normalize(train[:100, 21:23])[0]

# Load test set
test = np.matrix(scipy.io.loadmat("/home/victor/Documents/MTL-GP/_data/sarcos_inv_test.mat")["sarcos_inv_test"])
Xtest = test[:100, :21].T
Ytest = normalize(test[:100, 21:23])[0]

# my_GP = GaussianProcess(SMKernel(Xtrain.shape[0], 3), Xtrain)
# my_GP = GaussianProcess(DotKernel(), Xtrain)
my_GP = GaussianProcess(SEKernel(), Xtrain)
my_GP.add_task(Ytrain[:,0])
my_GP.add_task(Ytrain[:,1])
# Ytrain = my_GP.gpr_normalize()
x_star = Xtest[:, 0:100]
# my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, [0, 1], x_star)

print my_GP.gpr_optimize([0,1], x_star)
# print my_GP.mean.T
# print Ytest.T
print np.mean(abs((my_GP.mean[:,0] - Ytest[:,0])))
print np.mean(abs((my_GP.mean[:,1] - Ytest[:,1])))
print my_GP.mlog_ML

'''
for i in range(10):
    x_star = Xtest[:, i]
    my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, 0, x_star)
    my_GP.gpr_optimize(0, x_star)
    print my_GP.mean, Ytest[i,0]
'''
Пример #2
0
Ytrain = normalize(train[:100, 21:23])[0]

# Load test set
test = np.matrix(
    scipy.io.loadmat("/home/victor/Documents/MTL-GP/_data/sarcos_inv_test.mat")
    ["sarcos_inv_test"])
Xtest = test[:100, :21].T
Ytest = normalize(test[:100, 21:23])[0]

# my_GP = GaussianProcess(SMKernel(Xtrain.shape[0], 3), Xtrain)
# my_GP = GaussianProcess(DotKernel(), Xtrain)
my_GP = GaussianProcess(SEKernel(), Xtrain)
my_GP.add_task(Ytrain[:, 0])
my_GP.add_task(Ytrain[:, 1])
# Ytrain = my_GP.gpr_normalize()
x_star = Xtest[:, 0:100]
# my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, [0, 1], x_star)

print my_GP.gpr_optimize([0, 1], x_star)
# print my_GP.mean.T
# print Ytest.T
print np.mean(abs((my_GP.mean[:, 0] - Ytest[:, 0])))
print np.mean(abs((my_GP.mean[:, 1] - Ytest[:, 1])))
print my_GP.mlog_ML
'''
for i in range(10):
    x_star = Xtest[:, i]
    my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, 0, x_star)
    my_GP.gpr_optimize(0, x_star)
    print my_GP.mean, Ytest[i,0]
'''
Пример #3
0
import math
import numpy as np

from gp import GaussianProcess, DotKernel
from gp import SMKernel

N_ROWS = 5
N_COLS = 100

X = np.matrix([(0.1*(1+i))**(1+j) for j in range(N_ROWS) for i in range(N_COLS)]).reshape((N_ROWS,N_COLS))
y1 = np.matrix([(0.1*(1+i)) for i in range(N_COLS)]).T
y2 = np.matrix([np.sin(0.1*(1+i)) for i in range(N_COLS)]).T
my_GP = GaussianProcess(SMKernel(N_ROWS, 1), X)
my_GP = GaussianProcess(DotKernel(), X)
my_GP.add_task(y1)
my_GP.add_task(y2)

x_star = np.matrix([3**(1+j) for j in range(N_ROWS)]).T
my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, 0, x_star)

print my_GP.gpr_optimize(0, x_star)
print my_GP.mean, my_GP.variance
print my_GP.mlog_ML

my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, 0, x_star)
print my_GP.mean, my_GP.variance

Пример #4
0
import math
import numpy as np

from gp import GaussianProcess, DotKernel
from gp import SMKernel


N_ROWS = 5
N_COLS = 50

X = np.matrix([1+(0.1*i)*j for j in range(N_ROWS) for i in range(1,N_COLS+1)]).reshape((N_ROWS,N_COLS))
y1 = np.matrix([(0.2*i) + np.random.normal(0,0.001,1)[0] for i in range(1,N_COLS+1)]).T
my_GP = GaussianProcess(SMKernel(N_ROWS, 1), X)
#my_GP = GaussianProcess(DotKernel(), X)
my_GP.add_task(y1)
x_star = np.matrix([1+1.5*j for j in range(N_ROWS)]).T
my_GP.gpr_make_prediction(my_GP.cov_function.INITIAL_GUESS, 0, x_star)

print my_GP.gpr_optimize(0, x_star)
print my_GP.mean, my_GP.variance
print my_GP.mlog_ML