pyGPs is a Python project for Gaussian process (GP) regression and classification for machine learning.

pyGPs is an object-oriented implemetation of GP regression and classificaion additionally supporting useful routines for the practical use of GPs, such as cross validation functionalities for evaluation as well as basic routines for iterative restarts for the GP hyperparameter optimization.

Note, there is also a procedural implementation of GPs (pyGP_PR) which follows structure and functionality of the gpml matlab implementaion by Carl Edward Rasmussen and Hannes Nickisch (Copyright (c) by Carl Edward Rasmussen and Hannes Nickisch, 2013-01-21). This version can be downloaded via this link: https://github.com/marionmari/pyGP_PR/archive/v1.1.tar.gz.

Future extensions will be designed for pyGPs. pyGP_PR will be maintained as it is now.

Changes to previous version:

Changelog pyGPs v1.2

June 30th 2014

structural updates:

input target now can either be in 2-d array with size (n,1) or in 1-d array with size (n,)

setup.py updated

"import pyGPs" instead of "from pyGPs.Core import gp"

rename ".train()" to ".optimize()"

rename "Graph-stuff" to "graphExtension"

rename kernelOnGraph to "nodeKernels" and graphKernel to "graphKernels"

redundancy removed for model.setData(x,y)

rewrite "mean.proceed()" to "getMean()" and "getDerMatrix()"

rewrite "cov.proceed()" to "getCovMatrix()" and "getDerMatrix()"

rename cov.LIN to cov.Linear (to be consistent with mean.Linear)

rename module "valid" to "validation"

add graph dataset Mutag in python file. (.npz and .mat)

add graphUtil.nomalizeKernel()

fix number of iteration problem in graphKernels "PropagationKernel"

add unit testing for covariance, mean functions

bug fixes:

derivatives for cov.LINard

derivative of the scalar for cov.covScale

demo_GPR_FITC.py missing pyGPs.mean

July 8th 2014

structural updates:

add hyperparameter(signal variance s2) for linear covariance

add unit testing for inference,likelihood functions as well as models

NOT show(print) "maximum number of sweep warning in inference EP" any more