Date post: | 03-Apr-2018 |
Category: |
Documents |
Upload: | le-anh-tuan |
View: | 222 times |
Download: | 0 times |
of 39
7/29/2019 On t Ologies and Tools
1/39
Ontologies and tools
Natalya Fridman Noy
Stanford Medical InformaticsStanford University
7/29/2019 On t Ologies and Tools
2/39
Ontologies and tools?
Managing multiple ontologies
using several ontologies simulteneously
creating mapping between ontologies
ontology merging and alignment
Managing large ontologies
scaling up
presentation
Connecting to otherrepresentation
formalisms
7/29/2019 On t Ologies and Tools
3/39
Outline
HPKB: ontology-development
experience
Today: Tools we have now
as part of standard Protg
as plug-ins
Tomorrow: Tools we toolsneed
functionality
7/29/2019 On t Ologies and Tools
4/39
HPKB: High-Performance
Knowledge Bases
Mission statement
enable system developers to rapidly
construct large knowledge bases
(100K-1M axiom/rule/frame in several months)
Building
FoundationKnowledge
Acquiring
DomainKnowledge
Performing
Efficient
Problem
Solving
Domain experts
play
important role
7/29/2019 On t Ologies and Tools
5/39
COA Architecture
7/29/2019 On t Ologies and Tools
6/39
Development and Evaluation
Cyc upper level
Knowledge
Acquisition
tools
Problem-
solving
methods
Domain
ontologies
Critiquers
Critiquers
Critiquers
Knowledge
Acquisition
tools
Knowledge
Acquisition
tools
Problem-
solving
methods
Problem-
solving
methods
Evaluation
Evaluation
7/29/2019 On t Ologies and Tools
7/39
SMI in HPKB
Protg was used as KA tool
What we gained:
new Protg widgets
instance table
contains widget
HPKB tab - summary of large collection ofinstances
opportunity to test usability of Protg
(August 24-30)
7/29/2019 On t Ologies and Tools
8/39
HPKB Tab
7/29/2019 On t Ologies and Tools
9/39
SMI in HPKB
Ontology alignment
Loom to Protg
Manual alignment and merging in Protg
Protg to Cyc
7/29/2019 On t Ologies and Tools
10/39
Outline
HPKB: ontology development
experience
What we have now
as part of standard Protg
as plug-ins
What is needed
functionality
tools
7/29/2019 On t Ologies and Tools
11/39
Ontology-management tools
in Protege
Ontology-inclusion mechanism
include other Protg ontologies
somewhat transparent
Metrics
collect information on the current ontology
7/29/2019 On t Ologies and Tools
12/39
Included ontologies - features
Include multiple ontologies
Included ontologies identified by color
Included ontologies cannot be edited
Current ontology can use all the
concepts from the included ontology
The Protg knowledge model ontology
is included in this way
7/29/2019 On t Ologies and Tools
13/39
Included ontologies
need to know
Included projects should be in the same
directory
Name space conflicts are not resolved
Project name is part of instance name
Users need to fix class-name and slot-
name conflicts
7/29/2019 On t Ologies and Tools
14/39
Metrics
7/29/2019 On t Ologies and Tools
15/39
Outline
HPKB: ontology development
experience
What we have now
as part of standard Protg
as plug-ins
What is needed
functionality
tools
7/29/2019 On t Ologies and Tools
16/39
Ontology-management
plug-ins
Protg-to-Cyc tab
SMART: ontology merging and
alignment
???
7/29/2019 On t Ologies and Tools
17/39
Bridging the Semantic Gap
Cyc and Protg adopt different
knowledge models
Protg uses OKBC with some extensions
(essentially frame-based)
Cyc uses CycL (essentially rule-based)
Our solution has been to define anOKBC Microtheory within Cyc
7/29/2019 On t Ologies and Tools
18/39
1. Define a Microtheory (MT)
of OKBC predicatesOKB
C Default Mt : OKBCMt .
constant: OKBCDomain.
isa : BinaryPredicate.
arg1Isa : BinaryPredicate .arg2Isa : Collection .
comment : "(OKBCDomain PRED COL) means that COL is one of the possible
domains for PRED. A predicate can have several domains. The first
argument to a predicate has to be an instance of one such domain. Note
that this is different from arg1Isa: If there are several assertions
(arg1Isa PRED COL1) ... (arg1Isa PRED COLN), then the first argument to
PRED has to be an instance of all of them: COL1, ... COLN".
F:
(implies (?PRED ?INS1 ?INS2)
(thereExists ?COL
(and (OKBCDomain ?PRED ?COL)
(isa ?INS1 ?COL)))).
7/29/2019 On t Ologies and Tools
19/39
2. Create a Domain-Specific MT
as an Extension to the OKBC MT
COA
genlsMT
(fi-assert '(#$isa #$artillery-type #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$isa #$frontage-size-lower #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$isa #$readiness #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$isa #$formation-flexibility #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$isa #$task #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$isa #$description #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$isa #$checked-resource #$BinaryPredicate) #$ConstraintsMt)
(fi-assert '(#$OKBCDomain #$day-or-night #$Unit-Rate-Of-Movement-Check)
#$ConstraintsMt)
(fi-assert '(#$OKBCRange #$day-or-night #$Thing) #$ConstraintsMt)
(fi-assert '(#$arg2Format #$day-or-night #$SetTheFormat) #$ConstraintsMt)(fi-assert '(#$OKBCDomain #$desired-position
#$Artillery-Unit-Firing-Position-Check) #$ConstraintsMt)
(fi-assert '(#$OKBCRange #$desired-position #$Thing) #$ConstraintsMt)
(fi-assert '(#$arg2Format #$desired-position #$SetTheFormat) #$ConstraintsMt)
(fi-assert '(#$OKBCDomain #$echelon #$Deployment) #$ConstraintsMt)
(fi-assert '(#$OKBCRange #$echelon #$Thing) #$ConstraintsMt)
.
OKB
C
7/29/2019 On t Ologies and Tools
20/39
3. Cycs Theorem Prover Draws
Appropriate Inferences
Results
(#$implies (#$and (isa ?CONSTR
Unit-Combat-Power-Check)(unit-specialty-type ?CONSTR ?COL)
(isa ?UNIT ?COL)
(echelon-type ?CONSTR ?ECH)
(echelonOfUnit ?UNIT ?ECH)
(combat-power ?CONSTR ?N))(combatPowerOfUnit ?UNIT ?N))
COA
genls
MT
OKB
C
genlsMT
7/29/2019 On t Ologies and Tools
21/39
7/29/2019 On t Ologies and Tools
22/39
SMART: Ontology Merging
and Aligment
What is needed
Help and guidance in the process
Specialized tools for ontology merging
and alignment
What is not needed (not yet feasible)
Fully automatic merging and alignment
tool
7/29/2019 On t Ologies and Tools
23/39
Mapping, Merging, Alignment
car
vehicle
car
vehicle
vehiclecar
7/29/2019 On t Ologies and Tools
24/39
Approaches to Ontology
Merging and Alignment
Conflict resolution after merging
+ direct results
can be overwhelming hard to repeat
Morphing before merging
+ process can be repeated
no direct results
Direct manipulation tools
+ can manipulate the result directly
harder to repeat, but still possible
7/29/2019 On t Ologies and Tools
25/39
SMART Approach to Merging
and Alignment
Define a set of ontology merging and
alignment operations
Develop an algorithm for ontology
merging and alignment Perform some operations automatically
Guide the user to other operations
Design and implement specialized tool
for ontology merging and alignment
7/29/2019 On t Ologies and Tools
26/39
Setup:load files, set preferences, ...
Execute operation:perform automatic updates,detect conflicts,
create suggestions
Select operation:choose from suggestion list,
create a new operation, .
Initial suggestions:identical names, synonyms,superclasses for top-level classes in alignment
SMART Algorithm
7/29/2019 On t Ologies and Tools
27/39
Example: merge classes
Automatic updates: Creating the new frame
Updating of references
Merging of attached slots
with identical names
Conflicts: Duplicate frame names
Merging of attached slots
with identical names but
different facets
Class Cityname:String
population:Integer
area:Float
Class Townname:String
populace:Integer
area:Area
Class Location Class Geographic-Location
7/29/2019 On t Ologies and Tools
28/39
Example: merge classes (contd)
Suggestions:
Increase priority for current
suggestions with referenced
frames
Suggestions:
Increase priority for merging
operations that involve
frames in the same role,
such as superclasses,
subclasses, facet values
Class Cityname:String
population:Integer
area:Float
Class Townname:String
populace:Integer
area:Area
Class Location Class Geographic-Location
7/29/2019 On t Ologies and Tools
29/39
Suggestions (contd)
Suggestions based on structural indications:
remove superclasses
remove subclasses
Class Customer
Class Travel agent
Class Individual
Class Driver
Class Driver
7/29/2019 On t Ologies and Tools
30/39
Source ontology: car rental
7/29/2019 On t Ologies and Tools
31/39
Source ontology:
airline reservations
7/29/2019 On t Ologies and Tools
32/39
Explanations
Suggestions
Current
conflicts
Possible
solution
7/29/2019 On t Ologies and Tools
33/39
Features of SMART
Feedback to the user
explanations
solutions for conflicts
Maintaining focus
re-ordering of suggestions
creating temporary frames to defer conflict
resolution Tracking relations
preserving reference relations
preserving mapping information
7/29/2019 On t Ologies and Tools
34/39
Future directions
Extensions to the model
More extensive treatment offacets
Extensions to non-OKBC frameworks
Incorporation ofaxioms
Formal evaluation
7/29/2019 On t Ologies and Tools
35/39
Outline
HPKB: ontology development
experience
What we have now
as part of standard Protg
as plug-ins
What is needed
functionality
tools
7/29/2019 On t Ologies and Tools
36/39
Wish-list: multiple ontologies
Managing multiple ontologies
opening multiple ontologies in one window
with equal status (unlike inclusion)
copying and moving frames between
ontologies
what should be copied? what to do with name conflicts?
Should we even bother?
information overload
7/29/2019 On t Ologies and Tools
37/39
Wish-list: import and export
Import from and export to other
knowledge representation systems
general OKBC back end
Cyc to Protege
PowerLoom and back
Other KR formalisms
Wi h li t
7/29/2019 On t Ologies and Tools
38/39
Wish-list:
creating ontology mapping
Mapping and alignment is not
always possible, because:
Cannot change sources
Want to keep sources separate
Cannot agree on a single
terminology
Similar problem: multiple views
vehiclecar
Wi h li t
7/29/2019 On t Ologies and Tools
39/39
Wish-list:
large-scale ontologies
Managing large ontologies
scaling up to huge knowledge sources
different user interface
summary
overview