Sprachmodell

mathematisches Modell, das die Abfolge von Elementen in einer Sequenz modelliert, meist in Form eines stochastischen Prozesses

Ein Sprachmodell[A 1] (englisch language model) ist ein mathematisches Modell, das die Abfolge von Elementen in einer Sequenz (zum Beispiel von Buchstaben oder Wörtern in natürlichsprachlichen Texten) modelliert, meist in Form eines stochastischen Prozesses.

Sprachmodelle spielen eine zentrale Rolle in der modernen Computerlinguistik und sind eine entscheidende Komponente dortiger Praxisanwendungen, etwa zur maschinellen Übersetzung oder Spracherkennung.[1][2] Auch ChatGPT ist ein Sprachmodell.

Mathematische Beschreibung Bearbeiten

Sprachmodelle modellieren Sequenzen (zum Beispiel Sätze) als Abfolgen von Elementen (zum Beispiel Buchstaben oder Wörtern). In stochastischen Sprachmodellen sind diese Elemente Zufallsgrößen   und bilden einen zeitdiskreten stochastischen Prozess. Um dasselbe Modell für Sequenzen unterschiedlicher Länge   einsetzen zu können, werden ihr Beginn und ihr Ende typischerweise durch zusätzliche Zufallsgrößen   und   markiert, die einen speziellen Wert (mögliche Notation:  ) annehmen. Die Wahrscheinlichkeit einer konkreten Sequenz   lässt sich dann formulieren als die Wahrscheinlichkeit der Konjunktion

 .

Eine häufige Kurzschreibweise[A 2] für diese Wahrscheinlichkeit lautet

 .

Nach dem Gesetz der totalen Wahrscheinlichkeit lässt sich diese Wahrscheinlichkeit auch so schreiben:

 

Oder kurz:

 .

In Worten: Die Wahrscheinlichkeit der Sequenz ist das Produkt der Wahrscheinlichkeiten für das jeweils nächste Element gegeben die bisherigen Elemente.

Da in der Modellierung für   stets der Wert   verwendet wird (  fast sicher), gilt  . Der entsprechende Faktor kann daher entfallen.

Unterschiedliche Arten stochastischer Sprachmodelle unterscheiden sich darin, wie sie die bedingten Wahrscheinlichkeiten   modellieren. Der Fall   wird dabei häufig nicht gesondert betrachtet, sondern so getan, als ob auch   ein gültiges Sequenzelement (zum Beispiel ein Wort) wäre.

N-Gramme Bearbeiten

Die Modellierung der bedingten Wahrscheinlichkeiten   muss mit beliebig langen Sequenzen   im Bedingungsteil umgehen können (  kann beliebig groß sein). Es stehen aber nur endlich viele Modellparameter zur Verfügung. Ein klassischer Umgang damit ist die Markov-Annahme (englisch markov assumption), laut der die Wahrscheinlichkeit des nächsten Elements nur von einer begrenzten Anzahl   unmittelbar vorhergehender Elemente abhängt[3] (Markow-Kette  -ter Ordnung). Die Wahrscheinlichkeit, dass   auf   folgt, hängt (für  ) also nur von   ab:[A 3]

 .

Die  -Tupel   werden  -Gramme genannt.

Für   ergibt sich keine Vereinfachung der bedingten Wahrscheinlichkeit; sie hängt vom kompletten Präfix   ab. Um auch diesen Fall mit  -Grammen   abdecken zu können, definiert man häufig   für  .

Die Modellparameter sind dann die bedingten Wahrscheinlichkeiten   für alle  -Gramme  , die sich leicht als relative Häufigkeiten aus Textkorpora abschätzen lassen. Vor allem für große   können bestimmte  -Gramme aber so selten sein, dass sie in einem betrachteten Korpus überhaupt nicht vorkommen (Beispiel: das 8-Gramm Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo). Ein Großteil der Forschung zu  -Grammen hat sich daher mit Techniken (im Englischen smoothing techniques genannt) beschäftigt, mit denen positive Wahrscheinlichkeiten auch für solche „unbeobachteten“  -Gramme geschätzt werden können.[4][5][2]

Obwohl natürliche Sprache die Markov-Annahme im Allgemeinen nicht erfüllt, liefern bereits relativ kleine   gute Sprachmodelle.  -Gramme waren jahrzehntelang der dominierende Ansatz zur Sprachmodellierung.[3]

Neuronale Sprachmodelle Bearbeiten

In neuronalen Sprachmodellen werden die Wahrscheinlichkeiten   von künstlichen neuronalen Netzen berechnet. Statt Wahrscheinlichkeiten direkt abzuschätzen, werden also Parameter (Gewichte) des Netzes geschätzt. Die Berechnungsstruktur kann (etwa durch Verwendung von Softmax als Aktivierungsfunktion der letzten Schicht) so vorgegeben werden, dass Nullwahrscheinlichkeiten ausgeschlossen sind.

Auch neuronalen Sprachmodellen kann die Markov-Annahme zugrunde liegen. Ein Ansatz, Wahrscheinlichkeiten von Trigrammen (3-Grammen) nicht direkt aus einem Korpus zu schätzen, sondern von einem neuronalen Netzwerk berechnen zu lassen, findet sich bereits 1988.[6] In einer neueren Architektur von Bengio et al. (2003) gibt es für jedes Element (Wort) und auch für den Start- und Endmarker je einen Parametervektor; zur Berechnung werden die Vektoren der   Wörter aus dem Bedingungsteil ( ) konkateniert und über eine oder mehrere Netzwerkschichten (englisch hidden layers) in eine Wahrscheinlichkeitsverteilung für das nächste Wort ( ) transformiert. Sowohl die Komponenten der Vektoren für die Wörter als auch die Gewichte der Netzwerkschichten werden als Modellparameter geschätzt.[7][8] Die Wahrscheinlichkeiten   werden also mit einer Formel (der Berechnungsvorschrift des neuronalen Netzes) berechnet, statt aus einer Tabelle zum Beispiel ausgezählter relativer Häufigkeiten abgelesen zu werden.

Vorteile dieser Modellierung gegenüber „gewöhnlichen“  -Grammen sind:[9][8]

  • Das Modell kann deutlich weniger Parameter haben. Die Anzahl der  -Gramme über einem Vokabular (zum Beispiel Menge aller vorkommenden Wörter inklusive Start- und Endmarker) der Größe   beträgt  . Ein künstliches neuronales Netz der beschriebenen Form kann schon mit   Parametern auskommen, wobei   die Dimension der Parametervektoren für die Wörter ist.
  • Das Modell kann (über die Parametervektoren jedes einzelnen Wortes) Wörter zusammenfassen, die ähnliche Auswirkungen auf die Wahrscheinlichkeit des folgenden Wortes haben. Beispielsweise braucht keine eigene Wahrscheinlichkeit dafür gespeichert zu werden, dass „Auto“ auf „blaues“, „grünes“, „rotes“ oder „schwarzes“ folgt – die Wahrscheinlichkeit ist jedes Mal ähnlich.
  • Das Modell kann (über die Gewichte der hidden layers) verschiedenen Wörtern unterschiedlich starken Einfluss auf die Wahrscheinlichkeit des folgenden Wortes zumessen, beispielsweise nähere Wörter stärker gewichten als weiter entfernte.

Mithilfe rekurrenter neuronaler Netze wie LSTMs ist es sogar möglich, auf die Markov-Annahme zu verzichten. Dabei wird die komplette Sequenz   vom neuronalen Netz verarbeitet, um die Wahrscheinlichkeitsverteilung für das  -te Wort zu berechnen. Die Transformer-Architektur[10] wurde speziell für diese Aufgabe entwickelt.

Generierung mit Sprachmodellen Bearbeiten

Stochastische Sprachmodelle berechnen Wahrscheinlichkeiten von Sequenzen als Produkt der bedingten Wahrscheinlichkeiten jedes einzelnen Elements gegeben die jeweils vorhergehenden Elemente. Aus der so spezifizierten Wahrscheinlichkeitsverteilung können umgekehrt auch Sequenzen erzeugt werden (englisch sampling). Dazu wird zunächst das erste Element (zum Beispiel das erste Wort in einem Satz)   entsprechend der Verteilung   bestimmt. Ist beispielsweise

 

so wird mit Wahrscheinlichkeit   das Wort „Der“ als erstes Wort gewählt, mit Wahrscheinlichkeit   das Wort „Die“ und mit Wahrscheinlichkeit   das Wort „Das“. Ist das erste Element (Wort)   gewählt, wird analog das zweite entsprechend der Verteilung   bestimmt. Wurde im obigen Beispiel etwa das Wort „Die“ gewählt, so könnten diese Wahrscheinlichkeiten

 

lauten. So wird sukzessive das jeweils nächste Element (Wort) bestimmt, bis die Wahl auf den Endmarker ( ) fällt – dann endet die Sequenz.[11]

Mitunter wird das nächste Element nicht anhand der gesamten Wahrscheinlichkeitsverteilung bestimmt, sondern es werden nur die   Elemente mit der höchsten Wahrscheinlichkeit betrachtet bzw. nur die wahrscheinlichsten Elemente, deren Wahrscheinlichkeit aufsummiert gerade noch   ergibt. Diese Strategie nennt man Top- - bzw. Top- -Sampling. Sie ist vor allem dann von Vorteil, wenn das Vokabular sehr groß ist (bei linguistischen Sprachmodellen, deren Elemente Wörter sind, meist der Fall), weil ansonsten häufig recht unwahrscheinliche Wörter ausgewählt werden.[12]   bzw.   ist im Prinzip frei wählbar und steuert die Balance zwischen Kreativität und Kohärenz: je höher der Wert, desto kreativer können die Antworten sein. ChatGPT nutzt das Top- -Sampling.[13]

Wenn nicht irgendeine Sequenz erzeugt werden soll, sondern ein Bezug zu Eingangsdaten gewünscht ist, etwa bei der maschinellen Übersetzung (hier bestehen die Eingangsdaten aus dem zu übersetzenden Text in der Ausgangssprache), muss das Modell zusätzlich die Abhängigkeit von den Eingangsdaten ausdrücken. Die zu modellierenden Wahrscheinlichkeiten haben dann nicht nur die Form

 ,

sondern

 

für Eingangsdaten  . In neueren Architekturen wird das mitunter bewerkstelligt, indem mit der Generierung der Ausgabesequenz nicht beim Startmarker   begonnen wird, sondern als „Fortsetzung“ einer Eingabesequenz, getrennt durch ein weiteres spezielles Element (mögliche Notation:  ).[14] Soll beispielsweise der englische Satz Time flies like an arrow ins Deutsche übersetzt werden, so beginnt die Generierung der deutschen Übersetzung als „Fortführung“ der Sequenz

 ,

das erste Wort der deutschen Ausgabe richtet sich nach der Verteilung

 

und so weiter.

Auch GPT-Architekturen zur Sprachgenerierung, auf denen unter anderem ChatGPT basiert, nutzen diese Strategie.[15]

Sprachmodelle und künstliche Intelligenz Bearbeiten

Laut Yoav Goldberg kann die Fähigkeit, das nächste Wort nach einer vorgegebenen Folge von Wörtern mit großer Genauigkeit vorherzusagen, als Indikator für Intelligenz auf menschlichem Niveau gesehen werden, da auch jedes Präfix der Form „Die Antwort auf Frage X ist“ vervollständigt werden können müsse und die Lösung dieser Aufgabe daher nicht nur Ausnutzung linguistischer Regularitäten, sondern auch eine große Menge an Weltwissen erfordere.[16]

Literatur Bearbeiten

Einzelnachweise Bearbeiten

  1. Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 105, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch).
  2. a b Stanley Chen, Joshua Goodman: An Empirical Study of Smoothing Techniques for Language Modeling. In: Aravind Joshi, Martha Palmer (Hrsg.): Proceedings of the 34th Annual Meeting of the ACL. Juni 1996 (englisch, arxiv.org [PDF; 227 kB]).
  3. a b Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 106, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch).
  4. Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 107, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch).
  5. Collins (2013), Abschnitt 1.4
  6. Masami Nakamura, Kiyohiro Shikano: A study of English word category prediction based on neural networks. In: Journal of the Acoustical Society of America. Band 84, Nr. S1, 1988, S. 60–61, doi:10.1121/1.2026400 (aip.org [PDF; 842 kB]).
  7. Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 109, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch).
  8. a b Yoshua Bengio, Réjean Ducharme, Pascal Vincent, Christian Janvin: A neural probabilistic language model. In: Journal of Machine Learning Research. Band 3, 2003, ISSN 1532-4435, S. 1137–1155, doi:10.1007/10985687_6 (neurips.cc [PDF; 1,6 MB]).
  9. Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 109-, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch).
  10. Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan Gomez, Łukasz Kaiser, Illia Polosukhin: Attention Is All You Need. In: 31st Conference on Neural Information Processing Systems. 2017 (neurips.cc [PDF; 556 kB]).
  11. Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 112, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch).
  12. Gerhard Paaß, Sven Giesselbach: Pre-trained Language Models. In: Foundation Models for Natural Language Processing. Springer International Publishing, Cham 2023, ISBN 978-3-03123189-6, S. 19–78, hier: S. 41, doi:10.1007/978-3-031-23190-2_2 (englisch).
  13. Top-k-Sampling in ChatGPT. 2. Mai 2023, abgerufen am 16. Juli 2023 (deutsch).
  14. Peter Liu, Mohammad Saleh, Etienne Pot, Ben Goodrich, Ryan Sepassi, Łukasz Kaiser, Noam Shazeer: Generating Wikipedia by Summarizing Long Sequences. 2018, S. 5, doi:10.48550/arXiv.1801.10198 (arxiv.org [PDF; 1,2 MB]).
  15. Alec Radford, Karthik Narasimhan, Tim Salimans, Ilya Sutskever: Improving Language Understanding by Generative Pre-Training. 2018, S. 4 (openai.com [PDF; 528 kB]).
  16. Yoav Goldberg: Neural Network Methods for Natural Language Processing (= Graeme Hirst [Hrsg.]: Synthesis Lectures on Human Language Technologies. Nr. 37). Morgan & Claypool Publishers, 2017, ISBN 978-1-62705-295-5, Chapter 9 Language Modeling, S. 105, doi:10.2200/S00762ED1V01Y201703HLT037 (englisch, insbesondere Fußnote 2).

Anmerkungen Bearbeiten

  1. Wie meistens in der modernen Informatik ist auch hier die englische Bezeichnung präsenter. Die deutsche Bezeichnung Sprachmodell findet sich beispielhaft in:
  2. so auch in Goldberg (2017) verwendet, allerdings teilweise ohne Start- und Endmarker; der Startmarker ist dort ansonsten <s> statt   und der Endmarker </s>; bei Collins (2013) heißt der Endmarker STOP
  3. Je nachdem, ob   selbst mitgezählt wird oder nicht, kann es auch   sein. Dieser Artikel verwendet die bei  -Grammen übliche Konvention, dass   mitgezählt wird, d. h. Unigramme (1-Gramme) betrachten die Wahrscheinlichkeiten der Elemente völlig unabhängig von ihrem Kontext.