Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

Reinforcement Learning

L'apprendimento per rinforzo (RL) addestra un agente per tentativi ed errori a massimizzare la ricompensa a lungo termine. Include ciclo RL, Q-learning, famiglie di algoritmi e applicazioni.

L’apprendimento per rinforzo (RL) è un ramo del machine learning (ML) in cui un agente impara a prendere una sequenza di decisioni provando azioni in un ambiente e ricevendo ricompense o penalità, con l’obiettivo di accumulare la maggiore ricompensa possibile nel tempo. Nessuno dice all’agente quale azione è corretta. L’agente scopre quali azioni danno risultati, comprese quelle la cui ricompensa arriva molti passaggi dopo, come una mossa a scacchi che vince materiale dieci mosse più avanti. Questo rende l’apprendimento per rinforzo l’approccio standard per i problemi di controllo sequenziale: giocare, guidare robot e addestrare modelli linguistici di grandi dimensioni (LLMs) a fornire risposte preferite dalle persone o verificabili da un programma. Richard Sutton e Andrew Barto, il cui manuale ha definito il campo moderno, hanno ricevuto l’ACM A.M. Turing Award 2024 per il loro lavoro fondamentale sull’apprendimento per rinforzo.

Come funziona l’apprendimento per rinforzo#

I problemi di RL sono formalizzati come processi decisionali di Markov (MDP). A ogni passo temporale l’agente osserva lo stato corrente, sceglie un’azione dal proprio spazio delle azioni e riceve una ricompensa insieme allo stato successivo. Il suo obiettivo è il ritorno, cioè la somma delle ricompense future, in cui un fattore di sconto compreso tra 0 e 1 fa pesare meno le ricompense lontane rispetto a quelle immediate. La ricompensa è l’unica descrizione dell’attività che l’agente riceve, quindi definirla con poca attenzione invita al reward hacking: l’agente ottiene un buon punteggio senza fare ciò che il progettista intendeva.

  • Agente: Il sistema che apprende e prende decisioni, come un controllore robotico o un programma che gioca.
  • Ambiente: Tutto ciò con cui l’agente interagisce, da un simulatore fisico al pavimento di un magazzino reale.
  • Stato: Le informazioni su cui agisce l’agente, come gli angoli delle articolazioni, la posizione dei pezzi su una scacchiera o le caratteristiche estratte da un fotogramma della videocamera.
  • Azione: Una scelta a disposizione dell’agente, discreta (sinistra o destra) oppure continua (un angolo di sterzata).
  • Ricompensa: Un numero restituito dall’ambiente dopo ogni azione, positivo per i progressi e negativo per gli errori o il tempo sprecato.
  • Politica: La regola dell’agente per scegliere un’azione in ogni stato, che è ciò che l’addestramento migliora.
  • Funzione di valore: Il ritorno atteso da uno stato o dall’esecuzione di una determinata azione in uno stato, che consente all’agente di valutare le azioni in base alle loro conseguenze a lungo termine.

Poiché l’agente impara solo dalle azioni che prova, deve bilanciare l’esplorazione, cioè provare azioni il cui valore è incerto, con lo sfruttamento, cioè scegliere l’azione che al momento sembra migliore. Una regola comune è epsilon-greedy: agire casualmente con una piccola probabilità e in modo greedy negli altri casi. Questo esempio NumPy usa Q-learning, un algoritmo classico che apprende il valore di ogni coppia stato-azione, per insegnare a un agente a percorrere un corridoio di sei celle fino a una ricompensa in fondo:

import numpy as np

rng = np.random.default_rng(0)
# Corridoio di 6 celle: partenza nella cella 0, ricompensa +1 quando si raggiunge la cella 5; azioni 0 = sinistra, 1 = destra
n_states, goal = 6, 5
Q = np.zeros((n_states, 2))  # ritorno stimato per ogni coppia (stato, azione)
alpha, gamma, epsilon = 0.5, 0.9, 0.2  # tasso di apprendimento, fattore di sconto, tasso di esplorazione

for episode in range(200):
    state = 0
    while state != goal:
        # Esplora con probabilità epsilon, altrimenti sfrutta l’azione nota come migliore
        action = rng.integers(2) if rng.random() < epsilon else Q[state].argmax()
        next_state = max(0, state - 1) if action == 0 else state + 1
        reward = 1.0 if next_state == goal else 0.0
        # Aggiornamento Q-learning: avvicinati alla ricompensa più il miglior valore dello stato successivo scontato
        Q[state, action] += alpha * (reward + gamma * Q[next_state].max() - Q[state, action])
        state = next_state

print("Greedy policy:", ["left" if a == 0 else "right" for a in Q[:goal].argmax(axis=1)])
print("Value of moving right:", Q[:goal, 1].round(2))

Stampa una policy di right in ogni cella e valori di [0.66 0.73 0.81 0.9 1. ]. La ricompensa è stata assegnata solo nell’ultima cella, ma l’aggiornamento l’ha propagata all’indietro; il valore di ogni passo più lontano dall’obiettivo è pari a 0,9 volte quello del passo successivo: è proprio il fattore di sconto in azione.

Famiglie di algoritmi di RL#

I metodi tabulari come quello appena visto memorizzano un valore per ogni stato, ma non funzionano più quando gli stati sono immagini di telecamere o angoli articolari continui. Il deep reinforcement learning sostituisce la tabella con una rete neurale che generalizza a stati simili, e le principali famiglie di algoritmi differiscono per ciò che la rete apprende:

Gli agenti model-free imparano esclusivamente dall’esperienza reale o simulata, mentre gli agenti model-based apprendono un modello del mondo che prevede come reagisce l’ambiente e poi lo usano per pianificare, come nel controllo predittivo del modello o nella ricerca ad albero Monte Carlo. L’ottimizzazione prossimale della policy (PPO), che limita l’entità di ogni aggiornamento della policy, è diventata il metodo predefinito basato sul gradiente della policy per la robotica e l’addestramento dei modelli linguistici; la Group Relative Policy Optimization (GRPO) l’ha adattata al ragionamento degli LLM eliminando il critico appreso. Spinning Up di OpenAI presenta questi algoritmi con implementazioni di riferimento.

Applicazioni nel mondo reale#

  • Giochi: AlphaGo di DeepMind ha combinato reti neurali profonde, ricerca ad albero e autoapprendimento con RL per battere il campione di Go Lee Sedol 4 partite a 1 nel marzo 2016.
  • Robotica: I controllori della locomozione di quadrupedi e umanoidi vengono addestrati con RL su migliaia di robot simulati in parallelo, spesso con attrito, masse e terreni randomizzati affinché la policy si trasferisca all’hardware reale.
  • Allineamento dei modelli linguistici: Gli assistenti conversazionali vengono ottimizzati con RL rispetto a un modello di ricompensa addestrato su confronti delle preferenze umane, mentre i modelli di ragionamento vengono addestrati con RL rispetto a verificatori automatici che controllano le risposte matematiche o eseguono test unitari.
  • Sistemi di raccomandazione: Trattare una sequenza di raccomandazioni come una serie di decisioni permette a un sistema di ottimizzare il coinvolgimento a lungo termine invece del clic successivo.

La maggior parte delle policy robotiche viene addestrata in simulazione, perché un agente può aver bisogno di milioni di tentativi e l’hardware reale si rompe; framework come NVIDIA Isaac Lab eseguono migliaia di ambienti su una sola GPU, mentre la randomizzazione del dominio riduce il divario tra la fisica simulata e quella reale. I sistemi RL basati su telecamera agiscono di solito sull’output di un modello di percezione anziché sui pixel grezzi: Ultralytics YOLO26, in esecuzione su un robot tramite l’integrazione ROS, pubblica le classi degli oggetti in ogni fotogramma della telecamera e, con una telecamera di profondità, anche la distanza di ogni oggetto, sotto forma di messaggi leggeri che una policy può usare come stato.

  • Apprendimento supervisionato: Ogni esempio di addestramento è accompagnato dalla risposta corretta. Un agente RL riceve solo una ricompensa scalare, spesso ritardata, e sono le sue azioni a determinare quali dati vedrà in seguito.
  • Apprendimento non supervisionato: Il modello individua strutture, come i cluster, nei dati senza etichette, senza dover compiere azioni né massimizzare una ricompensa.
  • Processo decisionale di Markov: L’MDP definisce il problema, mentre RL è la famiglia di metodi che lo risolve a partire dall’esperienza, senza ricevere le probabilità di transizione.
  • Apprendimento per imitazione: l'agente copia le dimostrazioni di un esperto, nella forma più semplice tramite clonazione comportamentale, e non riesce facilmente a superare il proprio insegnante, mentre l'apprendimento per rinforzo può scoprire strategie mai mostrate da alcun dimostratore. I due approcci vengono spesso combinati: AlphaGo ha prima imparato da 30 milioni di posizioni tratte da partite umane e poi è migliorato tramite il gioco autonomo, mentre il suo successore AlphaGo Zero ha fatto completamente a meno dei dati umani e ha battuto quella versione di AlphaGo 100 partite a 0.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning