L'humain dans l'alignement post-training d'un LLM
Introduction
Ces dernières années ont vu pas mal de transformations dans l'entrainement des LLMs. Si l'entrainement initial des modèles sur des quantités de textes gigantesques leur procure des compétences linguistiques indéniable, c'est bien le post-training (tout un tas de techniques plus ou moins complexe qui vise à améliorer un modèle) qui façonne le modèle dans la forme finale désirée par l'humain. Le but est simple: faire en sorte que le modèle se comporte comme l'humain préfère.
Mais pour se faire, il faut admettre que les préférences humaines existent, qu'elles sont cohérentes et surtout, qu'elles peuvent être représentés dans une forme compréhensible en machine learning. Dans la pratique, on demande souvent à des humain de comparer deux réponses générés par une IA et de choisir celle qu'ils préfèrent, comme le demande parfois Chat GPT. C'est de cette façon que l'IA apprends et comprends ce que les humains considèrent comme une "bonne" réponse. Pour améliorer le modèle, il existe ensuite deux grandes approches, la première va créer un système de notation qui récompense les réponses jugées meilleures puis s'en servir pour entrainer une IA à obtenir les meilleures notes possible: PPO (Proximal Policy Optimization). La seconde se veut plus directe et se passe carrément du sytème de notation, elle apprends simplement à reproduire au mieux les préférences exprimées par les humains lors des comparaisons: DPO (Direct Preference Optimization).
Le soucis, c'est que les humains ne fonctionnent pas de manière aussi logique et prévisible.Il y a souvent un contexte à prendre en compte, une culture, une humeur, des souvenirs, etc... Il est même possible que l'on aime une réponse aujourd'hui, mais au fil du temps, de discussions, de rencontres, l'humain pourrait changer d'avis et préférer la seconde réponse. Et plus bizarre encore, un humain peut préférer la réponse A à B, la réponse B à C, mais préférer la réponse C à A. Cela semble complétement illogique, mais c'est un comportement humain très courant observé dans de nombreuses études sur le jugement humain des années 50-60.
La question des chercheurs est donc la suivante: qu'est ce qu'une préférence humaine ? Une IA peut-elle vraiment apprendre ce que veulent les humains ? Aujourd'hui, l’hypothèse veut que les humains seraient des être rationnels, qui savent ce qu'ils veulent et font toujours des choix cohérents. NON ! NON ! La réalité est bien plus compliquée. Les humains changent d'avis, se contredisent, ce qui rends compliqué pour les IA de reproduire ce fonctionnement. Elles doivent adopter une vision plus réaliste de la manières dont les préférences humaines fonctionnent.
Un peu d'Histoire...
... en économie
Cela m'a surpris, mais les préférences humaines trouvent leurs origine dans le domaine de l'économie, au début du XXe siècle. C'est en 1940 que deux économistes, John von Neumann et Oskar Morgenstern vont proposer un modèle très simple: une personne en pleine possession de ses moyens est capable d'évaluer toutes les options qui s'offre à elle et de choisir celle qui lui offre le plus de satisfaction. Ce modèle fonctionne en suivant des règles logiques basiques qui permet d'attribuer un score à chaque option, appelé utilité, et qui mesure à quel point cette option est désirable. Plus l'utilité est élevé, plus l'option est censé avoir la préférence de la personne. Ce modèle, l'Expected Utility Theory, a profondèment influencé l'économie, mais aussi l'intelligence artificielle, les LLMs utilisent encore aujourd'hui cette idée là.
Celui-ci s'appuie essentiellement sur trois règles:
1. La complétude: on peut toujours choisir, il est toujours possible de faire un choix entre deux ou plusieurs options différentes.
2. La transitivité: vos choix sont cohérents, si vous préférez Ruby à Python, et que vous préférez Python à Java, vous devez obligatoirement préférer Ruby à Java.
3. L'indépendance: votre décision ne dépends que de deux réponses comparées, le simple fait qu'il existe une troisième option ne doit pas modifier votre choix entre les deux premières.