In diesem Leitfaden werde ich Sie durch den Prozess des Hinzufügens einer benutzerdefinierten Bewertungsmetrik zu LLaMA-Manufacturing unit führen. LLaMA-Manufacturing unit ist ein vielseitiges Instrument, das Benutzern eine Feinabstimmung ermöglicht große Sprachmodelle (LLMs) dank der benutzerfreundlichen WebUI und des umfassenden Satzes an Skripten zum Trainieren, Bereitstellen und Bewerten von Modellen problemlos. Ein Hauptmerkmal von LLaMA-Manufacturing unit ist das LLaMA Board, ein integriertes Dashboard, das auch Bewertungsmetriken anzeigt und so wertvolle Einblicke in die Modellleistung bietet. Während Standardmetriken standardmäßig verfügbar sind, können wir durch die Möglichkeit, benutzerdefinierte Metriken hinzuzufügen, Modelle auf eine Weise bewerten, die für unsere spezifischen Anwendungsfälle direkt related ist.
Wir behandeln auch die Schritte zum Erstellen, Integrieren und Visualisieren einer benutzerdefinierten Metrik Lama Planke. Wenn Sie diesem Leitfaden folgen, können Sie zusätzliche, auf Ihre Bedürfnisse zugeschnittene Metriken überwachen, unabhängig davon, ob Sie an domänenspezifischer Genauigkeit, differenzierten Fehlertypen oder benutzerzentrierten Auswertungen interessiert sind. Durch diese Anpassung können Sie die Modellleistung effektiver bewerten und sicherstellen, dass sie mit den individuellen Zielen Ihrer Anwendung übereinstimmt. Lass uns eintauchen!
Lernergebnisse
- Verstehen Sie, wie Sie eine benutzerdefinierte Bewertungsmetrik in LLaMA-Manufacturing unit definieren und integrieren.
- Erwerben Sie praktische Fähigkeiten im Modifizieren
metric.py
um benutzerdefinierte Metriken einzubeziehen. - Erfahren Sie, wie Sie benutzerdefinierte Metriken auf dem LLaMA Board visualisieren, um bessere Einblicke in das Modell zu erhalten.
- Erwerben Sie Kenntnisse über die Anpassung von Modellbewertungen an spezifische Projektanforderungen.
- Entdecken Sie Möglichkeiten zur Überwachung der domänenspezifischen Modellleistung mithilfe personalisierter Metriken.
Dieser Artikel wurde im Rahmen der veröffentlicht Knowledge Science-Blogathon.
Was ist LLaMA-Manufacturing unit?
LLaMA-Manufacturing unit, entwickelt von hiyouga, ist ein Open-Supply-Projekt, das Benutzern dies ermöglicht Feinabstimmung Sprachmodelle über eine benutzerfreundliche WebUI-Schnittstelle. Es bietet eine vollständige Suite von Instruments und Skripten für die Feinabstimmung, den Aufbau von Chatbots, die Bereitstellung und das Benchmarking von LLMs.
LLaMA-Manufacturing unit wurde speziell für Anfänger und technisch nicht versierte Benutzer entwickelt und vereinfacht den Prozess der Feinabstimmung von Open-Supply-LLMs auf benutzerdefinierten Datensätzen, sodass keine komplexen KI-Konzepte verstanden werden müssen. Benutzer können einfach ein Modell auswählen, ihren Datensatz hochladen und einige Einstellungen anpassen, um mit dem Coaching zu beginnen.
Nach der Fertigstellung ermöglicht die Webanwendung auch das Testen des Modells und bietet so eine schnelle und effiziente Möglichkeit zur Feinabstimmung von LLMs auf einem lokalen Pc.
Während Standardmetriken wertvolle Einblicke in die allgemeine Leistung eines fein abgestimmten Modells liefern, bieten benutzerdefinierte Metriken eine Möglichkeit, die Wirksamkeit eines Modells in Ihrem spezifischen Anwendungsfall direkt zu bewerten. Durch die Anpassung von Metriken können Sie besser beurteilen, wie intestine das Modell individuelle Anforderungen erfüllt, die bei generischen Metriken möglicherweise übersehen werden. Benutzerdefinierte Metriken sind von unschätzbarem Wert, da sie die Flexibilität bieten, Maßnahmen zu erstellen und zu verfolgen, die speziell auf praktische Anforderungen abgestimmt sind, und so eine kontinuierliche Verbesserung auf der Grundlage relevanter, messbarer Kriterien ermöglichen. Dieser Ansatz ermöglicht einen gezielten Fokus auf domänenspezifische Genauigkeit, gewichtete Wichtigkeit und Ausrichtung auf die Benutzererfahrung.
Erste Schritte mit LLaMA-Manufacturing unit
Für dieses Beispiel verwenden wir eine Python-Umgebung. Stellen Sie sicher, dass Sie Python 3.8 oder höher und die erforderlichen Abhängigkeiten gemäß den Repository-Anforderungen installiert haben.
Set up
Wir werden zunächst alle Anforderungen installieren.
git clone --depth 1 https://github.com/hiyouga/LLaMA-Manufacturing unit.git
cd LLaMA-Manufacturing unit
pip set up -e ".(torch,metrics)"
Feinabstimmung mit der LLaMA Board GUI (unterstützt von Gradio)
llamafactory-cli webui
Hinweis: Die offizielle Einrichtungsanleitung mit ausführlicheren Informationen finden Sie hier Github.
Bewertungsmetriken in LLaMA-Manufacturing unit verstehen
Erfahren Sie mehr über die von LLaMA-Manufacturing unit bereitgestellten Standardbewertungsmetriken, wie BLEU- und ROUGE-Scores, und warum sie für die Bewertung der Modellleistung unerlässlich sind. In diesem Abschnitt wird auch der Wert der Anpassung von Metriken vorgestellt.
BLEU-Rating
Der BLEU-Rating (Bilingual Analysis Understudy) ist eine Metrik zur Bewertung der Qualität von Texten, die von maschinellen Übersetzungsmodellen generiert werden, indem er mit einem Referenztext (oder einem von Menschen übersetzten Textual content) verglichen wird. Der BLEU-Rating beurteilt in erster Linie, wie ähnlich die generierte Übersetzung einer oder mehreren Referenzübersetzungen ist.
ROUGE-Punktzahl
Der ROUGE-Rating (Recall-Oriented Understudy for Gisting Analysis) ist eine Reihe von Metriken, die zur Bewertung der Qualität von Textzusammenfassungen durch Vergleich mit Referenzzusammenfassungen verwendet werden. Es wird häufig für Zusammenfassungsaufgaben verwendet und misst die Überlappung von Wörtern und Phrasen zwischen dem generierten Textual content und dem Referenztext.
Diese Metriken sind standardmäßig verfügbar, Sie können jedoch auch benutzerdefinierte Metriken hinzufügen, die auf Ihren spezifischen Anwendungsfall zugeschnitten sind.
Voraussetzungen für das Hinzufügen einer benutzerdefinierten Metrik
In dieser Anleitung wird davon ausgegangen, dass LLaMA-Manufacturing unit bereits auf Ihrem Pc eingerichtet ist. Wenn nicht, lesen Sie bitte die LLaMA-Manufacturing unit-Dokumentation zur Set up und Einrichtung.
In diesem Beispiel gibt die Funktion einen Zufallswert zwischen 0 und 1 zurück, um eine Genauigkeitsbewertung zu simulieren. Sie können dies jedoch durch Ihre eigene Auswertungslogik ersetzen, um einen Genauigkeitswert (oder eine andere Metrik) basierend auf Ihren spezifischen Anforderungen zu berechnen und zurückzugeben. Diese Flexibilität ermöglicht es Ihnen, benutzerdefinierte Bewertungskriterien zu definieren, die Ihren Anwendungsfall besser widerspiegeln.
Definieren Sie Ihre benutzerdefinierte Metrik
Erstellen wir zunächst eine Python-Datei mit dem Namen custom_metric.py und definieren Sie darin unsere benutzerdefinierte Metrikfunktion.
In diesem Beispiel heißt unsere benutzerdefinierte Metrik X_Punktzahl. Diese Metrik wird dauern preds (vorhergesagte Werte) und Etiketten (Grundwahrheitswerte) als Eingaben und geben eine Bewertung basierend auf Ihrer benutzerdefinierten Logik zurück.
import random
def cal_x_score(preds, labels):
"""
Calculate a customized metric rating.
Parameters:
preds -- checklist of predicted values
labels -- checklist of floor fact values
Returns:
rating -- a random worth or a customized calculation as per your requirement
"""
# Customized metric calculation logic goes right here
# Instance: return a random rating between 0 and 1
return random.uniform(0, 1)
Sie können die Zufallsbewertung durch Ihre spezifische Berechnungslogik ersetzen.
Ändern von sft/metric.py zur Integration der benutzerdefinierten Metrik
Um sicherzustellen, dass das LLaMA-Board unsere neue Metrik erkennt, müssen wir sie in die Metrikberechnungspipeline integrieren src/llamafactory/prepare/sft/metric.py
Fügen Sie Ihre Metrik zum Rating-Wörterbuch hinzu:
- Suchen Sie die ComputeSimilarity-Funktion darin sft/metric.py
- Aktualisieren self.score_dict um Ihre neue Metrik wie folgt einzubinden:
self.score_dict = {
"rouge-1": (),
"rouge-2": (),
"bleu-4": (),
"x_score": () # Add your customized metric right here
}
Berechnen Sie die benutzerdefinierte Metrik und hängen Sie sie in der __call__-Methode an:
- Innerhalb der __Anruf__ Berechnen Sie Ihre benutzerdefinierte Metrik und fügen Sie sie der Methode hinzu score_dict. Hier ist ein Beispiel dafür:
from .custom_metric import cal_x_score
def __call__(self, preds, labels):
# Calculate the customized metric rating
custom_score = cal_x_score(preds, labels)
# Append the rating to 'extra_metric' within the rating dictionary
self.score_dict("x_score").append(custom_score * 100)
Dieser Integrationsschritt ist wichtig, damit die benutzerdefinierte Metrik im LLaMA-Board angezeigt wird.
Der predict_x_score
Die Metrik wird nun erfolgreich angezeigt und zeigt eine Genauigkeit von 93,75 % für dieses Modell und diesen Validierungsdatensatz. Diese Integration bietet Ihnen eine einfache Möglichkeit, jedes fein abgestimmte Modell direkt in der Evaluierungspipeline zu bewerten.
Abschluss
Nachdem Sie Ihre benutzerdefinierte Metrik eingerichtet haben, sollten Sie sie nach dem Ausführen der Evaluierungspipeline im LLaMA Board sehen. Die zusätzlichen Metrikwerte werden für jede Bewertung aktualisiert.
Mit diesen Schritten haben Sie erfolgreich eine benutzerdefinierte Bewertungsmetrik in LLaMA-Manufacturing unit integriert! Dieser Prozess gibt Ihnen die Flexibilität, über Standardmetriken hinauszugehen und Modellbewertungen an die individuellen Anforderungen Ihres Projekts anzupassen. Durch die Definition und Implementierung spezifischer Metriken für Ihren Anwendungsfall erhalten Sie aussagekräftigere Einblicke in die Modellleistung und heben Stärken und Verbesserungsbereiche auf die Weise hervor, die für Ihre Ziele am wichtigsten ist.
Das Hinzufügen benutzerdefinierter Metriken ermöglicht außerdem eine kontinuierliche Verbesserungsschleife. Wenn Sie Modelle anhand neuer Daten verfeinern und trainieren oder Parameter ändern, bieten diese personalisierten Metriken eine konsistente Möglichkeit, den Fortschritt zu bewerten. Unabhängig davon, ob Ihr Fokus auf domänenspezifischer Genauigkeit, Ausrichtung auf die Benutzererfahrung oder differenzierten Bewertungsmethoden liegt, bietet LLaMA Board eine visuelle und quantitative Möglichkeit, diese Ergebnisse im Zeitverlauf zu vergleichen und zu verfolgen.
Durch die Verbesserung der Modellbewertung mit benutzerdefinierten Metriken ermöglicht Ihnen LLaMA-Manufacturing unit, datengesteuerte Entscheidungen zu treffen, Modelle präzise zu verfeinern und die Ergebnisse besser an reale Anwendungen anzupassen. Mit dieser Anpassungsfunktion können Sie Modelle erstellen, die eine effektive Leistung erbringen, im Hinblick auf relevante Ziele optimiert werden und bei praktischen Einsätzen einen Mehrwert bieten.
Wichtige Erkenntnisse
- Benutzerdefinierte Metriken in LLaMA-Manufacturing unit verbessern Modellbewertungen, indem sie sie an den individuellen Projektanforderungen ausrichten.
- LLaMA Board ermöglicht die einfache Visualisierung benutzerdefinierter Metriken und bietet tiefere Einblicke in die Modellleistung.
- Ändern
metric.py
ermöglicht die nahtlose Integration individueller Bewertungskriterien. - Personalisierte Metriken unterstützen die kontinuierliche Verbesserung und passen Bewertungen an sich entwickelnde Modellziele an.
- Maßgeschneiderte Metriken ermöglichen datengesteuerte Entscheidungen und optimieren Modelle für reale Anwendungen.
Häufig gestellte Fragen
A. LLaMA-Manufacturing unit ist ein Open-Supply-Instrument zur Feinabstimmung großer Sprachmodelle über eine benutzerfreundliche WebUI mit Funktionen zum Trainieren, Bereitstellen und Bewerten von Modellen.
A. Mit benutzerdefinierten Metriken können Sie die Modellleistung anhand spezifischer Kriterien für Ihren Anwendungsfall bewerten und Erkenntnisse gewinnen, die mit Standardmetriken möglicherweise nicht erfasst werden.
A. Definieren Sie Ihre Metrik in einer Python-Datei und geben Sie die Logik an, wie die Leistung basierend auf Ihren Daten berechnet werden soll.
A. Fügen Sie Ihre Metrik hinzu sft/metric.py
Datei und aktualisieren Sie das Rating-Wörterbuch und die Berechnungspipeline, um sie einzuschließen.
A. Ja, sobald Sie Ihre benutzerdefinierte Metrik integriert haben, zeigt LLaMA Board sie an, sodass Sie die Ergebnisse zusammen mit anderen Metriken visualisieren können.
Die in diesem Artikel gezeigten Medien sind nicht Eigentum von Analytics Vidhya und werden nach Ermessen des Autors verwendet.