Fine-tuning oder eingefrorene Embeddings : Wann sollte man das LLM anpassen und wann den Kopf Sklearn behalten ?

Um ein großes Sprachmodell (LLM) auf einen bestimmten Bereich zu spezialisieren, besteht der klassische Ansatz darin, es fine-zutunen, also sein Training mit einem spezifischen Datensatz fortzusetzen. Ein Tutorial vergleicht diese Methode mit einer leichteren Lösung: das Modell eingefroren lassen und nur einen kleinen Klassifikator trainieren, der darüber platziert wird. Bei einer Aufgabe zur Klassifizierung von Zeitungsartikeln erzielt die erste Strategie die beste Genauigkeit, erfordert aber deutlich mehr Zeit.

Die erste Strategie basiert auf LoRA (Low-Rank Adaptation), einem Algorithmus, der die vortrainierten Gewichte des Modells einfriert und kleine trainierbare Anpassungsmatrizen hinzufügt. Diese Matrizen machen typischerweise 1 bis 2 % der Modellgröße aus. Das Tutorial verwendet eine quantisierte Variante, genannt QLoRA, die das Modell in 4-Bit-Präzision hält, um Speicher zu sparen. Die zweite Strategie, die der eingefrorenen Embeddings, nutzt das LLM nur als Merkmalsextraktor. Jeder Text wird in einen numerischen Vektor, genannt Embedding, aus der letzten verborgenen Schicht des Modells transformiert. Diese Vektoren dienen dann zum Trainieren eines klassischen Klassifikators: eines Random-Forest-Modells (random forest) mit 100 Bäumen aus der scikit-learn-Bibliothek.

Die Experimente wurden auf Google Colab mit einer T4-GPU durchgeführt. Das verwendete Modell ist Qwen/Qwen2.5-1.5B, und der Datensatz ist ag_news, der Nachrichtenartikel in vier Kategorien einteilt. Um den Vergleich schnell zu halten, arbeiten die Autoren mit einer Teilmenge von 800 Trainings- und 200 Testartikeln.

Gegensätzliche Ergebnisse

Mit der Strategie der eingefrorenen Embeddings dauert die Extraktion der Vektoren 96,5 Sekunden, und das Training des Klassifikators nur 2,866 Sekunden. Die Genauigkeit erreicht 82,0 % auf dem Testdatensatz. Das Tutorial betont, dass der Großteil der Zeit für die Merkmalsextraktion aufgewendet wird, während das Training des Klassifikators fast augenblicklich erfolgt.

Die LoRA-Strategie zeigt eine Genauigkeit von 87,0 % bei einem Training von 300,3 Sekunden. Der Genauigkeitsgewinn hat also seinen Preis: Laut Tutorial dauerte der gesamte Prozess dreimal so lange, und dieser Unterschied könnte mit größeren Datensätzen deutlich ausgeprägter werden.

Wann welche Strategie zu bevorzugen ist

Die Autoren empfehlen eingefrorene Embeddings, wenn schnelles Training und geringer Rechenaufwand gesucht werden und dabei ein Overfitting des Basismodells vermieden werden soll. Fine-tuning mit QLoRA ist hingegen angezeigt, wenn die Verringerung der Genauigkeitslücke für den Zielbereich entscheidend ist oder wenn das Modell tief verwurzelte, domänenspezifische Nuancen lernen muss.

Die Überlegungen ändern sich für rein generative Aufgaben, wie die Erzeugung von Text oder Code, wo eine Anpassung des Modells, beispielsweise durch Fine-tuning, in der Regel erforderlich ist, um spezialisiertes Verhalten zu erhalten. Das Tutorial merkt jedoch an, dass eingefrorene Embeddings für bestimmte generative Anwendungen in kostenlosen Bereitstellungen eine praktikable Alternative sein können, wenn die maximale Leistung ein etwas verhandelbares Kriterium ist.