0 / 0
Zurück zur englischen Version der Dokumentation
Parameter für die Optimierung von Basismodellen
Letzte Aktualisierung: 04. März 2025
Parameter für die Optimierung von Basismodellen

Tuning-Parameter konfigurieren die Tuning-Experimente, die Sie zur Abstimmung eines Grundmodells verwenden.

Hinweis : Die Parameter, die Sie beim Abstimmen eines Grundmodells ändern, gelten für das Abstimm-Experiment, nicht für das zugrunde liegende Grundmodell.

Prompt-Tuning-Parameter

In der folgenden Tabelle werden die Abstimmungsparameter beschrieben, die Sie anpassen können.

Beschreibung der Tuning-ParameterwerteReferenzen
Parametername Beschreibung Wertoptionen Weitere Informationen
Initialisierungsmethode Gibt an, wie der Prompt-Vektor initialisiert werden soll. Zufällig, Text Eingabeaufforderungsoptimierung initialisieren
Initialisierungstext Text, der als Aufforderung für den ersten Durchlauf des Experiments verwendet werden soll. Eingabeaufforderungsoptimierung initialisieren
Stapelgröße Anzahl der beschrifteten Beispiele, die auf einmal verarbeitet werden sollen. 1-16 Trainingsdaten segmentieren
Schritte kumulieren Anzahl der zu verarbeitenden Chargen, bevor Anpassungen vorgenommen werden. 1-128 Trainingsdaten segmentieren
Lernrate Bestimmt den Umfang der Änderung, die bei der Anpassung des Modells vorgenommen werden soll. 0.00001–0.5 Lernrate verwalten
Anzahl der Epochen (Anzahl der Trainingszyklen) Anzahl der Durchläufe durch die Trainingsdaten. 1-50 Festlegung der Anzahl der zu absolvierenden Trainingszyklen

Festlegen von Parameterwerten für die prompte Abstimmung

Die besten Hyperparameterwerte für ein Prompt-Tuning-Experiment hängen von Ihren Daten und Ihrem Anwendungsfall ab.

Die folgende Tabelle enthält die Parameterwerte, die als Ausgangspunkt für die schnelle Abstimmung eines Drittanbieter-Stiftungsmodells verwendet werden können.

Anpassung der Parameterwerte für Fundamentmodelle von Drittanbietern
Parametername Standardwert für flan-t5-xl-3b
Initialisierungsmethode Beliebig
Initialisierungstext Keine
Stapelgröße 16
Schritte kumulieren 16
Lernrate 0.3
Anzahl der Epochen (Anzahl der Trainingszyklen) 20 Jahre

Die Standardparameter, die für die schnelle Abstimmung des granite-13b-instruct-v2 -Grundmodells verwendet werden, werden je nach Art der Aufgabe, die das abgestimmte Modell ausführen soll, angepasst.

Die folgende Tabelle enthält die Parameterwerte, die als Ausgangspunkt für jeden unterstützten Aufgabentyp für die sofortige Abstimmung des granite-13b-instruct-v2 -Grundmodells verwendet werden sollen.

Einstellung der Parameterwerte für das granite-13b-instruct-v2 -Grundmodell
Parametername Standardwert für Klassifikation Standardwert für Generierung Standardwert für Zusammenfassung
Stapelgröße 8 16 8
Schritte kumulieren 32 16 1
Lernrate 0.0006 0.0002 0.0002
Anzahl der Epochen (Anzahl der Trainingszyklen) 20 Jahre 20 Jahre 40

Parameterbeschreibungen

Trainingsdaten segmentieren

Wenn ein Experiment ausgeführt wird, unterbricht das Experiment zuerst die Trainingsdaten in kleinere Batches und trainiert dann in jeweils einem Batch. Jeder Stapel muss in den GPU-Speicher passen, damit er verarbeitet werden kann. Um die erforderliche GPU-Speicherkapazität zu reduzieren, können Sie das Optimierungsexperiment so konfigurieren, dass Anpassungen zurückgestellt werden, bis mehr als ein Stapel verarbeitet wird. Das Tuning wird für eine Charge durchgeführt und ihre Leistungskennzahlen werden berechnet, aber es werden nicht sofort Anpassungen vorgenommen. Stattdessen werden die Leistungsinformationen über eine bestimmte Anzahl von Batches erfasst, bevor die kumulativen Leistungsmessdaten ausgewertet werden.

Verwenden Sie die folgenden Parameter, um zu steuern, wie die Trainingsdaten segmentiert werden:

Stapelgröße Die Anzahl der beschrifteten Beispiele (auch bekannt als Stichproben), die gleichzeitig verarbeitet werden sollen

Für ein Dataset mit 1.000 Beispielen und einer Stapelgröße von 10 wird das Dataset in 100 Batches mit jeweils 10 Beispielen unterteilt.

Wenn das Trainingsdataset klein ist, geben Sie eine kleinere Stapelgröße an, um sicherzustellen, dass jeder Batch genügend Beispiele enthält.

Akkumulierungsschritte: Anzahl der zu verarbeitenden Chargen, bevor Anpassungen vorgenommen werden.

Wenn der Datensatz beispielsweise in 100 Chargen unterteilt ist und Sie den Wert für die Akkumulationsschritte auf 10 setzen, werden die Anpassungen 10 Mal statt 100 Mal vorgenommen.

Festlegung der Anzahl der zu absolvierenden Trainingszyklen

Der Parameter "Anzahl der Epochen" gibt an, wie oft der gesamte Trainingsdatensatz durchlaufen werden soll.

Bei einer Batchgröße von 10 und einem Datensatz mit 1.000 Beispielen muss eine Epoche beispielsweise 100 Batches verarbeiten und 100 Mal Anpassungen vornehmen. Wenn Sie die Anzahl der Epochen auf 20 setzen, wird das Modell 20 Mal durch das Dataset geleitet, was bedeutet, dass es während des Optimierungsprozesses insgesamt 2.000 Batches verarbeitet.

Je höher die Anzahl der Epochen und je größer Ihre Trainingsdaten sind, desto länger dauert die Optimierung eines Modells. Wenn Sie die Anzahl der Epochen zu niedrig ansetzen, lernt das Modell möglicherweise nicht ausreichend. Wenn Sie die Anzahl der Epochen zu hoch ansetzen, kann das Modell zu stark an den Datensatz angepasst werden. "Overfitting" ist ein Begriff, der verwendet wird, um das Phänomen zu beschreiben, bei dem ein Modell so eng auf seine Trainingsdaten abgestimmt ist, dass es das Gelernte nicht verallgemeinern und anwenden kann, wenn neue Daten eingeführt werden.

Lernrate verwalten

Der Parameter Lernrate bestimmt den Umfang der Änderung, die bei der Anpassung des Modells vorgenommen wird. Je höher die Zahl, desto größer ist die Veränderung. Wenn die Lernrate zu niedrig eingestellt wird, kann dies dazu führen, dass das Modell nicht ausreichend aus den neuen Daten lernt. Wenn die Lernrate zu hoch eingestellt wird, kann dies dazu führen, dass das Modell nicht schnell genug lernt, um das Gelernte auf neue, unbekannte Daten anzuwenden.

Diesen Parameter sollten Sie zunächst konservativ einstellen und dann schrittweise ändern, während Sie experimentieren, um die besten Hyperparameter für den Datensatz und das Fundamentmodell zu finden, die Sie anpassen.

Festlegung von Token-Limits

Sie können die Anzahl der Token ändern, die während eines Tuning-Experiments in die Modell-Eingabe und -Ausgabe einfließen, indem Sie den Parameter max_seq_length festlegen. Die maximale Sequenzlänge ist die maximale Anzahl von Eingabe-Token plus die für jede Eingabeaufforderung zulässigen Ausgabe-Token.

Je größer die Anzahl der zulässigen Eingabe- und Ausgabemarker ist, desto länger dauert die Abstimmung des Modells. Setzen Sie diesen Parameter auf die kleinstmögliche Zahl, die Ihren Anwendungsfall noch korrekt darstellt.

Erstellen Sie in Ihren Trainingsdaten Eingabe- und Ausgabebeispiele, die dem Grenzwert entsprechen, den Sie für die Abstimmung verwenden möchten. Beispiele, die länger als die angegebene maximale Sequenzlänge sind, werden während des Experiments abgeschnitten. Wenn Sie diesen Parameter beispielsweise auf 200 setzen und die Trainingsdaten eine Beispiel-Eingabe mit 1.000 Token enthalten, werden nur die ersten 200 Token der Beispiel-Eingabe verwendet.

Denken Sie daran, dass die Sequenzlänge auch die Ausgabemarken für jede Eingabeaufforderung umfasst, was bedeutet, dass die Einstellung die Anzahl der Marken steuert, die das Modell während des Tuning-Experiments als Ausgabe generieren darf.

Initialisierung der Eingabeaufforderung

Wenn Sie ein Experiment zur Promptabstimmung erstellen, können Sie wählen, ob Sie Ihren eigenen Text als anfänglichen Promptvektor angeben oder ob das Experiment ihn für Sie generieren soll. Diese neuen Token starten den Trainingsprozess entweder an zufälligen Positionen oder auf der Basis der Einbettung eines Vokabulars oder einer Anweisung, die Sie im Text angeben. Studien zeigen, dass die verwendete Initialisierungsmethode weniger wichtig wird, wenn die Größe des zugrunde liegenden Modells über 10 Milliarden Parameter steigt.

Die Auswahl, die Sie beim Erstellen des Optimierungsexperiments treffen, passt an, wie die Eingabeaufforderung initialisiert wird.

Initialisierungsmethode: Wählen Sie eine Methode aus den folgenden Optionen:

  • Text: Die Methode zur Optimierung der Eingabeaufforderung wird verwendet, wenn Sie den Initialisierungstext der Eingabeaufforderung selbst angeben.
  • Zufällig: Die Methode zur Optimierung der Eingabeaufforderung wird verwendet, mit der das Experiment Werte hinzufügen kann, die zufällig ausgewählt werden, um sie in die Eingabeaufforderung einzuschließen.

Initialisierungstext: Der Text, den Sie hinzufügen möchten Geben Sie eine Taskbeschreibung oder Anweisungen ähnlich der Beschreibung an, die Sie für die Bedienerführung für Nullwerte verwenden.

Weitere Informationen

Übergeordnetes Thema: Modell optimieren