Title: Annie
1Annie
Zara Kanaeva, November 2002, Information
Extraction
2Inhalt
- Systemarchitektur
- JAPE, Java Annotation Patterns Engine
Zara Kanaeva, November 2002, Information
Extraction
3Architektur
Zara Kanaeva, November 2002, Information
Extraction
4JAPE
- Besteht aus einer Menge von Phasen
- Jede Phase besteht aus einer Menge von
pattern/action- Regeln - Die Phasen laufen nach einander ab und stellen
eine Kaskade der finite state transducers dar - Die linke Seite (LHS) einer Regel besteht aus
Annotationspattern, die Operatoren der regulären
Ausdrücke (,?,,) beinhalten können - RHS einer Regel besteht aus Manipulationen der
Annotationen
Zara Kanaeva, November 2002, Information
Extraction
5JAPE (Hauptmodule)
- Tokeniser
- Gazetteer
- Grammar
Zara Kanaeva, November 2002, Information
Extraction
6Tokeniser (JAPE)
- Zerlegt den Text in sehr kleine einfache Tokens
(Zahlen, Punktuationszeichen und Wörter) - In den Regeln wird LHS von der RHS durch
- gt getrennt
- Allgemein LHS gt Annotation type attribute
1value 1 attribute nvalue n - Beispiel UPPERCASE_LETTER
LOWERCASE_LETTER gt Token orthupperInitialki
ndword
Zara Kanaeva, November 2002, Information
Extraction
7Gazetteer (JAPE)
- Der zweite Annotationsschritt Schlüsselwörter,
die mit bestimmten Entity-Typen zusammenhängen,
werden durch das Suchen in angelegten Listen
bestimmt und mit diesen Entity-Typen annotiert - Eine Indexdatei (lists.def) wird benutzt, um auf
die angelegten Listen zuzugreifen - Für jede Liste spezifiziert man den major-Typ
und den minor- Typ
Zara Kanaeva, November 2002, Information
Extraction
8Gazetteer (JAPE)
- Beispiel einer Liste (currency_unit.lst)
- Ecu
- European Currency Units
- FFr
- Fr
- German mark
- German marks
- New Taiwan dollar
- New Taiwan dollars
- NT dollar
- NT dollars
Zara Kanaeva, November 2002, Information
Extraction
9Gazetteer (JAPE)
- Major- und Minor-Type Listen
- currency_prefix.lstcurrency_unitpre_amount
- currency_unit.lstcurrency_unitpost_amount
- date.lstdatespecific
- day.lstdateday
- Wozu braucht man die Typen major und minor?
Zara Kanaeva, November 2002, Information
Extraction
10Grammatik (JAPE)
- Die Grammatik besteht aus den Regeln, die auf den
vergebenen Annotationen arbeiten - Die linke Seite einer Regel (LHS) wird von der
rechten (RHS) durch --gt getrennt - Wie beim Tokeniser beschreibt die LHS einer
Grammatikregel das Muster (Annotationen
Operatoren) - die RHS einer Regel beschreibt die Annotationen,
die vergeben werden - zusätzlich gibt es auch die Möglichkeit, Macros
zu definieren und in LHS zu benutzen
Zara Kanaeva, November 2002, Information
Extraction
11Grammatik (JAPE)
- Es gibt drei Möglichkeiten für die Spezifikation
des Musters einer LHS - Stringspezifikation, z.B. Token.string of
- Spezifikation der Attribute eines Tokens, z.B.
Token.kind number - Spezifikation eines Annotationstypes des
Gazetteerers, z.B. Lookup.minorType month - Beispiel
- Rule GazLocation
- ( Lookup.majorType location )
- location --gt location.Enamex
kindlocation, rule"GazLocation"
Zara Kanaeva, November 2002, Information
Extraction
12Kontext (Beispiel 1)
- Rule YearContext1
- (Token.string "in"
- Token.string by"
- )
- (YEAR)
- date --gt
- date.Timex kind date, rule
YearContext1
Zara Kanaeva, November 2002, Information
Extraction
13Kontext (Beispiel 2)
- Rule Emailaddress1
- (Token.string "lt")
- (
- (EMAIL)
- )
- email
- (Token.string "gt")
- --gt
- email.Address kind email, rule
Emailaddress1
Zara Kanaeva, November 2002, Information
Extraction
14JAPE- Beispiel
Zara Kanaeva, November 2002, Information
Extraction
15Priorität
- Zwei Möglichkeiten der Berücksichtigung der
Priorität - Nach Brill
- Nach Appelt
- Spezifikation der Prioritätskontrolle erfolgt am
Anfang der Grammatik - Brill keine Prioritäten
Zara Kanaeva, November 2002, Information
Extraction
16Prioritätskontrolle nach Appelt
- Nur eine Grammatikregel pro Textsegment
- Prioritätsregel
- Die Regel, die ab dem Punkt X mit dem längsten
Textabschnitt übereinstimmt, wird genommen - Wenn es mehrere Regel mit dem gleichen
Textabschnitt gibt, wird die Regel mit der
höchsten Priorität genommen - Wenn es mehrere Regel mit der gleichen Priorität
gibt, wird die Regel genommen, die vor allen
anderen in der Grammatik definiert wurde - "Default" Priorität -1
Zara Kanaeva, November 2002, Information
Extraction
17Prioritätskontrolle nach Appelt
- Rule Location1
- Priority 25
- (
- (Lookup.majorType loc_key, Lookup.minorType
pre - SpaceToken)?
- Lookup.majorType location
- (SpaceToken
- Lookup.majorType loc_key, Lookup.minorType
post)? - )
- locName --gt locName.Location kind
location, rule Location1
- Rule GazLocation
- Priority 20
- (
- Lookup.majorType location
- )
- location --gt location.Name kind
location, rule GazLocation
"China sea"
Zara Kanaeva, November 2002, Information
Extraction
18Prioritätskontrolle nach Appelt
- Rule Location1
- Priority 25
- (
- (Lookup.majorType loc_key, Lookup.minorType
pre - SpaceToken)?
- Lookup.majorType location
- (SpaceToken
- Lookup.majorType loc_key, Lookup.minorType
post)? - )
- locName --gt locName.Location kind
location, rule Location1
- Rule GazLocation
- Priority 20
- (
- Lookup.majorType location
- )
- location --gt location.Name kind
location, rule GazLocation
"China"
Zara Kanaeva, November 2002, Information
Extraction
19Regelumsetzung
- Zwei Wege für die Regelanwendung
- Brill-Style jede Regel, die matcht, wird
genommen - Appelt-Style die Regel mit dem längsten
übereinstimmenden Textfragment wird genommen - Entsprechend diesen zwei Wegen die Umsetzung
- Kompillieren der Eingabe und die Bildung der
Finite State Machine (FSM) - Suche des längsten Weges in dem entstandenen
Annotationsgraphen (FSM)
Zara Kanaeva, November 2002, Information
Extraction
20FSM-Bildung (Grundlage)
Zara Kanaeva, November 2002, Information
Extraction
21FSM-Bildung (der effiziente Weg)
Zara Kanaeva, November 2002, Information
Extraction
22Suchen des längsten Weges
Zara Kanaeva, November 2002, Information
Extraction
23Literatur
- H. Cunningham, D. Maynard, V. Tablan JAPE a
Java Annotation Patterns Engine, Research Memo
CS-00-10, 2000 - H.Cunningham, D. Maynard, K. Bontcheva, V.
Tablan, C. Ursu, M. Dimitrov Developing
Language Processing Components with GATE (a User
Guide), The University of Sheffield 2001-2002
Zara Kanaeva, November 2002, Information
Extraction