The Justificatory Structure of the NCBO BioPortal Ontologies

Transcription

The Justificatory Structure of the NCBO BioPortal Ontologies
The Justificatory Structure of the
NCBO BioPortal Ontologies
Samantha Bail, Bijan Parsia, Uli Sattler
The University of Manchester, UK
26/10/2011, ISWC 2011
Monday, November 14, 2011
Background: OWL Justifications
Definition
A justification for an entailment η is a minimal
subset of the ontology which is sufficient for
• Justifications pinpoint the causes for an
entailment
‣ We deal with a potentially smaller set of
axioms
ontology
(set of axioms)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
entails
entailment
(axiom)
The Justificatory Structure of the NCBO BioPortal Ontologies
2
Background: OWL Justifications
Definition
A justification for an entailment η is a minimal
subset of the ontology which is sufficient for
• Justifications pinpoint the causes for an
entailment
‣ We deal with a potentially smaller set of
axioms
justification
(set of axioms)
entails
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
entailment
(axiom)
The Justificatory Structure of the NCBO BioPortal Ontologies
3
Background: OWL Justifications
Definition
A justification for an entailment η is a minimal
subset of the ontology which is sufficient for
• Best understood explanation type
‣ for ontology debugging (understanding &
fixing errors)
‣ for ontology comprehension
justification
(set of axioms)
entails
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
entailment
(axiom)
The Justificatory Structure of the NCBO BioPortal Ontologies
4
Background: OWL Justifications
Definition
A justification for an entailment η is a minimal
subset of the ontology which is sufficient for
• A single entailment can have more than 1
justification
‣ Potentially exponentially many justifications
‣ Up to several thousand found in real-life
ontologies
entailment
(axiom)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
5
Multiple Justifications Complicate
• 1 justification for 1 entailment: OK (well,
depends!)
• Multiple justifications for 1 entailment:
‣ We can consider them one by one...
‣ ...but this might lead to non-optimal repair!
• Multiple justifications for multiple entailments
‣ Where to start?
• Dozens or hundreds: Give up!
‣ Cognitive overload for users
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
6
Multiple Justifications Complicate
• Thus far only little effort to tackle this problem
• Approaches based on relations between
justifications:
‣ root & derived justifications [1,2]
‣ axiom power (Swoop tool [3])
[1]
A. Kalyanpur, B. Parsia, E. Sirin, and J. Hendler. Debugging unsatisfiable classes in OWL ontologies. J.
Web Semantics, 2005.
[2]
T. Meyer, K. Moodley, and I. Varzinczak. First steps in the computation of root justifications. In Proc.
of ARCOE-10, 2010.
[3]
A. Kalyanpur, B. Parsia, E. Sirin, B. C. Grau, and J. A. Hendler. Swoop: A web ontology editing browser.
J. Web Semantics, 2006.
S. Bail, B. Parsia, U.
7
The Justificatory Structure of the NCBO BioPortal Ontologies
Sattler
Monday, November 14, 2011
Multiple Justifications Complicate
• Thus far only little effort to tackle this problem
• Approaches based on relations between
justifications:
‣ root & derived justifications [1,2]
‣ axiom power (Swoop tool [3])
Justificatory
Structure
The set of structural relations between
justifications for single and multiple
[1]
A. Kalyanpur, B. Parsia, E. Sirin, and J. Hendler. Debugging unsatisfiable classes in OWL ontologies. J.
Web Semantics, 2005.
[2]
T. Meyer, K. Moodley, and I. Varzinczak. First steps in the computation of root justifications. In Proc.
of ARCOE-10, 2010.
[3]
A. Kalyanpur, B. Parsia, E. Sirin, B. C. Grau, and J. A. Hendler. Swoop: A web ontology editing browser.
J. Web Semantics, 2006.
S. Bail, B. Parsia, U.
7
The Justificatory Structure of the NCBO BioPortal Ontologies
Sattler
Monday, November 14, 2011
Justificatory Structure: Motivation
1. How prevalent are multiple justifications?
2. Can we make use of structural relationships
for...
a) improved debugging support?
b) understanding the ontology?
3. Can we derive useful metrics from the
justificatory structure?
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
8
Justificatory Structure: Representation
• JGraph framework
‣
‣
Justifications and their relations represented as graph
‣
Edges = {axiom occurs in justification, justification for
entailment}
ax9
Nodes = {entailments, axioms in justifications,
justifications}
ax10
ax8
just2
ax6
just1
ax2
just2
just3
ax7
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
9
Justificatory Structure: Structural
• Justifications per entailment
• Size of justifications (number of axioms)
• Self-justifications (J = η)
• Trivial entailments (O \ η ⊭η)
• Graph components
‣ number
‣ size
ax9
ax10
ax8
ax7
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
just2
ax6
just1
ax2
just2
just3
The Justificatory Structure of the NCBO BioPortal Ontologies
10
Justificatory Structure: Structural
• Axiom power (number of justifications an axiom
occurs in)
• % of ontology axioms in justifications
• Overlapping justifications
‣ 1 axiom (➞ axiom power)
ax9
‣ multiple axioms
‣ subsets (= root&derived)ax10
ax8
ax7
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
just2
ax6
just1
ax2
just2
just3
The Justificatory Structure of the NCBO BioPortal Ontologies
11
BioPortal Survey: Workflow
Input:
218 BioPortal
OWL
ontologies
Compute entailments
Prune ontologies
with unsatisfiable classes,
imports, only trivial
Compute
justifications
Generate JGraphs for
remaining 35 ont.
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
Compute
statistics
The Justificatory Structure of the NCBO BioPortal Ontologies
12
BioPortal Survey: Workflow
Input:
218 BioPortal
OWL
ontologies
Compute entailments
Prune ontologies
with unsatisfiable classes,
imports, only trivial
“Trivial”:
O \ η ⊭η for
all η
Compute
justifications
Generate JGraphs for
remaining 35 ont.
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
Compute
statistics
The Justificatory Structure of the NCBO BioPortal Ontologies
12
BioPortal Survey: Results
• Basic stats:
‣ 35 ontologies (ranging from 85 to ~170,000
axioms)
‣ 12,010 non-trivial entailments
‣ 7,176 distinct non-self-justifications
‣ containing 14,616 axioms
‣ 2,340 self-justifications
• No correlations between
‣ ontology size and number of entailments
(ρ=0.18)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
13
Log scale
Monday, November 14, 2011
Monday, November 14, 2011
Monday, November 14, 2011
Monday, November 14, 2011
Monday, November 14, 2011
Ontology
DL
Vertebrate
EL++
307
Evidence Codes
EL++
321
Monday, November 14, 2011
Self-Just
6
Non-SelfJust
6
112
112
59
Axioms Entailments
0
Ontology
DL
Vertebrate
EL++
307
Evidence Codes
EL++
321
Vertebrate Anatomy
Monday, November 14, 2011
Self-Just
6
Non-SelfJust
6
112
112
59
Axioms Entailments
0
Ontology
DL
Vertebrate
EL++
307
Evidence Codes
EL++
321
ax34
ax35
ax27
Vertebrate Anatomy
Monday, November 14, 2011
Self-Just
6
Non-SelfJust
6
112
112
59
Axioms Entailments
ax26
ax29
just5
ax36
ax28
ax24
ax22
0
ax32
ax19
ax21
ax23
just2
just3
just6
just1
just4
ax30
ax33
ax20
ax25
ax31
Ontology
DL
Vertebrate
EL++
307
Evidence Codes
EL++
321
ax34
ax35
ax27
Vertebrate Anatomy
Evidence Codes (part)
Monday, November 14, 2011
Self-Just
6
Non-SelfJust
6
112
112
59
Axioms Entailments
ax26
ax29
just5
ax36
ax28
ax24
ax22
0
ax32
ax19
ax21
ax23
just2
just3
just6
just1
just4
ax30
ax33
ax20
ax25
ax31
41
DL
Vertebrate
EL++
307
Evidence Codes
EL++
321
ax34
ax35
ax27
Vertebrate Anatomy
ax402
117
49
Ontology
just47
ax403
ax288
ax255
just9
just58
just65
just4
ax275
ax410
ax273
ax256
just110
just45
Evidence Codes (part)
Monday, November 14, 2011
ax26
ax29
just5
ax36
ax254
ax236
just133
112
112
59
ax28
ax19
just2
just3
just6
just1
just4
ax30
ax33
ax20
ax25
ax31
ax278
just98
ax399
ax277
ax238
ax259
just168
just131
just84
just114
ax279
ax289
ax295
ax261
just130
just15
ax260
just18
ax24
ax22
0
ax32
ax235
just92
Self-Just
6
Non-SelfJust
6
Axioms Entailments
ax263
ax243
just76
just23
just85
ax262
ax264
ax365
ax244
just2
just14
just70
ax21
ax23
ax237
just33
ax239
ax232
a
just107
just56
just120
ax355
ax233
ax421
just6
Ontology
DL
Vertebrate
EL++
307
Evidence Codes
EL++
321
ax34
ax35
ax27
Vertebrate Anatomy
ax369
ax370
ax299
ax331
ax270
ax268
ax267
ax385
ax265
ax384
ax362
ax363
ax303
ax393
just21
just91
just162
ax271
just132
just39
just62
just19
just124
just134
just90
just88
just105
just159
just136
just145
ax371
ax379
ax372
ax300
ax332
ax272
ax269
ax398
ax266
ax386
ax419
ax364
ax315
ax305
ax394
just125
just156
just83
just59
just66
just44
ax283
ax304
ax338
ax276
ax291
ax292
ax328
ax416
ax415
just5
just167
just143
just154
just42
just150
just8
just37
ax309
ax284
ax339
ax246
ax293
ax407
ax329
ax417
ax245
ax318
just77
just1
just106
just155
just17
just123
just149
ax395
just36
ax29
just5
ax36
ax28
just3
just6
just1
just4
ax30
ax33
ax20
ax25
ax31
ax413
ax412
ax311
ax247
ax377
ax376
ax348
ax310
ax360
ax359
ax222
ax221
ax307
ax306
ax220
ax380
ax381
ax367
ax353
just113
just164
just158
just53
just148
just152
just171
just40
just11
just118
just48
just30
just127
just82
just63
just68
just38
just147
just166
just117
ax396
ax257
ax414
ax391
ax312
ax248
ax378
ax392
ax349
ax302
ax361
ax387
ax224
ax223
ax308
ax397
ax411
ax382
ax390
ax368
ax282
ax249
just27
just54
just25
just26
just29
just41
just111
just81
59
just2
just52
just170
112
ax19
ax389
just112
112
just94
ax402
just47
ax403
ax288
ax255
just9
just58
just65
just4
ax275
ax410
ax273
ax256
just110
ax254
just45
ax235
just92
ax236
just133
ax278
just98
ax399
ax277
ax238
ax259
just168
just131
just84
just114
ax279
ax289
ax295
ax261
just130
just15
ax260
just18
ax263
ax243
just76
just23
just85
ax262
ax264
ax365
ax244
just2
just14
just70
ax237
just33
ax239
ax232
ax252
ax214
ax319
ax212
ax213
ax258
ax336
ax330
ax335
ax241
ax313
ax251
ax250
ax400
ax350
ax420
ax357
ax286
ax217
ax23
ax326
ax280
ax373
ax408
ax316
ax341
ax340
ax321
ax323
ax322
ax227
ax225
ax226
ax229
ax230
just120
just146
just12
just108
just109
just31
just35
just55
just121
just49
just165
just43
just75
just116
just153
just3
just99
just119
just101
just126
just102
just61
just129
just74
just89
just22
just169
just144
just46
just97
just73
just69
just137
just64
just157
just160
just80
just135
just72
just50
just28
just142
just93
just79
just10
just24
just96
ax355
ax233
ax421
ax405
ax388
ax375
ax290
ax327
ax374
ax346
ax215
ax320
ax234
ax240
ax334
ax281
ax351
ax337
ax296
ax343
ax406
ax409
ax418
ax317
ax242
ax314
ax253
ax347
ax274
ax401
ax422
ax294
ax285
ax356
ax358
ax287
ax219
ax383
ax301
ax352
ax342
ax354
ax324
ax366
ax297
ax228
ax344
ax231
just13
just95
just7
just141
just71
just60
just138
just20
just16
just161
just139
just100
just51
just87
just57
just32
just140
just34
just122
just163
just78
ax345
ax21
just56
just151
ax325
ax22
just107
just6
ax404
ax24
0
ax32
ax298
Evidence Codes (part)
Monday, November 14, 2011
ax26
just104
just115
Self-Just
6
Non-SelfJust
6
Axioms Entailments
just103
ax218
ax216
just67
just86
ax333
just128
BioPortal Survey: Results
• Multiple justifications
‣ occur in 71.4% of ontologies
‣ 1.3 justifications per entailment
(without self-justifications)
‣ max: 236 (Gene Ontology Ext.)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
19
BioPortal Survey: Results
• Multiple justifications
‣ occur in 71.4% of ontologies
‣ 1.3 justifications per entailment
(without self-justifications)
>2 justifications
14.3% 1 justification
‣ max: 236 (Gene Ontology Ext.)
28.6%
(1, 2] justifications
57.1%
Average justifications per
entailment across ontologies
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
19
BioPortal Survey: Results
• Axiom power
‣ avg axiom power 3.0 (axiom
occurs in 3 justifications)
‣ max 510 justifications for 1
axiom
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
20
BioPortal Survey: Results
• Axiom power
‣ avg axiom power 3.0 (axiom
occurs in 3 justifications)
‣ max 510 justifications for 1
axiom
3%
11%
34%
51%
exactly 1
>1, <=2 Average axiom power
>2, <=10
(proportion of
> 10
ontologies)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
20
BioPortal Survey: Results
• Justification equality
‣ 51% of justifications have more than 1
entailment
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
21
BioPortal Survey: Results
• Justification equality
‣ 51% of justifications have more than 1
entailment
Basic Formal Ontology (BFO)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
21
BioPortal Survey: Results
• Justification equality
‣ 51% of justifications have more than 1
entailment
Basic Formal Ontology (BFO)
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
21
Conclusions
1. How prevalent are multiple justifications?
‣ 71.4% of surveyed ontologies have multiple
justifications
‣ Small number of multiple justifications on
average
‣ Size & DL expressivity of ontology are no
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
22
Conclusions
2. a) Can we make use of structural relationships
for improved debugging support?
‣ Large degree of interaction between
justifications
‣ Considering entailments and justifications in
isolation ignores these relationships
‣ Optimal repair strategies: Look at multiple
justifications
‣ Future work: Explore possible repair strategies
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
23
Conclusions
2. b) Can we make use of structural relationships
for understanding the ontology?
‣ Self-justifications, equal justifications, axiom
power, activity... make implicit structure
explicit
‣ Representation helps exploring multiple
justifications
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
24
Conclusions
3. Can we derive useful metrics from the justificatory
structure?
‣ See Vertebrate Anatomy vs Evidence Codes
‣ More information than counting axioms
‣ DL expressivity does not imply complexity
‣ Structural aspects may be indicators for
richness of an ontology
S. Bail, B. Parsia, U.
Sattler
Monday, November 14, 2011
The Justificatory Structure of the NCBO BioPortal Ontologies
25
just10
ax84
ax74
ax101
ax104
ax78
ax129
ax100
just9
ax87
ax126
ax80
just23
ax93
just15
ax105
just27
ax90
ax110
ax88
just16
ax91
ax102
ax114
ax94
ax79
just18
Thank you!
ax136
ax118
ax108
just2
just8
ax95
just26
ax82
bails@cs.man.ac.uk
ax86
just21
ax133
ax72
ax119
just20
ax97
ax98
ax132
ax75
ax120
just19
ax85
ax92
just25
ax131
just24
ax127
ax122
ax113
ax103
ax99
ax128
ax140
ax125
ax96
ax130
just11
just12
just4
ax106
just1
ax124
ax121
ax76
just3
ax123
Monday, November 14, 2011
ax73
ax77
ax107
just5
just13