1. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
TagOnto
Improving Search and Navigation by Combining
Ontologies and Social Tags
S. Bindelli1 , C. Criscione2 , C. A. Curino3 , M. L. Drago3 , D. Eynard3 ,G. Orsi3
1 Trussardi Company
2 Secure Network S.r.l.
3 Politecnico di Milano
ADI Workshop (OTM 2008)
Monterrey (Mexico)
November 9, 2008
2. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Outline
Introduction
Tagonto Overview
Matching and Disambiguation
Tagonto Implementation
Conclusion and Future Work
3. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Introduction
Aim: Improve web search and navigation
4. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Introduction
Aim: Improve web search and navigation
The “high road”: The Semantic Web
• Mediates the access to existing sources by means of explicit
representation of data semantics (i.e., RDF and OWL).
• High switching costs when moving from traditional
technologies.
• Implementers with considerable skills.
5. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Introduction
Aim: Improve web search and navigation
The “high road”: The Semantic Web
• Mediates the access to existing sources by means of explicit
representation of data semantics (i.e., RDF and OWL).
• High switching costs when moving from traditional
technologies.
• Implementers with considerable skills.
The “low road”: Folksonomies
• Low commitment technology.
• Reflect collective intelligence and emergent semantics.
• Tipically unstructured and uncontrolled.
6. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Tagonto Overview
Tagonto can be described as a folksonomy aggregator which offers:
7. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Tagonto Overview
Tagonto can be described as a folksonomy aggregator which offers:
Tagonto Functionalities
• A tag-based search engine.
• Ontology-based query refinement.
• Visual, ontology-based navigation of tags.
8. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Tagonto Overview
Tagonto can be described as a folksonomy aggregator which offers:
Tagonto Functionalities
• A tag-based search engine.
• Ontology-based query refinement.
• Visual, ontology-based navigation of tags.
Search process
1. Load a domain ontology O (metrics pre-computation).
2. Search (keyword-based).
3. Navigate the results.
4. (optional) add/remove/modify tags associated to Web
resources.
5. (optional) refine the query and repeat from 2.
9. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Matching tags and concepts
Definition: Folksonomy
A Folksonomy in TagOnto is represented as a set of pairs
F = {(t1 , r1 ), . . . , (tn , rm )}
where ti is a term and rj is a web resource.
10. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Matching tags and concepts
Definition: Folksonomy
A Folksonomy in TagOnto is represented as a set of pairs
F = {(t1 , r1 ), . . . , (tn , rm )}
where ti is a term and rj is a web resource.
Definition: Matching
• A matching between O and F is defined as a relation
M⊆F ×C
allowing multiple associations among tags and concepts.
• ∀m ∈ M we associate a similarity degree
s : F × C → [0, 1]
11. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Matching Process
Given a folksonomy F and an ontology O, Tagonto:
1. accesses the tags in F
• Web 2.0 APIs.
• RSS feeds parsing.
• Page scraping.
2. matches the tags in F with
ontology concepts and instances.
3. for each tag, computes a set of
related (co-occurrent) tags.
4. disambiguates multiple matchings
by updating their similarity
degrees.
12. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Matching Process
Given a folksonomy F and an ontology O, Tagonto:
1. accesses the tags in F
• Web 2.0 APIs.
• RSS feeds parsing.
• Page scraping.
2. matches the tags in F with
ontology concepts and instances.
3. for each tag, computes a set of
related (co-occurrent) tags.
4. disambiguates multiple matchings
by updating their similarity
degrees.
13. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Matching Computation
Tagonto relies on an ontology mapper (X-SOM) to compute the
matchings
Language-based Semantic
Levenshtein Distance Google Noise Correction
Jaro Distance Wordnet Similarity
Jaccard Similarity Ontology Structure
14. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Matching Computation
Tagonto relies on an ontology mapper (X-SOM) to compute the
matchings
Language-based Semantic
Levenshtein Distance Google Noise Correction
Jaro Distance Wordnet Similarity
Jaccard Similarity Ontology Structure
where:
• Google Noise: uses the Google “did you mean?” functionality.
• WordNet Similarity: computes the Leacock-Chodorow
distance metric in WordNet.
15. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Disambiguation
The disambiguation process is carried out in two steps:
16. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Disambiguation
The disambiguation process is carried out in two steps:
Co-occurrent tags retrieval
• Using ontology relationships.
• Neighbors in the tag-clouds.
• Google Tag-indexes.
17. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Disambiguation
The disambiguation process is carried out in two steps:
Co-occurrent tags retrieval
• Using ontology relationships.
• Neighbors in the tag-clouds.
• Google Tag-indexes.
Disambiguation
1. Simple filters: e.g., top-k, treshold, etc.
2. Semantic filters (i.e., ontology-based disambiguation)
18. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Ontology-based disambiguation
Definition: Root concepts
Any concept in O associated to tags in F by means of M
19. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Ontology-based disambiguation
Definition: Root concepts
Any concept in O associated to tags in F by means of M
For each multiple matching m ∈ M, Tagonto:
• matches co-occurrent tags with the concepts in the ontology.
• constructs a vector of connectivity degrees v, such that v[i] is
equal to the number of concepts associated to co-occurrent
tags and connected to the root concept i in the ontology.
v[i]
• computes a correction factor i = max(v) .
• if i ≥ avg(v) then increase the matching degree of the
matching associated to i by a factor α · i ; decrease of the
same factor otherwise.
• selects the matching with maximum similarity degree.
20. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Architecture I
TagontoLIB:
• Matching algorithms
• Disambiguation
TagontoNET:
• Core search engine functionalities.
• Ontology loading.
• Plugin-based communication interfaces with folksonomies.
21. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Architecture II
TagontoWEB:
• Results Navigation
• by co-occurent tags.
• by navigating ontology concepts.
• Tags maintenance.
22. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
User Interface
24. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Performance II
• Matching generation and resources retrieval
100
80
response time(s)
60
40
20
0
0 50 100 150 200 250 300 350
trial
25. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Conclusion and Future Work
Contributions
• A search engine which combines ontologies and tags.
• A library to compute matchings between tags and ontology
concepts.
• A service-oriented architecture for folksonomy querying and
aggregation.
26. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Conclusion and Future Work
Contributions
• A search engine which combines ontologies and tags.
• A library to compute matchings between tags and ontology
concepts.
• A service-oriented architecture for folksonomy querying and
aggregation.
Future Work
• Dynamic ontology loading.
• Automatic tagging of Web resources.
27. Introduction Tagonto Overview Matching and Disambiguation Tagonto Implementation Conclusion and Future Work
Thank you
More information at:
http://kid.dei.polimi.it/mediawiki/index.php/TagOnto
Questions?