Open Source Robotics

Une collection organisée de projets, outils et logiciels robotiques open source de haute qualité.

Gaussian process regression

  • Aussi appelé: GPR, GP regression, kriging
  • Catégorie: Sensing › Perception outputs
  • Mots-clés: machine-learning, uncertainty, bayesian-methods, mapping, regression

Une méthode de régression bayésienne non paramétrique qui modélise une fonction inconnue comme un processus gaussien, donnant à la fois une moyenne prédite et une incertitude en chaque point de requête.

Définition

Régression par processus gaussien (Gaussian process regression, GPR) : méthode qui place une loi a priori sur des fonctions ; tout ensemble fini de valeurs de la fonction est supposé conjointement gaussien, avec une fonction moyenne, souvent nulle, et une covariance donnée par un noyau k(x, x') qui code la force de la corrélation entre les sorties en deux entrées. Conditionner cette loi a priori sur des observations bruitées donne une loi a posteriori qui est encore un processus gaussien, avec une moyenne et une variance prédictives en forme close en toute nouvelle entrée. La variance est faible près des données et croît en s'en éloignant, ce qui rend la GPR utile lorsqu'un robot doit savoir où son modèle n'est pas fiable. La référence standard est Gaussian Processes for Machine Learning de Rasmussen et Williams (2006) ; en géostatistique, la même méthode est connue sous le nom de krigeage.

Le noyau détermine le type de fonctions qu'attend le modèle. Le noyau exponentiel quadratique (RBF) produit des fonctions très lisses, tandis que la famille de Matérn en autorise de plus irrégulières. Les hyperparamètres du noyau, comme les échelles de longueur, la variance du signal et la variance du bruit, sont généralement ajustés en maximisant la vraisemblance marginale des données. Les noyaux standard sont stationnaires : ils supposent la même régularité partout. Les champs réels comme l'altitude du terrain, la température de l'eau ou la concentration d'un polluant changent souvent brusquement à certains endroits et lentement ailleurs, ce qui motive des noyaux non stationnaires comme l'Attentive Kernel de l'article AK.

La principale limite pratique est le coût. La GPR exacte résout un système linéaire avec une matrice de covariance n × n, ce qui demande un temps O(n³) et une mémoire O(n²) pour n points de données. Les approximations parcimonieuses fondées sur des points d'induction (inducing points), les modèles GP locaux et les noyaux structurés la rendent praticable pour de plus grands jeux de données et à bord des robots. Autre réserve : à hyperparamètres fixés, la variance prédictive ne dépend que de l'endroit où les données ont été prises, pas des valeurs mesurées, de sorte qu'un noyau mal ajusté donne une incertitude trompeuse. Les hypothèses de bruit gaussien conviennent aussi mal aux erreurs de capteur à queue lourde.

Pourquoi c'est important

La GPR fournit des prédictions assorties d'une incertitude à partir de petits jeux de données. Les robots utilisent cette incertitude pour décider où échantillonner ensuite, jusqu'où se fier à un modèle dynamique appris, et comment interpoler des mesures éparses en cartes continues.

Applications principales

  • Cartographie de champs spatiaux continus comme la température, la salinité ou la concentration de gaz
  • Apprentissage de modèles dynamiques avec incertitude pour la commande fondée sur un modèle
  • Optimisation bayésienne des gains de contrôleur et d'autres paramètres
  • Apprentissage sûr, où des bornes d'incertitude maintiennent l'exploration dans les contraintes
  • Modélisation du terrain à partir de données de distance éparses

En pratique

Une équipe de surveillance environnementale exploite un véhicule de surface autonome qui mesure la température de l'eau sur un lac. Chaque mesure, étiquetée avec sa position GPS, est ajoutée à un modèle GP, et les hyperparamètres du noyau sont réajustés périodiquement à mesure que les données s'accumulent. La moyenne a posteriori donne la carte de température, et la variance a posteriori montre quelles zones restent mal connues. Le planificateur envoie le véhicule vers des positions à forte variance, ou à forte valeur d'une autre mesure d'information, dans les limites de sa batterie restante. À mesure que le jeu de données grandit, l'équipe passe à un GP parcimonieux avec points d'induction pour que chaque mise à jour reste assez rapide pour la replanification en ligne.

Idées reçues

  • L'incertitude d'un GP est toujours fiable — elle ne vaut que ce que valent le noyau et ses hyperparamètres ; une mauvaise échelle de longueur donne une variance trop confiante ou trop prudente
  • La GPR ne passe pas à l'échelle — l'inférence exacte est cubique en nombre de points, mais les approximations parcimonieuses et locales traitent de grands jeux de données
  • Non paramétrique signifie sans paramètres — les GP ont quand même des hyperparamètres de noyau ; non paramétrique signifie que la complexité du modèle croît avec les données au lieu d'être fixée d'avance

Qui devrait le savoir

  • Chercheurs travaillant sur la planification de chemin informative et la surveillance environnementale
  • Ingénieurs qui construisent des modèles dynamiques appris
  • Ingénieurs en automatique qui utilisent l'optimisation bayésienne pour le réglage
  • Praticiens de l'apprentissage automatique qui ont besoin d'estimations d'incertitude

Technologies associées

  • GPyTorch
  • GPflow
  • scikit-learn
  • Processus gaussiens variationnels parcimonieux (Sparse Variational Gaussian Processes)
  • Optimisation bayésienne (Bayesian Optimization)

Termes associés

  • Conformal Prediction
  • Robotic information gathering
  • Forward Dynamics Model
  • System Identification
  • Elevation Map

Projets associés

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
  • Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
  • OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation
  • OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models

Vidéos

  • Gaussian Processes: Mutual Information
  • Machine Learning Lecture 26 "Gaussian Processes" -Cornell CS4780 SP17: Kilian Weinberger

Wikipédia

  • Krigeage

Ce site nécessite JavaScript. Veuillez activer JavaScript pour explorer nos projets de robotique open source.