Andreas Geiger a écrit un applet Java simple de régression de processus gaussien, illustrant le comportement des fonctions de covariance et des hyperparamètres.

titre du paquet auteur description de l’implémentation

bcm The Bayesian Committee Machine Anton Schwaighofer matlab et NETLAB

Une extension de l’implémentation de Netlab pour la régression GP. Elle permet une régression à grande échelle basée sur l’approximation BCM, voir également le document d’accompagnement

fbm Software for Flexible Bayesian Modeling Radford M. Neal C for linux/unix

Un ensemble complet et bien documenté mettant en œuvre les méthodes de Monte Carlo à chaînes de Markov pour l’inférence bayésienne dans les réseaux de neurones, les processus gaussiens (régression, classification binaire et multiclasse), les modèles de mélange et les arbres de diffusion de Dirichlet.

gp-lvm et fgp-lvm A (rapide) implémentation des modèles à variables latentes des processus gaussiens Neil D. Lawrence matlab et C

Code gpml tiré du livre Rasmussen and Williams : Gaussian Processes for Machine Learning. Carl Edward Rasmussen et Hannes Nickisch matlab et octave

La boîte à outils GPML met en œuvre des algorithmes d’inférence approximative pour les processus gaussiens tels que la propagation des attentes, l’approximation de Laplace et les bayes variationnelles pour une large classe de fonctions de vraisemblance, tant pour la régression que pour la classification. Elle est dotée d’une grande algèbre de fonctions de covariance et de moyenne permettant une modélisation flexible. Le code est entièrement compatible avec le document JMLR Octave 3.2.x. décrivant la boîte à outils.

c++-ivm Approximations éparses basées sur la machine à vecteurs informatifs Neil D. Lawrence C++

Le logiciel IVM en C++ , comprend également le modèle de bruit de catégorie nulle pour l’apprentissage semi-supervisé.

BFD Bayesian Fisher’s Discriminant software Tonatiuh Peña Centeno matlab

Met en œuvre une interprétation gaussienne du discriminant de Kernel Fisher.

gpor Processus gaussien pour la régression ordinale Wei Chu C pour linux/unix

Implémentation logicielle des processus gaussiens pour la régression ordinale. Fournit l’approximation de Laplace, la propagation des attentes et la limite inférieure variable.

MCMCstuff Méthodes MCMC pour MLP et GP et Stuff Aki Vehtari matlab et C

Une collection de fonctions matlab pour l’inférence bayésienne avec les méthodes de Monte Carlo par chaîne de Markov (MCMC). Le but de cette boîte à outils était de porter certaines des fonctions de fbm à matlab pour faciliter le développement pour les utilisateurs de matlab.

ogp Sparse Online Gaussian Processes Lehel Csató matlab and NETLAB

Apprentissage en ligne approximatif dans des modèles de processus gaussiens épars pour la régression (y compris plusieurs fonctions de vraisemblance non gaussiennes) et la classification.

sogp Sparse Online Gaussian Process C++ Library Dan Grollman C

Bibliothèque C++ de processus gaussien en ligne, basée sur la thèse de doctorat de Lehel Csató

spgp .tgz ou .zip Pseudo-input Processus gaussiens Ed Snelson matlab

Met en œuvre la régression GP clairsemée telle que décrite dans Processus gaussiens clairsemés utilisant des pseudo-intrants et Modèles de processus gaussiens flexibles et efficaces pour l’apprentissage machine. Le SPGP utilise l’optimisation de la probabilité marginale basée sur les gradients pour trouver des points de base et des hyperparamètres de noyau appropriés dans une seule optimisation conjointe.

tgp Treed Gaussian Processes Robert B. Gramacy C/C++ pour R

Régression bayésienne non paramétrique et non stationnaire par des processus gaussiens arborescents avec sauts au modèle linéaire limite (LLM). Les cas spéciaux également mis en œuvre comprennent les modèles linéaires bayésiens, le CART linéaire, la régression stationnaire par processus gaussiens séparables et isotropiques. Comprend des fonctions de traçage 1-d et 2-d (avec des capacités de projection et de découpage en tranches de dimensions supérieures), et le dessin d’arbres, conçu pour la visualisation des sorties de la classe tgp. Voir aussi Gramacy 2007

Tpros Régression du processus gaussien David MacKay et Mark Gibbs C

Tpros est le programme du processus gaussien écrit par Mark Gibbs et David MacKay.

Démonstration de l’octave GP Démonstration de l’interpolation par processus gaussien Octave David MacKay

Cette DEMO fonctionne bien avec l’octave 2.0 et n’a pas fonctionné avec le 2.1.33.

Code GPClass Matlab pour la classification des processus gaussiens David Barber et C. K. I. Williams matlab

Met en œuvre l’approximation de Laplace telle que décrite dans la classification bayésienne avec les processus gaussiens pour la classification binaire et multiclasse.

VBGP Régression bayésienne multinomiale variationnelle des probits avec des processus gaussiens Mark Girolami et Simon Rogers matlab

Implémente une approximation variationnelle pour la classification multiclasse basée sur le processus gaussien, comme décrit dans l’article Variational Bayesian Multinomial Probit Regression.

pyGPs Processus gaussiens pour la régression et la classification Marion Neumann Python

pyGPs est une bibliothèque contenant une implémentation python orientée objet pour la régression et la classification du processus gaussien (GP). github

processus gaussien régression du processus gaussien Anand Patil Python

en cours d’élaboration

gptk Gaussian Process Tool-Kit Alfredo Kalaitzis R

Le paquet gptk met en œuvre une boîte à outils générale pour la régression de processus gaussien avec une fonction de covariance RBF. Basé sur une implémentation MATLAB écrite par Neil D. Lawrence.

D’autres logiciels pourraient ainsi être utiles pour la mise en œuvre de modèles de processus gaussiens :

Ce site Internet vise à fournir un résumé des ressources concernant la modélisation probabiliste, l’inférence et l’apprentissage des processus gaussiens. Bien que les processus gaussiens aient une longue histoire dans le domaine des statistiques, ils semblent avoir été largement utilisés uniquement dans des créneaux. Avec l’arrivée des machines à noyau au sein de la communauté d’apprentissage machine, les modèles prenant en charge les processus gaussiens sont devenus courants pour les problèmes de régression (krigeage) et de classification, ainsi que pour un certain nombre d’applications plus spécialisées.

Tutoriels

Plusieurs articles fournissent du matériel didactique adapté à une introduction primaire à l’apprentissage des modèles de processus gaussiens. Ces modèles vont du très court [Williams 2002] au très intermédiaire [MacKay 1998], [Williams 1999] au plus élaboré [Rasmussen et Williams 2006]. Tous ces modèles ne requièrent qu’un minimum de conditions préalables dans le domaine des mathématiques appliquées et de l’algèbre élémentaires.

Régression

Les utilisations les plus simples des modèles de processus gaussiens sont la régression (le cas conjugué de) avec le bruit gaussien. Voir la section sur l’approximation pour les articles qui traitent spécifiquement des techniques d’approximation rares ou rapides. O’Hagan 1978 représente une référence précoce de la communauté des statistiques pour l’utilisation d’un processus gaussien comme une fonction de surcharge antérieure, une pensée qui n’a été introduite dans la communauté de l’apprentissage machine que par Williams et Rasmussen 1996.

Classification

L’inférence exacte dans les modèles de processus gaussiens pour la classification n’est pas traçable. Plusieurs schémas d’approximation sont proposés, dont la méthode de Laplace, les approximations variationnelles, les méthodes de champ moyen, la chaîne de Markov Monte Carlo et la propagation des attentes. cf. la section sur l’approximation. La classification multi-classes pourrait également être traitée explicitement, ou décomposée en plusieurs problèmes binaires (un contre le reste). Pour des introductions, voir par exemple Williams et Barber 1998 ou Kuss et Rasmussen 2005. Les limites de la perspective PAC-bayésienne sont appliquées dans Seeger 2002.

Fonctions de covariance et propriétés des processus gaussiens

Les propriétés des processus gaussiens sont contrôlées par la fonction (moyenne et) de covariance. Certaines références décrivent ici des fonctions de covariance de différence, tandis que d’autres donnent des caractérisations mathématiques, voir par exemple Abrahamsen 1997 pour une revue. Certaines références décrivent des fonctions de covariance non standard entraînant une non-stationnarité, etc.

Sélection du modèle

Approximations

Il y a deux raisons principales pour faire des approximations dans les modèles de processus gaussiens. Soit en raison de l’intractibilité analytique, comme les arrêts dans la classification et la régression avec le bruit non gaussien. Soit pour réaliser un avantage de calcul lors de l’utilisation de grands ensembles de données, par l’utilisation d’approximations éparses. Certaines méthodes abordent les deux problèmes simultanément. Les méthodes d’approximation et les algorithmes d’inférence approximative sont très divers, voir Quiñonero-Candela et Ramussen 2005 pour un cadre unificateur des approximations éparses dans le modèle de régression gaussien.

Références de la communauté des statistiques

Les processus gaussiens ont une longue histoire au sein de la communauté des statistiques. Ils doivent être particulièrement bien développés en géostatistique sous le nom de krigeage. Les articles sont regroupés parce qu’ils sont rédigés en utilisant une terminologie commune, et ont un objectif légèrement différent des articles typiques sur l’apprentissage machine,

Cohérence, courbes d’apprentissage et limites

Les articles de cette section donnent des résultats théoriques sur les courbes d’apprentissage, qui décrivent les performances attendues en matière de généralisation en fonction du nombre de cas de coaching. La cohérence aborde la question de savoir si la réponse s’approche du processus de génération de données de vérité dans la limite d’une infinité d’exemples de formation.