Einführung in die Computerlinguistik Im Rahmen des Seminars Grundkurs Linguistik...
-
Upload
katarine-kempel -
Category
Documents
-
view
111 -
download
2
Transcript of Einführung in die Computerlinguistik Im Rahmen des Seminars Grundkurs Linguistik...
Einführung in die Einführung in die ComputerlinguistikComputerlinguistik
Im Rahmen des Seminars Grundkurs Linguistik
Heinrich-Heine-Universität Düsseldorf, WS 2007/2008
Gastdozent: Christof Rumpf, 31.01.2008
Diese Präsentation finden Sie unter:
http://www.phil-fak.uni-duesseldorf.de/~rumpf/talks/clintro2.pdf
31.01.2008 Einführung in die Computerlinguistik 2
Computerlinguistik in DüsseldorfComputerlinguistik in Düsseldorf
• Computerlinguistik ist an der Heinrich-Heine-Universität Düsseldorf eine von drei Abteilungen im
Institut für Sprache und Information
– Allgemeine Sprachwissenschaft (Linguistik)– Computerlinguistik– Informationswissenschaft
• Studiengänge– BA, MA Linguistik (mit Schwerpunkt Computerlinguistik)– BA, MA Informationswissenschaft und Sprachtechnologie
31.01.2008 Einführung in die Computerlinguistik 3
Was ist Computerlinguistik?Was ist Computerlinguistik?
• Computerlinguistik (CL) ist ein interdisziplinäres Fachgebiet zwischen den Gebieten
– Linguistik linguistics computational– Informatik computer science linguistics
• In der CL geht es um die maschinelle (algorithmische) Verarbeitung natürlicher Sprache.
• CL ist eine der Säulen der sogen. Künstlichen Intelligenz.
31.01.2008 Einführung in die Computerlinguistik 4
Anwendungen der CLAnwendungen der CL
• Maschinelle Übersetzung– z.B. automatische Übersetzung von geschriebenem oder gesprochenem
Chinesisch ins Deutsche (siehe z.B. http://babelfish.altavista.com/)
• Information Retrieval– Auffinden von Dokumenten (Texten) in grossen Dokumentsammlungen
aufgrund des Inhalts (z.B. alle Einführungen in die CL)
• Informationsextraktion– Gewinnung von strukturierter Information (Relationen) aus unstrukturierter
Information (Texten)
– Beispiel: Wer hat JFK erschossen? Szenario:
• Dialogsysteme– z.B. Fahrplanauskunftssysteme, Diagnosesysteme (Medizin, Technik)
• etc. (die Liste lässt sich noch rahmensprengend verlängern)
Relation: Mord
Opfer: JFK
Tät ?er:
ausgewählte
31.01.2008 Einführung in die Computerlinguistik 5
Methoden der CLMethoden der CL
• Symbolische Methoden– Parsing ist die Analyse natürlicher Sprache anhand von Grammatiken
auf Basis der Theorie der Automaten und formalen Sprachen.– Grammatikformalismen basieren auf formalen Logiken zur
Repräsentation und Verarbeitung linguistischen Wissens (Inferenz).
• Statistische Methoden– Statistische Modelle über grossen Textmengen (Korpora) basieren
auf Wahrscheinlichkeitstheorie und evt. Informationstheorie.
• Hybride Methoden (gemischte Methoden)– Statistisches Parsing verbindet z.B. symbolische und statistische
Methoden
• Subsymbolische Methoden– Neuronale Netze sind heute weitgehend bedeutungslos geworden.
31.01.2008 Einführung in die Computerlinguistik 6
Probleme der CLProbleme der CL
• Ambiguität (Mehrdeutigkeit) führt zur Explosion der Analysen: – Polysemie: Bank (Gebäude, Institution, Sitzgelegenheit)– Komposita: Aluminiumherstellung z.B. alu+mini+umher+stellung (+11)– Skopus: ((alte Männer) und Frauen) vs. (alte (Männer und Frauen))– PP-Zuordnung: Peter kauft das Auto mit Heckspoiler.
Peter kauft das Auto mit Kreditkarte.Peter kauft das Auto mit Gabi.
• Robustheit erfordert Fehlertoleranz und vollständiges Wissen– mangelnde Fehlertoleranz– unvollständige Lexika behindern die Funktionsfähigkeit– unvollständige Grammatiken von CL-Anwendungen
• Dilemma: je robuster (vollständiger), desto mehr Ambiguitäten.
Präpositionalphrase
31.01.2008 Einführung in die Computerlinguistik 7
Wie komplex ist eine Sprache?Wie komplex ist eine Sprache?
• Um entscheiden zu können, welche Mittel man zur Lösung eines Problems benötigt, muss man sich über die Komplexität des Problems klar werden.
• In der Theorie der Automaten und formalen Sprachen werden Sprachen in eine Komplexitätshierarchie gebracht:– Typ 0: rekursiv aufzählbar komplexer
– Typ 1: kontextsensitiv
– Typ 2: kontextfrei
– Typ 3: regulär einfacher
• Natürliche Sprache gilt als schwach kontextsensitiv.• Den Sprachklassen werden Automatenklassen zugeordnet.
Chomsky-Hierarchie
31.01.2008 Einführung in die Computerlinguistik 8
Die Chomsky-HierarchieDie Chomsky-Hierarchie
regulär
kontext-frei
kontext-sensitiv
rekursiv aufzählbar
Sprache Automat
Turing Maschine
Linear gebunden
Kellerautomat(Stapel)
Endlicher Automat
Grammatik
unbeschränkt
Baa
kontext-sensitiv
At aA
kontextfrei
S gSc
regulär
A cA
Erkennung
linear
polynomiell
NP-vollständig
unentscheidbar
Abhängigkeit Biology
strikt lokal
eingebettet
überkreuzt
beliebig
Central Dogma
Pseudoknots, etc.
Orthodox 2o Structure
Unknown
nach D. Searls
31.01.2008 Einführung in die Computerlinguistik 9
Endliche AutomatenEndliche Automaten
• Endliche Automaten sind die einfachste Automatenklasse.
• Sie bestehen aus Zuständen, die mit beschrifteten Übergängen verbunden sind (Übergangsfunktion).
• Eine Kette von Symbolen aus einem Alphabet gilt als akzeptiert, wenn beginnend mit dem Startzustand die ganze Kette verarbeitet werden kann und der Automat sich dann in einem Endzustand befindet.
Der abgebildete Automat erkennt Sprachen, deren Ketten die Teilkette skr enthalten.
r-s
-k
-r
ks0q 1q 2q 3q
start
z.B. für ein Alphabet = {a,b,c,s,k,r }, L = *skr*, wobei * die Menge aller Ketten ist, die sich aus beliebigen Symbolen aus dem Alphatet zusammensetzt. Der Stern heisst Kleenscher Stern. Beispielsweise ist aabcskrab L, aber aabcska L.
31.01.2008 Einführung in die Computerlinguistik 10
Kontextfreie GrammatikenKontextfreie Grammatiken
• Kontextfreie Grammatiken sind neben den einfacheren regulären Grammatiken die wichtigsten Grammatiken für die Computerlinguistik.
• Die Regeln einer kontextfreien Grammatik definieren zwei Relationen:– Unmittelbare Dominanz zwischen Mutterkategorie und Tochterkategorien
– Lineare Präzedenz zwischen Schwesterkategorien
• Hier ist eine kontexfreie Grammatik für ein Fragment der deutschen Sprache:
S → NP VPNP → Det NVP → V NPDet → JederDet → eineN → MannN → FrauV → liebt
Legende
S SatzNP NominalphraseVP VerbalphraseDet Determiner (Artikel)N Nomen (Substantiv)V Verb
31.01.2008 Einführung in die Computerlinguistik 11
ParsingParsing• engl. to parse: „grammatisch zerlegen“• Ein Parser ist ein Automat, der auf Basis einer Grammatik
für eine Kette einen Ableitungsbaum (parse tree) erzeugt.
S
NP VP
Det N V NP
Jeder Mann liebt Det N
eine Frau
Grammatik
&
„Jeder Mann liebt eine Frau“
31.01.2008 Einführung in die Computerlinguistik 12
Deklarativ vs. ProzeduralDeklarativ vs. Prozedural
• Eine Grammatik ist eine deklarative Beschreibung der wohlgeformten Syntaxbäume einer Sprache.
• Eine deklarative Beschreibung stellt einen logischen Sachverhalt dar.
• Ein Algorithmus ist eine Folge von Anweisungen (eine Prozedur), wie man in endlich vielen Schritten von einem Ausgangszustand (zu lösendes Problem) zu einem Zielzustand (gelöstes Problem) kommt.
• Ein Parser verwendet einen Algorithmus, um Grammatiken zu interpretieren: eine prozedurale Parsingstrategie.
31.01.2008 Einführung in die Computerlinguistik 13
ParsingstrategienParsingstrategien
• top-down• bottom-up• left-corner
Parsingstrategien unterscheiden sich durch die Reihenfolge, in der bei der Konstruktion des Syntaxbaums die Knoten im Baum besucht werden (Traversierung).
• depth-first• breadth-first
• left-to-right• right-to-left
31.01.2008 Einführung in die Computerlinguistik 14
Beispielgrammatik (CFPSG)Beispielgrammatik (CFPSG)
Syntax
S → NP VPNP → Det NNP → NP Conj NP1
VP → V NPDet → 2
Lexikon
Det → the Conj → and N → dog N → cat V → chases
1 nicht für top-down-Parser2 nicht für bottom-up-Parser
31.01.2008 Einführung in die Computerlinguistik 15
Top-Down-TraversierungTop-Down-Traversierung
S1
NP2 VP7
D3 N5 V8 NP10
D11 N13
the4 dog6 chased9 the12 cat14
top-down depth-first left-to-right
31.01.2008 Einführung in die Computerlinguistik 16
Problem: LinksrekursionProblem: Linksrekursion
• Top-Down-Strategie gerät bei linksrekursiven Regeln in Endlosschleifen (Endlosberechnungen):
NP NP Conj NP
• Die erste NP auf der linken Regelseite kann beliebig oft mit der gleichen Regel expandiert werden.
• Auswege: – Linksrekursion vermeiden (unbefriedigend)– Bottom-Up- oder Left-Corner-Strategie
31.01.2008 Einführung in die Computerlinguistik 17
Bottom-Up-TraversierungBottom-Up-Traversierung
S14
NP5 VP13
D2 N4 V7 NP12
D9 N11
the1 dog3 chased6 the8 cat10
31.01.2008 Einführung in die Computerlinguistik 18
Shift-Reduce-AlgorithmusShift-Reduce-Algorithmus
Der Shift-Reduce-Algorithmus verfolgt eine Bottom-Up-Strategie.
1. Shift: lege ein Wort aus der Eingabekette auf einen Stapel.
2. Reduce: reduziere den Stapel mit Hilfe der Grammatik soweit wie möglich.
3. Falls die Eingabekette noch Wörter enthält, gehe zu Shift, sonst halte.
31.01.2008 Einführung in die Computerlinguistik 19
Shift-Reduce-BeispielShift-Reduce-Beispiel
Schritt Aktion Stack Input StringStart the dog barked
1 Shift the dog barked2 Reduce D dog barked3 Shift D dog barked4 Reduce D N barked5 Reduce NP barked6 Shift NP barked7 Reduce NP V8 Reduce NP VP9 Reduce S
31.01.2008 Einführung in die Computerlinguistik 20
Problem: Leere KategorienProblem: Leere Kategorien
• Bottom-Up-Strategie loopt (Endlosschleife) bei leeren Kategorien, weil zwischen zwei Konstituenten beliebig viele leere Kategorien eingesetzt werden können.
Det .
• Auswege– Leere Kategorien vermeiden (für manche unbefriedigend).– Oder eine andere Parsing-Strategie:
Left-Corner-Parsing mit Linking (wer wissen möchte, wie das funktioniert, soll Computerlinguistik studieren!)
31.01.2008 Einführung in die Computerlinguistik 21
KlassifikationsproblemeKlassifikationsprobleme
Viele Probleme der Text- bzw. Sprachtechnologie sind Klassifikationsprobleme, z.B:
• SatzgrenzenerkennungFrau Dr. X. hatte am 31. Jan. 2.000€ auf der Bank. Am 1. Feb. waren es 1.000 weniger.
• WortartenerkennungTimeN fliesV likeA anD arrowN. vs TimeN fliesN likeV anD arrowN.
• Term- bzw. Named-Entity-Erkennungz.B. Personen-, Währungs-, Datums-, oder Ortsbezeichnungen
• WortsinndisambiguierungDas Geld liegt auf der Bank. Peter sitzt auf der Bank.
31.01.2008 Einführung in die Computerlinguistik 22
Automatische KlassifikationAutomatische Klassifikation
• Ein Klassifikator ist eine Wahrscheinlichkeitsfunktion p(a|b)• p(a|b) ist die Wahrscheinlichkeit von Klasse a im Kontext b
p(Institutioni |Das Geld liegt auf der Banki) = 0,6p(Gebäudei |Das Geld liegt auf der Banki) = 0,1p(Sitzmöbeli |Das Geld liegt auf der Banki) = 0,3 1,0
• Klassifikatoren können aus Trainingstexten automatisch gelernt werden: Maschinelles Lernen
• Das Lernen basiert i.d.R. auf dem Zählen der gemeinsamen Vorkommen von Klassen mit Kontextmerkmalen
31.01.2008 Einführung in die Computerlinguistik 23
Markov-ModelleMarkov-Modelle
• Markov-Modelle sind gewichtete endliche Automaten.• Markov-Modelle reduzieren die komplexen Zusammenhänge einer
Kette von Ereignissen (z.B. Wörter in einem Text).• Markov-Modelle zur Wortartenerkennung:
• Kombination aus zwei Wahrscheinlichkeitsfunktionen:– Wie häufig kommt ein Wort mit einer Wortart vor?
– Wie häufig folgt eine Wortart auf eine andere?
TimeN fliesV likeA anD arrowN. vs TimeN fliesN likeV anD arrowN.
1 1 11
( ... | ... ) ( | ) ( | )n
n n i i i ii
p t t w w p w t p t t
( | )i ip w t
1( | )i ip t t
31.01.2008 Einführung in die Computerlinguistik 24
Beruf ComputerlinguistInBeruf ComputerlinguistIn
• Computerlinguistische Arbeit erfordert Wissen aus mehreren Bereichen:– Linguistik– Informatik– Mathematik– Philosophie– Logik– Informationswissenschaft
• Je nach Spezialisierung kann der Schwerpunkt einzelner ComputerlinguistInnen stark auf bestimmte der genannten Bereiche verlagert sein.
Sofern es um bestimmte Anwendungsdomänen geht,können natürlich weitere Fachbereiche involviert sein:
Philologie(n), Biologie, Soziologie, Forensik, Kryptologie, …