Upload
truonghanh
View
215
Download
0
Embed Size (px)
Citation preview
KIT – Universität des Landes Baden-Württemberg und
nationales Forschungszentrum in der Helmholtz-Gemeinschaft
IPD Tichy, Fakultät für Informatik
www.kit.edu
Programmieren in natürlicher Sprache:
Erkennung und semantische Assoziation von Entitäten in
natürlichsprachlichen Texten
Sebastian Weigelt Betreut von Mathias Landhäußer
DIPLOMARBEIT
2 24.04.2014
Motivation
Zielsetzung: Text-Modell-Assoziation
Assoziation von natürlichsprachlichem Text mit einem wissenschaftlichen
Modell
Kontext: AliceNLP
Projekt „Programmieren in natürlicher Sprache“
Ansatz: Assoziation von Text-Entitäten mit Ontologie-Individuen
Abbildung von Text-Bestandteilen auf Modell-Elemente (einer Ontologie)
Übertragung von Satzstrukturen auf Ontologie-Strukturen
Bewertungsfunktionen
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
„The white bunny jumps“
Ontologie
jump whiteBunny …
3 24.04.2014
Grundlagen
Zielsystem: Programmiersprache Alice [Car]
Modell-Ontologien: OWL
Syntaxanalyse: Stanford CoreNLP [Sta]
Zerteiler (Parser): Satzzerlegung, Wortzerlegung, Wortart-Markierung,
Syntaxbaum-Erzeugung, …
Wichtige Sichtweise: Abhänigkeitsgraphen
Grammatik (der englischen Sprache)
Satzstrukturen: verkettete Sätze, Nebensätze, …
Besonderheiten: Modifikatoren, Zeitformen,…
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
4 24.04.2014
Verwandte Arbeiten
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
NLC[BB79], Metafor[LL05]
Entity Classification
[CV05], Traceability Recovery [ZWRH06]
PANTO [WXZY07]
Pegasus [KM06],
SmartSynth [LGS13]
Ontologie-
Assoziation
Modellierung
natürlicher
Sprache
Natürlichsprachliche
Programmierung
5 24.04.2014
Zielsetzung
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
6 24.04.2014
Umsetzung – Grundidee
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Lösungsansatz: 5 Teilschritte
Analyse des natürlichsprachlichen Satzes
Assoziation von Text-Entität und Ontologie-Individuen
Bewertung der Individuen-Assoziation
Bewertung der semantischen Zusammenhänge
Darstellung der gewonnen Ergebnisse
7 24.04.2014
Umsetzung – Satzanalyse
Syntaxanalyse mittels Parser: Abhängigkeitsgraph
Interpretation:
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
8 24.04.2014
Umsetzung – Satzanalyse (2)
Ansatz: atomare Aktionen/Sätze
Beschreiben genau eine Aktion
Bestehen aus Subjekt, Prädikat (und Objekt)
„The bunny eats the broccoli and turns to Alice.“
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Atomarer Satz 1:
Subjekt: [bunny]
Prädikat: [eats]
Objekt: [broccoli]
Atomarer Satz 2:
Subjekt: [bunny]
Prädikat: [turns]
Objekt: [Alice]
9 24.04.2014
Umsetzung – Ontologie-Assoziation
Ontologie-Suche:
Entsprechend der Funktion im Satz
Granularität
Wortlisten-Ebene: Ausbeute ↔ Präzision
Wort-Ebene: Ausbeute ↔ Präzision
Lemmata: „eats“ ↔ „eat“
Synonyme: „bunny“ ↔ „rabbit“
„The bunny eats the broccoli and turns to Alice.“
Atomarer Satz 1:
Subjekt: [bunny] ↦ #bunny, #whiteBunny, #bunny~~tail, #rabbit
Prädikat: [eats] ↦ #bunny~~eat, #husky~~Breath
Objekt: [broccoli] ↦ #broccoli
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
10 24.04.2014
Umsetzung – Assoziationsbewertung
Ontologie-Suche: viel Ausbeute, wenig Präzision
Mehrere assoziierte Ontologie-Individuen je Text-Entität
Möglichst eindeutige Auswahl des passendsten Individuums
Bewertung nötig
Bewertungsfunktion
Ähnlichkeitsmetriken: Entität ↔ Individuum
Domänenspezifische Faktoren
Vorteile
Keine endgültige Festlegung
Anpass- und erweiterbar
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
11 24.04.2014
Umsetzung – Assoziationsbewertung(2)
Bewertungsfunktion:
Ähnlichkeit
Repräsentation
R([white, bunny] ↦ #whiteBunny) > R([white, bunny] ↦ #bunny)
Abdeckung A
A([fish] ↦ #fish) > A([fish] ↦ #lilfish)
Domänenspezifisch:
Synonym-Assoziation s
s([bunny] ↦ #bunny) > s([bunny] ↦ #rabbit)
Ungenutzte Kaskaden-Elemente k
#bunny~~lowerBody~~leftLeg~~foot
Ontologie-Klassenzugehörigkeit o
o([turn] ↦ #turn (UserMethod)) > o([turn] ↦ #turn (AliceMethod))
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
B = R * A * s * k - o
nuk
12 24.04.2014
Umsetzung – Assoziationsbewertung(3)
„The bunny eats the broccoli and turns to Alice.“
[bunny] ↦ #bunny, #whiteBunny, #bunny~~tail, #rabbit
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Individuum R A s k o B
#bunny 5/5 1 – 0/5 1 0,650 0 1
#whiteBunny 5/5 1 – 5/10 1 0,650 0 0,5
#bunny~~tail 5/5 1 – 0/5 1 0,651 0,1 0,55
#rabbit 6/6 1 – 0/6 0,75 0,650 0 0,75
B = R * A * s * k - o
13 24.04.2014
Umsetzung – Zusammenhangsbewertung
Zielsetzung: Bewertung des Zusammenhangs der Einzelindividuen
Übertragung der Satz- auf die Ontologie-Struktur
Erzeugung von Alice-Skript-Aufrufen
Ansatz: Zweistufig
Erzeugung valider Aufrufe (Modell – Methode – Parameter)
Bewertung (über Assoziationsbewertung der Individuen)
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Atomarer Satz 1:
Subjekt: [bunny]
Prädikat: [eats]
Objekt: [broccoli]
14 24.04.2014
Umsetzung – Zusammenhangsbewertung(2)
Bewertungsfunktion S =
Vorteile
Nur valide Kombinationen erhalten Bewertung
Art der Kombination berücksichtigt
Assoziationsbewertung der Individuen fließt ein
Verbessert implizit auch Individuen-Auswahl
„The bunny eats the broccoli and turns to Alice.“
#bunny, bunny~~eat, #broccoli: S =
#whiteBunny, #whiteBunny~~eat, #broccoli: S =
#bunny, #SoundResponse: S =
#bunny, #turn: S =
#bunny, #turnToFace, #alice: S =
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
|| AS
i
Elemente
B
917,03
0,175,00,1
75,03
0,175,05,0
371,03
111,00,1
6,03
75,00,1
788,03
0,1364,00,1
15 24.04.2014
Umsetzung – Ergebnisdarstellung
In GoldenGATE [SBA06]
Als Annotation am Wort, Wort-Sequenz bzw. Satz
Auf Wort-Ebene (Entität)
Auf Satz-Ebene
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
16 24.04.2014
Evaluation – Aufbau
Evaluiert: Satzanalyse, Assoziations- und Zusammenhangsbewertung
Jeweils als Klassifikator aufgefasst
Ausbeute A =
Präzision P =
Vergleich mit Musterlösung
Grundwerte
Texte: 25
Entitäten: 723
Individuen : 723
Atomare Sätze: 259
Assoziations- und Zusammenhangsbewertung:
zusätzliche Betrachtung „Top-n“-Bewertungen
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
negativepositive
positive
falschrichtig
richtig
positivepositive
positive
falschrichtig
richtig
17 24.04.2014
Evaluation – Ergebnisse
Satzanalyse
Ausbeute: 0,794
Präzision: 0,764
Viele Fehler durch falsche Abhängigkeitsgraphen
Assoziationsbewertung
Angleichung: Ausschluss von Parser-bedingten Fehlern im
Abhängigkeitsgraph
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Top n Ausbeute Präzision Ausbeute
(angeglichen)
Präzision
(angeglichen)
1 0,668 0,745 0,801 0,885
2 0,689 0,381 0,825 0,445
3 0,714 0,256 0,853 0,299
5 0,723 0,154 0,865 0,179
10 0,764 0,078 0,912 0,090
18 24.04.2014
Evaluation – Ergebnisse(3)
Zusammenhangsbewertung
Angleichung: Ausschluss von Parser-bedingten Fehlern im
Abhängigkeitsgraph
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Top n Ausbeute Präzision Ausbeute
(angeglichen)
Präzision
(angeglichen)
1 0,599 0,965 0,784 0,991
2 0,629 0,483 0,824 0,496
3 0,633 0,322 0,829 0,330
5 0,645 0,194 0,844 0,198
10 0,645 0,098 0,844 0,099
19 24.04.2014
Zusammenfassung
Zielsetzung: Assoziation von Text und Ontologie
Ansatz: 5 Teilschritte
Satzanalyse
Individuen-Assoziation
Assoziationsbewertung
Zusammenhangsbewertung
Ergebnisdarstellung
Gute Abdeckung und Präzision (unter Ausschluss von Satzanalyse-Fehler durch falsche Abhängigkeitsgraphen)
Verbesserungen: Satzanaylse und Lernverfahren
Projektverlauf: T-O-Assoziation ⇒ Instanziierung ⇒ Skript-Erzeugung
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
„The white bunny jumps“
Ontologie
whiteBunny jump …
1,0 0,5
0,3
0,75
20 24.04.2014 Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
21 24.04.2014
Literatur
[BB79] Ballard, BruceW. ; Biermann, AlanW.: Programming in
natural language: "NLC" as a prototype. In: Proceedings
of the 1979 annual conference ACM,1979, S. 228-237
[Bes14] Best, Jonathan Kim R.: Programmieren in natürlicher
Sprache: Der Eingabeassistent "Input & Verify AliceNLP",
Karlsruher Institut für Technologie (KIT) – IPD Tichy,
Diplomarbeit, März 2014.
https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/best_da
[Car] Carnegie Mellon University: Alice. http://www.alice.org
[CV05] Cimiano, Philipp ; Völker, Johanna: Towards large-scale,
open-domain and ontology-based named entity
classication. (2005)
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
22 24.04.2014
Literatur(2)
[Ham12] Hampel, Sina: Programmieren in natürlicher Sprache: Aufbau des Alice-Korpus, Karlsruher Institut für Technologie (KIT) – IPD Tichy, Bachelor's Thesis, November 2012. https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/hampel_ba
[Hey13] Hey, Tobias: Programmieren in natürlicher Sprache: Zeitliches Sortieren, Karlsruher Institut für Technologie (KIT) – IPD Tichy, Bachelor's Thesis, Dezember 2013. https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/hey_ba
[KM06] Knöll, Roman ; Mezini, Mira: Pegasus: First steps toward a naturalistic programming language. In: Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications. New York, NY, USA : ACM, 2006 (OOPSLA '06). - ISBN 1- 59593-491-X, 542-559
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
23 24.04.2014
Literatur(3)
[Kob13] Kober, Stefan: Programmieren in natürlicher Sprache:
Erzeugen von Alice-Szenerien aus Text, Karlsruher Institut
für Technologie (KIT) – IPD Tichy, Diplomarbeit, Dezember
2013.
https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/kober_da
[Koh13] Kohlmann, Andrea: Programmieren in natürlicher Sprache:
Alice-Kontrollstrukturen aus natürlicher Sprache, Karlsruher
Institut für Technologie (KIT) – IPD Tichy, Bachelor's
Thesis, September 2013.
https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/kohlmann_ba
[LGS13] Le, Vu ; Gulwani, Sumit ; Su, Zhendong: Smartsynth:
Synthesizing smartphone automation scripts from natural
language. In: Feedback 2 (2013), Nr. 3, S. 5
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
24 24.04.2014
Literatur(4)
[LL05] Liu, Hugo ; Lieberman, Henry: Metafor: Visualizing Stories
As Code. In: Proceedings of the 10th International
Conference on Intelligent User Interfaces. New York, NY,
USA : ACM, 2005 (IUI '05). - ISBN 1-58113-894-6, 305-307
[Pet12] Peters, Oleg: Programmieren in natürlicher Sprache:
Extraktion einer Alice-API-Ontologie, Karlsruher Institut für
Technologie (KIT) – IPD Tichy, Bachelor's Thesis,
November 2012.
https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/peters_ba
[SBA06] Sautter, Guido ; B•ohm, Klemens ; Agosti, Donat: Semi-
automated XML markup of biosystematic legacy literature
with the GoldenGATE editor. In: Proceedings of the Pacific
Symposium on Biocomputing (PSB'07), 2006, S.391-402
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
25 24.04.2014
Literatur(5)
[Sek14] Seker, Ali K.: Programmieren in natürlicher Sprache:
Erfassung von Methodenargumenten aus natürlicher
Sprache, Karlsruher Institut für Technologie (KIT) – IPD
Tichy, Diplomarbeit, Mai 2014.
https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/seker_da
[Sta] Stanford University: Stanford Core NLP online demo.
http://nlp.stanford.edu:8080/corenlp/
[Wei12] Weigelt, Sebastian: Programmieren in natürlicher Sprache:
Aufbau einer Alice-Ontologie – Korpus-Ontologie-
Assoziation, Karlsruher Institut für Technologie (KIT) – IPD
Tichy, Studienarbeit, November 2012.
https://svn.ipd.kit.edu/trac/AliceNLP/wiki/Theses/weigelt_sa
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
26 24.04.2014
Literatur(6)
[WXZY07] Wang, Chong ; Xiong, Miao ; Zhou, Qi ; Yu, Yong: PANTO:
A Portable Natural Language Interface to Ontologies.
Version: 2007.
http://dx.doi.org/10.1007/978-3-540-72667-8_34.
In: Franconi, Enrico (Hrsg.) ; Kifer, Michael (Hrsg.) ; May,
Wolfgang (Hrsg.): The Semantic Web: Research and
Applications Bd. 4519. Springer Berlin Heidelberg, 2007. –
DOI 10.1007/978-3-540-72667-8 34. – ISBN 978-3-540-
72666-1, 473-487
[ZWRH06] Zhang, Yonggang ; Witte, Rene ; Rilling, Juergen ;
Haarslev, Volker: An Ontology-based Approach for
Traceability Recovery. In: 3rd International Workshop on
Metamodels, Schemas, Grammars, and Ontologies for
Reverse Engineering (ATEM 2006, 2006, 36-43
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
27 24.04.2014
Anhang – Alice
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
28 24.04.2014
Anhang – OWL-Ontologie
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
29 24.04.2014
Anhang – „bunny“-Text
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
“The ground is covered with grass. In the background there is a palm
tree on the left. In the foreground there is a frog on the left facing east-
southeast and a broccoli on the right. Behind the broccoli there is a
bunny facing south-southwest. Behind the frog, to the left, there is a
mailbox facing southeast. The bunny turns to face the broccoli. The
bunny hops three times. A very short time passes. The bunny eats the
broccoli. A very short time passes. The bunny turns to face the frog.
The bunny taps its left foot twice. The frog croaks. The frog turns left by
90 degrees. The frog hops three times. The bunny turns to face the
mailbox. The bunny hops three times. The bunny opens the mailbox.
The bunny looks into the mailbox while the frog turns to face the bunny
at the same time. The frog hops twice. The frog croaks.“
30 24.04.2014
AliceNLP
Programmieren in natürlicher Sprache
Ansatz:
Modellierung der Programmiersprache Alice als Ontologie
Texte zur Beschreibung von Ausgangssituation und Aktionen
Verknüpfung von natürlicher Sprache mit dem Modell
Abgeschlossene Teilprojekte
Ontologie-Extraktion (und Synonymerweiterung)
Korpus-Erzeugung
Zeitliches Sortieren
Kontrollstrukturen
Einordnung:
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
31 24.04.2014
Umsetzung - Voraussetzungen
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Voraussetzungen
Sprechende Namen von Modellen und Methoden
Voraussetzung für Assoziation
#bunny, #bunny~~eat, #broccoli, #say
Sinnhafte Namensgebung
Voraussetzung für Unterscheidbarkeit
#bunny1, #bunny2 ↔ #bigBunny, #smallBunny
32 24.04.2014
Umsetzung – Grundidee
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Lösungsansatz: 5 Teilprozesse
Analyse des natürlichsprachlichen Satzes
Assoziation von Text-Entität und Ontologie-Individuen
Bewertung der Individuen-Assoziation
Bewertung der semantischen Zusammenhänge
Darstellung der gewonnen Ergebnisse
33 24.04.2014
Umsetzung – Satzanalyse (2)
Ansatz: atomare Aktionen/Sätze
Beschreiben genau eine Aktion
Bestehen aus Subjekt, Prädikat (und Objekt)
Modellierung als Objekt
Mit Wortlisten für Subjekt, Prädikat und Objekt
Meta-Informationen
Später Verknüpfungen zu den Ontologie-Individuen
„The bunny eats a broccoli and turns to Alice.“
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
Atomarer Satz 1:
Subjekt: [bunny]
Prädikat: [eats]
Objekt: [broccoli]
Atomarer Satz 2:
Subjekt: [bunny]
Prädikat: [turns]
Objekt: [Alice]
34 24.04.2014
Umsetzung – Ontologie-Assoziation
Ontologie-Verwaltung
Einfache Schnittstelle (nur Kernkonzepte modelliert)
Projektspezifisch (Singleton, nur lesende Zugriffe, Optimierungen)
Ontologie-Suche:
Entsprechend der Funktion im Satz
Granularität
Wortlisten-Ebene: Ausbeute ↔ Präzision
Wort-Ebene: Ausbeute ↔ Präzision
Lemmata: „eats“ ↔ „eat“
Synonyme: „bunny“ ↔ „rabbit“
„The bunny eats the broccoli and turns to Alice.“
Atomarer Satz 1: Subjekt: [bunny] #bunny, #whiteBunny, #bunny~~tail, #rabbit
Prädikat: [eats] #bunny~~eat, #husky~~Breath
Objekt: [broccoli] #broccoli
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
35 24.04.2014
Umsetzung – Assoziationsbewertung(2)
Bewertungsfunktion:
Ähnlichkeit
Repräsentation R =
Bevorzugung besserer Anfrageabdeckung:
[white, bunny] #bunny ↔ #whiteBunny
Abdeckung A =
Bevorzugung präziserer Assoziationen
[fish] #fish ↔ #lilfish
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
)(
)(
AnfrageZeichen
AnfrageZeichen
gesamt
erklärt
)(
)(1
ZieltextZeichen
ZieltextZeichen
gesamt
ungenutzt
36 24.04.2014
Umsetzung – Assoziationsbewertung(3)
Bewertungsfunktion
Domänenspezifisch
Synonym-Assoziation s (0 < s < 1)
Bevorzugung direkter Assoziation
[bunny] #bunny ↔ #rabbit
Ontologie-Klassenzugehörigkeit o (0 < o < 1)
Bevorzugung vollständiger Modell bzw. nutzererstellter Methoden
[turn] #turn (UserDefinedMethod) ↔ #turn (AliceMethod)
Ungenutzte Kaskaden-Elemente k (später mehr dazu)
#bunny~~lowerBody~~leftLeg~~foot
(0 < u < 1; n = ungenutzte Elemente)
B = R * A * s * k - o
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
nuk
37 24.04.2014
Umsetzung – Assoziationsbewertung(3)
Berechnung der Repräsentation R =
„einfache“ Individuen: #whiteBunny, #husky, #broccoli
Vergleich Wortliste mit Bezeichner: [white, bunny] ↔ #whiteBunny
Vergleich Wortliste mit Synonymen: [rabbit] ↔ #whiteBunny (bunny rabbit)
„kaskadierte“ Individuen: #bunny~~lowerBody~~leftLeg~~foot,
whiteBunny~~head, husky~~bark
Beschreiben Teil-Ganzes-Beziehung (Teil-Modell-Hierarchie) oder
Zugehörigkeit (bei Methoden)
Methoden: nur letzter Bestandteil betrachtet
Modelle: Zerlegung in Bestandteile, nur benötigte Elemente zur Berechnung
genutzt, nicht genutzte Elemente für Berechnung von k
(0 < u < 1; n = ungenutzte Elemente)
Synonym-Berechnung
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
nuk
)(
)(
AnfrageZeichen
AnfrageZeichen
gesamt
erklärt
38 24.04.2014
Umsetzung – Assoziationsbewertung(3)
„The bunny eats the broccoli and turns to Alice.“
[bunny] #bunny, #whiteBunny, #bunny~~tail, #rabbit
#bunny: B =
#whiteBunny: B =
#bunny~~tail: B =
#rabbit: B =
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt
1065,0*1*5
01*
5
5 0
5,0065,0*1*10
51*
5
5 0
55,01,065,0*1*5
01*
5
5 1
75,0065,0*75,0*6
01*
6
6 0
Individuum R A s k o B
#bunny 5/5 1 – 0/5 1 0,650 0 1
#whiteBunny 5/5 1 – 5/10 1 0,650 0 0,5
#bunny~~tail 5/5 1 – 0/5 1 0,651 0,1 0,55
#rabbit 6/6 1 – 0/6 0,75 0,650 0 0,75
39 24.04.2014
Evaluation – Ergebnisse(2)
Programmieren in natürlicher Sprache: Erkennung und semantische Assoziation von Entitäten in natürlichsprachlichen Texten
Sebastian Weigelt