SmolVLM mit DPO feinabstimmen: KI-Ausrichtung an menschliche Präferenzen

Pyimagesearch

KI-Modelle, insbesondere große Sprach- und Bild-Sprach-Modelle (VLMs), stehen oft vor einer kritischen Herausforderung: Obwohl sie technisch korrekte Antworten generieren können, fehlt diesen Ausgaben oft die nuancierte, menschenähnliche Qualität, die Benutzer wünschen. Zum Beispiel könnte ein Chatbot genaue Informationen liefern, aber in einem übermäßig roboterhaften oder unhöflichen Ton, oder ein VLM könnte ein Bild mit irrelevanten Details beschriften, obwohl es seine internen Wahrscheinlichkeitswerte maximiert. In solchen Szenarien reichen traditionelle überwachte Feinabstimmungsmethoden nicht aus, da sie menschliche Präferenzen oder subjektive Nützlichkeit nicht berücksichtigen.

Die Präferenzoptimierung schließt diese Lücke, indem sie Modelle trainiert, aus einer Reihe von Optionen „bessere“ Antworten zu unterscheiden und auszuwählen, basierend auf menschlichen oder Proxy-Urteilen. Dieses Paradigma ermöglicht es Modellen, Qualitäten wie Klarheit, emotionale Intelligenz oder Sicherheit zu priorisieren und über bloße Sprachgewandtheit hinauszugehen, um Ausgaben zu generieren, die enger mit der menschlichen Absicht übereinstimmen.

Obwohl Methoden wie Reinforcement Learning from Human Feedback (RLHF) und Reinforcement Learning from AI Feedback (RLAIF) entscheidend für die Modellausrichtung waren, führen sie oft zu erheblicher Komplexität, Instabilität und hohen Rechenkosten. Direct Preference Optimization (DPO) erweist sich als einfachere, aber effektive Alternative, die direkt aus Präferenzdaten lernt, ohne ein separates Belohnungsmodell oder komplexe Reinforcement-Learning-Schleifen zu benötigen. Dieser Artikel untersucht die Prinzipien von DPO und demonstriert seine Anwendung bei der Feinabstimmung des SmolVLM-Modells zur Verbesserung der menschlichen Ausrichtung.

Was ist Präferenzoptimierung?

Präferenzoptimierung umfasst eine Kategorie von Feinabstimmungstechniken, die darauf abzielen, maschinelle Lernmodelle, insbesondere generative Modelle wie Sprachmodelle (LMs) und Bild-Sprach-Modelle (VLMs), an menschliche oder Proxy-Bewertungen anzupassen. Anstatt nur das nächste Token vorherzusagen, wird das Modell optimiert, um Ausgaben zu produzieren, die von einem Evaluator, der ein menschlicher Annotator oder ein anderes KI-Modell sein könnte, als „bevorzugt“ angesehen werden. Dies ist entscheidend, um generative KI in realen Anwendungen nützlicher, sicherer und ansprechender zu machen.

Im Kern beinhaltet die Präferenzoptimierung, einem Modell Paare von Ausgaben (z. B. eine bevorzugte, eine abgelehnte) zu präsentieren und seine internen Parameter anzupassen, um die Wahrscheinlichkeit der Generierung der bevorzugten Antwort zu erhöhen. Dieser Ansatz geht über starre, regelbasierte Ausrichtung hinaus und ermöglicht eine feingranulare Steuerung basierend auf qualitativen Urteilen – eine Aufgabe, in der Menschen hervorragend sind, Maschinen aber nicht von Natur aus lernen.

Arten von Techniken

Reinforcement Learning from Human Feedback (RLHF)
RLHF ist eine weit verbreitete Methode zur Ausrichtung großer Sprachmodelle, die insbesondere in Modellen wie ChatGPT verwendet wird. Sie beinhaltet einen dreistufigen Prozess:

  1. Supervised Fine-Tuning (SFT): Ein anfängliches Basismodell wird auf einem kuratierten Datensatz von Prompt-Antwort-Paaren feinabgestimmt, um ein Grundmodell bereitzustellen.

  2. Reward Modeling: Menschliche Annotatoren bewerten mehrere vom SFT-Modell generierte Ausgaben. Diese menschlichen Bewertungen werden dann verwendet, um ein separates „Belohnungsmodell“ zu trainieren, das lernt, neuen Ausgaben Scores zuzuweisen, die menschliches Urteilsvermögen nachahmen.

  3. Policy Optimization: Das SFT-Modell wird unter Verwendung eines Reinforcement-Learning-Algorithmus, typischerweise Proximal Policy Optimization (PPO), weiter feinabgestimmt, um die vom Belohnungsmodell vorhergesagten Scores zu maximieren.

Obwohl RLHF beeindruckende Konversations- und Programmierfähigkeiten hervorgebracht hat, ist seine Pipeline rechenintensiv und komplex, da sie das Training mehrerer Modelle und umfangreiche Stichproben während des Trainingslaufs erfordert.

Reinforcement Learning from AI Feedback (RLAIF)
RLAIF passt die RLHF-Struktur an, ersetzt jedoch menschliche Annotatoren durch ein KI-„Präferenz-Proxy-Modell“, das auf vorhandenen menschlichen Bewertungen vorab trainiert wurde. Dies ermöglicht eine skalierbare Generalisierung von Präferenzurteilen, wodurch die Kosten für die menschliche Beschriftung erheblich reduziert werden. Obwohl RLAIF die Iteration beschleunigt und den menschlichen Aufwand reduziert, birgt es das Risiko, bestehende Modellverzerrungen zu verstärken. Trotzdem hat es sich in Projekten, die auf skalierbare KI-Ausrichtung abzielen, als wirksam erwiesen.

Direct Preference Optimization (DPO)
DPO ist eine präferenzbasierte Feinabstimmungsmethode, die die Richtlinie eines Modells direkt optimiert, um bestimmte Ausgaben gegenüber anderen zu bevorzugen, basierend auf menschlichem Feedback. Im Gegensatz zu RLHF umgeht DPO die Notwendigkeit, ein separates Belohnungsmodell zu trainieren und einen Reinforcement-Learning-Algorithmus zu verwenden. Stattdessen vereinfacht es den Prozess, indem es die Wahrscheinlichkeit des Modells, bevorzugte Antworten im Verhältnis zu nicht bevorzugten zu generieren, direkt optimiert. DPO enthält ein dynamisches, pro Beispiel gewichtetes Gewicht, das verhindert, dass das Modell degeneriert, was bei einem naiven Wahrscheinlichkeitsverhältnis-Ziel auftreten kann.

Identity Preference Optimization (IPO)
IPO erweitert DPO durch die Integration eines Regularisierungsterms. Dieser Term verhindert, dass das Modell zu stark von einem Referenzmodell (normalerweise dem ursprünglichen überwachten feinabgestimmten Modell) abweicht. Dies hilft, die Sprachgewandtheit und das aufgabenspezifische Wissen zu erhalten, ein Überanpassen an verrauschte oder spärliche Präferenzdaten zu verhindern und sicherzustellen, dass die Ausrichtung nicht zu einer Verschlechterung der Kernfähigkeiten des Modells führt. Mathematisch erweitert IPO den DPO-Verlust um eine Identitätsbeschränkung, wodurch Stabilität in den Präferenzlernprozess integriert wird.

Group Relative Policy Optimization (GRPO)
Eingeführt mit Modellen wie DeepSeek-R1 ist GRPO eine Reinforcement-Learning-Technik, die das Modellverhalten basierend auf relativen Präferenzen über Gruppen von Antworten hinweg optimiert. Anstatt sich auf ein einzelnes Belohnungssignal oder binäre Präferenzpaare zu verlassen, generiert GRPO mehrere Kandidatenantworten für eine gegebene Eingabeaufforderung und bewertet diese mithilfe automatisierter, regelbasierter oder heuristischer Rückmeldungen. Dies macht GRPO besonders geeignet für Domänen mit überprüfbaren Ergebnissen, wie Mathematik, Programmierung oder Logikrätsel, bei denen die Korrektheit ohne menschliche Annotation bestimmt werden kann. GRPO sampelt eine Gruppe von Antworten, weist Scores mithilfe automatisierter Regeln zu, ordnet sie relativ ein und wendet dann ein PPO-ähnliches Update an, das die Notwendigkeit einer Wertfunktion eliminiert und das Training vereinfacht.

Direct Preference Optimization (DPO) im Detail

Eine Hauptschwierigkeit bei der Feinabstimmung großer Sprachmodelle im RLHF-Stil ist ihre inhärente Komplexität. Das Erlernen einer Belohnungsfunktion und deren anschließende Optimierung mittels Reinforcement Learning führt oft zu Instabilität, erheblichem Rechenaufwand und Implementierungsschwierigkeiten. Direct Preference Optimization (DPO) bietet eine leistungsstarke Alternative, indem es das separate Belohnungsmodell eliminiert und die direkte Optimierung der endgültigen Richtlinie nur unter Verwendung von Präferenzvergleichen ermöglicht.

Von Belohnungen zu Richtlinien: Die Einsicht des Variablenwechsels

DPO beginnt mit der Betrachtung des klassischen RLHF-Setups, das darauf abzielt, die erwarteten Belohnungen zu maximieren, während die feinabgestimmte Richtlinie durch eine KL-Divergenz-Beschränkung nahe an einer Referenzrichtlinie (oft dem überwachten feinabgestimmten Modell) gehalten wird. Die optimale Richtlinie unter diesem Setup folgt bekanntermaßen einer Boltzmann-Verteilung, gewichtet durch eine exponentielle Belohnungsfunktion. Die Herausforderung besteht darin, dass die genaue Belohnungsfunktion und die Normalisierungsterme unbekannt und schwer zu approximieren sind.

Die Schlüsselerkenntnis von DPO ist ein „Variablenwechsel“. Durch Logarithmieren der optimalen Richtliniengleichung und Umordnen kann die Belohnungsfunktion direkt in Bezug auf die Richtlinie selbst ausgedrückt werden. Diese „Belohnung-als-Richtlinie“-Ansicht ermöglicht es DPO, diesen Ausdruck in ein Standard-Präferenzmodell, wie das Bradley-Terry-Modell, zu integrieren. Dieses Modell hängt typischerweise von der Differenz der Belohnungen zwischen zwei Antworten für eine gegebene Eingabe ab. Wenn der politikbasierte Belohnungsausdruck in das Bradley-Terry-Modell substituiert wird, heben sich die problematischen Normalisierungsterme auf, was zu einer Präferenzwahrscheinlichkeit führt, die vollständig in Bezug auf die Richtlinien des Modells ausgedrückt wird.

DPO-Zielfunktion

Mit dieser Formulierung kann der DPO-Verlust als negative Log-Likelihood über einem Datensatz von bevorzugten und abgelehnten Antwortpaaren geschrieben werden. Diese Zielfunktion ermutigt das Modell direkt, die Log-Wahrscheinlichkeit bevorzugter Antworten zu erhöhen, während die Log-Wahrscheinlichkeit abgelehnter Antworten verringert wird. Ein Hyperparameter, oft als inverse Temperatur bezeichnet, steuert die Schärfe dieser Präferenzentscheidungen. Das Ziel misst effektiv, wie gut die aktuelle Modellrichtlinie mit den beobachteten menschlichen Präferenzen übereinstimmt, und bestraft Instanzen, bei denen bevorzugte Antworten weniger wahrscheinlich sind als abgelehnte.

Wie der Gradient funktioniert

Die Untersuchung des Gradienten des DPO-Verlusts liefert ein mechanistisches Verständnis dafür, wie das Modell aktualisiert wird. Wenn das Modell bereits eine bevorzugte Antwort korrekt über einer abgelehnten einordnet, ist der Gradient klein, was auf minimale Anpassungen hinweist. Wenn das Modell jedoch eine bevorzugte Antwort fälschlicherweise niedriger als eine abgelehnte einordnet, ist der Gradient größer, wodurch das Modell stärker dazu gedrängt wird, die bevorzugte Antwort zu favorisieren. Dieser Aktualisierungsmechanismus ist von Natur aus selbstkorrigierend und skaliert dynamisch mit dem Grad der Präferenzinversion des Modells.

Wie DPO in der Praxis funktioniert

Die praktische Implementierung von DPO umfasst drei Hauptschritte:

  1. Datensatz-Erstellung: Kandidatenvervollständigungen werden für eine gegebene Eingabeaufforderung gesampelt, und eine bevorzugte Antwort wird identifiziert, typischerweise durch menschliches Feedback oder einen Proxy-Scoring-Mechanismus.

  2. Referenzrichtlinie festlegen: Eine Referenzrichtlinie wird festgelegt, normalerweise das überwachte feinabgestimmte Modell oder ein Basismodell, das mit Maximum-Likelihood-Schätzung auf bevorzugten Vervollständigungen trainiert wurde.

  3. Optimieren: Die DPO-Zielfunktion wird mit Standard-Gradientenabstieg minimiert, wodurch die Modellparameter direkt aktualisiert werden, um sie an die Präferenzdaten anzupassen.

Feinabstimmung von SmolVLM mit DPO

Um die praktische Anwendung von DPO zu demonstrieren, können wir ein Bild-Sprach-Modell wie Hugging Face’s SmolVLM feinabstimmen. Für diese Implementierung wird der OpenBMB RLHF-V-Datensatz verwendet, der 5.733 menschliche Präferenzpaare mit feingranularen segmentweisen Korrekturen für verschiedene Anweisungen (einschließlich detaillierter Beschreibungen und Fragen-Antworten) zur Ausrichtung enthält.

Laden von SmolVLM und Konfigurieren von LoRA

Der Prozess beginnt mit dem Laden des vortrainierten SmolVLM-Modells und seines entsprechenden Prozessors. Um die Feinabstimmung effizienter und recheneffizienter zu gestalten, wird Low-Rank Adaptation (LoRA) konfiguriert und angewendet. LoRA ist eine parameter-effiziente Feinabstimmungstechnik, die kleine, trainierbare Matrizen zu den vorhandenen Gewichten des Modells hinzufügt, wodurch die Anzahl der Parameter, die während des Trainings aktualisiert werden müssen, im Vergleich zur vollständigen Feinabstimmung erheblich reduziert wird.

Laden und Formatieren des Datensatzes

Als Nächstes wird der OpenBMB RLHF-V-Datensatz geladen und in Trainings- und Testsets aufgeteilt. Eine benutzerdefinierte Formatierungsfunktion wird dann angewendet, um die Daten vorzuverarbeiten. Diese Funktion parst den Rohtext, strukturiert ihn in ein chatähnliches Format mit unterschiedlichen „Benutzer“- und „Assistent“-Rollen und erstellt separate Einträge für ausgewählte und abgelehnte Antworten. Der Prozessor des Modells wird verwendet, um Chat-Vorlagen auf diese Texteingaben anzuwenden. Zusätzlich werden Bilder innerhalb des Datensatzes in der Größe angepasst, um Speicherfehler während der Verarbeitung zu vermeiden. Diese Transformation stellt sicher, dass die Daten für das DPO-Training im richtigen Format vorliegen und explizite bevorzugte und abgelehnte Antworten für jede Eingabeaufforderung bereitgestellt werden.

DPO-Feinabstimmung

Nachdem Modell und Datensatz vorbereitet sind, kann die DPO-Feinabstimmung beginnen. Trainingsparameter werden mithilfe eines DPOConfig-Objekts definiert, das Details wie Ausgabeverzeichnis, Batch-Größen, Gradientenakkumulationsschritte und die Anzahl der Trainings-Epochen festlegt. Eine DPOTrainer-Instanz wird dann mit dem geladenen Modell, der konfigurierten LoRA-Einrichtung, den vorbereiteten Datensätzen und den Trainingsargumenten initialisiert. Der Trainingslauf schreitet voran und optimiert das Modell basierend auf dem DPO-Verlust. Während des Trainings wird beobachtet, dass das Modell beginnt, den ausgewählten Antworten im Testdatensatz höhere Scores zuzuweisen. In einer Beobachtung erreichte die Belohnungsgenauigkeit beispielsweise am Ende der dritten Epoche 62,5 %, was auf eine verbesserte Ausrichtung hindeutet. Es wird erwartet, dass sich diese Genauigkeit bei längerer Trainingsdauer und mehr Stichproben aus dem ursprünglichen Datensatz weiter verbessert. Nach dem Training wird das feinabgestimmte Modell gespeichert.

Testen des feinabgestimmten Modells

Schließlich wird das feinabgestimmte SmolVLM-Modell an neuen Beispielen aus dem Testset getestet. Eine Hilfsfunktion bereitet die Text- und Bildeingaben vor, generiert Antworten mithilfe der generate-Methode des Modells und dekodiert dann die Ausgabe. Beim Testen an einem Beispielbild und einer Eingabeaufforderung wurde beobachtet, dass die vom Modell generierte Antwort deskriptiv und sachlich korrekt war und der bevorzugten Antwort aus dem Originaldatensatz sehr ähnelte, anstatt der abgelehnten. Diese praktische Demonstration unterstreicht die Wirksamkeit des DPO-Algorithmus bei der Verbesserung von KI-Antworten, um sie besser ausgerichtet und menschenzentrierter zu gestalten.

Zusammenfassung

Das Feld der Präferenzoptimierung ist entscheidend, um KI-Modelle an menschliche Erwartungen anzupassen. Während anfängliche Ansätze wie RLHF und RLAIF auf komplexen Feedback-Schleifen beruhen, treiben neuere Strategien wie Direct Preference Optimization (DPO), Identity Preference Optimization (IPO) und Group Relative Policy Optimization (GRPO) das Feld voran. Jede bietet eine eigene Methode zur Interpretation und Anwendung von Präferenzen, wobei GRPO insbesondere eine gruppenbasierte Struktur für vielfältiges Feedback einführt.

DPO zeichnet sich durch sein elegantes Fundament aus. Durch die Umwandlung des traditionellen Belohnungsmaximierungsproblems in ein direktes Richtlinienlernziel durch einen cleveren Variablenwechsel eliminiert DPO die Notwendigkeit einer expliziten Belohnungsmodellierung und vereinfacht den Optimierungsprozess. Dieser Perspektivwechsel macht DPO aufgrund seiner Effizienz und Effektivität zunehmend für reale Ausrichtungsaufgaben bevorzugt.

Die praktische Anwendung von DPO zur Feinabstimmung des SmolVLM-Modells zeigt dessen Nutzen. Der Prozess umfasst das sorgfältige Laden und Vorbereiten des Modells, das Formatieren eines Präferenzdatensatzes und das Ausführen der DPO-Feinabstimmungsschritte. Die Ergebnisse zeigen, dass DPO die Antworten des Modells erfolgreich verbessert und sie besser an menschliche Präferenzen anpasst. Diese praktische Demonstration unterstreicht das Potenzial von DPO bei der Entwicklung menschenzentrierterer KI-Systeme.

SmolVLM mit DPO feinabstimmen: KI-Ausrichtung an menschliche Präferenzen - OmegaNext KI-Nachrichten