Übungen zu Computerlinguistik II
Aufgaben Semantik 1
Aufgabe Syntax 1
Analysieren Sie einen Text aus einer Tageszeitung auf Mehrdeutigkeiten. Unterscheiden Sie dabei zwischen verschiedenen Arten von Mehrdeutigkeit, z.B.
- lexikalische Mehrdeutigkeit,
- strukturelle Mehrdeutigkeit,
- referentielle Mehrdeutigkeit,
- Skopusmehrdeutigkeit, sowie
- pragmatische Mehrdeutigkeit.
- Welches sprachliche und außersprachliche Wissen ist in den einzelnen Fällen notwendig, um die Mehrdeutigkeit aufzulösen? * Mit welcher Häufigkeit treten die verschiedenen Arten von Mehrdeutigkeit in Ihrem Text auf.
- Abgabe der Lösungen bis zum 9.4.2008
Aufgabe Syntax 2
Implementieren Sie eine DCG-Grammatik für die Syntax einfacher deutscher Sätze, die zumindest für die folgenden Sätze die angegebenen Strukturen erzeugt.
Peter schläft. |
s(np(ne(peter)),vp(v(schlaeft))) |
Peter sieht ein Haus. |
s(np(ne(peter)),vp(v(sieht),np(d(ein),n(haus)))) |
Sie sieht ihn. |
s(np(pro(sie)),vp(v(sieht),np(pro(ihn)))) |
Der Mann sieht ein kleines Haus. |
s(np(d(der),n(mann)),vp(v(sieht),np(d(ein),(n(adj(kleines),n(haus)))))) |
Der Mann warnt die Frau mit dem Telefon. |
s(np(d(der),n(mann)),vp(v(warnt),np(d(die),n(frau)),pp(p(mit),np(d(dem),n(telefon))))) |
|
s(np(d(der),n(mann)),vp(v(warnt),np(np(d(die),n(frau)),pp(p(mit),np(d(dem),n(telefon))))))) |
- Dokumentieren Sie die Analyseergebnisse für eine Beispielsammlung von Testsätzen.
- Verwenden Sie die Grammatik im generativen Modus. Welche ungrammatischen Sätze werden erzeugt?
- Was müsste man zur Grammatik hinzufügen, um die Bildung ungrammatischer Sätze zu verhindern?
- Geben sie mindestens fünf Beispiele für unterschiedliche deutsche Satzkonstruktionen an, die von Ihrer Grammatik nicht behandelt werden.
- Dokumentieren Sie Probleme bei Grammatikentwicklung und -test
- Beispielgrammatik
-
- Abgabe der Lösungen bis zum 16.4.2008
Aufgabe Syntax 3
Erweitern Sie das Wörterbuch und Ihre Grammatik aus Aufgabe 2 so, dass alle Formen von Personalpronomen berücksichtigt sind und möglichst wenige ungrammatische Sätze erzeugt werden.
- Abgabe der Lösungen bis zum 23.4.2008
Aufgabe Semantik 2
Folgende Aufgaben sind alternativ zu bearbeiten.
- Erläutern Sie die Probleme bei der Bearbeitung der Aufgaben und der vorgelegten Lösung kurz schriftlich.
- Abgabe der Lösung bis zum 6.5.2008
Aufgabe A)
Erweitern Sie Ihre DCG-Grammatik aus Aufgabe Syntax 2 oder 3 so, dass Repräsentationen der Semantik erzeugt werden. Lassen Sie dabei ruhig den definiten Artikel (der, die, das) weg, ebenso wie die Pronomen. Ergänzen Sie dafür Quantoren (jeder, kein), die sind mit den Mitteln, die wir bislang haben, einfacher zu bearbeiten.
Aufgabe B)
Erweitern Sie Lexikon und Grammatik des Programm-Pakets, das in der Semantik-Vorlesung 4. Sitzung vorgestellt wurde, so, dass auch Präpositionalphrasen (mit einem Feldstecher, auf einer Wiese) in verschiedenen syntaktischen Positionen verarbeitet werden können.
- Peter winkt auf einer Wiese.
- Peter winkt mit einem Feldstecher.
- Peter sieht kein Haus auf einer Wiese.
- Peter sieht auf einer Wiese kein Haus.
- Peter sieht ein Haus mit einem Feldstecher.
- Peter sieht mit einem Feldstecher ein Haus.
Aufgabe Semantik 3
Gegeben seien folgende semantische Einträge eines Lexikons.
- Bestimmen Sie daraus die Bedeutung der folgenden Sätze entsprechend der in der Vorlesung vorgestellten Grammatik- und Kombinationsregeln.
- Für welchen Satz sind neue Regeln zu ergänzen und warum?
- Geben Sie einen Vorschlag zur Ergänzung der Grammatik und der semantischen Kombinationsregeln an, so dass Sie die Semantik aller Sätze auf Basis dieses Lexikons bestimmen können.
- Vereinfachen Sie die entstandenen Ausdrücke durch Verwendung der Beta-Konversions-Regel und (falls erforderlich) der gebundenen Umbenennung.
- Jeder Junge winkt.
- Laura sieht jeden Jungen.
- Jeder Junge zeigt Laura ein Haus.
Lexem |
Semantischer Eintrag |
jeder, jeden |
%$\lambda R \lambda S \forall z [R(z) \rightarrow S(z)]$% |
ein |
%$\lambda R \lambda S \exists x [R(x) \land S(x)]$% |
Junge, Jungen |
%$ \lambda y [junge(y)]$% |
Haus |
%$ \lambda y [haus(y)]$% |
winkt |
%$ \lambda x [winkt(x)]$% |
sieht |
%$ \lambda Q \lambda u [Q(\lambda w[sieht(u, w)])]$% |
zeigt |
%$ \lambda T \lambda Q \lambda u [T(\lambda v[Q(\lambda w [zeigt(u, v, w)])])]$% |
- Abgabe der Lösungen bis zum 20.5.2008
Hier ist die Programm-Variante, die mit Lambda arbeitet um semantische Strukturen aufzubauen.
Aufgabe Semantik 4
Analysieren Sie die folgenden Sätze hinsichtlich der darin erwähnten Entitäten. Geben Sie zu jedem Satz an, über welche Entitäten Informationen gegeben werden, welche Eigenschaften ihnen zugeordnet werden und in welchen Relationen sie stehen (neben Häusern, Menschen und Wegen könnten auch Aktionen, Orte oder Richtungen solche Entitäten sein.)
Satzübergreifende Phänomene (z.B. dasselbe Haus (F) ist in den ersten drei Sätzen erwähnt) können dabei ignoriert werden.
- Wenn du beim Pförtner stehst, dann siehst du das höchste Gebäude auf dem Gelände, Haus F.
- Von Haus F führt im ersten Stock ein Übergang zu Haus D.
- Gehe zuallererst zwischen Haus D und Haus F unter dem Übergang durch.
- Auf der Rückseite von Haus D gehst du entlang, bis auf deiner rechten Seite Haus E erscheint.
- Haus E betrittst du über eine Rampe
- Abgabe der Lösungen bis zum 28.5.2008
Aufgabe Syntax 4
Überprüfen Sie anhand Ihres Textes aus Aufgabe 1, wie hoch der Anteil der Sätze ist, die in Ihrer Grammatik nicht berücksichtigt sind. Diskutieren Sie, warum das so ist. Welche Fälle ließen sich leicht beheben, welche erfordern größeren Modellierungsaufwand?
Modifizieren Sie Ihre Grammatik aus Aufgabe 3 so, dass linksrekursive Regeln vermieden werden, aber dennoch die gewünschten Strukturbeschreibungen erzeugt werden.
- Abgabe der Lösungen bis zum 4.6.2008
- HIER eine mögliche Lösung
Aufgabe Syntax 5
Der bottom-up Parser aus Aufgabe Semantik 2 ist in der Lage, mit Regelwahrscheinlichkeiten zu arbeiten.
Stellen Sie sich ein Testkorpus aus Sätzen zusammen, die mindestens eine strukturelle Mehrdeutigkeit enthalten, z.B.
- Der Mann sah die Frau mit dem Fernglas.
- Gestern verkaufte der Mann der Professorin das Buch.
- Gestern versteckte der Sohn des Nachbarn Schnupftabak.
Schreiben Sie eine Grammatik, die die unterschiedlichen Strukturbeschreibungen für diese Beispiele
erzeugen kann.
Annotieren Sie die Regeln der Grammatik mit geschätzten Wahrscheinlichkeiten, z.B.
0.8*np(np/[PN]) ---> pn(PN).
Achtung: hier war ursprünglich ein Bindestrich zu wenig
Untersuchen Sie, wie sich mit Hilfe geeigneter Wahrscheinlichkeiten die mehrdeutigen Konstruktionen disambiguieren lassen. Sind die angegebenen Präferenzen plausibel? Um die Gesamtbewertungen für die einzelnen Lesarten sichtbar zu machen, geben Sie am Eingabeprompt
print:v_standard.
ein.
Zeigen Sie an einem Beispiel, wie man die Wahrscheinlichkeiten modifizieren muss, um die beste Bewertung für eine der alternativen strukturellen Interpretationen zu erhalten. Beachten Sie dabei, dass der Parser in der Ausgabe das Einerkomplement, der Gesamtbewertung ausgibt.
Modifizieren Sie den bottom-up Parser aus Aufgabe Semantik 2 so, dass er auch lexikalische Wahrscheinlichkeiten verarbeiten kann. Ergänzen Sie dazu in der Datei
achartparser.pl
die folgenden beiden Klauseln:
lexcat(W, V*Cat, To-To, true):-
V*Cat ---> lexem(W).
lexcat(W, V*Cat, Mid-To, true):-
V*Cat ---> lexem([W|Rest]),
scanrest(Mid, Rest, To).
Erweitern Sie Ihr Testkorpus um Sätze bzw. Satzfragmente, die eine reichhaltige Auswahl an lexikalischen Mehrdeutigkeiten enthalten, z.B.
- die/D/PROREL/PRODEM grünen/A/N/V diskutieren/V/N
- der/D/PROREL/PRODEM kranke/N/A/V kurt/PN/V
- eine/D schöne/A/N braut/N/V
- schöne/N/A/V weiche/N/A/V betten/N/V
und erweitern Sie Ihre Grammatik ggf. so, dass sie möglichst viele sinnvolle syntaktische Lesarten für diese Eingaben erzeugt. Annotieren Sie die benötigten Lexikoneintragungen mit geschätzten Wahrscheinlichkeiten, z.B.
0.1*n(n/ (-sehen)) --> lexem(sehen).
und dokumentieren Sie die Wirkung dieser Wahrscheinlichkeitswerte auf die Rangfolge der Parsingergebnisse.
- Abgabe der Lösungen bis zum 11.6.2008
- Ergänzung von Carola: das Programm-Paket mit Chart-Parser aber ohne jegliche Semantik (ist einfacher zu modifizieren als das andere Paket.) Programm-Paket
Aufgabe Semantik 5
Untersucht Wordnet und Framenet hinsichtlich der Frage, welche (semantische) Informationen über die Wörter enthalten und extrahierbar sind (möglichst auch unterschieden danach, was wir Menschen extrahieren können, und für welche Teile die Automatisierbarkeit der Extraktion möglich erscheint.).
- Wählt dazu eine kleine Zahl von Wörtern und prüft die angegebenen Beutungsrelationen in Wordnet. Welche Informationen zur Argumentstruktur sind in Wordnet zu finden?
- Untersucht dieselben Wörter in Framenet. Lassen sich über die angegebenen Lexikalischen Einträge (LE) und Frames Bedeutungsrelationen extrahieren? Welche Informationen zur Argumentstruktur der Wörter (Verknüpfung syntaktischer Eigenschaften mit thematischen Rollen) sind in Wordnet zu finden?
- Notiert (in beiden Fällen) positive und negative Ergebnisse (was ist korrekt und enthalten, was ist enthalten aber fragwürdig, was fehlt?)
- Wählt lieber eine kleine Menge von Wörtern, die Ihr intensiver betrachtet, als eine große Anzahl mit nur oberflächlichen Betrachtungen.
Vorschläge für zu untersuchende Wörter:
- Nomen aus dem Verwandschaftswortfeld (sister, mother, brother, ..., step-mother, half-brother, ...)
- Wörter aus der Wegbeschreibung, die unter http://www.lmhospital.org/visiting_lm/index.html zu finden ist, (north, east, from, through, turn, follow, reach, end, road, ramp, ...)
Schön wäre es, wenn wir uns in der Vorlesung abstimmen könnten, so dass jedeR andere Einträge betrachtet und hinterher auch von der Arbeit der anderen profitieren kann.
- Abgabe der Lösung bis zum 18.6.2008
Aufgabe Syntax 6
Implementieren Sie einen Bewegungsmechanismus für die Vorfeldbesetzung in einfachen deutschen Sätzen des Typs
Er sieht ihn. bzw.
Ihn sieht er. mit Hilfe einer DCG. Gehen Sie dazu in drei Schritten vor:
1. Bewegung ohne Strukturaufbau
- Implementieren Sie die Nominalphrase als zweistellige Struktur, mit einem Argument für ihren Kasus (Nominativ oder Akkusativ) und einem zweiten Argument für den Kasus der im Vorfeld bereits realisierten NP. Übergeben Sie den Kasus der Vorfeld-NP an die Verbphrase, die prinzipiell die Generierung einer Nominativ- und einer Akkusativ-NP zulässt. Eine Nominalphrase wird jedoch als leere Zeichenfolge realisiert, falls ihr Kasus und der Kasus der Vorfeld-NP identisch sind. Verwenden Sie zum Testen einen top-down Parser (Warum?).
2. Strukturbeschreibungen analog zur Regelstruktur
- Erzeugen Sie die folgenden Strukturbeschreibungen für die beiden Beispielsätze
Er sieht ihn | s(subj(er),vp(v(sieht),dobj(ihn))) |
Ihn sieht er | s(dobj(ihn),vp(v(sieht),subj(er))) |
Warum sind diese Strukturbeschreibungen ungeeignet?
3. Strukturbeschreibungen mit konstanten Argumentpositionen
- Als Voraussetzung für eine einfache semantische Interpretation sollte die Syntaxanalyse gleiche Argumente auch für unterschiedliche Oberflächenrealsierungen immer gleiche Strukturpositionen zuweisen. Modifizieren Sie daher die Strukturbeschreibungen so, dass für beide Sätze das Objekt strukturell innerhalb der Verbphrase und das Subjekt auf der Satzebene eingebaut wird. Dazu müssen Sie der Verbphrase auf einem zusätzlichen Argument die Strukturbeschreibung der Vorfeld-NP übergeben. Innerhalb der Verbphrasendefinition wird dann entschieden, ob die Vorfeld-NP oder die Mittelfeld-NP als Subjekt in die oberste Ebene der Satzstruktur eingebaut werden muss. Das kann erreicht werden, indem man die Verbphrasenregel doppelt und in Abhängigkeit vom Kasus der Vorfeld-NP die jeweils richtigen Koreferenzen setzt.
- Diskutieren Sie die noch verbliebenen Mängel der nunmehr entstandenen Grammatik.
- Abgabe der Lösungen bis zum 25.6.2008
Aufgabe Semantik 6
Analysiere einen der drei Texte in bezug auf anaphorische Beziehungen.
- Bestimme die anaphorischen Ausdrücke (greifen also bereits eingeführte Entitäten wieder auf)?
- markiere alle Pronomen
- Sind alle Pronomen anaphorisch?
- Welche anderen Ausdrücke sind anaphorisch?
- Welche Eigenschaften der Ausdrücke können genutzt werden, um zu erkennen, dass es sich um einen anaphorischen Ausdruck handelt bzw. handeln könnte?
- Welches sind die Antezedenten der Anaphern?
- Welche Interpretationsalternativen gibt es grundsätzlich?
- Welche Informationen scheinen wir Menschen zu nutzen, um den Referenten der anaphorischen Ausdrücke zu bestimmen?
- Abgabe der Lösungen bis zum 3.7.2008