LLM-Recommendation-Systems
Feinabstimmung LLMs für textbasierte Empfehlungen
In diesem Projekt wird das Potenzial von Feinabstimmungsmodellen (LLMs) speziell für textbasierte Empfehlungen untersucht, um die Genauigkeit und die Benutzerzufriedenheit zu verbessern. Es führt einen neuartigen schnellen Mechanismus ein, der Beziehungsinformationen in natürlichen Sprachtext verwandelt und es dem LLM ermöglicht, Benutzerinteraktionen zu interpretieren und fundiertere Empfehlungen abzugeben.
Projektübersicht
Schlüsselpunkte:
- Verwendete das Amazon Review -Datensatz 2018, um ein personalisiertes Produktempfehlungssystem zu entwickeln.
- Implementiert und verglichen die Leistung zweier großer Sprachmodelle: Mistral-7b und Tinyllama.
- Angewandte fortschrittliche Techniken wie LORA (Anpassung mit niedriger Rang) und Qlora (quantisierte LORA) zur effizienten Modellfeineinstellung.
- Entwickelte eine neuartige Aufforderungstrategie, um die Benutzerinteraktionsverlauf in natürliche Sprache für die Modelle in natürliche Sprache zu verwandeln.
- Erreichte über 98% Genauigkeit bei der Vorhersage der nächsten Produktkäufe der Benutzer mithilfe des feinstimmigen Tinyllama-Modells.
- Zeigten, dass kleinere, spezialisierte Modelle größere Modelle für bestimmte Aufgaben übertreffen können, wenn sie richtig abgestimmt sind.
- Führte die Fehleranalyse durch, um Muster in falschen Vorhersagen und potenziellen Verbesserungsbereichen zu identifizieren.
- Untersuchte das Gleichgewicht zwischen Modellgröße, Recheneffizienz und Vorhersagegenauigkeit in Empfehlungssystemen.
Das Projekt konzentriert sich darauf, die Effizienz von Feinabstimmungs-LLMs für Empfehlungsaufgaben mithilfe eines vielfältigen und expansiven Datensatzes zu demonstrieren. Die Implementierung umfasst die folgenden Phasen:
Datenextraktion und Vorverarbeitung :
- Extrahierte Teilmengen von Amazon -Überprüfungsdaten und konvertierte sie in Datenrahmen.
- Unnötige Spalten entfernt.
- Benutzer mit unzureichenden Kaufgeschichten herausgefiltert.
- Transformierte die verbleibenden Daten in Eingabeaufforderungen und bildete die Eingabe für die LLM.
Schnelltechnik :
- Erkundete verschiedene Aufforderungstechniken.
- Für jede Eingabeaufforderung für eine dreiteilige Struktur festgelegt: Anweisungen, Eingabetails und Bodenwahrheitsausgabe.
- Diese Struktur bietet dem Modell eine klare Aufgabe, relevante Informationen und das gewünschte Ausgangsformat.
Modellimplementierung :
- Verwendete die Bibliotheken „Unloth AI“ und "Huggingface" für vorgebrachte Modelle und Anpassungswerkzeuge.
- Als Qlora betrachtet, eine Technik zur Verbesserung der Modellleistung.
- Erstellte konsolidierte
SFTTrainer und TrainingArguments , um Hyperparameteranpassungen während des Trainings zu zentralisieren.