Upload
horst-lackman
View
118
Download
4
Embed Size (px)
Citation preview
Question Answering Systeme
Vortrag von Alexander Wey
2
Überblick
Was sind Question Answering Systeme? TREC-9 QA Task Question Answering Systeme :
Ein einfaches Question Answering System FALCON
Zusammenfassung Ausblick
3
Was sind Question Answering Systeme ? liefern Antworten auf natürlich-sprachlich
gestellte Fragen
selektieren relevante Dokumente einer Wissensbasis
durchsuchen die relevanten Dokumente nach möglichen Antworten
4
Was ist „TREC“ ?
Text REtrieval Conference wird finanziert vom National Institute of Standards (NIST) und vom U.S. Verteidigungsministerium
ermöglicht Vergleichbarkeit von IR Verfahren durch Verwendung gleicher Datenmengen und Bewertungskriterien
5
TREC-9 QA Task
28 Teilnehmer (Forschungsgruppen von Universitäten und aus der privaten Wirtschaft)
3 GB großer Datenkorpus und 693 Test-Fragen wurden den Teilnehmern übergeben
Pro Frage sollte eine Liste von 5 Paaren übermittelt werden (Paar bestand aus Id-Nr. und Antwortstring) ; Liste nach Relevanz geordnet.
4 Durchläufe, jeweils zwei 50 und 250 - Byte
6
Bewertung
Die Listen wurden von unabh. NIST Mitarbeitern überprüft.
Abhängig vom Rang der Antwort wurden die Punkte verteilt. 1/r Punkte, wobei r der Rang der richtigen Antwort sei.
Gesamtergebnis aufgeteilt in „unsupported“ und supported“
7
QA Strategie
Im 1. Schritt wird der Antwort-Typ einer Frage ermittelt.
Im 2. Schritt wird aus allen Dokumenten ein kleiner Ausschnitt selektiert. Um passende Einträge (die vom gleichem Typ sind
wie die Antwort) zu finden, wird dieser Ausschnitt mit einem Parser durchlaufen.
8
Ein einfaches QA System
entwickelt von Cooper & Rüger der Imperal College of Science, Technology and Medicine , London
Geschrieben in Perl und verwendet : CMU Link Parser WordNet REX System für XML Parsing Managing Gigabyte Suchmaschine
9
Vorbereitung der Daten
Um die Rohdaten der Dokumente zu erhalten entfernte man die SGML (Standard Generalized Markup Language) – Zeichen
$ und £ Zeichen wurden durch die Wörter dollar und pounds ersetzt.
Die “rohen” Dokumente wurden in Paragraphen aufgeteilt.
10
Verarbeitung einer Frage
11
Sentence Splitter & Tokenizer
markiert die Satzenden, durch Suche nach Fragezeichen, Ausrufezeichen und Punkten.
Punkt => wirklich Satzende ?
tokenizer – Modul zerlegt die Frage in ihre einzelnen Bestandteile auf Wörter, welche Ziffern enthalten werden ebenfalls
zerlegt, Bsp. pounds20m -> 3 Tokens : pounds, 20, m
12
Link Parser
analysiert die syntaktische Struktur der Frage hängt den Ableitungsbaum an das Ergebnis des
„sentence splitter & tokenizer“ an. <sentence><t n=“1“>How</t> <t n=“2“>far</t> <t
n=“3“>away</t> <t n=“4“>is</t> <t n=“5“>the</t> <t n=“6“>moon</t> <t n=“7“> ?</t><parse><pos n=“2“ pos=“a“/><pos n=“4“ pos=“v“/><pos n=“6“ pos=“n“/><link name=“Xp” l=“0“ r=“7“/><link name=“Wq“ l=”0” r=”2”/><link name=”PF” l=”2” r=”4”/><linke name=”MVp” l=”2” r= “3”/><link name=”Sis” l=”4” r=”6”/><link name=”Ds” l=”5” r=”6”/><link name=”RW” l=”7” r=”8”/></parse></sentence>
13
Question Focus (1)
Wort oder Satzteil der Frage, welches ein Indiz für den Antworttyp sein könnte Bei manchen leichter bei anderen Fragen schwieriger
Antworttyp einer „what“ Frage benötigt weiteres Wort (question focus) z.B. „What time is the train arriving?“ Das erste Substantiv der Frage wird als „question
focus“ festgelegt
14
Question Focus (2)
Bei unserer Beispielfrage wird das Wort „moon“ als question focus gewählt. <questionFocus><t n=„6“>moon</t></questionFocus>
15
Answer Type (1)
legt den Antworttyp mit Hilfe des „question focus“ fest.
Schwachpunkt des Systems : Bei „who“ Fragen wird angenommen, dass immer
nach einer Person gesucht wird Gegenbeispiele :
„Who won the Premiership?“ (Fussballverein gesucht)
„Who beat Fred in the 100 m?“ (Liste von Läufern)
„Who beat England in the relay?“ (mehrere Länder)
16
Answer Type (2)
Zusätzliche Synonyme können die Ermittlung des richtigen Antworttyps vereinfachen.
Synonyme können mittels WordNet gefunden werden. Für die Beispielfrage „How far away is the moon?“
wird das Wort length hinzugenommen : <answerType t=„length“/>
17
Übersicht Antworttypen
Fragewort AntworttypWhen time
Where place
Why reason
Describe description
Define definition
Who, whom person
What, which, name Mittels question focus…
How Wort nach „how“
18
Keyword Extraction
Einzelne Wörter der Frage werden mit speziellen Kategorien kommentiert
Dies geschieht an Hand von Listen, in denen Namen von Personen, Plätzen, etc. und deren zugehörige Kategorie steht
London hört z.B. zur Kategorie „city“ Das Token „London“ wird kommentiert :
<aCity>London</aCity>
19
Paragraph Retrieval via MG
Der Datenkorpus wird mit der Managing Gigabyte Suchmaschine und der aufgearbeiteten Frage durchsucht.
Man erhält einen Ausschnitt von Dokumenten (Paragraphen), in denen die Antwort vermutet wird.
Problem : Zu wenig oder zu viele Dokumente ?
20
Candidate Answer Extraction
markiert Stellen im Text, welche Antworten sein könnten
Synonyme des Antworttyps werden mittels WordNet gefunden.
Mit der Disjunktion der Synonyme erstellt man einen regulären Ausdruck und vergleicht diesen mit dem Text
21
Ausnahmen
Antworttyp „person“ zuviele Synonyme , z.B. consumer, creator
Antworttyp „description“ zu schwer um hiermit die passenden Stellen zu finden Annahme : zwischen Komma und Punkt steht eine
Beschreibung
Antwortyp „length“ zu viele Antwortkandidaten
22
Answer Scoring (1)
Heuristik Beschreibungscore_comma_3_word Folgt nach einem Antwortkandidaten ein
Komma, so werden die 3 Wörter nach dem Komma, welche auch in der Frage auftauchen gezählt
score_punctuation 1 Punkt, wenn nach dem Antwortkandidat ein Punkt folgt (sonst 0 Punkte)
score_same_sentence # Wörter, welche sowohl in der Frage als auch beim Antwortkandidaten in einem Satz stehen
23
Answer Scoring (2)
Score_description_before Gilt nur für den Antworttyp „description“. Berechnet die Anzahl der Wörter die vor einem Antwortkandidaten stehen
Score_description_in #Wörter die im Antwortkandidaten stehen
Heuristiken sind untereinander unabhängig. Jeder Antwortkandidat wird ein Paar (id, score)
zugeordnet
24
Answer Weighting
Heuristik Gewichtungscore_comma_3_word 1.2
score_punctuation 1.1
score_same_sentence 1.0
score_description_before 2.0
score_description_in 1.0
25
Answer Ranking
Antwortkandidaten werden aus den Dokumenten kopiert nach Gewicht sortiert einem Rang zugeordnet
Duplikate werden gelöscht.
26
Zusammenfassung & Leistung
Um relevante Dokumente zu finden ermittelt man den Antworttyp und sucht passende Keywords
Textstellen werden markiert, welche Antworten sein könnten
Die Güte eines Antwortkandidaten wird bewertet.
Das einfache QA System konnte bis zu 39 % der Fragen beantworten.
27
FALCON
Southern Methodist University, Dallas Bestes Ergebnis im TREC-9 QA Task
58% der Fragen im 50-Byte Durchlauf beantwortet 76% der Fragen im 250-Byte Durchlauf beantwortet
geht auf die umformulierten Fragen ein Richtigkeit der Antwort wurde an Hand der
semantischen Form und logischen Form der Frage und Antwort überprüft.
28
Aufbau des Falcon Systems
29
Strategien des Falcon Systems
Bisher gestellte Fragen und Antworten werden abgespeichert (cached answers)
Relevante Dokumente werden mittels „boolean retrieval“ selektiert
Antworttyp wird zusätzlich mit Hilfe der semantischen Form der Frage ermittelt
Dasselbe Problem, wie beim einfachen QA System : zu wenige, oder zu viele relevante Dokumente Verfeinerung der Suche
30
Verfeinerung der Antwortsuche
31
Morphologische & lexikalische Alternativen Mit WordNet werden alle morphologischen
Ableitungen eines Schlüsselwortes gesucht Bsp : „Who invented the paper clip?“
morphologische Ableitungen des Wortes invented : inventor, invent
Mit WordNet werden Synonyme und andere Beschreibungen für ein Wort gesucht. Bsp : „Who killed Martin Luther King?“ Hier wurde
das Wort „assasin“ als Schlüsselwort hinzugefügt, da es ein Synonym für killer ist.
32
Semantische Alternativen
Auch hier mit der Hilfe von WordNet„liking better“ dieselbe Bedeutung wie „prefer“Bsp : „Where do lobsters like to live ?“ Konnte
mit Hilfe des Schlüsselworts „prefer“ beantwortet werden.
33
Semantische Form einer Frage
Mit dem „new statistical parser“ von Collins wird ein Ableitungsbaum erstellt.
Hieraus kann leicht die semantische Form einer Frage (bzw. Antwort) erstellt werden.
34
Erstellung der semantischen Form
Substantive, Verben, Adjektive und Adverbien werden als non-skipnodes bezeichnet, alle anderen Blätter werden als skipnodes bezeichnet
An Hand einer Regel erhält Vaterknoten die Bezeichnung eines Sohnes
Vaterknoten wird mit allen anderen „non-skipnodes“ verknüpft.
Non-skipnodes hier : astronaut, walk, space
35
Logische Form einer Frage
Transformation der semantischen Form in eine logische Form geschieht mit dem Programm Tacticus (von Jerry R. Hobbs)
36
Zusammenfassung
QA Systeme arbeiten meist in 2 Schritten : 1. Schritt : Suchen der relevanten Dokumente 2. Schritt : Suchen der Antwort in diesen Dokumenten
Mit Hilfe semantischen Wissens konnte FALCON bis zu 76% der Fragen richtig beantworten
37
Ausblick
Beantwortung komplexerer Fragen
Benutzerfreundlichere Suchmaschinen
Dialogsysteme zur Beantwortung faktischer Fragen
38
Quellenangabe
Overview of the TREC-9 Question Answering Track, Ellen M. Voorhees, National Institute of Standards an Technology, Gaithersburg.
A Simple Question Answering System. Richard J Cooper and Stefan M Rüger, Departement of Computing, Imperial College of Science, Technology and Medicine, 180 Queen‘s Gate, London.
Falcon : Boosting Knowledge of Answering Engines. S. Harabagiu, D. Moldovan, M. Pasca, R. Mihalcea, M. Surdeanu,
R. Bunescu, R. Girju, V. Rus, P. Morarecsu, Departement of Computer Science and Engineering, Southern Methodist University, Dallas
39
Vielen Dank für die Aufmerksamkeit und frohe Weihnachten !