Schema Matching

Preview:

DESCRIPTION

Schema Matching. Seminar Informationsintegration und –qualität Andreas Rumpf 7.7.2006. Gliederung. Motivation Taxonomie Schemabasierte Verfahren Cupid Similiarity Flooding S-Match Instanzenbasierte Verfahren LSD SEMINT Evaluation Fazit. 1. Motivation. Schema A: - PowerPoint PPT Presentation

Citation preview

Schema Matching

Seminar Informationsintegration und –qualität

Andreas Rumpf

7.7.2006

Gliederung Motivation Taxonomie Schemabasierte Verfahren

Cupid Similiarity Flooding S-Match

Instanzenbasierte Verfahren LSD SEMINT

Evaluation Fazit

1

Motivation

Schema A:

<electronics> <Photo_and_Cameras> <PID type=string/> <Name type=string/> <Qty type= positiveInteger/> <Price type=double/> </Photo_and_Cameras> ...</electronics>

Schema B:

<electronics> <Cameras_and_Photo> <Accessories/> <DigitalCameras/> <ID type=int/> <Brand type=string/> <Amount type=int/> <Price type=float/> </Cameras_and_Photo> ...</electronics>

?

2

Motivation

Schema A:

<electronics> <Photo_and_Cameras> <PID type=string/> <Name type=string/> <Qty type= positiveInteger/> <Price type=double/> </Photo_and_Cameras> ...</electronics>

Schema B:

<electronics> <Cameras_and_Photo> <Accessories/> <DigitalCameras/> <ID type=int/> <Brand type=string/> <Amount type=int/> <Price type=float/> </Cameras_and_Photo> ...</electronics>

2

Taxonomie

Schema Matcher

Individuelle Matcher Kombinierende Matcher

Schemabasiert Instanzenbasiert Hybride Composite

AutomatischManuellElement-EbeneStruktur-EbeneElement-Ebene

Linguistisch Constraint

Constraint

LinguistischConstraint

3

Taxonomie (2)

Instanzen- vs. schemabasiert Element- vs. Struktur-Matching Sprache vs. Constraints

Kardinalitäten:

1:1, 1:n, n:1, n:m

4

Cupid

2001 von Rahm, Bernstein, Madhavan entwickelt

Soll generisch sein Betrachtet Schemata als gerichtete Graphen Besteht aus linguistischem und strukturellem

Matcher

5

Cupid: Graph zu Schema A

electronics

Schema A:

<electronics> <Photo_and_Cameras> <PID type=string/> <Name type=string/> <Qty type= positiveInteger/> <Price type=double/> </Photo_and_Cameras> ...</electronics>

Photo and Cameras

PID Name Qty Price

6

Cupid: Linguistischer Matcher Arbeitet auf Element-Ebene Ziel: Für jedes Element-Paar die Ähnlichkeit sim(s,t)

[0,1] berechnen Arbeitet in drei Phasen:

Normalisierung Tokenization (Photo_and_Cameras =

{Photo;and;Cameras}) Expansion (Qty = Quantity) Elimination (and)

Kategorisierung Vergleich

7

Cupid: Struktureller Matcher

Benutzt Ergebnisse des linguistischen Matchers und Datentyp-Kompatibilität als Ausgangspunkt

Schemata werden post-order durchlaufen (bottom-up-Strategie)

Starke Verbindung: Ähnlichkeit >= Schwellwert Heuristik: Für zwei Elemente s, t ist die relative

Anzahl von starken Verbindungen ihrer Blätter Maß für Ähnlichkeit

8

Cupid: Mappings

1:1 Wähle für Element s das t, für das sim(s,t)

maximal (und >= Schwellwert) 1:n

Wähle für Element s alle t, für die sim(s,t) >= Schwellwert

9

Cupid: Vor- und Nachteile

Vorteile: generisch kann auch 1:n-Kardinalitäten finden

Nachteil: für große Schemata noch ungeeignet

(Speichermangel)

10

Similarity Flooding

wurde 2001 von Melnik, Garcia-Molina, Rahm entwickelt

generischer Algorithmus, um Ähnlichkeit zwischen gerichteten markierten Graphen zu bestimmen

basiert auf einer Fixpunktiteration Fixpunkt muss nicht existieren Heuristik: Zwei Elemente sind ähnlich, wenn ihre

Nachbarn ähnlich sind

11

Similarity Flooding: Beispiel

a

a1 a2

Modell A

b

b1 b2

Modell B

L1

L1

L2

L2

L1

L2

12

Similarity Flooding: Beispiel

a

a1 a2

Modell A

b

b1 b2

Modell B

L1

L1

L2

L2

L1

L2

Pairwise Connectivity Graph

a,b

a1,b1 a2,b1

a1,b2

a2,b2

a1,b

L1

L1

L2

L2

12

Similarity Flooding: Beispiel

Induced Propagation Graph

a,b

a1,b1 a2,b1

a1,b2

a2,b2

a1,b

0.5 0,5

1,0

Pairwise Connectivity Graph

a,b

a1,b1 a2,b1

a1,b2

a2,b2

a1,b

L1

L1

L2

L2 1,0

1,0

1,0 1,0

13

Similarity Flooding: Beispiel

Induced Propagation Graph

1.0

1.0 1.0

1.0

1.0

1.0

0.5 0,5

1,0

1,0

1,0

1,0 1,0

14

Similarity Flooding: Beispiel

Induced Propagation Graph

1.0

1.0 1.0

1.0

1.0

1.0

0.5 0,5

1,0

1,0

1,0

1,0 1,0

14

Induced Propagation Graph

3.0

1.5 2.5

2.0

2.0

2.0

0.5 0,5

1,0

1,0

1,0

1,0 1,0

Similarity Flooding: Beispiel

Induced Propagation Graph

3.0

1.5 2.5

2.0

2.0

2.0

0.5 0,5

1,0

1,0

1,0

1,0 1,0

Induced Propagation Graph

1.0

0.5 0.8

0.6

0.6

0.6

0.5 0,5

1,0

1,0

1,0

1,0 1,0

14

Similarity Flooding: Beispiel

Nach 5 Iterationen:

a, b a2, b1 a1, b2 a1, b1 a1, b a2, b2

1.0 0.91 0.69 0.39 0.33 0.33

15

Similarity Flooding: Vor- und Nachteile

Vorteile: allgemeiner Graphenalgorithmus einfach zu implementieren

Nachteile: allgemeiner Graphenalgorithmus stark abhängig von Struktur

16

S-Match

wurde von Giunchiglia, Shvaiko, Yatskevich 2005 entwickelt

arbeitet ausschließlich auf XML-Schemata Idee: Semantik erfassen Semantik in aussagenlogische Formeln

abbilden suche das mächtigste Matching, das keine

Formel verletzt

17

S-Match (2) Bezeichner werden durch WordNet auf Konzepte

abgebildet: Photo K(Photo) (Atome) Markierungen werden in aussagenlogische Formel

übersetzt: „Photo and Cameras“ = K(Photo) v K(Camera) Formeln beschreiben Mengen von Instanzen Zusammenhänge von Mengen A, B:

A = B A <-> B A <= B A -> B A >= B B -> A A ┴ B (disjunkt) ~(A & B) A idk B

Ziel: Matrix von Relationen

18

S-Match: Vor- und Nachteile

Vorteile: keine Ähnlichkeiten, sondern Relationen schnell

Nachteile: Überlappungen werden nicht gefunden

19

LSD

LSD (Learning Source Descriptions) wurde 2001 von Doan, Domingos, Halevy entwickelt

Ziel: Abbildung von mehreren Quell-Schemata zu Ziel-Schema

Benutzt Machine-Learning-Techniken Arbeitet nur auf XML (und DTD) Setzt auf Lern-Algorithmen auf Element-Ebene und auf kombinierenden Lerner (Meta-Lerner)

20

LSD: Trainingsphase

21

Ziel-Schema

Quell-Schema Quell-Schema

Extrahierte Daten Extrahierte Daten

Trainingsdaten Trainingsdaten Trainingsdaten

Basislerner Basislerner Basislerner

Meta-Lerner

LSD: Matching-Phase

Nach der Trainingsphase: Automatisches Matchen

Verbesserung der Ergebnisse durch Constraints

Generierte Mappings werden validiert und als Fallbeispiele aufgenommen

22

LSD: Basislerner Name Matcher:

nutzt Bezeichner eines XML-Elements Bezeichner von „ Qty“ = „Electronics -- Photo and Cameras

– Qty“ Fallbeispiele sind (Quell-Tag, Ziel-Tag)-Paare berechnet mit WHIRL die Ähnlichkeiten und lernt

Schwellwert Content Matcher:

ähnlich dem Name Matcher, aber: arbeitet auf Instanzen Fallbeispiele sind (Quell-Inhalt, Ziel-Tag)-Paare

23

LSD: Basislerner (2)

Naiver Bayes-Klassifikator arbeitet auf Texten der Instanzen Dokument X = (Token1, Token2, …, TokenN) Klassifikationsproblem: Mit welcher Wahrscheinlichkeit

gehört X zu Klasse C?

XML-Klassifikator baut auf Naivem Bayes-Klassifikator auf nutzt zusätzlich Baumstruktur: unterscheidet Knoten-

Tokens und Kanten-Tokens

24

LSD: Vor- und Nachteile

Vorteile: lernt dazu kann z.T. mit unstrukturierten Texten umgehen

Nachteile: Mappings als Fallbeispiele müssen manuell

erstellt werden Constraints müssen manuell eingegeben werden

25

SEMINT

SEMINT (Semantic Integrator) wurde 2000 von Li, Clifton entwickelt

Wie LSD nicht rein instanzenbasiert Benutzt neuronale Netze, um das Match-

Problem als Klassifikationsproblem zu lösen Berechnet Ähnlichkeiten zwischen Attributen

in Datenbanken

26

SEMINT (2) Parst die Datenbankschemata, um Informationen

aus der Datenbank automatisch zu extrahieren Instanzen statistische Merkmale eines Attributes

(Durchschnittswerte, Minimum, Maximum) Attribut = (x1, x2, …, xN)

Attribut-Typ wird berücksichtigt Punkte werden in Cluster eingeteilt (Schema A) Punkte von Schema B werden in Cluster abgebildet

27

SEMINT: Vor- und Nachteile

Vorteile: vollautomatisch skaliert gut (dank Clusterbildung)

Nachteile: Mehraufwand durch Clusterbildung für Benutzer String-Daten machen Probleme

28

Evaluation

29

Cupid SF S-Match LSD SEMINT

Anzahl Tests

2 9 2 4*5 5

Precision 0.45 - 1.0 0.8 0.78

Recall 0.6 - 0.98 0.8 0.86

Overall -0.13 0.6 0.98 0.6 0.48

Fazit

Automatisches Schema-Matching ist schwierig; aufwändige Implementierungen

Schema-Matching ist subjektiv Praxis-Tauglichkeit? Schema-Matching ist KI-vollständig!

30

Recommended