# 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] '''
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] '''
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
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