Dieser Artikel stellt hauptsächlich das maschinelle Lernmodell vor, das ChatGPT antreibt. Es beginnt mit der Einführung großer Sprachmodelle, befasst sich mit dem revolutionären Selbstaufmerksamkeitsmechanismus, der das Training von GPT-3 ermöglicht, und befasst sich dann mit dem verstärkenden Lernen aus menschlichem Feedback , was die herausragende neue Technologie von ChatGPT ermöglicht.
ChatGPT ist eine Art maschinelles Lernmodell zur Verarbeitung natürlicher Sprache zur Inferenz, das als großes Sprachmodell (LLM) bezeichnet wird. LLM verarbeitet große Mengen an Textdaten und leitet daraus Beziehungen zwischen Wörtern im Text ab. In den letzten Jahren haben sich diese Modelle mit zunehmender Rechenleistung weiterentwickelt. Mit zunehmender Größe des Eingabedatensatzes und Parameterraums nehmen auch die Fähigkeiten von LLM zu.
Das grundlegendste Training eines Sprachmodells besteht darin, ein Wort in einer Wortfolge vorherzusagen. Am häufigsten wird dies bei Next-Token-Vorhersage- und Maskierungssprachmodellen beobachtet.
Beliebiges Beispiel für ein generiertes Next-Token-Vorhersage- und Maskierungssprachmodell
Bei dieser grundlegenden Ranking-Technik wird es normalerweise über ein Long-Short-Memory-Modell (LSTM) bereitgestellt, das auf die gegebene Umgebung und den jeweiligen Kontext trainiert wird Füllen Sie die Lücken mit dem statistisch wahrscheinlichsten Wort aus. Diese sequentielle Modellierungsstruktur weist zwei Hauptbeschränkungen auf.
Um dieses Problem zu lösen, führte ein Team von Google Brain 2017 Konverter ein. Im Gegensatz zu LSTM kann der Transformator alle Eingabedaten gleichzeitig verarbeiten. Mithilfe eines Selbstaufmerksamkeitsmechanismus kann das Modell verschiedenen Teilen der Eingabedaten relativ zu jeder Position in der Sprachsequenz unterschiedliche Gewichte zuweisen. Diese Funktion ermöglicht weitreichende Verbesserungen bei der Bedeutungseinbringung in LLM und die Fähigkeit, größere Datensätze zu verarbeiten.
Das Generative Pretrained Transformer (GPT)-Modell wurde erstmals 2018 von OpenAI unter dem Namen GPT-1 eingeführt. Diese Modelle wurden 2019 in GPT-2, 2020 in GPT-3 und zuletzt 2022 in InstructGPT und ChatGPT weiterentwickelt. Vor der Einbeziehung menschlicher Rückmeldungen in das System wurden die größten Fortschritte in der GPT-Modellentwicklung durch Fortschritte bei der Recheneffizienz vorangetrieben, die es GPT-3 ermöglichten, auf deutlich mehr Daten als GPT-2 zu trainieren, was ihm eine vielfältigere Wissensbasis und Leistungsfähigkeit verlieh ein breiteres Aufgabenspektrum.
Vergleich von GPT-2 (links) und GPT-3 (rechts).
Alle GPT-Modelle nutzen eine Transformatorstruktur, das heißt, sie verfügen über einen Encoder zur Verarbeitung der Eingabesequenz und einen Decoder zur Erzeugung der Ausgabesequenz. Sowohl der Encoder als auch der Decoder verfügen über mehrköpfige Selbstaufmerksamkeitsmechanismen, die es dem Modell ermöglichen, verschiedene Teile der Sequenz unterschiedlich zu gewichten, um auf Bedeutung und Kontext zu schließen. Darüber hinaus nutzt der Encoder maskierte Sprachmodelle, um die Beziehungen zwischen Wörtern zu verstehen und verständlichere Antworten zu erzeugen.
Der Selbstaufmerksamkeitsmechanismus, der GPT antreibt, funktioniert durch die Umwandlung eines Tokens (ein Textfragment, das ein Wort, ein Satz oder eine andere Textgruppierung sein kann) in einen Vektor, der die Bedeutung des Tokens in der Eingabesequenz darstellt. Dazu dieses Modell:
query
, key
und value
vector. query
,key
,和value
向量。query
向量与其他每个标记的key
向量之间的相似性。softmax
函数中来生成归一化的权重。value
向量相乘,产生一个最终向量,代表该序列中标记的重要性。GPT使用的“multi-head
”注意机制是自我注意的一种进化。该模型不是一次性执行第1-4步,而是并行地多次迭代这一机制,每次都会生成一个新的query
,key
,和value
query
vector with Key
Die Ähnlichkeit zwischen Vektoren. 3. Durch Eingabe der Ausgabe von Schritt 2 in einen softmax
Funktion zum Generieren normalisierter Gewichte.
4. Durch Kombinieren der in Schritt 3 generierten Gewichtung mit dem value
Vektoren werden multipliziert, um einen endgültigen Vektor zu erzeugen, der die Wichtigkeit des Tokens in der Sequenz darstellt.
multi-head
" Der Aufmerksamkeitsmechanismus ist eine Weiterentwicklung der Selbstaufmerksamkeit. Anstatt die Schritte 1–4 auf einmal auszuführen, iteriert das Modell diesen Mechanismus mehrmals parallel und generiert jedes Mal einen neuen query
, value
Lineare Projektion von ein Vektor. Durch die Erweiterung der Selbstaufmerksamkeit auf diese Weise ist das Modell in der Lage, Teilbedeutungen und komplexere Beziehungen in den Eingabedaten zu erfassen. In ChatGPT werden innovative Trainingsmethoden eingeführt, um einige der inhärenten Probleme des Standard-LLM auszugleichen.
ChatGPT ist eine Ableitung von InstructGPT, die eine neuartige Methode einführt, um menschliches Feedback in den Trainingsprozess einzubeziehen, sodass die Ausgabe des Modells besser mit der Absicht des Benutzers integriert wird. Reinforcement Learning from Human Feedback (RLHF) wird ausführlich im openAI-Papier „Training language models to follow Instructions with human feedback“ aus dem Jahr 2022 beschrieben und im Folgenden kurz erläutert.
🎜Schritt 1: Supervised Fine-Tuned (SFT)-Modell 🎜🎜🎜🎜Die erste Entwicklung umfasste die Feinabstimmung des GPT-3-Modells und die Einstellung von 40 Auftragnehmern, um einen überwachten Trainingsdatensatz mit einer bekannten Eingabe zu erstellen. Die Ausgabe wird verwendet Modelllernen. Eingaben oder Eingabeaufforderungen werden aus tatsächlichen Benutzereingaben in die offene API erfasst. Der Tagger schreibt dann entsprechende Antworten auf die Eingabeaufforderungen und erstellt so für jede Eingabe eine bekannte Ausgabe. Anschließend wird das GPT-3-Modell mithilfe dieses neuen, überwachten Datensatzes verfeinert, um GPT-3.5, auch bekannt als SFT-Modell, zu erstellen. 🎜🎜Um die Vielfalt des Tipps-Datensatzes zu maximieren, können nur 200 Tipps von einer bestimmten Benutzer-ID stammen und alle Tipps mit langen gemeinsamen Präfixen werden entfernt. Schließlich wurden alle Tipps entfernt, die personenbezogene Daten (PII) enthielten. 🎜Nach der Aggregation der Eingabeaufforderungsinformationen aus der OpenAI-API wurden die Etikettierer auch gebeten, Eingabeaufforderungsinformationsbeispiele zu erstellen, um diese Kategorien mit sehr wenigen echten Beispieldaten zu füllen. Zu den interessanten Kategorien gehören:
Beim Generieren einer Antwort müssen Tagger ihr Bestes geben, um Rückschlüsse auf die Anweisungen des Benutzers zu ziehen. In diesem Dokument werden die drei Hauptmethoden beschrieben, mit denen Eingabeaufforderungen Informationen anfordern können.
Zusammenstellung von Eingabeaufforderungen der OpenAI-API und handschriftlichen Eingabeaufforderungen von Etikettierern, was zu 13.000 Eingabe-/Ausgabebeispielen zur Verwendung in überwachten Modellen führt.
Bild (links) eingefügt aus „Sprachmodelle trainieren, um Anweisungen mit menschlichem Feedback zu befolgen“ OpenAI et al., 2022 https://arxiv.org/pdf/2203.02155.pdf. (Rechts) Zusätzlicher Kontext in Rot hinzugefügt.
Nach dem Training des SFT-Modells in Schritt 1 erzeugte das Modell bessere, konsistente Antworten auf Benutzeraufforderungen. Die nächste Verbesserung kam in Form von Trainingsbelohnungsmodellen, bei denen die Eingabe in das Modell eine Folge von Hinweisen und Reaktionen und die Ausgabe ein skalierter Wert ist, der als Belohnung bezeichnet wird. Um die Vorteile des Reinforcement Learning nutzen zu können, ist ein Belohnungsmodell erforderlich, bei dem das Modell lernt, Ergebnisse zu erzeugen, die seine Belohnung maximieren (siehe Schritt 3).
Um das Belohnungsmodell zu trainieren, stellen Etikettierer 4 bis 9 SFT-Modellausgaben für eine einzige Eingabeaufforderung bereit. Sie wurden gebeten, diese Ergebnisse vom besten zum schlechtesten zu ordnen und so ergebnisbewertete Kombinationen wie diese zu erstellen:
Beispiel für antwortbewertete Kombinationen.
Das Einbeziehen jeder Kombination in das Modell als separater Datenpunkt führt zu einer Überanpassung (der Unfähigkeit, über die gesehenen Daten hinaus zu extrapolieren). Um dieses Problem zu lösen, wird das Modell erstellt, indem jeder Satz von Rankings als separater Stapel von Datenpunkten verwendet wird.
Bild (links) eingefügt aus „Sprachmodelle trainieren, um Anweisungen mit menschlichem Feedback zu befolgen“ OpenAI et al., 2022 https://arxiv.org/pdf/2203.02155.pdf. (Rechts) Zusätzlicher Kontext in Rot hinzugefügt.
In der letzten Phase wird dem Modell eine zufällige Eingabeaufforderung präsentiert und eine Antwort zurückgegeben. Die Antwort wird anhand der „Richtlinie“ generiert, die das Modell in Schritt 2 gelernt hat. Die Richtlinie stellt die Strategie dar, die die Maschine verwendet hat, um in diesem Fall ihr Ziel zu erreichen und ihre Belohnung zu maximieren. Basierend auf dem in Schritt 2 entwickelten Belohnungsmodell wird dann ein skalierter Belohnungswert für die Cue- und Response-Paare ermittelt. Die Belohnungen werden dann wieder in das Modell eingespeist, um die Strategie zu entwickeln.
Im Jahr 2017 führten Schulman et al. die Proximal Policy Optimization (PPO) ein, eine Methode zur Aktualisierung der Modellrichtlinie, wenn jede Antwort generiert wird. PPO integriert die Kullback-Leibler (KL)-Strafe in das SFT-Modell. Die KL-Divergenz misst die Ähnlichkeit zweier Verteilungsfunktionen und bestraft extreme Abstände. In diesem Fall kann die Verwendung der KL-Strafe den Abstand der Antwort von der Ausgabe des in Schritt 1 trainierten SFT-Modells verringern, um eine Überoptimierung des Belohnungsmodells und eine zu starke Abweichung vom Datensatz der menschlichen Absicht zu vermeiden.
Bild (links) eingefügt aus „Sprachmodelle trainieren, um Anweisungen mit menschlichem Feedback zu befolgen“ OpenAI et al., 2022 https://arxiv.org/pdf/2203.02155.pdf. (Rechts) Zusätzlicher Kontext in Rot hinzugefügt.
Schritte 2 und 3 des Prozesses können immer wieder wiederholt werden, obwohl dies in der Praxis noch nicht weit verbreitet ist.
Screenshot generiert von ChatGPT.
Die Bewertung des Modells erfolgt durch Reservieren eines Testsatzes, der vom Modell während des Trainings nicht gesehen wurde. Am Testsatz wird eine Reihe von Bewertungen durchgeführt, um festzustellen, ob das Modell eine bessere Leistung als sein Vorgänger GPT-3 erbringt.
Nützlichkeit: Die Fähigkeit des Modells, Benutzeranweisungen abzuleiten und zu befolgen. Etikettierer bevorzugten die Ausgabe von InstructGPT in 85 ± 3 % der Fälle gegenüber GPT-3.
Authentizität: Die Neigung des Models zu Halluzinationen. Verwenden von TruthfulQA
-Datensatzes zeigte die vom PPO-Modell erzeugte Ausgabe eine leichte Steigerung der Authentizität und Aussagekraft. TruthfulQA
数据集进行评估时,PPO模型产生的输出在真实性和信息量方面都有小幅增加。
无害性:模型避免不适当的、贬低的和诋毁的内容的能力。无害性是使用RealToxicityPrompts
RealToxicityPrompts
zu testender Datensatz. Der Test wurde unter drei Bedingungen durchgeführt. Weitere Informationen zu den Methoden zur Erstellung von ChatGPT und InstructGPT finden Sie im Originalpapier „Trainieren von Sprachmodellen zum Befolgen von Anweisungen mit menschlichem Feedback“, veröffentlicht von OpenAI, 2022 https://arxiv.org/pdf/2203.02155. pdf
. Screenshot generiert von ChatGPT. 🎜Das obige ist der detaillierte Inhalt vonChatGPT: die Verschmelzung leistungsstarker Modelle, Aufmerksamkeitsmechanismen und verstärkendes Lernen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!