
 Description:
pyGPs is a Python project for Gaussian process (GP) regression and classification for machine learning.
pyGPs is an objectoriented 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, 20130121). 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.3.1
November 25th 2014
structural updates:
full inline documentation with input parameter and output specified
check for the inputs and provide diagnostic messages for some inputs
consistant naming in inline and online documentation
string representation for dnlZStruct and postStruct. Now you can do sth like:
nlZ, dnlZ, post = model.getPosterior(x,y)
print post
instead of a python object, we provide now a more informative description.
add optimization into unit test routines. Also add checking for cholesky decomposition and checking positivedefinite property of kernel matrix.
add jitter to the digonal of linear, linARD, and poly covariance for numerical stability.
fix several minor problems in unit test framework
hierachically rearranged for online documentation
add several supplementary instruction in online documentation
 BibTeX Entry: Download
 URL: Project Homepage
 Supported Operating Systems: Platform Independent
 Data Formats: Numpy
 Tags: Classification, Regression, Gaussian Processes
 Archive: download here
Other available revisons

Version Changelog Date 1.3.2 Changelog pyGPs v1.3.2
December 15th 2014
 pyGPs added to pip
 mathematical definitions of kernel functions available in documentation
 more error message added
January 17, 2015, 13:08:43 1.3.1 Changelog pyGPs v1.3.1
November 25th 2014
structural updates:
full inline documentation with input parameter and output specified
check for the inputs and provide diagnostic messages for some inputs
consistant naming in inline and online documentation
string representation for dnlZStruct and postStruct. Now you can do sth like:
nlZ, dnlZ, post = model.getPosterior(x,y)
print post
instead of a python object, we provide now a more informative description.
add optimization into unit test routines. Also add checking for cholesky decomposition and checking positivedefinite property of kernel matrix.
add jitter to the digonal of linear, linARD, and poly covariance for numerical stability.
fix several minor problems in unit test framework
hierachically rearranged for online documentation
add several supplementary instruction in online documentation
December 1, 2014, 17:36:32 1.3 Changelog pyGPs v1.3
October 19th 2014
documentation updates:
 DOC: model.fit() is now named model.getPosterior
 DOC: typo fixed: cov.LIN changed to cov.Linear
 DOC: removed cov.Periodic() in demos because its limited in 1d data.
 API file updated accordingly
structural updates:
 removed unused ScalePrior attribute in most inference method
 added function jitchol, which added a small jitter(instead of doing Cholesky decomposition directly) to the diagonal when the kernel matrix is ill conditioned.
 thrown error when using periodic covariance functions for non1d data. We also removed cov.Periodic() in demos because its limited usage.
 combined equally spaced positions of inputs as test positions as well in plot methods to get a more accurate plotting.
 rename model.fit() to model.getPosterior(), while model.optimize() stays the same. (since it is confusing for some users that the name fit() is not doing optimizing.)
October 20, 2014, 16:03:28 1.2 Changelog pyGPs v1.2
June 30th 2014
structural updates:
 input target now can either be in 2d array with size (n,1) or in 1d array with size (n,)
 setup.py updated
 "import pyGPs" instead of "from pyGPs.Core import gp"
 rename ".train()" to ".optimize()"
 rename "Graphstuff" 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
 documentation updated
bug fixes:
 typos in lik.Laplace
 derivative in lik.Laplace
July 14th 2014
documentation updates:
 online docs updated
 API file updated
structural updates:
 made private for methods that users don't need to call
July 17, 2014, 10:28:55 1.1 pyGPs v1.1 is released. It replaces pyGP_OO and contains substaintal updates in functionality and documentation. pyGP_PR v1.1 is released with substantial documentation updates and renamed (FN > PR).
October 8, 2013, 12:35:28 1.0 Initial Announcement on mloss.org.
October 1, 2013, 14:12:14
Comments
No one has posted any comments yet. Perhaps you'd like to be the first?
Leave a comment
You must be logged in to post comments.