Download presentation
Presentation is loading. Please wait.
Published bySteven Chandler Modified over 9 years ago
1
Ontology Mapping in Pervasive Computing Environment C.Y. Kong, C.L. Wang, F.C.M. Lau The University of Hong Kong
2
Outline Introduction Literature review Proposed design Evaluation Conclusion and Future works
3
Pervasive Computing M. Satyanarayanan - An environment saturated with computing and communication capability, yet so gracefully integrated with users that it becomes a “technology that disappears”. Various information flows: User intent Resource discovery and query Context information Different types of computers communicate Smart devices Surrogates Sensors Peer-to-peer communication Infeasible to expect all computers to have the same semantics on different information. i.e. the vocabulary of the messages, which includes the name and valid values of message elements
4
XML A language commonly used for data exchange XML sets rules for syntax for structured documents but it does not provide meanings for terms Same term may be used with different meaning in different context Different term may be used for items that have the same meaning Hence, human needs to be involved to agree on tag names or mappings between roughly equivalent sets of tags in related standard => Device interoperability ↓ A new language has been developed
5
Ontology Provide a formal, explicit specification of a shared conceptualization of a domain that can be communicated between people and heterogeneous and widely spread application systems A formal explicit description of concepts in a domain of discourse (classes), properties of each concept describing various features and attributes of the concept (slot) and restrictions on these properties Provide meanings for terms when information exchange Bridge knowledge gaps between different domains Enable knowledge sharing in open and dynamic distributed systems Allow devices and agents not expressly designed to work together to interoperate (i.e. better device interoperability)
6
Ontology (cont) Example: Country ontology (Source ontology) Example: Instance Country name City located_in capital Geographical Location name Land Boundary neighbor_country part_of has_boundary Country Japan City Tokyo capital Geographical Location Asia Land Boundary Korea part_of has_boundary Class/Concept Properties Relationship
7
Ontology Related Researches Context Broker Architecture (CoBrA) [University of Maryland, 2003] Defines a set of OWL ontologies called SOUPA (Standard Ontology for Ubiquitous and Pervasive Applications) Ontologies for agent, personal device, time, space, event, document and policy Enable communication between devices using defined ontologies GAIA [University of Illinois, 2002] Defines a set of ontologies for active space such as entity and context information Enable communication between devices using defined ontologies Communications may involve terms from different ontologies Hence, Ontology Mapping is introduced
8
Scenario I want to find a resource/function Proxy A Request --- --- --- Concepts specified by Ontology O 1 Resource Description --- --- --- Concepts specified by Ontology O 2 Resource Description --- --- --- Concepts specified by Ontology O 3 Proxy B Smart Space B Smart Space A
9
Scenario I want to find a resource/function Request --- --- --- Concepts specified by Ontology O 1 Resource Description --- --- --- Concepts specified by Ontology O 2 Resource Description --- --- --- Concepts specified by Ontology O 3 Proxy B Smart Space B
10
Ontology Mapping Given two ontologies O 1 and O 2, mapping one ontology onto another means that for each entity (concept, relation or instance) in ontology O 1, we try to find a corresponding entity, which has the same intended meaning, in ontology O 2 Ontology O 1 Ontology O 2
11
Literature Review Source-based Mappings are done by comparing the similarity of the concepts based on the properties of the concepts and the structure of the ontology defined in the source ontologies Example: PROMPT [Stanford, 2000] Work well for ontologies having a specialized terminology like medical ontology Matching accuracy decreases when mapping ontologies with more general terminologies Instance-based Mappings are done by comparing the similarity of the concepts based on the source ontologies and their instances Example: FCA-Merge [University of Karlsruhe,2001], GLUE [University of Illinois and University of Washington, 2002] Structure and properties of the concepts are not taken into consideration Accuracy varies based on the instance sets
12
New Challenges Online mapping with partial ontology information Efficiency Space limitation of devices Knowledge propagation
13
Proposed Design Partial Ontology Mapping A device submits a resource or function request (an instance I 1 of ontology O 1 ) A resource or function is present and described by O 2 Map all the concepts used in I 1 with the concepts in O 2 Number of concepts to be mapped reduces More efficient Ontology O 1 Ontology O 2 Instance
14
Proposed Design (cont) Hybrid of source-based and instance-based ontology mapping Properties of the concept and its relationships with other concepts are considered Instances are considered to increase accuracy Store evaluation results of instances to avoid handling large number of instances at one time but, still provide a reasonable amount of instances for mapping
15
Methodology Notation O 1 : source ontology of the request instance O 2 : source ontology of the resource I r : request instance For each concept (C i ) appear in I r, Find a set of candidate concepts in O 2 Find a set of candidate concepts in O 2 For each candidate concepts (C n ) Compute the similarity of C i and C n Compute the similarity of C i and C n The candidate concept with maximum similarity degree is the mapped concept of C i History Records
16
Extraction of candidate concepts Compare the name similarity of C i and every concept C’ in O 2 For the k-highest name similarity concepts, denoted by C 1..k
17
Similarity of concepts C i and C n Similarity is defined as (1) (2) where Ux: instance set of ontology Ox Ux Ci,Cn : instance set of ontology Ox that contains concepts Ci and Cn N(instance set): Number of instances in the instance set How to find N(U 1 Ci,Cn ), N(U 1 Ci,~Cn ) and N(U 1 ~Ci,Cn )?N(U 1 Ci,Cn ), N(U 1 Ci,~Cn ) and N(U 1 ~Ci,Cn ) (1 ) and (2) from “Learning to map between ontologies on Semantic Web”, 2002
18
Find N(U 1 Ci,Cn ) means finding the number of instances in U 1 Ci that also contain C n Partition U 1 into two sets. One set contains concept C i (denoted U 1 Ci ) while the other set does not contain concept Ci (denoted U 1 ~Ci ) Partition U 2 into two sets. U 2 Cn and U 2 ~Cn N(U 1 Ci,Cn ) = N(U 1 Ci )*StructSim(C i,C n )StructSim(C i,C n ) where StructSim(Ci,Cn): structure similarity of Ci and Cn N(U 1 Ci,~Cn ) = N(U 1 Ci ) – N(U 1 Ci,Cn ) N(U 1 ~Ci,Cn ) = N(U 1 Cn ) – N(U 1 Ci,Cn )N(U 1 Cn ) Similarly, N(U 2 Ci,Cn ), N(U 2 Ci,~Cn ) and N(U 2 ~Ci,Cn ) N(U 1 Ci,Cn ), N(U 1 Ci,~Cn ), N(U 1 ~Ci,Cn )
19
Find N(U 1 Ci,Cn ) means finding the number of instances in U 1 Ci that also contain C n Partition U 1 into two sets. One set contains concept C i (denoted U 1 Ci ) while the other set does not contain concept Ci (denoted U 1 ~Ci ) Partition U 2 into two sets. U 2 Cn and U 2 ~Cn N(U 1 Ci,Cn ) = N(U 1 Ci )*StructSim(C i,C n )StructSim(C i,C n ) where StructSim(Ci,Cn): structure similarity of Ci and Cn N(U 1 Ci,~Cn ) = N(U 1 Ci ) – N(U 1 Ci,Cn ) N(U 1 ~Ci,Cn ) = N(U 1 Cn ) – N(U 1 Ci,Cn )N(U 1 Cn ) Similarly, N(U 2 Ci,Cn ), N(U 2 Ci,~Cn ) and N(U 2 ~Ci,Cn ) N(U 1 Ci,Cn ), N(U 1 Ci,~Cn ), N(U 1 ~Ci,Cn )
20
Find N(U 1 Ci,Cn ) means finding the number of instances in U 1 Ci that also contain C n Partition U 1 into two sets. One set contains concept C i (denoted U 1 Ci ) while the other set does not contain concept Ci (denoted U 1 ~Ci ) Partition U 2 into two sets. U 2 Cn and U 2 ~Cn N(U 1 Ci,Cn ) = N(U 1 Ci )*StructSim(C i,C n )StructSim(C i,C n ) where StructSim(Ci,Cn): structure similarity of Ci and Cn N(U 1 Ci,~Cn ) = N(U 1 Ci ) – N(U 1 Ci,Cn ) N(U 1 ~Ci,Cn ) = N(U 1 Cn ) – N(U 1 Ci,Cn )N(U 1 Cn ) Similarly, N(U 2 Ci,Cn ), N(U 2 Ci,~Cn ) and N(U 2 ~Ci,Cn ) N(U 1 Ci,Cn ), N(U 1 Ci,~Cn ), N(U 1 ~Ci,Cn )
21
Structure Similarity Compute the similarity between each pair of property of C i (denoted by P Ci ) and property of C n (dentoed by P Cn ) Instance Similarity is the similarity of the content of the instances Property Similarity for x = 1 to number of properties of C n, StructSim(C i,C n )
22
Structure Similarity Compute the similarity between each pair of property of C i (denoted by P Ci ) and property of C n (dentoed by P Cn ) Instance Similarity is the similarity of the content of the instances Property Similarity for x = 1 to number of properties of C n, StructSim(C i,C n )
23
Structure Similarity Compute the similarity between each pair of property of C i (denoted by P Ci ) and property of C n (dentoed by P Cn ) Instance Similarity is the similarity of the content of the instances Property Similarity for x = 1 to number of properties of C n, StructSim(C i,C n )
24
Structure Similarity Compute the similarity between each pair of property of C i (denoted by P Ci ) and property of C n (dentoed by P Cn ) Instance Similarity is the similarity of the content of the instances Property Similarity for x = 1 to number of properties of C n, StructSim(C i,C n )
25
Structure Similarity Compute the similarity between each pair of property of C i (denoted by P Ci ) and property of C n (dentoed by P Cn ) Instance Similarity is the similarity of the content of the instances Property Similarity for x = 1 to number of properties of C n, StructSim(C i,C n )
26
Structure Similarity, StructSim(C i,C n ) Compute the similarity between each pair of relationship of Ci (denoted by R Ci ) and relationship of Cn (dentoed by R Cn ) Relationship Similarity for x = 1 to number of relationships of Cn Structure Similarity
27
, StructSim(C i,C n ) Compute the similarity between each pair of relationship of Ci (denoted by R Ci ) and relationship of Cn (dentoed by R Cn ) Relationship Similarity for x = 1 to number of relationships of Cn Structure Similarity
28
, StructSim(C i,C n ) Compute the similarity between each pair of relationship of Ci (denoted by R Ci ) and relationship of Cn (dentoed by R Cn ) Relationship Similarity for x = 1 to number of relationships of Cn Structure Similarity
29
, StructSim(C i,C n ) Compute the similarity between each pair of relationship of Ci (denoted by R Ci ) and relationship of Cn (dentoed by R Cn ) Relationship Similarity for x = 1 to number of relationships of Cn Structure Similarity
30
, StructSim(C i,C n ) Compute the similarity between each pair of relationship of Ci (denoted by R Ci ) and relationship of Cn (dentoed by R Cn ) Relationship Similarity for x = 1 to number of relationships of Cn Structure Similarity
31
No. of instances Estimate the similarity between ontology O 1 and O 2 where N(O 1 ) and N(O 2 ) are the number of concepts in O 1 and O 2 N(U 1 Cn ), N(U 1 Cn )
32
History Records Caching mapping results Increase efficiency Caching instance mapping results Maintain a reasonable amount of instances for mapping Increase accuracy and reduce space usage Popularity counters Each property or relationship of a concept has a popularity counter Act as a weight for the importance of the concept Increase accuracy and reduce space usage Knowledge accumulation Knowledge propagation
33
Evaluation Programming language: Java 1.4.2 Ontology language: OWL (Ontology Web Language) Ontology Parser: Jena 2.1 Input source ontologies: Semantic Web Research Community (SWRC) ontology: 24 concepts Manually created a similar concept as SWRC ontology: 20 concepts Request instance: 6 – 8 concepts Result Proposed design Source based Accuracy80%>90% Efficiency6s10s Proposed design Instance based Accuracy~70% Efficiency6s20s
34
Conclusion New challenges Online mapping Efficiency Space limitation Knowledge propagation Partial ontology mapping Future work Experiments Context Resource instances selection
35
Q & A
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.