ontologies growing up: tools for ontology management

47
Ontologies Growing Up: Tools for Ontology Management Natasha Noy Stanford University 1

Upload: others

Post on 11-Feb-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ontologies Growing Up: Tools for Ontology Management

Ontologies Growing Up:Tools for Ontology Management

Natasha NoyStanford University

1

Page 2: Ontologies Growing Up: Tools for Ontology Management

An ontology

Conceptualization of a domain that isformal

can be used for inference

makes assumptions explicit

shared, agreed uponenables knowledge reuse

facilitates interoperation among applications and software agents

2

Page 3: Ontologies Growing Up: Tools for Ontology Management

An ontology (II)

Defines classes, properties, and constraints in a domain

Wine

produced_by Winery

White wine Rosé wine

Red wine

tannin_level String

Merlot Chianti

subclass-of subclass-of

subclass-of

subclass-of subclass-of

3

Page 4: Ontologies Growing Up: Tools for Ontology Management

The Good News

Ontologies are the backbone of the Semantic Web

More ontologies are available

Ontology languages defined as standards: RDF Schema as OWL

A huge playing field for ontology research and practice

Ontology-development tools lower the barrier for ontology development

More people are developing ontologies

4

Page 5: Ontologies Growing Up: Tools for Ontology Management

The Ideal World

The same language

No overlap in coverage

No new versions

A single extension tree

Small reusable modules

5

Page 6: Ontologies Growing Up: Tools for Ontology Management

The “Bad” News: The Real World

The same language

No overlap in coverage

No new versions

A single extension tree

Small reusable modules

6

Page 7: Ontologies Growing Up: Tools for Ontology Management

PROMPT: Dealing with the Messy World

Find similarities and differences between ontologies

ontology mapping and merging

Compare versions of ontologies

ontology evolution

Extract meaningful portions of ontologies

ontology views

Integrate in an ontology-editing environment

Protégé plugin

7

Page 8: Ontologies Growing Up: Tools for Ontology Management

Mapping and Merging

Existing ontologies

cover overlapping domains

use the same terms with different meaning

use different terms for the same concept

have different definitions for the same concept

"Basically, we're all trying to say the same thing."

8

Page 9: Ontologies Growing Up: Tools for Ontology Management

iPrompt: An Interactive Ontology-Merging and Mapping Tool

iPrompt provides

Partial automation

Algorithm based onconcept-representation structurerelations between conceptsuser’s actions

iPrompt does not provide

complete automation

Declarativemapping

9

Page 10: Ontologies Growing Up: Tools for Ontology Management

iPrompt Algorithm

Make initial suggestions

Select the next operation

Perform automatic updates

Find inconsistencies and potential problems

Make suggestions

10

Page 11: Ontologies Growing Up: Tools for Ontology Management

ActivityWork

Activity

Example: Merge Classes

Meeting Meeting

subclass of subclass of

Meeting

subclass of subclass of

11

Page 12: Ontologies Growing Up: Tools for Ontology Management

Example: Merge Classes (II)

Meeting

Activity

subclass of

Person Employee

attendees presentattendees

12

Page 13: Ontologies Growing Up: Tools for Ontology Management

iPrompt: Initial Suggestions

13

Page 14: Ontologies Growing Up: Tools for Ontology Management

After a User Performs an Operation

For each operationperform the operation

consider possible conflictsidentify conflicts

propose solutions

analyze local context

create new suggestions

reinforce or downgrade existing suggestions

14

Page 15: Ontologies Growing Up: Tools for Ontology Management

Analyzing Ontology Structure

Structures that Prompt analyzesclasses that have the same sets of slots

classes that refer to the same set of classes

slots that are attached to the same classes

Local contextincremental analysis

consider only the concepts that were affected by the last operation

15

Page 16: Ontologies Growing Up: Tools for Ontology Management

AnchorPrompt: Analyzing Graph Structure

16

Page 17: Ontologies Growing Up: Tools for Ontology Management

AnchorPrompt: Example

Design-a-Trial, S.Modgil, et.al. CMT, I.Sim et.al

17

Page 18: Ontologies Growing Up: Tools for Ontology Management

Similarity Score

Generate a set of all paths (of length < L)

Generate a set of all possible pairs of paths of equal length

For each pair of paths and for each pair of nodes in the identical positions in the paths, increment the similarity score

Combine the similarity score for all the paths

18

Page 19: Ontologies Growing Up: Tools for Ontology Management

AnchorPrompt: Example

TRIAL TrialPERSON PersonCROSSOVE Crossover

PROTOCOL DesignTRIAL-SUBJECT PersonINVESTIGATORS PersonPOPULATION Action_SpecPERSON CharacterTREATMENT-POPULATION Crossover_arm

19

Page 20: Ontologies Growing Up: Tools for Ontology Management

AnchorPrompt Discussion

Relies on a limited input from the user3 anchors → 2-3 new pairs (above median)

4 anchors → 3 new pairs (above median)

Has limitationssource ontologies with very different structure and level of generality

20

Page 21: Ontologies Growing Up: Tools for Ontology Management

Combining Merging and Mapping

Declarativemapping

21

Page 22: Ontologies Growing Up: Tools for Ontology Management

Prompt Plug-In Architecture

Algorithm for initial

comparison

Visualizationsupport for comparingconcepts

Iterative comparisonalgorithm

Presentationof candidate

mappings

Fine-tuningand saving

of mappings

Executionof mappings

22

Page 23: Ontologies Growing Up: Tools for Ontology Management

JambaPrompt: Cognitive Support for Mappings

Joint work with Sean Falconer23

Page 24: Ontologies Growing Up: Tools for Ontology Management

The Messy Picture

Ontology

versioning

ChangeManagement

24

Page 25: Ontologies Growing Up: Tools for Ontology Management

Comprehensive Ontology Evolution System

ChangesAnnotation of

changesrefers

to

ChAO

produces

Ontology version 1

Ontology version 2

Editing

input

produces

Annotationhas subprocess

produces

Ontology version 1

Ontology version 2

Editing

input

producesproduces

Annotationhas subprocess

produces

PromptDif

algorithm

inputinput

produces

25

Page 26: Ontologies Growing Up: Tools for Ontology Management

Using ChAO

ChangesAnnotation of

changesrefers

to

ChAO

input

Version

comparison

Changes per user/conflicts

input

Accept/reject

changes

input

input

produces

26

Page 27: Ontologies Growing Up: Tools for Ontology Management

ChAO: Change and Annotations Ontology

Change applyTo author created

Annotation title author created modified

annotates

assoc_annotations

Class_Change KB_Change

Class_CreatedClass_DeletedRestriction_Added

Superclass_Added

27

Page 28: Ontologies Growing Up: Tools for Ontology Management

ChAO Instances in Ontology-Evolution Tasks

Examining changesinforms the diff display

Accepting and rejecting changesstores information on what was accepted

Viewing concept historyprovides access to information for each concept

Providing auditing informationcompiled information on editors and time periods

28

Page 29: Ontologies Growing Up: Tools for Ontology Management

Implementation

Change-management tabprovides access to a list of changes

enables annotations

Prompt tabgenerates and presents a diff

enables accepting/rejecting changes

Core Protégésynchronous editing in a client-server environment

undo facilities

29

Page 30: Ontologies Growing Up: Tools for Ontology Management

Change-Management Tab

30

Page 31: Ontologies Growing Up: Tools for Ontology Management

CMT: Functions

Creates ChAO instances in the backgroundprovides monitored editing

users can examine instances directly in Protégé

API access to changes through the Protégé API

Provides overview of changes and annotationssummary and detailed view of changes

annotations for a single change or a group of changes

Provides access to concept historyaccess history of changes and annotations from the Classes tab

31

Page 32: Ontologies Growing Up: Tools for Ontology Management

PromptDiff

Joint work with Michel Klein and Sandhya Kunnatur32

Page 33: Ontologies Growing Up: Tools for Ontology Management

General Problem: Ontology Matching

Compare ontologiesFind similarities and differences

Merging: similarities

Mapping: similarities

Versioning: differences

Ontology VersioningIf things look similar, they probably are

A large fraction of ontologies remains unchanged from version to version

33

Page 34: Ontologies Growing Up: Tools for Ontology Management

The PrompDiff Algorithm

Goal: Find a diff automatcallyConsists of two parts

A set of heuristic matchers

A fixed-point algorithm to combine the results of the matchers

Can be extended with any number of matchers

34

Page 35: Ontologies Growing Up: Tools for Ontology Management

Single Unmatched Siblings

Wine

maker Winerycolor String

White wine Blush wine

Red wine

Merlot Chianti

Wine

produced_by Winery

White wine Rosé wine

Red wine

tannin String

Merlot Chianti

Version 1 Version 2

Wine

maker Winerycolor String

Wine

produced_by Winery

Red wine

tannin String

White wine

Red wine

White wineBlush wine Rosé wine

35

Page 36: Ontologies Growing Up: Tools for Ontology Management

Siblings with the Same Suffixes or Prefixes

Wine

maker Winerycolor String

White Rosé

Red

Merlot Chianti

Wine

produced_by Winery

White wine Rosé wine

Red wine

Merlot Chianti

Wine

maker Winerycolor String

Wine

produced_by Winery

36

Page 37: Ontologies Growing Up: Tools for Ontology Management

Other Matchers

Unmatched superclassesInverse slotsMultiple unmatched siblingsInstances of the same class with the same slot valuesOWL Anonymous classes

37

Page 38: Ontologies Growing Up: Tools for Ontology Management

PromptDiff FunctionsCreate a structural diff

from instances of ChAO, if presentscalability (NCI Thesaurus)

automatically, using heuristics, if there are no ChAO instances

generate ChAO instances from diff

Create user informationlist of users who edited the ontology

for each usernumber of concepts they edited

number of conflicts38

Page 39: Ontologies Growing Up: Tools for Ontology Management

Accept/Reject Changes in Prompt

Accept/reject at different levels of granularityan individual change

all changes for a class

all changes in a subtree

all changes from a user or a set of users

all non-conflicting changes from a user or a set of users

Save and replay accept/reject decisions

39

Page 40: Ontologies Growing Up: Tools for Ontology Management

The Messy Picture

40

Page 41: Ontologies Growing Up: Tools for Ontology Management

Ontology Views

Extract a self-contained subset of an ontology

Ensure that all the necessary concepts are defined in the sub-ontology

Specify the depth of transitive closure of relations

41

Page 42: Ontologies Growing Up: Tools for Ontology Management

Traversal Views

Specification of a traversal viewA “starter” concept

Relationships to traverse

The depth of traversal along each relationship

Can find “everything related”

42

Page 43: Ontologies Growing Up: Tools for Ontology Management

Defining a View

43

Page 44: Ontologies Growing Up: Tools for Ontology Management

Saving a View

Save a view as instances in an ontology

Replay the view on a new version

Determine if a view is “dirty”

44

Page 45: Ontologies Growing Up: Tools for Ontology Management

Dealing with a Messy World

45

Page 46: Ontologies Growing Up: Tools for Ontology Management

Future Directions

Mapping and MergingFinding complex mappings

Dealing with uncertainty

Maintenance during ontology evolution

VersioningIntegrating with workflow

Scalability

ViewsNon-materialized, dynamic views

46

Page 47: Ontologies Growing Up: Tools for Ontology Management

"All I'm saying is now is the time to develop the

technology to deflect an asteroid"

47