Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Covariate Shift

  • Categoria: Learning & autonomy › Learning from demonstration
  • Tag: imitation-learning, distribution-shift, generalization, sim-to-real, robot-learning

Una discrepanza tra la distribuzione degli ingressi su cui un modello è stato addestrato e quella che incontra nell'uso, mentre la relazione tra ingresso e uscita resta la stessa; nell'apprendimento per imitazione, la radice degli errori che si accumulano.

Definizione

Lo spostamento delle covariate (covariate shift) è una forma di spostamento di distribuzione in cui la distribuzione degli ingressi cambia tra addestramento e impiego, p_train(x) ≠ p_test(x), mentre la relazione condizionale p(y | x) che il modello cerca di apprendere resta la stessa. Un modello adattato agli ingressi di addestramento può quindi essere preciso dove è stato addestrato e inaffidabile nelle regioni che ora vede più spesso. Nell'apprendimento automatico classico viene spesso gestito ripesando i campioni di addestramento con il rapporto tra le densità degli ingressi di test e di addestramento, un approccio associato a Shimodaira (2000).

Nell'apprendimento robotico il termine si usa soprattutto per il behavior cloning. Una policy addestrata con apprendimento supervisionato sugli stati di un esperto vede solo gli stati visitati dall'esperto. In esecuzione, i piccoli errori della policy stessa la portano in stati leggermente al di fuori di quell'insieme, dove le sue previsioni sono peggiori, il che porta a errori più grandi e a stati ancora più lontani dai dati. Gli ingressi di addestramento provengono dalla distribuzione degli stati dell'esperto, ma quelli di test provengono da quella di chi apprende, e il divario cresce lungo la traiettoria. Ross e Bagnell hanno analizzato questo effetto e mostrato che, nel caso peggiore, l'errore atteso del behavior cloning cresce quadraticamente con l'orizzonte del task. DAgger e i metodi interattivi correlati lo affrontano raccogliendo etichette dell'esperto negli stati che visita la policy stessa. Altri rimedi includono l'iniezione di rumore durante le dimostrazioni, così che i dati coprano il comportamento di recupero, la data augmentation, l'action chunking e l'aggiunta di dimostrazioni correttive.

La stessa idea compare nel trasferimento sim-to-real, dove ingressi come immagini o letture dei sensori in simulazione hanno una distribuzione diversa da quelli sul robot reale, e nell'apprendimento per rinforzo offline, dove la policy appresa visita stati e sceglie azioni che il dataset non copre. La randomizzazione del dominio, le rappresentazioni invarianti al dominio e l'adattamento di dominio riducono la discrepanza degli ingressi nel caso sim-to-real. In tutti questi scenari il sintomo pratico è lo stesso: buona precisione di validazione su dati di addestramento tenuti da parte, seguita da fallimenti sul sistema reale.

Perché è importante

Lo spostamento delle covariate spiega perché una policy che riproduce quasi perfettamente le azioni dell'esperto su un set di validazione può comunque fallire in pochi secondi sul robot. Riconoscerlo orienta la raccolta dei dati, la scelta tra behavior cloning e metodi interattivi e il modo in cui le pipeline sim-to-real vengono progettate e testate.

Applicazioni principali

  • Diagnosi dei fallimenti del behavior cloning e delle policy visuomotorie
  • Progettazione della raccolta interattiva dei dati, come DAgger e gli interventi umani
  • Trasferimento sim-to-real di modelli di percezione e di controllo
  • Apprendimento per rinforzo offline con dataset fissi
  • Ripesatura dei dati di addestramento quando le condizioni di impiego sono diverse

In pratica

Un gruppo addestra una policy di guida per un piccolo robot mobile a partire da giri teleoperati in un corridoio. Offline lo sterzo previsto coincide strettamente con quello dell'operatore, ma sul robot la policy deriva lentamente verso una parete e poi sterza in modo brusco, perché i dati di addestramento non hanno mai contenuto il robot vicino a una parete. Il gruppo aggiunge dati di recupero intenzionali, in cui l'operatore parte da posizioni decentrate e riporta il robot al centro, e poi esegue alcuni cicli di DAgger in cui la policy guida mentre le correzioni di sterzo dell'operatore vengono registrate come etichette. Il gruppo monitora il successo ad anello chiuso per giro invece dell'errore di previsione offline, perché solo il primo riflette lo spostamento.

Idee sbagliate comuni

  • Lo spostamento delle covariate significa che il modello è in overfitting — può verificarsi con un modello che generalizza bene all'interno della distribuzione di addestramento; il problema è che gli ingressi in fase di impiego provengono da una distribuzione diversa
  • Più dimostrazioni dell'esperto lo elimineranno — più dati lungo il percorso dell'esperto aiutano poco se la policy raggiunge ancora stati che l'esperto non ha mai visitato; i dati di recupero o l'etichettatura interattiva affrontano il problema direttamente
  • Lo spostamento delle covariate e qualsiasi altro spostamento di distribuzione sono la stessa cosa — lo spostamento delle covariate presuppone che la relazione ingresso-uscita non cambi; se cambia l'azione corretta per un dato ingresso, si tratta di un altro tipo di spostamento

Chi dovrebbe saperlo

  • Professionisti dell'apprendimento per imitazione e del behavior cloning
  • Ingegneri sim-to-real e della percezione
  • Ricercatori di apprendimento per rinforzo offline
  • Ingegneri ML che distribuiscono modelli appresi sui robot

Tecnologie correlate

  • Dataset Aggregation (DAgger)
  • Pesatura per importanza (Importance Weighting)
  • Adattamento di dominio (Domain Adaptation)
  • Data augmentation (aumento dei dati)
  • Rilevamento fuori distribuzione (Out-of-Distribution Detection)

Termini correlati

  • Behavior Cloning
  • DAgger
  • Imitation Learning
  • Sim2Real
  • Domain Randomization
  • Offline Reinforcement Learning

Progetti correlati

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • OpenPI: Physical Intelligence VLA foundation models for general robot control
  • NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
  • Mobile ALOHA: Bimanual mobile manipulation with 4 robot arms on a wheeled base for teleoperation
  • OpenArm: 7DOF humanoid arm for physical AI research in contact-rich environments
  • Koch v1.1 Low-Cost Robot Arm: Open-source 6-DOF robot arm for affordable teleoperation and imitation learning research.

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.