370 likes | 511 Vues
Learning to Map between Ontologies on the Sematic Web. Seminar „ Data Mining“ SS 2005 Grigori Babitski 12.07.2005. Ontologie. ONTOLOGIE Beschreibt Wissen über eine Domäne indem Bedeutungen von Konzepten Beziehungen (Relationen) zw. Konzepten
E N D
Learning to Map between Ontologies on the Sematic Web • Seminar „ Data Mining“ • SS 2005 • Grigori Babitski • 12.07.2005
Ontologie • ONTOLOGIE • Beschreibt Wissen über eine Domäne indem • Bedeutungen von Konzepten • Beziehungen (Relationen) zw. Konzepten • formal definiert und damit maschinell nutzbar macht. • Internet: Unmenge von Information • Daten maschinell erfasst syntaktische Suche möglich • Info-Gehalt maschinell erfasst semantische Suche möglich
geführt von • Zusätzl. Relationen • Instanz – Instanz • Konzept – Konzept • Instanz - Konzept Taxonomie + = Fachgebiet Ontologie Ontologie: Begriffe • Konzepte • Instanzen • Attribute • Relationen • Spezialisierung / Generalisation + + +
Semantische Suche Nützlichkeit, einfaches und überzeugendes Beispiel: • Anfrage: „Exportproblem der Automobilindustrie in Ostasien“ • Ergebnis: auch Dokumente mit „Thailand“ und „Ford“ oder „VW“ • z.B. „Exportprobleme von VW in Thailand“
Semantische Suche, Mapping • Viele Ontologien in Web • ähnliche Domäne, aber unterschiedliche Terminologie • überlappende Domänen • Integration zur gemeinsamen Nutzung • Semantische Korrespondenz zw. Elementen (Mapping-Problem)
Aufgabenstellung Mapping entscheidend für semantische Suche, sonst Babelturm • Geg. 2 Taxonomiebäume (mit Instanzen) • Finde für jeden Knoten (d.h. Konzept) einer Taxonomie den, bzgl. vordefinierten Ähnlichkeitsmaßes, ähnlichsten Knoten in anderer Taxonomie(1-1) Mapping • Mapping zw. anderen, auch verschiedenen Ontologieelementen (Instanzen, Relationen, Attributen) möglich, aber • Taxonomie – zentrale Komponenete; Rest ergibt sich daraus • Mapping zw. Mengen von Elementen möglich? Sinnvoll?
GLUE • Futures • Probabilistische Ähnlichkeitsmaße • Viele verschiedene verwendbar • Techniken des maschinellen Lernens • Lernen aus verschiedenen Informationen • Instanzen • Taxonomische Struktur • Einbeziehung zusätzlichen Wissens • Allgemeinwissen • Beziehungen, die generell in Taxonomien gelten • Domänenabhängige Constrains
Gemeinsame Wahrsch.-Verteilung der Konzepte • P(A,B), P(A,B), P(A,B), P(A, B) Wahrsch., dass eine Instanz in Konzept A, aber nicht in B liegt Vorüberlegung • Konzept definiert als Menge • Ähnlichkeit von 2 Konzepten definiert über irgendeinen Zusammenhang zw. den Mengen • Beispiele der möglichen/sinnvollen Zusammenhänge – später • Zusammenhang oft beschreibbar durch gemeinsame Verteilung
Lösung: • Lerne Klassifikator für Assoc. Prof. • Als Tainingsdata Instanzen von Assoc.Prof. • Klassifiziere damit Y Vorüberlegung Faculty Acad. Staff Assoc. Prof. Asst. Prof. Lecturer Senior Lecturer Prof. Dr.X Prof. Dr.Y • Gegeben: Y Senior Lecturer • Problem: Y Assoc. Prof.? • Ja P(Assoc.Prof, Senior Lecturer) relativ hoch
most-specific-parent exact 3 Ähnlichkeits- maße most-general-child Ähnlichkeitsmaß • Soll sein: • wohldefiniert • intuitiv nachvollziehbar, d.h. mit semantischem Hintergrund • Keine Festlegung auf einen bestimmten Ähnlichkeitsmaß • soll möglich sein je nach Situation eine passende zu definieren • Bsp.: Einfügen neuen Konzepts in Taxonomie {2,3,5} {1,2,3,4,5} {2,3,4} {2,5} {3,5} {1,4} {2,4} {3,4}
P(A,B) P(A B) P(A,B) + P(A,B) + P(A,B) P(A B) Verteilungsbasierte Ähnlichkeitsmaße„exact“ A,B A,B A, B = Sim(A,B) = [Jaccard, 1908] Je stärker sich die Mengen (von Instanzen) schneiden, desto ähnlicher Konzepte
Beispiel: Sei A „Professor“. Welches B maximiert MSP(A,B) • P(Tech Staff | Prof ) = 0 Staff • P(Acad Staff | Prof) = 1 … Academic Staff Technical • P(Staff | Prof) = 1 Lecturer Professor Senior Lecturer • P(Prof | Staff) < P(Prof | Acad Staff) • d.h., im Sinne von MSP Prof ähnlicher zu Acad Staf als zu Staff Verteilungsbasierte Ähnlichkeitsmaße„most-specific-parent“ Definition von „most-specific-child“ ähnlich
T1 T2 N G M K B H L A F J Verteilungsschätzer Wollen: P(A,B) bestimmen • Betrachte Instanzen von T2 (also U2) • Welche davon in B liegen – trivial • Welche genügen A? Abschätzen! • Benutze dafür maschinelles Lernen!
VerteilungsschätzerWas macht Lerner? • Wollen Konzept „Professor“ lernen • Training: • Eingabe: • Positive Instanzen/Beispiele (Professoren) • Negative Instanzen (keine Professoren) • Internes „Zusammenrechnen“ der Merkmale • Test (Benutzung): • Eingabe: Irgendeine Instanz • Ausgabe: geschätzte Wahrsch., sie ist ein Professor • Vergleiche Merkmale von Instanz mit gelernten Merkmalen von „Professor“ Es sei ein Lerner ist gegeben. Wie damit UiAB bestimmen?
T1 T2 N G M K B H L A F J Verteilungsschätzer: Algorithmus • Bestimmen von U2AB mit Lerner L: • Unterteile U1inU1A und U1A (pos./neg. Beispiele) • Trainiere damit L (= lerne Konzept A) • Unterteile U2inU2B und U2B • Benutze L um aus U2BU2AB zu erhalten • Um U1AB zu erhalten vertausche: 12 und AB • Um P(A,B) zu erhalten negiere in Formel und Algorithmus B
Content Learner • Lernt ein Konzept A • Lernt aus Textinhalt der Instanzen: „R.Cook, Ph.D., University of Sidney, Australia“ • Lernverfahren: Naive Bayes (passt besonders gut zu Lerninfo) • Vorbereitung: parsing und stemming der Textinhalte • Ergebnis: bag of tokens, also d={w1,...,wk} • d – bag of tokens einer Instanz • wi – token dieser Instanz • Eingabe: d einer beliebigen Instanz • Ausgabe: P(A|d)
naive, aber funkzioniert Wegen Annahme, wi unabhängig won wj. (dann nach Def. P(wi,wj)=P(wi)P(wj) ) Annahme Normalisierungskonstante (auf 1); kann weggelassen werden Anteil der Trainingsinstanzen, die zu A gehören (wird im Vorfeld berechnet) Wie oft solche token-Menge d vorkommt ist unwichtig um zu entscheiden, ob sie zu A gehört Naive Bayes
Name einer Instanz = ihr Name + Name der Konzepte bis zum Wurzel • Name von „R.Cook“: • „CS Dept US, People, Faculty, Associate Professor, R.Cook“ Name Learner • Lernen eines Konzepts aus anderer Information • full name statt content • Als Lernverfahren Naive Bayes (vermutlich)
Multi-Strategy Learning • Viele Informationen aus denen man lernen kann • Inhalt, Name, Wortfrequenz, Format... • Viele Lernverfahren (spezifisch, je nach Lerninfo) • Lerne aus verschiedenen Informationen! (erhöht Qualität) • Ergebnisse einzelner Lerner kombinieren. METALERNER • Momentan: gewichtetes Vertrauen in einzelne Lerner (manuell) • Lerner1: Ja 0.8 Gewicht: 0.6 Ja 0.8*0.6+0.3*0.4=0.6 • Lerner2: Ja 0.3 Gewicht: 0.4 Nein 0.2*0.6+0.7*0.4=0.4 • Besser: z.B. stacking Metalerner:
Metalerner: 2. Basislerner „ –“ 3. Basislerner „+“ „ –“ Stacking • Trainingsinstanzen in 2 Gruppen teilen • Mit 1. Gruppe Basislerner trainieren • Mit 2. Basislerner testen (Tabelle) • Z.B. Regellernverfahren anwenden +: Basislerner sagt „ja“ mit Wahrsch. 0.5 Aus der Tabelle auch mit Naive Bayes Metalerner trainierbar!
Zwischenergebnis Ähnlichkeitsmatrix der Konzepte für einen gewählten Ahnlichkeitsmaß Taxonomie 2 . . . . B1 B2 A1 . . . . . A2 . . . . . . Taxonomie 1 . Einträge zw. 0 und 1 . .
Unabhängig von der Domäne, z.B. • Two nodes match if their children also match Asst-Prof. • Domänenspezifisch, z.B. • If node Y is a descendant of node X, and Y matches PROFESSOR, then it is unlikely that X matches ASST-PROFESSOR Prof. Constraints
MX, Δk, X, L X – Konzept, das man matchen (labeln) will L – Kandidat für matching mit X Δk – Gesammtwissen über die Domäne (Taxanomiestruktur, Instanzen...) und Domain Constraints MX – Bisheriges matching aller Konzepte außer X Modellierung der Constraints Für je ein Constraint f: ( ) [0,1]
i – Gewichte der Constrains; wenn negativ, Constrain gegen matchen X mit Y 1 2 3 Anwendung der Constraints Wollen prüfen, ob X mit L gematcht werden kann/soll: P(X=L) f1(MX,Δk,X,L) + f2(MX,Δk,X,L) + f3(MX,Δk,X,L) . . . Wert P(X=L) ipositiv je höher fi desto höher P(X=L) i negativ je höher fi desto niedriger (PX=L)
If node L is a descendant of node X, and L matches PROFESSOR, then it is unlikely that X matches ASST-PROFESSOR Asst-Prof. f(MX,Δk,X,ASST-PROFESSOR) :=1, wenn Nachfolger von X, der PROFESSOR ist, sonst 0; Prof. negativ, weil f=1 im Fall, der zu vermeiden ist Modellierung der Constrains: Beispiele Two nodes match if their children also match f(MX,Δk,X,L) := % der X‘ Kinder, die (bei geg. MX) matchen Kind von L; je höher, desto höher P(X=L), d.h positiv
Sigmoidfunktion ...gewichtete Summe der Consraints in [0,1] bringen: 1 P(x) 0 -10 -5 0 5 10
Relaxation Labeling • Allgemein: Den Knoten eines Graphs Labels zuzuweisen bei gegebenen Constraints • Idee: Label eines Knoten abhängig von Eigenschaften der Knoten in der Nachbarschaft (deren Labels, Erfüllen bestimmter Constraints...) • In Anwendung hier: • Knoten – Konzepte 1. Taxonomie • Labels – Konzepte 2. Taxonomie • Initialisierung der Labels: gemäß der Ähnlichkeitsmatrix (vermutlich) • Aktualisierung der Labels (ausgehend von aktualisierten Labels der Nachbarknoten) bis Kriterium fürs Ende erfüllt • Brauchen: Formel zur Aktualisierung der Labels P(X=L|Δk)=...
Nach Def. bedingter Wahrsch.: P(A,B)=P(A|B)*P(B) Annahme: Labels von Rest-Matsching unabhängig voneinander Def. von Unabhängigkeit: P(A|B)=P(A)*P(B) MX,Δk – Alles Wissen ü. X‘ Nachbarn; P(X=L) abhängig nur von Constraints Qualitativer Vergleich möglich! Relaxation Labeling Summiere über alle Rest-Matchings
Real World Experiments • Taxonomies on the web • University classes (UW and Cornell) • Companies (Yahoo and The Standard) • For each taxonomy • Extracted data instances – course descriptions, and company profiles • Trivial data cleaning • 100 – 300 concepts per taxonomy • 3-4 depth of taxonomies • 10-90 average data instances per concept • Evaluation against manual mappings
Daten für die Experimente GLUE nutzt nur 30-90 Instanzen pro Konzept, weil es reicht Manual mappings – nicht alle Konzepte gematcht #Knoten, korrekt gematcht von GLUE Matching accuracy = #manuell gematchte Knoten
University I University II Companies Ergebnisse Name Lerner schlecht, weil (volle) Konzeptnamen zu ähnlich (unspezifisch) Nützlichkeit von multi-strategy learning!
Relaxation Labeling Stoppkruterium • Typisch: Genauigkeit steigt während weniger Iterationen am Anfang und dann sinkt • Finde richtiges Stoppkriterium! • Mappings ändern sich nicht • Wahrscheinlichkeiten ändern sich nicht • #Iterationen • Oft bei 2 und 3: Genauigkeit zuerst steigt und dann sinkt • Bei 1: steigt höher, sinkt fast nie • Folglich: GLUE benutzt 1 GLUE
Conclusions & Future Work • An automated solution to taxonomy matching • Handles multiple notions of similarity • Exploits data instances and taxonomy structure • Incorporates generic and domain-specific constraints • Produces high accuracy results • Future Work • More expressive models • Complex Mappings • Automated reasoning about mappings between models