Die generative KI durchläuft in einem rasanten Tempo den Hype-Zyklus. Die Rede ist dann meist von großen Sprachmodellen (Large Language Models, LLMs) wie ChatGPT. Es gibt aber auch kleine Modelle, die Small Language Models (SLMs) – und diese sind für bestimmte Anwendungsfälle sogar besser geeignet als große Modelle. Im Folgenden erklären wir die Unterschiede zwischen LLMs und SLMs.
Sprachmodelle sind KI-Rechenmodelle der Computerlinguistik, die natürliche menschliche Sprache erzeugen können. Das ist keine leichte Aufgabe.
Diese Modelle werden als probabilistische Machine-Learning-Modelle trainiert. Sie berechnen die Wahrscheinlichkeitsverteilung von Wörtern, die für die Generierung einer syntaktischen Sequenz geeignet sind, und versuchen so, menschliche Intelligenz nachzuahmen. Der Schwerpunkt der Sprachmodelle im wissenschaftlichen Bereich liegt auf zwei Aspekten:
Was die Simulation menschlicher Intelligenz betrifft, so haben die heutigen innovativen KI-Modelle im Bereich der natürlichen Sprachverarbeitung (Natural Language Processing, NLP) den Turing-Test nicht ganz bestanden. (Eine Maschine besteht den Turing-Test, wenn es unmöglich zu erkennen ist, ob der Gesprächspartner ein Mensch oder ein Computer ist.)
Interessant ist aber, dass wir diesem Ziel schon relativ nahekommen: ziemlich sicher mit den viel diskutierten und gehypten Large Language Models (LLMs) und wahrscheinlich auch mit den vielversprechenden, aber weniger gehypten SLMs (Small Language Models oder Short Language Models).
Wenn ihr den Hype mitverfolgt, dann habt ihr wahrscheinlich schon von LLMs wie ChatGPT gehört. Diese generative KI ist für Wissenschaft, Wirtschaft und die breite Öffentlichkeit gleichermaßen von großem Interesse. Das liegt vor allem daran, dass diese künstlichen Intelligenzen relativ komplexe Interaktionen in Form von sprachlicher Kommunikation durchführen können.
Derzeit kommen LLM-Tools als intelligente Maschinenschnittstellen zum Einsatz, die im Internet verfügbares Wissen erschließen. LLMs destillieren relevante Informationen aus dem Internet, das ihre Trainingsbasis darstellt, und geben dem Benutzer präzise, mundgerechte Wissensmengen aus. Dies ist eine Alternative zur Suche im Internet mit eigenen Suchanfragen, dem Lesen von Tausenden von Webseiten und zum Aufspüren einer befriedigenden und schlüssigen Antwort.
ChatGPT ist in der Tat der erste Use Case von LLMs für die Allgemeinheit. Zuvor gab es allenfalls GPT von OpenAI und die BERT-Technologie von Google.
Die jüngeren Iterationen, darunter auch ChatGPT, sind auf Programmierskripts trainiert und entwickelt. Entwicklungsteams können ChatGPT verwenden, um komplette Programmfunktionen zu schreiben – vorausgesetzt, sie können die Anforderungen und Einschränkungen über die Texteingabe adäquat spezifizieren.
Die drei Haupttypen von Modellen zur Verarbeitung natürlicher Sprache: symbolisch, statistisch und neuronal.
Wie funktionieren nun große Sprachmodelle? Betrachten wir die wichtigsten Schritte bei der Erzeugung natürlicher Sprache durch LLMs.
Die Idee besteht darin, ein mathematisches Modell zu entwickeln, dessen Parameter so gesetzt sind, dass sie Vorhersagen repräsentieren, die mit höchster Wahrscheinlichkeit richtig und zutreffend sind.
Bei Sprachmodellen beziehen sich diese Vorhersagen auf die Verteilung der Daten der natürlichen Sprache. Ziel ist es, mit der gelernten Wahrscheinlichkeitsverteilung der natürlichen Sprache eine Sequenz von Sätzen zu erzeugen, die auf der Grundlage des verfügbaren Kontextwissens, einschließlich der Benutzereingaben, mit der höchsten Wahrscheinlichkeit auftreten.
Um die komplexen Beziehungen zwischen Wörtern und aufeinanderfolgenden Phrasen zu erlernen, verwenden moderne Sprachmodelle wie ChatGPT und BERT Transformer-basierte Deep-Learning-Architekturen. Die Grundidee von Transformern besteht darin, Text in numerische Repräsentationen umzuwandeln, die zur Erstellung von Sequenzvorhersagen nach Bedeutung gewichtet werden.
Sprachmodelle werden sehr stark verfeinert und für bestimmte Aufgabenbereiche entwickelt. Ein weiterer wichtiger Anwendungsfall für die Entwicklung von Sprachmodellen ist die Beseitigung von Vorurteilen gegenüber unerwünschten Sprachergebnissen wie Hassrede und Diskriminierung.
Der Prozess umfasst die Anpassung der Modellparameter durch:
Training des Modells mit domänenspezifischem Wissen.
Initialisierung der Modellparameter basierend auf vortrainierten Daten.
Monitoring der Modellleistung.
Weitere Feinabstimmung der Modell-Hyperparameter.
LLM und SLM basieren auf ähnlichen Konzepten des probabilistischen maschinellen Lernens, das gilt in Bezug auf die Architektur, ihr Training, ihre Datengenerierung und ihre Modellevaluation.
Im Folgenden wollen wir die Unterschiede zwischen SLM- und LLM-Sprachmodellen diskutieren.
Der vielleicht auffälligste Unterschied zwischen LLM und SLM ist die Größe der Sprachmodelle.
LLMs wie ChatGPT (GPT-4) sollen 1,76 Billionen Parameter haben.
Ein Open-Source-SLM wie Mistral 7B kann 7 Milliarden Modellparameter umfassen.
Der Unterschied ergibt sich aus dem Trainingsprozess in der Modellarchitektur. ChatGPT verwendet einen Mechanismus der Selbstaufmerksamkeit in einem Encoder-Decoder-Modell, während Mistral 7B einen Sliding-Window-Mechanismus verwendet, der ein effizientes Training in einem reinen Decoder-Modell ermöglicht.
SLMs werden mit Daten aus sehr spezifischen Bereichen trainiert. Es kann daher sein, dass ihnen Informationen aus dem Gesamtzusammenhang mit anderen Wissensbereichen fehlen – aber in ihrem jeweiligen Spezialgebiet sind sie wahrscheinlich spitze.
Das Ziel von LLMs hingegen ist es, die menschliche Intelligenz umfassend zu emulieren. Large Language Models werden auf größeren Datenquellen trainiert und sollen im Vergleich zu domänenspezifischen SLMs in allen Domänen relativ gut abschneiden.
Dies bedeutet auch, dass LLMs vielseitiger sind und sich besser für nachgelagerte Aufgaben wie die Programmierung anpassen, optimieren und weiterentwickeln lassen.
Das LLM-Training ist ein sehr ressourcenintensiver Prozess, der enorme Mengen an GPU-Cloud-Rechenkapazität benötigt. Um ChatGPT von Grund auf zu trainieren, werden mehrere Tausend GPUs benötigt, während das SLM Mistral 7B auf euren lokalen Rechnern mit einer ordentlichen GPU laufen kann – das Training eines 7B-Parameter-Modells erfordert jedoch immer noch mehrere Stunden Rechenzeit auf mehreren GPUs.
LLMs tendieren zu einer gewissen Voreingenommenheit. Das liegt daran, dass sie nicht ausreichend fein abgestimmt sind und dass sie auf Rohdaten trainieren, die öffentlich zugänglich und im Internet veröffentlicht sind. Bei Trainingsdaten aus dieser Quelle ist es wahrscheinlich, dass die Trainingsdaten unter Umständen …
Weitere Komplexität entsteht an anderer Stelle: Die Sprache selbst bringt ihre eigenen Verzerrungen mit sich, die von einer Vielzahl von Faktoren abhängen: Dialekt, geografische Lage, grammatikalische Regeln etc. Ein weiteres Problem, das häufig auftritt, ist, dass die Modellarchitektur selbst ungewollt eine Bias bewirkt, die möglicherweise unbemerkt bleibt.
Da ein SLM auf relativ kleinen, domänenspezifischen Datensätzen trainiert, ist das Risiko einer Verzerrung natürlich geringer als beim LLM.
Die kleinere Modellgröße von SLMs bedeutet, dass die Benutzer das Sprachmodell auf ihren lokalen Rechnern ausführen können und dennoch in akzeptabler Zeit Daten generieren.
Ein großes Sprachmodell benötigt mehrere parallele Verarbeitungseinheiten, um Daten zu erzeugen. Je mehr Nutzer gleichzeitig auf das LLM zugreifen, desto langsamer wird die Inferenz des Modells.
Die Antwort auf diese Frage hängt ganz vom Use Case eurer Sprachmodelle ab und davon, welche Ressourcen euch zur Verfügung stehen. Im Business-Kontext ist es wahrscheinlich so, dass ein LLM als Chat-Agent für eure Callcenter und Support-Teams besser geeignet ist.
Für die meisten funktionsspezifischen Anwendungsfälle ist ein SLM wahrscheinlich die beste Lösung.
Man denke nur an Use Cases in den Bereichen Medizin, Recht oder Finanzen. Hier erfordert jede Anwendung sehr spezifisches und proprietäres Wissen. Ein SLM, das intern auf dieses Wissen trainiert und für den internen Gebrauch verfeinert wurde, kann sehr gut als intelligenter Agent für domänenspezifische Use Cases in stark regulierten und spezialisierten Branchen dienen.
Ihr habt einen Fehler entdeckt oder eine Anregung? Bitte lasst es uns wissen und schreibt eine E-Mail an ssg-blogs@splunk.com.
Dieser Beitrag spiegelt nicht zwingend die Position, Strategie oder Meinung von Splunk wider.
Weltweit führende Unternehmen verlassen sich auf Splunk, ein Cisco-Unternehmen, um mit unserer Plattform für einheitliche Sicherheit und Observability, die auf branchenführender KI basiert, kontinuierlich ihre digitale Resilienz zu stärken.
Unsere Kunden vertrauen auf die preisgekrönten Security- und Observability-Lösungen von Splunk, um ihre komplexen digitalen Umgebungen ungeachtet ihrer Größenordnung zuverlässig zu sichern und verbessern.