Kreuzworträtsel

Transcription

Kreuzworträtsel
Kreuzworträtsel
Vortrag von: Siamak Tazari
Email: [email protected]
Inhaltsübersicht
• Einleitung
• Aufgabenstellung
o Das Probabilistische Model
• Die Architektur von PROVERB
o Kandidatengenerierung
o Ausfüllen des Gitters
• Ergebnisse/Fazit
Einleitung
• Kreuzworträtsel Probleme: Erstellung vs. Lösung
• Erstellung von Kreuzworträtsel:
o Wurde seit Mitte der 70er behandelt
o Mitte der 80er gab es schon gute Lösungen
o Gutes Beispiel für constraint-satisfaction-problem und diverse
Suchstrategien
o Viele Veröffentlichungen unter:
http://thinks.com/faq/crosswords/q10.htm
• Lösen von Kreuzworträtsel:
o Wurde nicht sehr behandelt: Es ist schwierig Antworten auf
Fragen in natürlicher Sprache zu finden
o Crossword Maestro:
Ein Programm für kryptische „british-style“ Rätsel
o PROVERB:
Erstes erfolgreiches Programm für „american-style“ Rätsel
• In diesem Vortrag geht es um die genaue
Funktionsweise von PROVERB
Die Aufgabenstellung
NYT, Sat., Oct. 10th, 1998
• Erkennbare Teilaufgaben:
o Zu jeder Frage muss eine Kandidatenliste für mögliche
Antworten erzeugt werden
o Aus den Kandidatenlisten muss eine Lösung herausgesucht
werden, wobei die Einschränkungen des Gitters berücksichtigt
werden müssen
• Problem:
o Vieldeutigkeit der Sprache ergibt große Kandidatenlisten
o => Es kann mehrere Lösungen zum Rätsel geben
o Ein Probabilistisches Model wird aufgebaut, wodurch die
„beste“ Lösung genau defini ert wird
Das Probabilistische Model
• Die Vorgehensweise
o Auf den Kandidatenlisten wird eine Wahrscheinlichkeit verteilt
o In jeder Kandidatenliste sind die Wahrscheinlichkeiten positiv
und deren Summe ist gleich 1.
• Maximum Probability Solution
o Lösung mit höchsten Wahrscheinlichkeit
o Das Produkt der Wahrscheinlichkeiten der ausgewählten
Antworten muss maximiert werden
o Spiel gegen die Natur Version 1:
ƒEin Euro für jede komplett richtige Lösung
• Maximum Expected Overlap Solution
o Lösung mit höchster erwarteter Überschneidung mit der Lösung
des Rätselerschaffers
o i.e. höchste erwartete Anzahl von korrekten Antworten
o Spiel gegen die Natur Version 2:
ƒEin Euro für jedes richtige Wort
• Beide Ziele sind Optimierungsprobleme
werden später behandelt
Ö
Die Architektur von PROVERB
• Coordinator liest und verteilt die Eingabe
• 30 Experte Modules generieren Antwortkandidaten und vergeben
Wahrscheinlichkeiten
• Merger erzeugt aus den Ergebnissen der Experten Module eine
Kandidatenliste mit Wahrscheinlichkeiten (zu jeder Frage)
• Solver erzeugt aus den Kandidatenlisten und dem Gitter eine Lösung
o Benutzt dabei die Implicit Distribution Modules
Kandidatengenerierung
• Fragenkategorien
o Syntaktisch-lösbare Fragen: fill-in-the-blanks, X somewhere, ...
o Nicht-syntaktische expert Kategorien: Synonyme, kind-of,
Filme, Geography, Music, Literatur,...
o Fragen mit Antworten durch Information-Retrieval Techniken
o Die diversen Kategorien führen zu 30 Expertenmodulen
• Funktion eines Moduls
o Jedes Modul versucht Antworten zu finden und ihnen
Wahrscheinlichkeiten zuzuteilen
o Jedes Modul gibt auch eine confidence-number zurück: Wie
sicher es ist die Antwort gefunden zu haben
o Die Wahrscheinlichkeiten sind oft Approximationen
o Der Merger versucht die Fehler zu verbessern
Mehr dazu später
• CWDB: The Crossword Database
o Enthält 350.000 Frage-Antwort Paare
o Man erwartet in einem neuen Rätsel:
ƒ 91% der Antworten,
ƒ 50% der Fragen,
ƒ 34% der Frage-Antwort Paare
schon gesehen zu haben
o PROVERB’s durchschnittlich korrekte Antworten:
ƒKomplett: 94,8%
ƒOhne CWDB: 27,1%
ƒNur CWDB: 87,6%
Veränderung durch löschen nur einen Moduls: max. 1%
• Die Expertenmodule
o Wortlisten Module:
WordList
WordList-Big
WordList-CWDB
o CWDB-spezifische Module:
Exact Match
Transformations
o Information Retrieval Module:
Encyclopedia
Partial Match
LSI-Ency, LSI-CWDB
Dijkstra Modules
o Datenbank Module:
Movie: www.imdb.com
Music, Literary, Geography
Synonyms
o Syntaktische Module
Fill-in-the-blanks
KindOf
• Implicit Distribution Modules
o Nicht alle Antworten können von den Expertensystemen
gefunden werden
o Generieren mögliche Buchstabensequenzen, nachdem sich
Wahrscheinlichkeiten für Buchstaben im Gitter ergeben haben
und fügen sie zu den Kandidatenlisten hinzu
o Das wichtigste Modul: Bigram
o Andere Module: Tetragram, Segmenter
• Der Merger
o Fügt die Ergebnisse der Experten Module zusammen
o Erzeugt dadurch für jede Frage eine Kandidatenliste mit
Wahrscheinlichkeitsverteilung
o Benutzt für jedes Modul bestimmte Parameter um die
Wahrscheinlichkeiten auszugleichen
o Die Parameter werden durch Hill-Climbing gesetzt
Ausfüllen des Gitters
• A priori Wahrscheinlichkeiten
o pxi (v) ist die Wahrscheinlichkeit, dass die Antwort zu xi der
Kandidat v ist
o Ist in der Eingabe des Solvers bekannt
o Wird durch die Experten Module(bzw. Merger) gesetzt
• A posteriori Wahrscheinlichkeiten
o qxi (v) ist die Wahrscheinlichkeit, dass in einer legalen Lösung
des Rätsels, die Antwort zu xi der Kandidat v ist
o Ist schwer zu berechnen => Es wird approximiert
o Approximation durch iterative Anwendung eines dynamicprogramming Verfahrens(ähnlich belief-propagation)
• Die Lösungen
o Das Problem ist nun eine
probabilistische constraint-satisfaction problem(CSP)
o Für maximum probability solution muss
das Produkt der a priori Wahrscheinlichkeiten der
ausgewählten Antworten
maximiert werden
o Für maximum expected overlap solution muss
die Summe der a posteriori Wahrscheinlichkeiten der
ausgewählten Wörter
maximiert werden
o Beide sind NP-Vollständig, ein A*-Algorithmus wird benutzt
o Wenn A* zu viel Speicher braucht, wird eine Heuristik
verwendet
A
P: 0.350
Q: 2.367
Q∞: 2.214
v
AS
IN
IS
B
0.250
2.833
2.793
slot 1A
p
Q
.5
.250
.3
.617
.2
.133
slot 3A
v
p
Q
FUN .7
.350
TAD .3
.650
v
GO
TO
slot 5A
p
Q
.7
.650
.3
.350
P(C) =
=
=
(∞)
Q
.190
.645
.165
(∞)
Q
.314
.686
(∞)
Q
.686
.314
C
0.267
3.233
3.529
D
0.133
2.866
3.074
slot 1D
v
p
IT
.4
IF
.3
AT
.3
q
.400
.350
.250
q(∞)
.496
.314
.190
slot 2D
v
p
NAG .4
SAG .3
NUT .3
q
.267
.383
.350
q(∞)
.331
.355
.314
slot 4D
p
q
.7
.350
.3
.650
q(∞)
.314
.686
v
NO
DO
p1A(IN)*p3A(TAD)*p5A(GO)*P1D(IT)
*p2D(NAG)*P4D(DO)/Pr(match)
0.3*0.3*0.7*0.4*0.4*0.3/Pr(match)
0.00302/0.01134 = 0.26667
q2D(SAG)
=
Q(D) =
q1A(IS) + q3A(TAD) + q5A(GO)
+ q1D(IT) + q2D(SAG) + q4D(DO)
0.133 + 0.650 + 0.650 + 0.400 + 0.383 + 0.650 = 2.687
=
Pr(B) + Pr(D) = 0.250 + 0.133 = 0.383
Ergebnisse
• Daily Puzzles
o 70 Rätsel wurden zum Trainieren benutzt
o Auf weitere 370 Rätsel wurde getestet
o PROVERB brauchte etwa 15 min per Rätsel:
ƒ7 min Kandidatengenerierung
ƒ8 min Gitterfüllung
o Durchschnittliche Leistung:
ƒ95,3% korrekte Wörter,
ƒ98,1% korrekte Buchstaben,
ƒ46,2% komplett korrekte Rätsel.
• Tournament Puzzles
o In 1998 American Crossword Puzzle Tournament(ACPT):
ƒWurde „theoretisch“ 190er zwischen 251 Teilnehmern
ƒHatte im Durchschnitt 80% der Worte korrekt
ƒDer Champion hatte alles korrekt in unter 7 min/puzzle
o In 1999 ACPT:
ƒWurde 147er zwischen 254 Teilnehmern
ƒHatte etwa 75% der Worte korrekt
o Tournament-Rätsel haben „Tricks“ die PROVERB nicht kennt!
• Fazit
o Kreuzworträtsel bieten eine anspruchsvolle Problemebene für
die Künstliche Intelligenz
o In PROVERB wurden Ideen von state-space search,
probabilistic optimization, constraint satisfaction, information
retrieval, machine learning und natural language processing
angewendet
o Wahrscheinlichkeitstheorie war sehr wichtig in der Praxis
o PROVERB brauchte aber große Ressourcen!
o Forschung in reasoning Algorithmen, lernen von einem Text
und, generell, natural language technology können
weiterführend sein
o Kreuzworträtsel sind eine exzellente Testumgebung für diese
Art von Forschung
Verwendete Literatur
o G.A. Keim, N. Shazeer, M.L. Littman, S. Agarwal, C.M.
Cheves, J. Fitzgerald, J. Grosland, F. Jiang, S. Pollard, K.
Weinmeister, Proverb: The probabilistic cruciverbalist, in:
PROC. AAAI-99, Orlando, FL, 1999, pp. 710-717
o N.M. Shazeer, M.L. Littman, G.A. Keim, Solving crossword
puzzles as probabilistic constraint satisfaction, in: Proc.
AAAI-99, Orlando, FL, 1999, pp. 156-162
o M.L. Littman, G.A. Keim, N. Shazeer, Solving crosswords
with Proverb, In Proceedings of the Sixteenth National
Conference on Artificial Intelligence, 1999
o M.L. Littman, G. A. Keim, N. Shazeer, A probabilistic
approach to solving crossword puzzles, ELSEVIER,
Artificial Intelligence 134, 2002, 23-55

Documents pareils