Natural Language Systems, Department of Informatics, University of Hamburg
Search: 

Übungen zu Computerlinguistik II

  • 07.7.09: Semantik Aufgaben 6: Aufgabe steht am Seitenende, aber Wiki mag keinen Link d'rauf generieren

Der folgende Terminplan wird gegebenenfalls an die spezifischen Terminerfordernisse des Semesters angepasst.

  • 14.7.09: Abschlussbesprechung zur Computerlinguistik 2 (Auch wenn noch eine Semantik-Vorlesung aussteht)

Aufgaben Semantik 1 (14.4.2009)

Aufgabe Syntax 1 (21.4.2009)

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 20.4.2009

Aufgabe Semantik 2 (28.4.2009)

  • Abgabe der Lösungen bis zum 27.4.2009

Aufgabe Syntax 2 (5.5.2009)

Implementieren Sie eine DCG-Grammatik für eine kleine Teilmenge deutscher Sätze, die etwa die folgenden Satztypen umfassen sollte:

Peter schläft.
Peter sieht ein Buch.
Sie sieht dich.
Der Mann liest ein spannendes Buch.
Er liest.
Er warnt die Frau mit dem Telefon.
Ich gebe ihr das Buch.
Sie glaubt, dass er liest.
Du glaubst ihr.
Sie nimmt das Buch, das neben dem Telefon liegt.

  • Orientieren Sie sich dabei an der Beispielgrammatik aus der Vorlesung.
  • Achten Sie darauf, dass Ihre Grammatik möglichst wenige ungrammatische Konstruktionen lizensiert. Testen Sie dazu die Grammatik auch im generativen Modus.
  • Geben sie mindestens drei Beispiele für unterschiedliche deutsche Satzkonstruktionen an, die von Ihrer Grammatik nicht lizensiert werden.
  • Dokumentieren Sie Probleme bei Grammatikentwicklung und -test.
  • Verfolgen Sie die Verarbeitung bei Analyse und Generierung an einfachen Beispielen im Trace-Modus. Geben Sie dazu am Prompt des Prolog-Systems (?-) trace. ein. Der Trace-Modus kann durch Eingabe von nodebug. wieder verlassen werden. Welche Suchstrategie realisiert des Prolog-System?

  • Abgabe der Lösungen bis zum 4.5.2009

Aufgabe Syntax 3 (12.5.2009)

Modifizieren Sie Ihre Grammatik aus der vorangegangenen Aufgabe so, dass auch Strukturbeschreibungen für Sätze erzeugt werden, z.B.

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)))))))

Zeigen Sie, dass die von Ihnen gewählten Strukturbeschreibungen die Konstituentenstruktur deutscher Sätze hinreichend gut widerspiegeln.

  • Abgabe der Lösungen bis zum 11.5.2009

Aufgabe Semantik 3 (19.5.2009)

  • Abgabe der Lösungen bis zum 18.5.2009 mittags

Aufgabe Syntax 4 (26.5.2009)

Überprüfen Sie anhand Ihres Textes aus Aufgabe Syntax 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 Syntax 3 so, dass linksrekursive Regeln vermieden werden, aber dennoch die gewünschten Strukturbeschreibungen erzeugt werden.

Hier die Musterlösung: links2rechtsrekursiv.pl. Sie entspricht exakt der auf den Vorlesungsfolien (Teil 6) angegebenen Implementation, die wir auch in der Übung bereits hatten. Wo war der (Denk-)Fehler?

Auflösung des Rätsels hier.

  • Abgabe der Lösungen bis zum 25.5.2009

Pfingstwoche (2.6.2009)

Aufgabe Semantik 4 (9.6.2009)

Erweitern Sie Lexikon und Grammatik eines der Programm-Pakete, die in der Semantik-Vorlesung vorgestellt wurden, so, dass auch Präpositionalphrasen (mit einem Feldstecher, auf einer Wiese) in verschiedenen syntaktischen Positionen verarbeitet werden können.

  • Peter winkt auf einer Wiese.
  • Ein Junge mit einem Feldstecher winkt.
  • 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.

  • Abgabe der Lösungen bis zum 8.6.2009 mittags

Aufgabe Syntax 5 (16.6.2009)

Der bottom-up Parser aus Aufgabe Semantik 4 ist in der Lage, mit Regelwahrscheinlichkeiten zu arbeiten. Eine vereinfachte Version finden Sie unter Chart-Parser ohne Semantik

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). 

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 4 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 15.6.2009

Aufgabe Semantik 5 (23.6.2009)

Aufgabe 1)

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.
  • Ein Junge sieht ein rotes Haus.
  • Jeder Junge zeigt Laura ein Haus.

LexemSemantischer Eintrag
Laura laura
Peter peter
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)]
rotes  \lambda P \lambda z [rot(z) \land P(z)]
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)])])]

Aufgabe 2)

Erweitern Sie das Fragment sowohl syntaktisch als auch semantisch so, dass so genannte Kopula-Sätze verarbeitet werden können. Insbesondere sollen die Sätze

  • Peter ist ein Junge.
  • Jedes Haus ist rot.

verarbeitet werden. Für die beiden Verwendungen der Kopula ist können dabei auch verschiedene semantische Einträge angenommen werden. Wenn Sie auch bei der Analyse von rot oder ein Junge von den bisherigen semantischen Analysen abweichen wollen, dann geben Sie eine Begründung, in wiefern die semantische Differenzierung mit einer syntaktischen Differenzierung korrespondiert.

Aufgabe 3)

Wer noch eine Herausforderung wünscht, kann sich auch noch an der Ergänzung von relationalen Nomen (Bruder, Mutter etc.) versuchen. Ergänzen Sie die Grammatik und Semantik so, dass auch folgende Sätze verarbeitbar sind

  • Peter ist ein Bruder von Laura.
  • Jeder Bruder von Laura sieht ein Haus.

Hier ist die Programm-Variante, die mit Lambda arbeitet um semantische Strukturen aufzubauen.

  • Abgabe der Lösungen bis zum 22.6.2009

Aufgabe Syntax 6 (30.6.09)

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, den die im Vorfeld bereits realisierten NP besitzt. Übergeben Sie den Kasus der Vorfeld-NP an die Verbphrase, die in Abhängigkeit davon eine komplementäre Nominativ- oder Akkusativ-NP generiert. Eine Nominalphrase wird 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 gleichen Argumenten auch bei unterschiedlichen Oberflächenrealisierungen immer gleiche Strukturpositionen zuweisen. Modifizieren Sie daher die von der Grammatik erzeugten Strukturbeschreibungen so, dass für beide Sätze das Objekt strukturell innerhalb der Verbphrase und das Subjekt immer auf der Satzebene eingebaut wird. Um dies zu ermöglichen, müssen Sie der Verbphrase auf einem zusätzlichen Argument die Strukturbeschreibung der Vorfeld-NP übergeben (+ bezeichnet Eingabeparameter, - Ausgabeparameter):

vp(+Kasus_der_Vorfeld_NP, +Struktur_der_Vorfeld_NP, -Struktur_der_VP, -Struktur_der_Subjekts_NP) 

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 29.6.2009

Aufgabe Semantik 6 (7.7.09)

Diskurs-Repräsentations-Theorie

  • Analysieren Sie die folgenden Sätze bzw. Kurz-Diskurse im Rahmen der DRT. (Durch Angabe der resultierenden DRSen.)
  • Welche Interpretation der Pronomen ist 'die natürliche'?
  • Welche anderen Referenten stehen den Pronomen jeweils entsprechend dem Vortext zur Verfügung?
  • Welche Ko-Referenzen sind aus strukturellen Gründen auszuschließen?
  • Welche (weitere) Information scheinen wir zu verwenden, um den Referenten zu bestimmen?
    • Lassen sich sprachliche und nicht-sprachliche Informationsquellen ausmachen?

(Beispiele teilweise nach Blackburn & Bos, 2. Teil)

  1. Anna liebt Carl. Er mag sie.
  2. Frank zeigt auf ein Mädchen. Maria kennt sie.
  3. Martin mag jeden Lehrer, der ihm hilft.
  4. Jeder Mann, der ein Buch kauft, trägt es nach Hause.
  5. Der Spieler grüßt jeden Zuschauer, den er erkennt. Er grüßt zurück.
  6. Martin mag jeden Lehrer, der ihn lobt. Sein Vater hilft ihm bei den Hausaufgaben.
  7. Martin mag jeden Lehrer, der ihn lobt. Sein Sohn hilft ihm bei den Hausaufgaben.
  8. Martin mag einen Lehrer, der ihn lobt. Sein Sohn hilft ihm bei den Hausaufgaben.
  9. Ernst sieht einen Mann. Er kennt ihn.
  10. Peter warf ein TV-Gerät gegen das Fenster. Es zerbrach.
  11. Peter warf eine Vase gegen die Wand. Sie zerbrach.
  12. Peter geht in seine Küche. Er öffnet den Kühlschrank. Er nimmt den Orangensaft raus und trinkt ihn.
  13. Peter nimmt einen Camcorder und legt ihn dann wieder aus der Hand. Zu schwer. Er nimmt einen Photoapparat, denkt einen Moment darüber nach, dann legt er ihn zurück.
  14. A man lays an envelope full of money on the table in front of Butch. Butch picks it up.

-- LidiaKhmylko -- 31 Mar 2009

r1.20 - 06 Jul 2009 - 15:49 GMT - CarolaEschenbach
Copyright (c) 1999-2006 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Powered by TWiki/Beijing 01 Feb 2003 (NatsWiki), Syndicate this site.