BioHealth Informatics Group 1 Techniques for segmenting large description logic ontologies Julian Seidenberg, Alan Rector Project: CO-ODE / HyOntUse
2 Ontology = Labyrinth
3 Segment = Corridor
4 Overview Need for segmentation 3 styles of segmentation Segmentation by traversal Evaluation
5 Ontology?! Definition: An ontology describes concepts in a domain of interest and the relationships that hold between them.
6 Impossible to understand Stack overflow! Out of memory! Where am I? What do I do?
7 Segment! Browse segments Query segments Annotate segments Compare segments Evaluate segments Discuss segments Publish segments Transform segments Provenance using segments Plug segments into application
8 Query-based methods ? ?
9 Network partitioning
10 Extraction by traversal ?
11 Intra-taxonomy relationships “Properties link between Concepts in a hierarchy” Heart is-a InternalOrgan isPartOf CardiovascularSystem … isPartOf hasPart
12 Basic segmentation algorithm
13 Filtering segmentation “Initial state” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
14 Filtering segmentation “Added reciprocal links” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
15 Side note “How reciprocals are different from inverses” Heart isPartOf Torso Torso hasPart Heart Heart isPartOf Torso Heart hasPart Torso (!)
16 Filtering segmentation “Filtered out ‘isPartOf’ relations” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
17 Filtering segmentation “Following links (1)” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
18 Filtering segmentation “Following links (2)” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
19 Filtering segmentation “Following links (3)” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
20 Filtering segmentation “Following links (4)” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
21 Filtering segmentation “Complete” 1.Add missing reciprocal links 2.Filter out “isPartOf” relations 3.Follow links to select classes to extract
22 Boundary extract
23 Test case Big (23,000 concepts) Complex (30,000 relationships) Representative (basis of many future systems)
24 Basic segment size
25 Property filtered size
26 Property filtered classification
27 Boundary depth vs. size
28 Summary 3 different styles of segmentation Query, network partitioning & traversal Basic extract by traversal Reduces size Non-destructive Multi-purpose Property filtering Focuses subject-area Increases tractability Facilitates ontology analysis Boundary limiting Accurately reduces size
29 Questions?