Semantische Suche
Ulf Leser
Source: http://www.recruitingblogs.com/forum/topics/tutorial-tuesday-what-is Ulf Leser: Semantische Suchmaschinen, 11/2013
3
• Conventional Search • Semantic • Approaches to Semantic Search
Ulf Leser: Semantische Suchmaschinen, 11/2013
4
Ulf Leser: Semantische Suchmaschinen, 11/2013
5
Popularität (Schätzungen)
• Weltweit: ~100.000.000.000 Suchanfragen pro Monat – Pro Tag: – Pro Sekunde:
3.000.000.000 37.000
• Deutschland: Etwa 5.000.000.000 pro Monat – Pro Tag: – Pro Sekunde:
150.000.000 2.000
Ulf Leser: Semantische Suchmaschinen, 11/2013
6
Der Markt
Ulf Leser: Semantische Suchmaschinen, 11/2013
7
Der Markt
Ulf Leser: Semantische Suchmaschinen, 11/2013
8
Was wird gefunden?
Ulf Leser: Semantische Suchmaschinen, 11/2013
13
Was erwartet man denn?
• • • • • •
Der Der Der Der Der …
Klimainteressierte: Das Wetterphänomen Peru-Reisende: Das Wetterphänomen Bewohner von Weimar: Das Restaurant Kino-Fan: Den Film Outdoor-Fan: Die Marke
Ulf Leser: Semantische Suchmaschinen, 11/2013
14
• Sehr viele Wörter haben viele Bedeutungen: Homonyme – Meist will man nur nach einer Bedeutung suchen
• Sehr viele Dinge haben viele Wörter: Synonyme – Meist will man mit allen Wörter suchen
• Sehr viele Dinge haben Generalisierungen und Spezialisierungen: Hyperonyme und Hyponyme – Oft sind das auch nützliche Suchbegriffe
Ulf Leser: Semantische Suchmaschinen, 11/2013
15
Keyword-Suche • Einfachste Methode: Eine Seite ist relevant, wenn sie alle Suchwörter enthält • Nachteile „El nino pazifik klima“ – „El Nino ist ein Phänomen, dass im pazifischen Ozean auftritt und das Wetter weltweit beeinflusst“ – Ihre Suche ergab 100.000 Treffer – wie soll man die ordnen?
• Technik der 80ziger Jahre – Funktioniert nicht, wenn Laien suchen (Web) – Funktioniert nicht, wenn es sehr viele Treffer gibt (Web)
Ulf Leser: Semantische Suchmaschinen, 11/2013
16
Besser: Vektorraummodell
• Man versteht jede Webseite als einen Vektor in einem hochdimensionalen Vektorraum • Jedes Wort ist eine Dimension • Es gib so viel Dimensionen wie Wörter • Enthält eine Seite S ein Wort X, setzen wir den Wert der Dimension X für S auf 1
Ulf Leser: Semantische Suchmaschinen, 11/2013
17
Beispiel (nach Vorverarbeitung) Text 1 Wir verkaufen Häuser in Italien
verkauf
haus
italien
1
1
1
2 Häuser mit Gärten zu vermieten
1
3 Häuser: In Italien, um Italien, um Italien herum
1
4 Die italienschen Gärtner sind im Garten 5 Der Garten in unserem italienschen Haus blüht
Ulf Leser: Semantische Suchmaschinen, 11/2013
1
gart
1
miet
blüh
woll
1
1 1
1
1
1
1
18
Anwendung • Weil Seiten, die über das gleiche sprechen, meist eine ganze Reihe Wörter gemeinsam haben, sind ihre Vektoren ähnlich Politiker
Steinbrück Merkel
Helmut Kohl
Apfel Birne Obst & Gemüse Ulf Leser: Semantische Suchmaschinen, 11/2013
19
Beispiel Text 1 Wir verkaufen Häuser in Italien
verkauf
haus
italien
1
1
1
2 Häuser mit Gärten zu vermieten
1
3 Häuser: In Italien, um Italien, um Italien herum
1
4 Die italienschen Gärtner sind im Garten
gart
1
blüh
woll
1
1 1
1
5 Der Garten in unserem italienschen Haus blüht
1
1
1
Q Wir wollen ein Haus mit Garten in Italien mieten
1
1
1
Ulf Leser: Semantische Suchmaschinen, 11/2013
miet
1 1
1
20
Vergleich • Wie berechnet man die Ähnlichkeit zweiter Vektoren mit 100.000 Dimensionen? • Eine Möglichkeit: Ihr Winkel Politiker
Steinbrück Merkel
Helmut Kohl
Apfel Birne Fallobst Ulf Leser: Semantische Suchmaschinen, 11/2013
21
Beispiel
1
( v [i ] * v [i ]) ∑ sim(d , q ) = ∑ v [i] q
d
2
d
1
1
2
1
3
1
4
1 1
1
1 1
1
5
1
1
1
Q
1
1
1
1 1
1
Q: Wir wollen ein Haus mit Garten in Italien mieten 1
d2: Häuser mit Gärten zu vermieten
2
d5: Der Garten in unserem italienschen Haus blüht
3 5
d4: Die italienschen Gärtner sind im Garten d3: Häuser: In Italien, um Italien, um Italien herum d1: Wir verkaufen Häuser in Italien
Ulf Leser: Semantische Suchmaschinen, 11/2013
22
Noch ein Trick • Was ist gewonnen („El nino pazifik klima“) – „El Nino ist ein Phenomen, dass im pazifischen Ozean auftritt und das Wetter weltweit beeinflusst“ Fehlende Wörter auf einer Seite sind nicht mehr tragisch Seiten, die mehr Suchwörter enthalten, erhalten bessere Ränge – Ihre Suche ergab 100.000 Treffer – wie soll man die ordnen? Nur teilweise gelöst – Seiten mit allen Wörtern haben alle denselben Score Trick: PageRank
Ulf Leser: Semantische Suchmaschinen, 11/2013
23
Prestige • Denken wir uns ein soziales Netzwerk • Personen, die von vielen Personen gekannt werden, haben ein hohes Prestige • Wird man von einer Person gekannt, die ein hohes Prestige hat, wächst das Prestige mehr als bei einer Person mit geringem Prestige
Ede
Ulf Leser: Semantische Suchmaschinen, 11/2013
Jagger
24
Prestige • Denken wir uns ein soziales Netzwerk • Personen, die von vielen Personen gekannt werden, haben ein hohes Prestige • Wird man von einer Person gekannt, die ein hohes Prestige hat, wächst das Prestige mehr als bei einer Person mit geringem Prestige
Ede
Ulf Leser: Semantische Suchmaschinen, 11/2013
Jagger
25
Prestige im Web • Seiten, auf die viele Seiten verlinken, erhalten ein hohes Prestige • Das Prestige ist umso höher, je höher das Prestige der verlinkenden Seiten • Gar nicht so einfach zu berechnen … Bianca
Ede
Ulf Leser: Semantische Suchmaschinen, 11/2013
Jagger
26
• Conventional Search • Semantic • Approaches to Semantic Search
Ulf Leser: Semantische Suchmaschinen, 11/2013
27
The Semantic of „Semantic“
• Formal Precise definition of the meaning of an expression using some form of calculus or logic • Informal The meaning of an expression as perceived by a human being
Ulf Leser: Semantische Suchmaschinen, 11/2013
28
Formal Semantics • Specialty of computer science (and logics / philosophy) • Only available for artificial languages • Examples – Semantic of a programming language by defining its translation to a more basic “language” • Java – P-Code – CPU instructions – hardware
– Semantic of a programming language by defining its translation to a mathematical calculus • Lisp - λ-Calculus; BPMN – ASM
– Semantic of predicate logic in set theory – Semantic of SQL in tuple calculus (or domain calculus or relational algebra or DATALOG or …)
• Not our topic today – Structured Search Ulf Leser: Semantische Suchmaschinen, 11/2013
29
Informal Semantics • The meaning of expressions in a natural language – Words, sentences, dialogues, …
• Meaning: Rooting in concepts in the mind of the reader Name extension
Real world objects
intension
representation
Concept
• Subjective, context-dependent, changing, … • Semantic search: Understand what the user searchers Ulf Leser: Semantische Suchmaschinen, 11/2013
30
Conventional Search • Boolean keyword search is purely syntactic – A word is contained or not – Semantic defined in set theory
• VSM is a poor-man’s version of semantic search – Semantic of words is ignored (syntactical equality) – Semantic of text / query is implicitly considered through frequency of co-occurrences in a corpus / topic / document
• Several attempts to give more “semantics” to VSM – – – – –
Stemming / lemmatization Stop word removal, case insensitivity Phrase search Latent semantic indexing …
Ulf Leser: Semantische Suchmaschinen, 11/2013
31
• Conventional Search • Semantic • Approaches to Semantic Search – – – – –
Entity search Personalization Query expansion Question Answering Structured semantic search
Ulf Leser: Semantische Suchmaschinen, 11/2013
32
Source: http://hlwiki.slais.ubc.ca/index.php/Semantic_search Ulf Leser: Semantische Suchmaschinen, 11/2013
33
1. Entity Search • Sehr oft sucht man Informationen über eine Entität – Einen Ort, eine Person, einen Film, ein Gericht, ein Produkt, ein Restaurant …
• Entitäten-Suche versucht – – – –
Entitäten auf Webseiten zu erkennen Informationen zu den Entitäten automatisch zu extrahieren Anfragen nach Entitäten als solche zu erkennen Und mit strukturierten Informationen statt Webseiten zu antworten
• Welche Entitäten? WikiPedia! Name extension
Real world
intension representation
Concept
Ulf Leser: Semantische Suchmaschinen, 11/2013
Focus on real-world objects (because these are very important); remove noise
34
Von Entität zu Entität
Ulf Leser: Semantische Suchmaschinen, 11/2013
35
In der Biomedizin
• Unsere Forschung: Entitätssuche in biomedizinischen Texten • Statt Personen und Restaurants suchen wir Gene, Krankheiten, Mutationen, Medikamente, … • Statt Webseiten durchsuchen wir wissenschaftliche (englische) Artikel
Ulf Leser: Semantische Suchmaschinen, 11/2013
36
GeneView
Ulf Leser: Semantische Suchmaschinen, 11/2013
37
Detecting Gene Names The human T cell leukemia lymphotropic virus type 1 Tax protein represses MyoD-dependent transcription by inhibiting MyoD-binding to the KIX domain of p300.
Ulf Leser: Semantische Suchmaschinen, 11/2013
38
Detecting Gene Names The human T cell leukemia lymphotropic virus type 1 Tax protein represses MyoD-dependent transcription by inhibiting MyoD-binding to the KIX domain of p300. • Typical problems – – – – –
Multi-token entities with ill-defined boundaries Abbreviations Synonyms, homonyms, polysemy Irregular spelling, naming variations …
Ulf Leser: Semantische Suchmaschinen, 11/2013
39
TM Pipeline
Abstracts Full texts
Document Retrieval Text Preprocessing Linguistic Annotation
Classification POS Tagging Parsing Disambiguation
Named Entity Recognition Relationship Extraction
Normalization Trigger words Event Extraction
Ulf Leser: Semantische Suchmaschinen, 11/2013
40
2. Personalized Search
Ulf Leser: Semantische Suchmaschinen, 11/2013
Ulf Leser
42
Personalized Search • Contextualize search – – – – – – –
Location of the user (mobile) Previous searches and preferences Current browser history Information from tracker cookies Preferences from friends in social networks Preferences from people with similar history / preferences / friends … Name extension
Real world
intension representation
Concept
Ulf Leser: Semantische Suchmaschinen, 11/2013
Better understanding of users concepts and current intensions
43
3. Query Expansion • Replace keywords with their synonyms, hyperonyms, hypernyms, etc. – Used routinely in some search engines, e.g. PubMed – Do not confuse with query auto-completion
• Requires large and high-quality knowledge base – Semantic network, thesaurus, ontology – Famous examples: WordNet – Information partly contained in old-school dictionaries
• Probably oldest idea towards more semantics in IR, reinvented again and again Ulf Leser: Semantische Suchmaschinen, 11/2013
44
Caveat • Overall: No clear, robust, proven improvements • • • • •
No help for homonyms Search intension gets blurred – many “synonyms” are none Usually better recall, but drop in precision Search results get very large Best usage for ranking not clear
Name extension
Real world
intension representation
Concept
Ulf Leser: Semantische Suchmaschinen, 11/2013
Search with many names (of same or related concepts)
45
4. Question Answering • Sometimes users have specific questions [TRAC] – What was the monetary value of the Nobel Peace Prize in 1989? – What does the Peugeot company manufacture? – What is the name of the rare neurological disease with symptoms such as: involuntary movements (tics), swearing, and incoherent vocalizations (grunts, shouts, etc.)?
• QA: Let the machine give the concrete answer Understand the question Synthesize correct answer Name extension
Real world
intension representation
Concept
Ulf Leser: Semantische Suchmaschinen, 11/2013
46
Source: http://www.theguardian.com/technology/shortcuts/2013/jan/11/ibmwatson-supercomputer-cant-talk-slang Ulf Leser: Semantische Suchmaschinen, 11/2013
47
State-of-the-Art • Watson proofed: Can work astonishingly well • But not yet commercial apps • Example: Wolfram Alpha • Systems are usually domain-specific and only work for certain questions – Watson was highly tuned to the rules of the game
• Requires a very large background corpus – Answers are searched using IR + IE
Ulf Leser: Semantische Suchmaschinen, 11/2013
48
5. Structured Semantic Search • Semantic Web • Idea: Describe knowledge using a „semantic“ data model – RDF is a graph data model with very little semantic – OWL: Expressive description logic for specifying knowledge and processing rules
• Queries are formulated with a structured query language – E.g. SPARQL – Essentially subgraph isomorphy
• Much research in keyword search on structured data – Especially: What should be reported back if a node/value matches?
Ulf Leser: Semantische Suchmaschinen, 11/2013
49