Tree Adjoining Grammar

Beispiel-Baumadjunktionsgrammatik bestehend aus drei Elementarbäumen (α1,α2,β1). Gezeigt ist zudem, wie diese den Satz Rumo schnarcht nie erzeugt.

Tree-adjoining grammars (TAG), auch Baumadjunktions-Grammatiken, sind formale Grammatiken, die von Aravind Joshi eingeführt wurden und in der Computerlinguistik für die Beschreibung von natürlichen Sprachen verwendet werden.

TAGs ähneln kontextfreien Grammatiken, verwenden aber Bäume statt Symbole als kleinste Elemente. Diese Elementarbäume werden nach festgelegten Regeln, Substitution und Adjunktion, miteinander zu immer größeren Bäumen kombiniert. Am Ende des Prozesses kann an den Blättern des entstandenen Baumes ein Satz als Folge von Worten abgelesen werden. Die Menge der durch eine konkrete Baumadjunktionsgrammatik beschreibbaren Sätze bildet die Sprache dieser TAG.

TAGs werden als schwach kontextsensitiv (mildly context-sensitive) beschrieben; sie sind also stärker als kontextfreie Grammatiken, aber schwächer als kontextsensitive Grammatiken in der Chomsky-Hierarchie. Daher sind sie vermutlich stark genug, um natürliche Sprachen zu erzeugen, aber auch schwach genug, um noch effizient parsebar zu sein.

Einstiegsbeispiel

Eine Baumadjunktionsgrammatik, die sowohl den Satz Rumo schnarcht als auch Rumo schnarcht nie verarbeiten kann, lässt sich zum Beispiel mit drei Elementarbäumen darstellen:

Um den Satz Rumo schnarcht zu erhalten, müssen nur die zwei Initialbäume α1 und α2 mittels Substitution miteinander kombiniert werden. Dazu wird der Substitutionsknoten mit der Wurzel des NP-Baums ersetzt. Soll der Satz um das Adverb nie erweitert werden, kommt die Adjunktion zum Einsatz, die den Baumadjunktionsgrammatiken auch ihren Namen gab. Bei der Adjunktion wird der Baum des bisherigen Satzes am VP-Knoten quasi in zwei Teile gerissen. Der Teilbaum des Satzes oberhalb des ursprünglichen VP-Knotens endet nun in der Wurzel des Auxiliarbaums β1, während der unter Teilbaum nun an dem ehemaligen Fußknoten des Auxiliarbaums beginnt. Theoretisch kann diese Adjunktion beliebig oft wiederholt werden (Rumo schnarcht nie nie nie nie ...).

Definition

Eine TAG ist ein 5-Tupel (Σ,NT,I,A,S) bestehend aus

Die Menge an Initial- und Auxiliarbäumen I∪A wird Menge der Elementarbäume genannt.

Zur Kombination von Bäumen stehen zwei Operationen zur Verfügung: Substitution und Adjunktion:

Schematische Darstellung der Substitution: Ausgangspunkt sind zwei Bäume. Ein Baum alpha mit Wurzelsymbol Y und einem Blatt-Knoten X markiert zur Substitution. Ein zweiter Baum beta mit einem Blatt mit Nichtterminal X als Wurzel. Ein Pfeil zeigt von der Wurzel von beta auf den X-Knoten von alpha und deutet damit an, wo die Bäume kombiniert werden. Ebenfalls gezeigt ist das Resultat der Substitution: der Baum wurzelt immer noch in Symbol Y wie ursprünglich alpha, allerdings ist am ehemaligen Blatt-Knoten mit Symbol X jetzt der zweite Baum angedockt.

Schematische Darstellung der Adjunktion: Ausgangspunkt sind zwei Bäume. Ein Baum alpha mit Wurzelsymbol Y und einem inneren Knoten mit Symbol X. Ein zweiter Baum (Auxiliarbaum!) beta mit Wurzelsymbol X und einem Fußknoten mit Symbol X. Ein Pfeil zeigt von der Wurzel von beta auf den inneren X-Knoten von alpha und deutet damit an, wo die Bäume kombiniert werden. Ebenfalls gezeigt ist das Resultat der Adjunktion: der Baum wurzelt immer noch in Symbol Y, allerdings ist am inneren Knoten mit Symbol X jetzt der ehemalige Auxiliarbaum eingefügt und der vormalige X-wurzelnde Teilbaum von alpha ist an dem ehemaligen Fußknoten von beta angedockt. So gibt es jetzt zwei interne Knoten mit dem Symbol X und der Baum ist dadurch tiefer geworden.

Daneben gibt es noch die Möglichkeit, Adjunktions-Constraints für Knoten einzuführen:

In der Definition von Joshi et al. (1975) gab es hingegen noch keine Constraints und Substitutionsknoten.

Expressivität

Obwohl TAGs aus Bäumen bestehen, fokussiert sich dieser Abschnitt auf die String-Sprachen von TAGs. Das sind die Sprachen, die sich an den Blättern der Bäume aus den Terminalsymbolen ablesen lassen.

Relation zu kontextfreien Grammatiken

Zu jeder kontextfreien Grammatik (CFG, für englisch context-free grammar) kann eine TAG erzeugt werden, die die gleiche String-Sprache akzeptiert. Damit können TAGs alle kontextfreien Sprachen beschreiben.

Schwach kontextsensitive Sprachen

TAGs können aber mehr Sprachen beschreiben als kontextfreie Grammatiken. Denn mit TAGs können auch einige, aber nicht alle kontextsensitiven Sprachen beschrieben werden, wie folgende Beispiele verdeutlichen.

Bäume um die Copy-Sprache mit Σ={a,b}zu generieren. Das leere Wort ist als ϵ dargestellt. An den mit Subskript na annotierten Nichtterminal-Knoten kann nicht adjungiert werden.

Zu den Beispielen von kontextsensitiven Sprachen, die von TAGs akzeptiert werden können, zählen folgende:

  • Die Copy-Sprache 𝖢𝖮𝖯𝖸={ww∣w∈Σ∗} kann von TAGs mit Adjunktionsconstraints ausgedrückt werden. Wenn das Vokabular Σ={a,b} ist, reichen nur drei Bäume aus, um die Sprache zu beschreiben. Ein Baum für das leere Wort und je ein weiterer für das Symbol a und b. Zur Sprache gehören Sätze wie abab und abaaba.
Bäume für die COUNT-4-Sprache. Der Baum links generiert nur das leere Wort (ϵ).
  • Die Count-4-Sprache, bei der genau gleich viele Symbole a, b, c und d generiert werden sollen, kann auch von TAGs mit Adjunktionsconstraints beschrieben werden. Formal ist diese definiert als 𝖢𝖮𝖴𝖭𝖳4={anbncndn∣n≥0} und lässt sich mit nur zwei Bäumen generieren.

Zwei Beispiele für kontextsensitive Sprachen, die TAGs nicht beschreiben können, sind die Count-5-Sprache 𝖢𝖮𝖴𝖭𝖳5={anbncndnfn∣n≥0} und die doppelte Copy-Sprache 𝖣𝖮𝖴𝖡𝖫𝖤-𝖢𝖮𝖯𝖸={www∣w∈Σ∗}.

TAGs können die gleichen schwach kontextsensitiven Sprachen von Strings wie zum Beispiel kombinatorische Kategorialgrammatiken (Combinatory Categorical Grammars, CCGs) erzeugen.

Parsing

TAGs können mit einem CYK- oder Early-ähnlichen Parsing-Algorithmus geparst werden. Sie sind daher noch in polynomieller Zeit, genauer in 𝒪(n6), parsebar (siehe Landau-Notation).

Varianten und Erweiterungen

Siehe auch

Literatur

Einzelnachweise

  1. 1 2 3 Aravind K. Joshi, Leon S. Levy, Masako Takahashi: Tree adjunct grammars. In: Journal of Computer and System Sciences. Band 10, Nr. 1, Februar 1975, S. 136–163, doi:10.1016/S0022-0000(75)80019-5 (englisch, sciencedirect.com).
  2. 1 2 David Jeremy Weir: Characterizing mildly context-sensitive grammar formalisms. University of Pennsylvania, United States Januar 1988 (englisch, acm.org – Dissertation in Computer and Information Science).
  3. 1 2 3 4 5 Aravind K. Joshi, Yves Schabes: Tree-Adjoining Grammars and Lexicalized Grammars. University of Pennsylvania Department of Computer and Information Science, 1. März 1991 (upenn.edu – Technical Report No. MS-CIS-91-22.).
  4. 1 2 K. Vijay-Shankar, Aravind K. Joshi: Some Computational Properties of Tree Adjoining Grammars. In: Strategic Computing - Natural Language Workshop: Proceedings of a Workshop Held at Marina del Rey, California, May 1-2, 1986. Mai 1986, S. 212–223 (englisch, aclanthology.org [PDF]).
  5. 1 2 3 4 Aravind K. Joshi: Tree adjoining grammars: How much context-sensitivity is required to provide reasonable structural descriptions? In: D. Dowty, L. Karttunen, and A. Zwicky (Hrsg.): Natural Language Parsing. Cambridge University Press, 1985, S. 206–250 (englisch, sfu.ca [PDF; abgerufen am 23. Juni 2025]).
  6. ↑ Yves Schabes, Aravind K. Joshi: An Earley-Type Parsing Algorithm for Tree Adjoining Grammars. In: 6th Annual Meeting of the Association for Computational Linguistics. Association for Computational Linguistics, Buffalo, New York, USA Juni 1988, S. 258–269, doi:10.3115/982023.982055 (englisch, aclanthology.org [PDF]).
  7. ↑ K. Vijay-Shanker, A.K. Joshi: Feature Structures Based Tree Adjoining Grammars. In: Coling Budapest 1988 Volume 2: International Conference on Computational Linguistics. 1988 (englisch, aclanthology.org [abgerufen am 26. Juni 2025]).