Die Anweisungsoptimierung ist eine Technik zur Feinabstimmung großer Sprachmodelle (LLMs) auf einem gekennzeichneten Datensatz von Anweisungsaufforderungen und entsprechenden Outputs. Es verbessert die Modellleistung nicht nur bei spezifischen Aufgaben, sondern auch bei der Ausführung von Anweisungen im Allgemeinen und hilft so, vorab trainierte Modelle für den praktischen Einsatz anzupassen.
Die Anweisungsoptimierung ist eine Unterkategorie der umfassenderen Kategorie der Feinabstimmungstechniken, die zur Anpassung vorab trainierter Foundation Models für nachgelagerte Aufgaben verwendet werden. Foundation Models können für eine Vielzahl von Zwecken angepasst werden – von der individuellen Gestaltung des Stils über die Ergänzung des Kernwissens und des Vokabulars des vorab trainierten Modells bis hin zur Leistungsoptimierung für einen bestimmten Anwendungsfall. Obwohl die Feinabstimmung nicht auf einen bestimmten Bereich oder eine bestimmte Architektur eines künstlichen Intelligenzmodells beschränkt ist, ist sie zu einem integralen Bestandteil des LLM-Lebenszyklus geworden. So wird beispielsweise Metas Llama 2 Modellfamilie (in verschiedenen Größen) als Basismodell, als dialogoptimierte Variante (Llama-2-chat) und als codierungsoptimierte Variante (Code Llama) angeboten.
Die Anweisungsoptimierung schließt andere Feinabstimmungstechniken nicht aus. Zum Beispiel durchlaufen Chat-Modelle häufig sowohl eine Anweisungsoptimierung als auch ein verstärkendes Lernen durch menschliches Feedback (RLHF), eine Feinabstimmungstechnik, die darauf abzielt, abstrakte Eigenschaften wie Hilfsbereitschaft und Ehrlichkeit zu verbessern. Modelle, die für die Codierung optimiert wurden, durchlaufen häufig sowohl eine Anweisungsoptimierung (um die Antworten für die nachfolgende Anweisung allgemein zu optimieren) als auch eine zusätzliche Feinabstimmung auf programmspezifische Daten (um das Wissen des Modells über die Codierungssyntax und das Vokabular zu erweitern).
Während die Entstehung von LLMs auf das 2017 veröffentlichte Papier „Attention is All You Need“ zurückgeht (in dem groß angelegte Transformermodelle für Aufgaben der Verarbeitung natürlicher Sprache (NLP) eingeführt wurden) führte die Einbeziehung von Anweisungsoptimierung und RLHF – angetrieben durch einflussreiche Veröffentlichungen von Google (im Jahr 2021)1 bzw. OpenAI (im Jahr 2022)2 – zu den modernen LLMs, die mit der Einführung von ChatGPT die aktuelle Ära der generativen KI einläuteten.
Der Nutzen der Anweisungsoptimierung liegt, wie bei den meisten Feinabstimmungstechniken, darin, dass vorab trainierte LLMs nicht für Gespräche oder das Folgen von Anweisungen optimiert sind. Im wörtlichen Sinne antworten LLMs nicht auf einen Prompt: Sie fügen nur Text hinzu. Anweisungsoptimierung hilft, den angehängten Text nützlicher zu machen.
Der Vortrainings-Prozess für autoregressive Sprachmodelle (LLMs, die zur Texterstellung verwendet werden, wie Meta's Llama 2, OpenAI's GPT, Google's Gemini oder IBM's Granite) optimiert diese LLMs, um einfach das/die nächste(n) Wort(e) in einer gegebenen Sequenz vorherzusagen, bis diese vollständig ist.
LLMs werden durch selbstüberwachtes Lernen anhand eines riesigen Korpus geschriebener Daten vortrainiert. Beim Vortraining erhalten die Modelle den Anfang eines Beispieltextes aus den Trainingsdaten und werden wiederholt mit der Vorhersage des nächsten Wortes in der Sequenz bis zum Ende des Auszugs beauftragt. Für jede Vorhersage dient das tatsächliche nächste Wort des ursprünglichen Beispielsatzes als „Ground Truth”. Durch Optimierungsalgorithmen wie den Gradientenabstieg, bei dem Modellparameter (die unterschiedlichen Gewichte und Verzerrungen, die auf die mathematischen Operationen an jedem Knoten in einem neuronalen Netz angewendet werden) iterativ so angepasst werden, dass die Vorhersagen des Modells näher an den Originaltext herankommen, „lernt“ das Modell die linguistischen Muster in seinen Trainingsdaten (und damit auch das in diesen linguistischen Mustern vermittelte „Wissen“).
Obwohl dieses Vortraining eine beeindruckende Fähigkeit vermittelt, sprachlich kohärente Texte zu erstellen, stimmt die Modellleistung nicht unbedingt mit den praktischen Bedürfnissen menschlicher Benutzer überein. Ohne Feinabstimmung könnte ein Basismodell auf die Aufforderung „Bring Sie mir bei, wie man Brot backt“ mit „in einem Ofen“ antworten.Die Antwort ist grammatikalisch korrekt, aber nicht das, was der Benutzer wollte.
Dennoch ist ein Vortraining eines LLM für einen bestimmten Zweck (wie das Befolgen von Anweisungen) unpraktisch. Das „groß“ in „große Sprachmodelle“ bezieht sich auf die Tatsache, dass diese Modelle oft Milliarden von Parametern haben: Das Training dieser riesigen Modelle von Grund auf erfordert eine enorme Menge an Energie, Zeit, Rechenressourcen und Trainingsdaten. Umgekehrt erfordert die Feinabstimmung eines bereits trainierten LLM weitaus weniger Daten und, insbesondere bei Verwendung von Methoden zur parametereffizienten Feinabstimmung (PEFT) wie der partiellen Feinabstimmung oder der Low-Rank-Adaption (LoRA), nur einen Bruchteil des Rechenaufwands.
Obwohl die Feinabstimmung durch fast jedes Paradigma des maschinellen Lernens erreicht werden kann, einschließlich des verstärkenden Lernens, des halbüberwachtes Lernens oder des zusätzlichen selbstüberwachten Lernens, erfordert die Anweisungsoptimierung ein überwachtes Lernen an gekennzeichneten (Eingabe, Output) Paaren. Was die Anweisungsoptimierung von anderen Formen der überwachten Feinabstimmung (SFT) unterscheidet, ist, dass die Eingabe-Beispiele in einem Anweisungsdatensatz ausschließlich aus Aufgaben bestehen, die Anfragen ähneln, die Benutzer in ihren Prompts stellen könnten. Die Outputs zeigen die gewünschten Antworten auf diese Anfragen. Durch die Anpassung der Modellgewichte, um die Outputs des LLM den Beispielen im Anweisungsdatensatz anzugleichen, „lernt“ das LLM, auf eine Aufforderung wie „bring mir bei, wie man Brot backt“ zu reagieren, indem es Text anhängt, der konkrete Ratschläge zum Brotbacken enthält.
Die Anweisungsoptimierung hilft somit, die Lücke zwischen dem grundlegenden Ziel des Modells – der Vorhersage des nächsten Wortes – und dem Ziel des Benutzers, dass das Modell Anweisungen befolgt und bestimmte Aufgaben ausführt, zu schließen. Dadurch wird das Modellverhalten nützlicher und vorhersehbarer.
Die Feinabstimmung von LLMs auf einem gelabelten Datensatz mit verschiedenen Aufgaben zum Befolgen von Anweisungen verbessert die Fähigkeit, Anweisungen im Allgemeinen zu befolgen, und reduziert die Menge an Kontextinformationen, die für effektive Prompts benötigt werden. Anweisungsdatensätze können entweder manuell erstellt oder von einem anderen LLM generiert werden.
Laut dem einflussreichen Artikel „Finetuned Language Models are Zero-Shot Learners“ von Google Research aus dem Jahr 2022 besteht das Ziel der Anweisungsoptimierung darin, die Fähigkeit von LLMs zu verbessern, auf NLP-Anweisungen zu reagieren. Zu diesem Zweck werden bei der Anweisungsoptimierung „die ansprechenden Aspekte der beiden Paradigmen Pretrain-Finetune und Prompts kombiniert“. Im Wesentlichen wird durch die organische Einbindung der Prinzipien des Prompt Engineering in die überwachte Feinabstimmung die Menge an Prompt Engineering und Few-Shot-Beispielen reduziert, die erforderlich sind, um eine nützliche, genaue Antwort aus dem feinabgestimmten Modell zu erhalten.1
Jedes Trainingsbeispiel in einem Anweisungsdatensatz besteht aus drei Elementen:
In dem Google-Bericht wurde festgestellt, dass die daraus resultierende Variante des LaMDA-PT-Modells mit Anweisungsoptimierung, genannt FLAN (für Finetuned Language Net), die größten Verbesserungen bei Aufgaben zeigte, die von Natur aus als Anweisungen formuliert sind, wie Übersetzung, Beantwortung von Fragen, Leseverständnis und natürliche Sprachinferenz (NLI) – die Aufgabe, festzustellen, ob eine gegebene „Hypothese“ logisch aus einer gegebenen „Prämisse“ folgt.
Um dies zu erklären, wird in dem FLAN-Papier auf eine Beobachtung von Brown et al. in dem 2020 veröffentlichten Forschungsbericht zum ursprünglichen GPT-3-Modell hingewiesen: Eine Erklärung dafür, warum vortrainierte LLMs (ohne zusätzliche Feinabstimmung) mit Aufgaben wie NLI Schwierigkeiten haben, liegt darin, dass Passagen, die einer typischen NLI-Aufgabe ähneln, in dem für das selbstüberwachte Vortraining verwendeten Korpus unmarkierter Daten wahrscheinlich nicht auf natürliche Weise vorkommen.3 Umgekehrt sind Anweisungen für Aufgaben, die eher dem einfachen Sprachmodellierungsziel des Vortrainings ähneln – wie Aufgaben zum logischen Denken, bei denen das Modell letztlich einen Satz korrekt vervollständigen muss – weitgehend redundant (und somit bringt die Anweisungsoptimierung weniger Vorteile).
Am wichtigsten ist vielleicht, dass der Bericht zeigte, dass das Hinzufügen zusätzlicher Aufgaben zum Datensatz der Anweisungsoptimierung die Leistung des anweisungsoptimierten Modells selbst bei neuartigen Aufgaben verbesserte, die nicht im Anweisungsdatensatz enthalten waren. Darin liegt der grundlegende Vorteil der Anweisungsoptimierung: eine ganzheitliche Verbesserung der Fähigkeit des Modells, Anweisungen im Allgemeinen zu befolgen.
Der FLAN-Bericht enthielt auch eine Ablationsstudie. In dieser wurde untersucht, ob die offensichtlichen Vorteile der Anweisungsoptimierung auf die Anweisungen selbst zurückzuführen sind oder einfach auf die Optimierung des Modells für mehrere NLP-Aufgaben. Um die Rolle von Anweisungen bei der Feinabstimmung zu untersuchen, wurde das Basismodell in der Ablationsstudie in drei verschiedenen Konfigurationen feinabgestimmt:
Die Ablationsstudie maß anschließend die Ergebnisse jedes fein abgestimmten Sprachmodells bei einer Reihe von Aufgaben zur Befolgung von Anweisungen ohne vorherige Instruktion. Das Modell mit Anweisungsoptimierung erzielte eine um über 18 % höhere Genauigkeit als das Modell ohne Vorlage und eine um über 8 % höhere Genauigkeit als das Modell mit Datensatznamen. Dies deutet darauf hin, dass das Training mit den Anweisungen selbst entscheidend ist, um die Null-Schuss-Leistung bei unbekannten Aufgaben zu verbessern.
Prompts der Gedankenkette (CoT) fordern ein LLM nicht nur auf, eine Frage zu beantworten, sondern auch eine Begründung dafür zu liefern, wie es zu einer Antwort gekommen ist. Dies kann durch Few-Shot-Prompting und Beispielen für sequentielles Denken oder einfach durch das Anhängen von „Think step by step“ (Schritt für Schritt denken) an das Ende eines Prompts erreicht werden. Studien haben gezeigt, dass Prompts für CoT die Null-Schuss-Funktionen großer Modelle bei verschiedenen Aufgaben im Bereich des arithmetischen, symbolischen und anderen logischen Denkens erheblich verbessern.5 Wei et al. stellten fest, dass eine Anweisungsoptimierung, die keine CoT-Aufgaben in den Anweisungsdatensatz einbezieht, die Modellleistung bei CoT-Bewertungen erheblich verschlechtert – das Hinzufügen von CoT-Datensätzen verbessert jedoch die Leistung bei allen Bewertungen.6
Darüber hinaus ergab die Studie, dass die Feinabstimmung des Anweisungen bei CoT-Aufgaben – sowohl mit als auch ohne wenige Beispiele – die Fähigkeit eines Modells zum CoT-Denken in einer Umgebung ohne Beispiele erhöht. Dieser Vorteil lässt sich intuitiv so beschreiben: Durch die Feinabstimmung auf die schrittweise Lösung eines Problems lernen Modelle, ihre eigenen Denkfähigkeiten besser zu entwickeln und anzuwenden, anstatt einfach zu einer Antwort zu springen, die sprachlich kohärent erscheint.
Es gibt eine Reihe von Datensätzen für die Anweisungsoptimierung von LLMs, von denen viele Open Source sind. Diese Datensätze können direkt geschriebene (oder gesammelte) Paare in natürlicher Sprache (Anweisung, Ausgabe) umfassen, Vorlagen verwenden, um vorhandene annotierte Datensätze in Anweisungen umzuwandeln, oder sogar andere LLMs verwenden, um Beispiele zu generieren.
Die direkte Erstellung von Paaren (Anweisung, Outputs) ist zwar unkompliziert, aber ein arbeitsintensiver Prozess, der letztlich zeit- und kostenintensiv ist. Es wurden verschiedene Methoden vorgeschlagen, um Datensätze in natürlicher Sprache in Anweisungen umzuwandeln, in der Regel durch die Anwendung von Vorlagen. Die Veröffentlichung mehrerer von Menschen erstellter Open-Source-Datensätze hat dazu beigetragen, die Kosten für die Feinabstimmung organischer Daten zu senken.
Zu den bekanntesten von Menschen erstellten Open-Source-Anweisungsdatensätzen gehören:
Aufgrund der hohen Kosten und des hohen Arbeitsaufwands, die mit der manuellen Erstellung von Anweisungen und Outputs verbunden sind, werden in vielen Anweisungsdatensätzen die Antworten größerer LLMs zur Generierung von Prompts, Ausgaben oder beidem verwendet. Die Verwendung von LLM-generierten Datensätzen hat oft den zusätzlichen Effekt, dass kleinere Modelle lernen, das Verhalten größerer Modelle zu emulieren – manchmal in einer bewussten Lehrer-Schüler-Dynamik.
Mit zunehmender Leistungsfähigkeit von LLMs steigt auch der Nutzen von LLM-generierten Datensätzen zur Anweisungsoptimierung. In einem Artikel aus dem Jahr 2023 wurde das Alpaca-Feinabstimmungs-Paradigma nachgebildet, bei dem LLaMA auf der Grundlage von mit InstructGPT generierten Anweisungen feinabgestimmt wurde, während der Prozess parallel dazu mit GPT-4 zur Generierung von Anweisungen wiederholt wurde. Das daraus resultierende Modell, das sie LLaMA-GPT4 nannten, übertraf die „Hilfsbereitschafts“-Werte des Alpaca-Äquivalents deutlich und kam in den Kategorien „Hilfsbereitschaft“, „Ehrlichkeit“ und „Harmlosigkeit“ fast an GPT-4 selbst heran.11
Obwohl die Techniken zur Anweisungsoptimierung wichtige Fortschritte bei LLMs erzielt haben, müssen die Datensätze zur Anweisungsoptimierung noch weiter diversifiziert und ihre Vorteile vollständig geklärt werden.
Die größte Herausforderung bei der Anweisungsoptimierung ist die Erstellung hochwertiger Anweisungen für die Feinabstimmung. Die Ressourcen, die für die Erstellung eines ausreichend großen Anweisungsdatensatzes erforderlich sind, haben die Anweisung auf eine Handvoll Open-Source-Datensätze zentralisiert, was zu einer Verringerung der Modellvielfalt führen kann. Obwohl die Verwendung größerer, proprietärer LLMs zur Erstellung von Anweisungen zur Kostensenkung beigetragen hat, besteht der potenzielle Nachteil darin, dass die Vorurteile und Mängel dieser proprietären LLMs im gesamten Spektrum der Open-Source-LLMs verstärkt werden. Dieses Problem wird durch die Tatsache verschärft, dass proprietäre Modelle oft dazu verwendet werden, die Leistung kleinerer Modelle zu bewerten, um die inhärente Voreingenommenheit menschlicher Forscher zu umgehen.
Auf technischer Ebene haben einige Forscher Bedenken geäußert, dass die Verwendung größerer Modelle zur Verbesserung kleinerer Modelle den kleinsten Modellen zwar dabei helfen könnte, den Stil der größeren Modelle zu imitieren, nicht aber deren tatsächliche Funktionalität. Eine empirische Studie aus dem Jahr 2023 deutet darauf hin, dass viele der beeindruckenden Leistungssteigerungen, die durch Anweisungsoptimierung erzielt werden, eher auf das Aufgreifen oberflächlicher Muster als auf eine echte Verbesserung des logischen Denkens zurückzuführen sind.12
In ähnlicher Weise haben andere Forscher die These aufgestellt, dass einige der gemeldeten Verbesserungen in gewisser Weise davon abhängen könnten, dass die Bewertung der Leistung von Modellen zur Anweisungsoptimierung zu stark auf Aufgaben basiert, die zu eng mit denen des Anweisungs-Trainingsdatensatzes verbunden sind. Durch gezieltere Tests von Modellen, die auf diese Weise optimiert wurden, kamen Gudibande et al. zu dem Schluss, dass „die größte Hebelwirkung zur Verbesserung von Open-Source-Modellen darin besteht, die schwierige Herausforderung der Entwicklung besserer Basis-Sprachmodelle anzugehen, anstatt den Weg der Nachahmung proprietärer Systeme abzukürzen“.13
Trainieren, validieren, optimieren und implementieren Sie generative KI, Foundation Models und maschinelle Lernfunktionen mit IBM watsonx.ai, einem Studio der nächsten Generation für AI Builder in Unternehmen. Erstellen Sie KI-Anwendungen mit einem Bruchteil der Zeit und Daten.
Setzen Sie KI in Ihrem Unternehmen ein – mit branchenführendem Fachwissen im Bereich KI und dem Lösungsportfolio von IBM an Ihrer Seite.
Erfinden Sie kritische Workflows und Abläufe neu, indem Sie KI einsetzen, um Erfahrungen, Entscheidungsfindung in Echtzeit und den geschäftlichen Nutzen zu maximieren.
Erfahren Sie, wie CEOs den Wert, den generative KI schaffen kann, gegen die erforderlichen Investitionen und die damit verbundenen Risiken abwägen können.
Erfahren Sie mehr über grundlegende Konzepte und bauen Sie Ihre Fähigkeiten mit praktischen Übungen, Kursen, angeleiteten Projekten, Tests und mehr aus.
Erfahren Sie, wie Sie generative KI und maschinelles Lernen sicher in Ihr Unternehmen integrieren können.
Möchten Sie eine bessere Rendite für Ihre KI-Investitionen erzielen? Erfahren Sie, wie die Skalierung generativer KI in Schlüsselbereichen Veränderungen vorantreibt, indem Sie Ihre besten Köpfe dabei unterstützen, innovative neue Lösungen zu entwickeln und bereitzustellen.
Wir haben 2.000 Unternehmen zu ihren KI-Initiativen befragt, um herauszufinden, was funktioniert, was nicht und wie Sie vorankommen können.
IBM Granite ist unsere Familie offener, leistungsfähiger und vertrauenswürdiger KI-Modelle, die auf Unternehmen zugeschnitten und für die Skalierung Ihrer KI-Anwendungen optimiert sind. Erkunden Sie die Optionen zu Sprache, Code, Zeitreihen und Guardrails.
Erfahren Sie, wie Sie das für Ihren Anwendungsfall am besten geeignete KI Foundation Model auswählen.
Erfahren Sie mehr über die drei entscheidenden Elemente einer starken KI-Strategie: die Schaffung eines Wettbewerbsvorteils, die Skalierung von KI im gesamten Unternehmen und die Förderung vertrauenswürdiger KI.
HINWEIS: Alle Links befinden sich außerhalb ibm.com.
1 „Finetuned Language Models Are Zero-Shot Learners”, Google (via arXiv), 3. September 2021 (zuletzt überarbeitet am 8. Februar 2022).
2 „Aligning language models to follow instructions”, OpenAI, 27. Januar 2022.
3 „Language Models are Few-Shot Learners”, arXiv, 22. Juli 2020.
4 „WMT 2014”, Papers With Code, 27. Juni 2014.
5 „Language Models are Zero-Shot Reasoners“, arXiv, 24. Mai 2022 (zuletzt überarbeitet am 29. Januar 2023).
6 „Scaling Instruction-Finetuned Language Models“, Google (via arXiv), 6. Dezember 2022.
7 „Alpaca: A Strong, Replicable Instruction-Following Model“, Stanford Center for Research on Foundation Models, 13. März 2023.
8 „WizardLM: Empowering Large Language Models to Follow Complex Instructions“, arXiv, 10. Juni 2023.
9 „Vicuna: An Open-Source Chatbot Impressing GPT-4 with 90%* ChatGPT Quality“, LMSYS Org, 30. März 2023.
10 „Orca: Progressive Learning from Complex Explanation Traces of GPT-4“, Microsoft, Juni 2023.
11 „Instruction Tuning with GPT-4“, arXiv, 6. April 2023.
12 „Do Models Really Learn to Follow Instructions? An Empirical Study of Instruction Tuning“, arXiv, 19. Mai 2023.
13 „The False Promise of Imitating Proprietary LLMs“, arXiv, 25. Mai 2023.