Reward Modeling
La modélisation des récompenses entraîne un réseau à évaluer les sorties d’une IA comme le feraient des personnes, à partir de comparaisons de préférences. Découvre la perte de Bradley-Terry, les types de modèles et les risques.
La modélisation de récompense consiste à entraîner un réseau de neurones, appelé modèle de récompense, pour qu’il évalue les sorties d’un système d’IA comme le feraient des personnes. Dans l’apprentissage par renforcement standard, l’environnement fournit une récompense, par exemple le score d’un jeu. Beaucoup d’objectifs n’ont pas de score de ce type : une réponse utile, une image bien composée ou un robot qui tend délicatement une tasse sont faciles à juger, mais difficiles à définir dans du code. Un modèle de récompense apprend ce jugement à partir des retours humains, généralement des comparaisons entre deux sorties, puis évalue automatiquement les nouvelles sorties, bien plus rapidement et uniformément que ne pourraient le faire des personnes. Les modèles de récompense sont la composante qui permet l’apprentissage par renforcement à partir de retours humains (RLHF) ; ils servent aussi à réordonner les réponses candidates, filtrer les données d’entraînement et évaluer les modèles.
Entraînement d’un modèle de récompense#
Les données d’entraînement sont constituées de comparaisons. Les personnes voient un prompt accompagné de deux réponses ou plus générées par un modèle, puis choisissent la meilleure. Dans les travaux d’OpenAI sur InstructGPT, les annotateurs ont classé de 4 à 9 réponses par prompt, et chaque paire issue d’un classement est devenue une comparaison d’entraînement. On utilise le classement plutôt que des scores absolus, car les personnes s’accordent bien davantage sur la meilleure de deux réponses que sur le fait qu’une réponse mérite un 6 ou un 7 sur 10.
Le modèle de récompense est généralement un grand modèle de langage (LLM) préentraîné, souvent le modèle qu’on cherche à aligner, dont la couche de sortie est remplacée par une tête linéaire qui transforme la représentation vectorielle finale en un nombre. L’entraînement utilise le modèle de Bradley-Terry pour les comparaisons par paires, selon lequel la probabilité que les personnes préfèrent la réponse A à la réponse B est la fonction sigmoïde de la différence entre leurs récompenses. La fonction de perte correspond au logarithme négatif de cette probabilité pour la réponse effectivement choisie par les personnes. Cet exemple PyTorch entraîne une tête de récompense linéaire à partir de 2 000 comparaisons simulées :
import torch
import torch.nn.functional as F
torch.manual_seed(0)
# 2,000 preference pairs: embeddings of two responses to the same prompt
# Simulated raters prefer the response with higher hidden quality, with some noise
hidden_quality = torch.randn(64)
a, b = torch.randn(2000, 64), torch.randn(2000, 64)
a_wins = (a @ hidden_quality + torch.randn(2000) * 2 > b @ hidden_quality).unsqueeze(1)
chosen, rejected = torch.where(a_wins, a, b), torch.where(a_wins, b, a)
# Reward model: a linear head mapping a response embedding to one scalar score
reward_model = torch.nn.Linear(64, 1)
optimizer = torch.optim.Adam(reward_model.parameters(), lr=0.01)
train, test = slice(0, 1500), slice(1500, 2000)
for step in range(300):
# Bradley-Terry loss: maximize the probability that the chosen response scores higher
margin = reward_model(chosen[train]) - reward_model(rejected[train])
loss = -F.logsigmoid(margin).mean()
optimizer.zero_grad()
loss.backward()
optimizer.step()
accuracy = (reward_model(chosen[test]) > reward_model(rejected[test])).float().mean()
print(f"Held-out pairs ranked like the raters: {accuracy:.1%}")Il affiche 94.8%. Les évaluateurs simulés, qui introduisent du bruit, contredisent eux-mêmes le classement de qualité sans bruit dans environ 5 % de ces paires de test ; le modèle de récompense a donc appris les préférences aussi bien que ses étiquettes le permettent, même s’il n’a jamais vu de score absolu. La précision par paires sur les comparaisons de test sert également à comparer les modèles de récompense réels, par exemple sur le benchmark RewardBench. Comme seules les différences entre récompenses interviennent dans la fonction de perte, l’échelle des scores est arbitraire et les pipelines les normalisent souvent avant l’apprentissage par renforcement.
Types de modèles de récompense#
- Modèles de récompense de résultat : évaluent une réponse ou un épisode complet ; c’est le choix standard pour le RLHF.
- Modèles de récompense de processus : évaluent chaque étape intermédiaire d’une solution. Le jeu de données PRM800K d’OpenAI contient 800 000 annotations humaines par étape pour des solutions mathématiques.
- Modèles de récompense génératifs : un LLM qui joue le rôle de juge rédige une critique ou un verdict, ce qui permet à un même modèle d’évaluer de nombreux types de tâches et d’expliquer ses scores.
- Modèles de récompense implicites : l’optimisation directe des préférences (DPO) entraîne directement la politique sur des paires de préférences, et le rapport des log-probabilités de la politique à celles de son modèle de référence sert de récompense.
- Modèles de récompense d’images : ImageReward a été entraîné sur 137 000 comparaisons d’experts entre des images générées et sert à ajuster finement les modèles texte-image pour obtenir des résultats attrayants et fidèles aux prompts.
L’apprentissage robotique utilise la même idée avec des modèles de vision. Un classificateur d’images entraîné sur des images de caméra annotées par des personnes comme des tentatives réussies ou ratées — par exemple, une tasse posée à l’endroit ou renversée — produit une probabilité de réussite qui sert de récompense à une politique d’apprentissage. Un modèle Ultralytics YOLO26 entraîné sur de telles images avec la tâche de classification joue ce rôle en évaluant chaque image d’une tentative en quelques millisecondes.
Maintenir la précision du modèle de récompense#
Un modèle de récompense n’est précis que sur les sorties qui ressemblent à ses données d’entraînement. À mesure que la politique s’améliore, elle produit des réponses inédites pour le modèle de récompense. L’équipe Llama 2 de Meta a donc recueilli de nouvelles comparaisons sur les sorties du modèle le plus récent et réentraîné le modèle de récompense avant chaque nouveau cycle d’apprentissage par renforcement :
Optimiser trop fortement un modèle à partir d’une récompense apprise conduit au piratage de récompense. L’étude d’OpenAI sur la sur-optimisation des modèles de récompense a utilisé un grand modèle de récompense « de référence » à la place d’évaluateurs humains. Elle a constaté que, lorsqu’une politique était optimisée par rapport à un modèle de récompense proxy plus petit, le score de référence augmentait d’abord, puis diminuait, tandis que le score proxy continuait de grimper ; cet effet s’atténuait progressivement à mesure que le modèle proxy grandissait. Les modèles de récompense reproduisent aussi les biais des évaluateurs, par exemple leur préférence pour les réponses plus longues ou plus conciliantes, que l’apprentissage par renforcement amplifie ensuite en verbosité et en flagornerie. Une pénalité KL par rapport au modèle d’origine, des ensembles de modèles de récompense et un réentraînement régulier sur de nouvelles comparaisons limitent les dégâts.
Modélisation de récompense et termes associés#
- RLHF : pipeline complet comprenant l’ajustement fin supervisé, la modélisation de récompense à partir de comparaisons humaines et l’optimisation par apprentissage par renforcement. La modélisation de récompense en est la deuxième étape.
- Fonction de récompense : récompense définie manuellement, par exemple +1 pour atteindre un objectif. Un modèle de récompense est appris à partir des données, car personne ne peut écrire la fonction.
- Récompenses vérifiables : un programme vérifie la réponse par rapport à une solution connue, comme un test unitaire ou un résultat mathématique de référence. Cette méthode est plus difficile à exploiter qu’un modèle appris, mais ne fonctionne que lorsque les réponses peuvent être vérifiées.
- Apprentissage par renforcement inverse : déduit une fonction de récompense à partir de démonstrations de la tâche par des experts, tandis que la modélisation de récompense pour le RLHF apprend à partir des comparaisons entre les sorties du système effectuées par des personnes.










