Trainingsdaten fĂŒr maschinelles Lernen
Was KĂŒnstliche Intelligenz oder etwas akademischer Maschinelles Lernen auszeichnet, ist, dass nicht jedes Ergebnis das Resultat eines komplett festgelegten Regelsystems ist, sondern dass die kĂŒnstliche Intelligenz gelernt hat, was mit hoher Wahrscheinlichkeit das richtige Resultat ist. Das ist vor allem dann wichtig, wenn es kaum oder gar nicht möglich ist, alle möglichen FĂ€lle in ein Regelwerk zu gieĂen, also z.B. wenn die KomplexitĂ€t des Problems zu groĂ ist, beispielsweise, wenn ein Foto eines Gesichts einer Person zugeordnet werden soll.
Ein groĂer Teil der KI-Modelle lernt anhand von Beispielen. Bei der Gesichtserkennung können das z.B. ganz viele Bilder einer Person sein, auf denen man diese erkennt.
Ăberwachtes Lernen | Supervised LearningÂ
Die Gesichtserkennung ist ein klassisches Beispiel fĂŒr sogenanntes ĂŒberwachtes Lernen. Das heiĂt, dass die Trainingsdaten aus Paaren bestehen, dem Input (das Foto vom Gesicht) und dem richtigen Ergebnis (der Name der Person, die auf dem Bild abgebildet ist). Weitere Beispiele fĂŒr ĂŒberwachtes Lernen sind z.B. KI-Modelle fĂŒr das Sentiment (Stimmung: gut oder schlecht) eines Textes, bei denen die Trainingsdaten aus Paaren (Text + Stimmung) bestehen.


Dieses Lernen nennt sich dann ĂŒberwacht, weil das richtige Ergebnis, man spricht hier auch von âGold Labelâ, aus einer sicheren Quelle (also z.B. von einem menschlichen Ăberwacher) kommt. Bildlich gesprochen ist der Ăberwacher der Lehrer mit Lösungsheft (Problem + Gold Label bzw. âLösungâ) und kann die Versuche des Modells danach bewerten, sodass das geĂŒbte Modell weniger Fehler macht.
â
Selbst-ĂŒberwachtes Lernen | Self-supervised Learning
Auch selbst-ĂŒberwachtes Lernen benötigt Trainingsdaten und Beispiele. Hier zieht allerdings der Trainings-Algorithmus die wichtige Information einzig aus dem gegebenen Input. Dieses Lernverfahren ist z.B. oft bei den gerade sehr beliebten generativen Modellen (ChatGPT, Midjourney) im Einsatz. Bei Sprachmodellen wie denen, die hinter ChatGPT stecken, wird dann z.B. ein Teil eines vollstĂ€ndigen Textes âgeschwĂ€rztâ (man sagt âmaskiertâ) und das Modell versucht zu erraten, was hinter dem geschwĂ€rzten (maskierten) Teil stecken könnte. Weil es auch ganz viele andere Texte schon âgesehenâ hat, kann es sozusagen eine Statistik bilden. Und hier kann es ja selber durch Spicken hinter das GeschwĂ€rzte die richtige Antwort ĂŒberprĂŒfen. Weil bei den GPT-artigen Modellen der letzte Abschnitt des Textes maskiert wird, und sie dann ja quasi die Fortsetzung eines Textes vorhersagen, spricht man hier auch von generativen oder prediktiven Modellen.

â
QualitÀt und QuantitÀt von Trainingsdaten
âViel hilft vielâ war auch im maschinellen Lernen ein passendes Mantra. Selbst wenn ein paar Trainingsdaten nicht optimal waren (z.B. nicht in der 100 % richtigen Form, oder mit nicht optimalem Gold Label), dann macht das im Schnitt nicht viel aus. AuĂerdem wurden immer gröĂere neuronale Netze trainiert, die dazu tendieren, einfach die richtigen Ergebnisse âauswendig zu lernenâ, wenn sie nicht genug Input bekommen, dass sie die Merkmale erkennen mĂŒssen, um richtige Voraussagen zu machen. Man spricht dann vom sogenannten âOverfittingâ.
Viele Trainingsdaten bedeuten aber auch lange Trainingszeiten. Besonders dann, wenn man das Training auf teurer Hardware laufen lĂ€sst, kann man sich hier Fragen nach einer passenden Kosten-Nutzen-Relation stellen. Es gibt auch Untersuchungen, die zwischen der GröĂe der neuronalen Netze (also insbesondere der Anzahl der trainierbaren Parameter) und der optimalen Trainingsdaten-Anzahl eine Empfehlung abgeben (z.B. https://arxiv.org/abs/2203.15556).Â
Wenn nun aber unser âviel hilft vielâ nicht mehr uneingeschrĂ€nkt gilt, dann sollte man sich wohl doch auch um bessere Trainingsdaten bemĂŒhen, um Zeit und Geld zu sparen und trotzdem gut trainierte Modelle zu erhalten. Gerade beim Finetuning (mehr dazu spĂ€ter) kann das essentiell fĂŒr den Erfolg sein.

Was sind typische QualitÀtsmerkmale?
ZunĂ€chst einmal sollten die Trainingsdaten die âRealitĂ€tâ, d.h. die Anfragen, die das Modell spĂ€ter bearbeiten soll, gut reprĂ€sentieren. Wenn meine Kunden alle auf Deutsch Fragen stellen, ist ein rein englischer Trainingsdatensatz zumindest nicht optimal. AuĂerdem bedeutet es, dass die Daten vielseitig sein sollten, um die Spanne der spĂ€teren Inputs abzudecken. Zudem sollten verschiedene Arten von Anfragen nicht ĂŒberreprĂ€sentiert sein. Bei Sentiment-Klassifizierungen sollten also z.B. nicht nur 10 gut gelaunte und dafĂŒr 1000 schlecht gelaunte Texte unter den Beispielen sein.Â
Um es noch klarer auszudrĂŒcken: Wenn ich mit einem Bildererkennungs-Modell z.B. Krebs entdecken will, sollte ich weder ausschlieĂlich Bilder von gesundem Gewebe noch nur Bilder von Krebserkrankungen im Trainingsdatensatz haben.
Testdaten vs. Trainingsdaten
Wenn man ĂŒber Trainingsdaten liest oder hört, fĂ€llt manchmal der Begriff âTestdatenâ, seltener auch noch âDev-â bzw. âEntwicklerdatenâ. Diese Daten unterscheiden sich (neben dem Umfang) vom Trainingsdatensatz lediglich in ihrer Funktion. Die Idee dahinter: Wenn man verifizieren will, ob ein KI-Modell gut funktioniert, sollte man das mit anderen Daten testen, als mit denen, mit denen man trainiert hat. Wenn wir uns z.B. an das Overfitting erinnern, wĂŒrde man z.B. sonst nur checken, ob das Modell gut auswendig gelernt hat. Ăhnlich sieht es mit dem Entwicklungsdatensatz aus - den nutzen KI-Entwickler:innen in der Phase, wenn noch nicht alle Feinheiten (z.B. die sogenannten Hyperparameter) eines Modells ausgearbeitet sind und man nach âguten Einstellungenâ oder sogar dem besten Modell-Typ sucht. Die Idee ist aber die gleiche wie bei den Testdaten.
Wie man jetzt seine Daten in Trainings-/Test- und Dev-Daten aufteilt, hĂ€ngt auch von der Art des Modells ab, das man trainiert oder dessen Einsatzzweck. Oft nehmen die Trainingsdaten den gröĂten Teil der Daten ein, die Dev-Daten den kleinsten. Besonders bei den Large Language Modells wie GPT-4 und Konsorten ist der Trainingsdaten-Anteil um ganze GröĂenordnungen gröĂer.
Testdaten und Trainingsdaten einfach erklÀrt anhand eines Beispiels:
Stell dir vor, du bist ein Mathelehrer und weiĂt, dass die Mathearbeit zum gleichen Thema aus dem letzten Jahr bei den SchĂŒler:innen im Umlauf ist und fleiĂig auswendig gelernt wird. Jetzt kannst du natĂŒrlich dieselbe Mathearbeit noch mal stellen, hoffen, dass das Auswendiglernen allen besser liegt als das Problem zu verstehen. Du bekommst hoffentlich ein gutes Klausurergebnis. Aber der PĂ€dagoge in dir wĂ€re bestimmt nicht glĂŒcklich. Der will wissen, wie viel die Klasse verstanden hat. Also wirst du wohl nicht noch einmal genau dieselbe Arbeit stellen.
So verhĂ€lt es sich auch beim Trainieren von KI-Modellen. Man hat genug "Aufgaben", also Trainingsdaten in petto, so dass man fĂŒr das Lernen (âTrainingâ) und die Klassenarbeit (âTestingâ) unterschiedliche Daten nutzen kann. Das eine sind die Trainings- das andere die Testdaten.
In der KI gibt es noch weitere Unterteilung fĂŒr die Daten(âAufgabenâ)-SĂ€tze, denn bevor man ein Modell so richtig trainiert, will man noch ĂŒberprĂŒfen, ob man die richtige Art von Modell gewĂ€hlt hat, oder ob man bestimmte Feineinstellungen (man spricht hier vom âHyperparameter-Tuningâ) verbessern kann. Denn ein âechtesâ Training kann schon mal lĂ€nger dauern oder teuer sein. FĂŒr diesen Zweck nimmt man gerne noch mal andere Daten, die sogenannten âEntwicklungsdatensĂ€tzeâ, die oft nicht so umfangreich sind wie die spĂ€teren Trainings- und Testdaten.
Als gute âKI-Modell-Lehrer:innenâ hast du also:Â
- EntwicklungssĂ€tze,Â
- TrainingssĂ€tze,Â
- TestdatensÀtze.
Finetuning
In Zeiten, wo immer gröĂere Modelle wie GPT-4 oder auch offene Varianten wie Alpaca gibt, die so groĂ sind, dass kleinere und auch mittlere bis groĂe Firmen nicht die Ressourcen haben, diese zu trainieren, ist das Konzept des sogenannten Finetunings stark im Kommen. Dabei geht es darum, ein sehr groĂes Modell, das schon âout of the boxâ sehr gut mit allgemeinen Aufgaben zurechtkommt, etwas mehr zu spezialisieren. Damit erreicht man dann in der Spezialaufgabe noch bessere Leistungen. Es wundert natĂŒrlich nicht, dass auch das Finetuning anhand von Beispielen erfolgt. Wegen der herausragenden allgemeinen FĂ€higkeiten z.B. von Large Language Models (LLMs) reichen hier viel weniger Daten aus, als zuvor in das Training des eigentlichen Modells geflossen sind. Das macht das Finetuning so attraktiv, denn es ist oft auch fĂŒr Firmen, Institutionen oder sogar Privatpersonen mit kleinerem Budget handhabbar.
Und beim Chatbot?
Es gibt ja nicht âden Chatbotâ. Wir bei moinAI setzen in einem Chatbot durchaus verschiedene Arten von Modellen ein, die im Zusammenspiel eine hervorragende QualitĂ€t erreichen. Und auch hinter dem AushĂ€ngeschild ChatGPT stecken verschiedene Konzepte. Grundlage ist zwar GPT-3.5 bzw. GPT-4, was ein selbst-ĂŒberwachtes Lernen nutzt. Aber es ist bekannt, dass hier auch mit sogenanntem Reinforcement-Learning gearbeitet wurde, wo stark vereinfacht Menschen direkt Feedback geben, ob der Output gut oder schlecht war, das wĂŒrde man dann nicht als Trainingsdaten bezeichnen.
Im einfachsten Fall basiert ein Chatbot auf einer sogenannten Intent-Erkennung. Dabei handelt es sich um ein Modell auf Basis von ĂŒberwachtem Lernen, wo es Paare aus Chat-Texten und dem richtigen zu erkennenden Intent (in unserer Sprache âThemaâ) benötigt. Wie viele Beispiele hier benötigt werden, hĂ€ngt auch von der QualitĂ€t der zugrunde liegenden Modelle ab.
In diesem Fall ist vielleicht noch zu erwĂ€hnen, dass hier wirklich nur trainiert wird, zu erkennen, um was fĂŒr ein Thema sich der Kunde oder Chatpartner gerade interessiert. Die Antwort hat in so einem Fall hoffentlich ein versierter Redakteur schon im Vorfeld verfasst, sie ist nicht Teil der Trainingsdaten. Die sehen eher so aus:Â
1) Text: âHallo, Du!â, Thema: âBegrĂŒĂungâ
2) Text: âMach es gut!â, Thema: âVerabschiedungâ
Will man dann aber doch einen Chatbot wie ChatGPT trainieren, der auch âfreiâ antwortet, sehen die Trainingsdaten eher so aus:
Input:Â
âKontextâ: âDu bist ein Chatbot einer Firma, die Software as a Service anbietet, und versuchst, Kunden dabei zu helfen, sich bei dem Produkt zurechtzufinden."
âBisheriger Verlaufâ: âKunde: Hallo; Chatbot: Moin, wie kann ich Dir helfen?â
âAnfrageâ: âWieviel kostet ein Abo bei Euch monatlich?â
Output:
âDas hĂ€ngt von der gewĂ€hlten Lizenz ab. Die Einsteiger-Lizenz fĂ€ngt bei 100 Euro pro Monat an und unsere Premiumlizenzen kosten 2000 Euro fĂŒr einen Monatâ
Die Modelle, die wie ChatGPT funktionieren sind zum GlĂŒck schon von anderen âvortrainiertâ worden und verstehen schon âvon der Stangeâ eine ganze Menge, d.h. man fĂ€ngt nicht bei Null an und braucht dann nicht die Billionen von Trainings- und Testdaten, die das Modell schon schlau gemacht haben. Siehe den Abschnitt ĂŒber Finetuning. Stelle dir einen Hund vor, der schon vom ZĂŒchter stubenrein trainiert wurde und vielleicht einfache Kommandos wie âSitzâ oder âStopâ versteht. Wie der Hund dir die Zeitung zum Sofa bringt oder die Kinder selbststĂ€ndig von der Schule abholt, das musst du ihm dann aber doch noch beibringen.Â
Oder dir eben eingestehen, dass ein Hund nicht dazu geeignet ist, Kinder von der Schule abzuholen. So in etwas verhĂ€lt es sich z.B. ChatGPT und dem Einsatz in der Kundenkommunikation. Es ist ein vielseitiges Tool, das vielen Anforderungen gerecht wird â nicht aber den Anforderungen, die man an die Kundenkommunikation von Unternehmen hat.
Fazit
Wir sehen: Auch wenn es immer mehr sehr gute, âallgemein-gebildeteâ groĂe Sprachmodelle (LLMs) gibt, bestimmen die Menge und noch mehr die QualitĂ€t von Trainingsdaten auch den Erfolg eines âKI-Ăkosystemsâ. Ein Chatbot, dessen Trainingsdaten mit Erfahrung und Branchenwissen (z.B. E-Commerce, Finance oder Verlage) ausgewĂ€hlt wurden, erreicht einen deutlich höheren Grad an Automatisierung als ein Bot, der nur mit generischen, unkontrollierten Daten trainiert wurde.