Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe....

169
Dr. Sabin Buragawww.purl.org/net/busaco inginerie ontologică Dezvoltarea aplica ț iilor Web

description

Dezvoltarea aplicațiilor Web (11/12) — detalii la http://profs.info.uaic.ro/~busaco/teach/courses/wade/web-film.html

Transcript of Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe....

Page 1: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie ontologică

Dezvoltarea aplicațiilor Web

Page 2: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

“It is not the strongest of the species that survive, nor the most intelligent,

but the ones most responsive to change.”

Charles Darwin

Page 3: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

ce este web-ul semantic

Data interoperability across applicationsand organizations (for IT)

conform Tim Berners-Lee

Page 4: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

ce este web-ul semantic

A set of interoperable standardsfor knowledge exchange

conform Tim Berners-Lee

Page 5: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

ce este web-ul semantic

An architecture for interconnected communities and vocabularies

conform Tim Berners-Lee

Page 6: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

meta-date și relații descrise semanticîn cadrul și între documentele Web

Page 7: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Web-ul semantic oferă un punct de vedere abstract “ascunde” documentele

Page 8: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

se oferă premisele modelării conceptuale a resurselor

Page 9: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

se oferă premisele modelării conceptuale a resurselor(date, informații, cunoștințe)

relație atomică

modelulRDF

Page 10: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Există metode de proiectare (modelare)a cunoștințelor (ontologiilor)?

Page 11: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

crearea de ontologii din diverse surse

Page 12: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

crearea de ontologii din diverse surse

scheme XML,scheme de baze de date,

diagrame UML,foi de calcul tabelar,

alte specificații – e.g., microformate, microdate HTML5

Page 13: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

fragment de ontologie exprimat sub forma diagramelor de clasa UMLexemplu oferit de Cranefield (2001)

Page 14: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes: gestiunea versiunilor

Page 15: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

constituirea/folosirea colecțiilor de ontologii

Page 16: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

constituirea/folosirea colecțiilor de ontologii

asociericomparațiireconcilieri

validăriconversii

asigurarea calității

Page 17: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

obținerea, organizarea & vizualizareadomeniului de cunoaștere

înainte și în timpul creării unei ontologii

Page 18: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

utilizarea ontologiilor în funcție de context

Page 19: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

managementul cunoștințelor

Aspect de interes:

utilizarea ontologiilor în funcție de context

axate asupra modelării – exhaustive – a unei lumi (web)

specifice unui set de task-uri/procese – workflow-uri

mixte

Page 20: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitate

Metodologii de inginerie a cunoștințelor(knowledge engineering methodologies)

Page 21: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitate

Metodologii de inginerie a cunoștințelor(knowledge engineering methodologies)

procesul prin care experți ai domeniului și ontologiștivor constitui o bază de cunoștințe (KB – Knowledge Base),modelată într-un limbaj de reprezentare a cunoștințelor

și gestionată via o suită de instrumente adiționale

Page 22: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitate

Metodologii de inginerie a cunoștințelor(knowledge engineering methodologies)

procesul prin care experți ai domeniului și ontologiștivor constitui o bază de cunoștințe (KB – Knowledge Base),modelată într-un limbaj de reprezentare a cunoștințelor

și gestionată via o suită de instrumente adiționale

Page 23: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitate

Metodologii de inginerie a cunoștințelor(knowledge engineering methodologies)

procesele, limbajele și instrumentele folosite se bazeazăpe diverse paradigme de reprezentare a cunoștințelor

Page 24: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitate

Metodologii de inginerie a cunoștințelor(knowledge engineering methodologies)

pot recurge la abordări de tip Model-Driven Engineering

de (re)văzut MDA – Model Driven Architecture

Page 25: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

necesitate

D. Gasevic, D. Djuric, V. Devedzic, Model Driven Engineeringand Ontology Development (2nd Edition), Springer, 2009

Page 26: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

abordări

Tradiționale, din ingineria software clasică

exemplificări:CommonKADS (Scheriber et al., 2000)

UOL – Unified Ontology Language (Baclawski et al., 2002)

Page 27: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

abordări

Agile – mai flexibile și facileeXtreme Programming

exemple:XP.K (Knublauch, 2002) RapidOWL (Auer, 2005)

Page 28: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

abordări

Pentru detalii, a se studia articolele:

A. Denicola et al., “A Software Engineering Approach to Ontology Building”, Information Systems 34(2), 2009wwwusers.di.uniroma1.it/~navigli/pubs/De_Nicola_Missikoff_Navigli_2009.pdf

M. Jarrar, R. Meersman, “Ontology Engineering – The DOGMA Approach”, LNCS 4891, Springer, 2008

http://www.jarrar.info/publications/JM08.v7.pdf

Page 29: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Care sunt procesele de modelare ontologică?

Page 30: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

observații

Dezvoltarea unei ontologii implicăpartajarea de informații

+ colaborare

Page 31: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

observații

“Knowledge is fractal” (Alan Rector, 2004)

ontologiile prezintă aceeași structurăla fiecare nivel de granularitate (detaliu)

Page 32: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

observații

Atenție la dezvoltările exponențiale ale ontologiei!

fenomenul “exploding bicycle”

Page 33: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

complicații

Necunoașterea a-priori a dimensiunii ontologiei

Numărul persoanelor implicate

Folosirea ontologiei de către utilizatoricare nu sunt experți ai domeniului modelat

Natural laziness

...

Page 34: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Conflicte privitoare la intuiții

intuițiile sunt dificil de formalizat

Page 35: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Conflicte privitoare la intuiții

intuițiile sunt dificil de formalizat

experții în domeniu sunt conduși de obisnuințeși practică (șabloane de proiectare)

prototipuri + generalizări

Page 36: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Conflicte privitoare la intuiții

intuițiile sunt dificil de formalizat

logicienii sunt motivați de logică și computabilitatedefiniții/axiome (formale) + operatori universali

Page 37: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

transparență și predictibilitateversus

rigoare + completitudine

Page 38: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Persoanele– ontologiști, programatori, utilizatori –

fără (prea multă) experiență

Page 39: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Studiu de caz – Peter Morville, 2007alergia la alune (peanut allergy)

Page 40: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Studiu de caz – Peter Morville, 2007alergia la alune (peanut allergy)

acces urgent la informații exacte și utile

credibilitatea surselor este esențială

Page 41: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Studiu de caz – Peter Morville, 2007alergia la alune (peanut allergy)

orice căutare folosind un motor de căutare clasic eșueazăpopularitate ≠ autoritate în domeniu

cunoștințele (relevante) trebuie să fie regăsite pe Webnecesită expertiză în domeniu +

abilități avansate de căutare pe Web

Page 42: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

rezultate oferite de

Bing

Page 43: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

rezultate întoarse de

DuckDuckGo

Page 44: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

rezultate oferite de Google

Page 45: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

rezultate furnizate de Siri

Page 46: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Modelarea

semantica (meaning)

corectitudinea clasificărilor și extragerii cunoștințelor

Page 47: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Modelarea

indexarea

vizează activitățile de descoperire,căutare și găsire a cunoștințelor

Page 48: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Modelarea

popularea

introducerea datelor (e.g., indivizi)+

procesul decizional

eventual, alte aspecte de interes

Page 49: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Modelarea

achiziția

capt(ur)area cunoștințelor

Page 50: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Asigurarea calității + managementul modificărilor

calitatea

stabilirea de criterii privitoare la ceea ce este “corect”(e.g., grad de expresivitate, ușurința refolosirii,

volumul entităților modelate:clase/proprietăti/restricții/indivizi,…)

Page 51: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Asigurarea calității + managementul modificărilor

evoluția

luarea în calcul a schimbărilor viitoare ale ontologiei

Page 52: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Asigurarea calității + managementul modificărilor

testarea

controlul modificărilor

asigurarea – eventual, (semi-)automată – a calitățiide exemplu, detectarea inconsistențelor

Page 53: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Privitoare la factorul uman

apariția confuziilor privitoare la termeniși la utilizarea ontologiei în practică

Page 54: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Privitoare la factorul uman

persoane provenind din medii eterogene

inteligență artificială, interacțiune om-calculator, dezvoltare Web, inginerie software,

lingvistică (computațională), științe cognitive, filosofie,...

Page 55: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Referitoare la interoperabilitate

recurgerea la sintaxe diferite

utilizarea de instrumente de modelare eterogene

folosirea unor limbaje având diverse expresivități

Page 56: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Vizualizarea (redarea) ontologiilor

prezentări alternative

documentare automată

navigare bazată pe context + faceted search

aspect important: ontologiile de mari dimensiuni

Page 57: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

VOWL – Visual Notation for OWL Ontologiesreprezentarea grafică a elementelor unei specificații OWL

(Ștefan Negru & Steffen Lohmann, 2013)http://vowl.visualdataweb.org/

Page 58: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultăți

Vizualizarea (redarea) ontologiilor

descoperirea datelor și relațiilor (data/relation mining)

eventual, folosind instrumente de realizarea raționamentelor automate (reasoners)

Page 59: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: dificultati

găsirea de relații între conceptele oferite de DBpediainstrumentul RelFinder

http://www.visualdataweb.org/relfinder.php

Page 60: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: realități

Alegerea dificilă a unor criterii formale(i.e. privind calitatea cunoștințelor modelate)

consistențăcompletitudine

concizieexpresivitate

...

Page 61: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: realități

Generarea manuală a ontologiilor

taxonomii navigabile: Open Directory, Yahoo!,...

folksonomii – vezi sistemele de tagging social

ontologii publice – e.g., YAGO, UMBEL

ontologii interne – exemplu: Daimler-Chrysler

Page 62: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: realități

Ontologiile generale (top-level)nu sunt cu adevărat utile în practică

Page 63: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: realități

Apar probleme teoretice/practice privind:

asigurarea coerenței

facilitarea procesării

folosirea surselor de date multiple

Page 64: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: realități

Diferite vocabulare în vigoare

clasa ≈ concept ≈ categorie ≈ tip

instanță ≈ individ

entitate ≈ obiect (clasă/individ)

proprietate ≈ slot ≈ relație ≈ atribut ≈

≈ rol ≈ legătură semantică

Page 65: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

inginerie: realități

Sintaxe diverse existente

sintaxa abstractă – vezi OWL ManchesterN3 (Turtle)XML/RDF

logica de ordin Iformatul Protégé

limbajul natural (parafraza)...

Page 66: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie (Noy & McGuinness, 2003)

1. Stabilirea domeniului de cunoaștere2. Organizarea ontologiei3. Popularea (“umplerea”) ontologiei4. Verificarea ontologiei5. Publicarea ontologiei

Page 67: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Stabilirea domeniului de cunoaștere

asamblarea surselor de date și expertizaîn domeniu pentru a constitui concepte (things)

se vor asigura – măcar informal – consensul și consistența

Page 68: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Organizarea ontologieiproiectarea pe ansamblu a structurii conceptuale

identificarea principalelor concepte concrete și a proprietăților acestora

identificarea relațiilor dintre conceptecrearea conceptelor abstracte (de nivel înalt)

identificarea instanțelorreferențierea/includerea altor ontologii

...

Page 69: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Popularea ontologieiadăugarea conceptelor

inserarea relațiilor + constrângerilor/axiomeloradăugarea indivizilor

…la nivelul de detaliere necesar

pentru realizarea scopurilor ontologiei

Page 70: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Verificarea ontologiei

reconcilierea inconsistențelor dintre elemente,la nivel sintactic, logic și semantic

Page 71: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Verificarea ontologiei

reconcilierea inconsistențelor dintre elemente,la nivel sintactic, logic și semantic

verificarea consistenței poate implicao clasificare automată, rezultând noi concepte bazate

pe proprietăți individuale sau relații între clase

Page 72: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Publicarea ontologiei

verificarea finală de către experți ai domeniului

publicarea + utilizarea efectivăîn cadrul comunității de practică

Page 73: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Procesul ideal de dezvoltare a unei ontologii

determine

scope

consider

reuse

enumerate

terms

define

classes

define

properties

define

constraints

create

instances

Page 74: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Procesul realist de dezvoltare a unei ontologii

determine

scope

consider

reuse

enumerate

termsdefine

classes

consider

reuse

enumerate

terms

define

classes

define

properties

create

instances

define

classes

define

properties

define

constraints

create

instances

define

classes

consider

reuse

define

properties

define

constraints

create

instances

Page 75: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie (Rector & Horrocks, 2004)

1. Stabilirea scopului2. Colectarea cunoștințelor

la nivel informal ori semi-formal

3. Rafinarea cerințelor + testarea4. Implementarea – modelarea propriu-zisă5. Evaluarea + asigurarea calității6. Monitorizarea utilizării și a evoluției

Page 76: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Stabilirea scopului

cerințe

evaluare

reutilizare

Page 77: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Colectarea cunoștințelorla nivel informal ori semi-formal

stabilirea termenilor

organizarea informală a termenilor

parafrazarea și clarificarea termenilordefiniții informale ale conceptelor

realizarea de diagrame informale

Page 78: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Rafinarea cerințelor + testarea

Page 79: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Implementarea – modelarea propriu-zisăparafrazare și comentare la fiecare fază

dezvoltarea unei scheme normalizate șia unui “schelet” de ontologie

implementarea unui prototip (consemnând intențiile)

verificarea scalabilității

popularea ontologiei – text mining, procesare alimbajului uman, JSON, microdate, RDFa, baze de date,…

Page 80: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Evaluarea + asigurarea calității

urmărirea scopului inițial

includerea de verificări privind evoluția ontologieiși ajustarea manierei de management al ei

proiectarea de teste și “probe”în mod similar testării aplicațiilor software

Page 81: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

metodologie

Monitorizarea utilizării și a evoluției(mentenanță)

“process not product”Alan Rector, 2004

Page 82: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Raționamentul lumilor închise vs. deschise

lumi deschise (open world reasoning)

negația reprezintă contradicție – orice poate fi adevăratpână când se poate demonstra că e fals

Page 83: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Raționamentul lumilor închise vs. deschise

lumi închise (close world reasoning)

negația înseamnă esec – orice nu poate fi găsit este fals

Page 84: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Raționamentul lumilor închise vs. deschise

ontologiile sunt considerate lumi deschise,iar bazele de date lumi închise

Page 85: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Knowledge Base vs. Data Base

o bază de cunoștințe nu definește un model unic, ci reprezintă un set de constrângeri

care pot defini o mulțime de modele posibile

Page 86: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Knowledge Base vs. Data Base

o bază de cunoștințe nu definește un model unic, ci reprezintă un set de constrângeri

care pot defini o mulțime de modele posibile

nici o constrângereorice model e posibil

cu cât există mai multe constrângeri, cu atât numărul modelelor posibile scade

Page 87: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Knowledge Base vs. Data Base

o baza de date definește un model unic(Bechhofer, 2004)

numele diferite sunt interpretate ca indivizi distincți

domeniul e compus numai din indivizii numițiîn cadrul bazei de date – modelul lumii inchise

extensiile sunt cât mai reduse posibil

Page 88: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Knowledge Base vs. Data Base

model unicexpresivitate redusă – nu există negații/disjuncții

nu poate captura informații incomplete

non-monoton:adăugarea de noi date nu păstrează adevărul

procesul de reasoning (interogare) este facil și rapid

Page 89: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Knowledge Base vs. Data Base

modele multipleexpresivitate ridicată – conectori booleeni, reuniune,...

se pot captura/exprima informații incomplete

monotonie – adăugarea de noi date păstrează adevărul

procesul de reasoning (interogare) este dificil și lent

Page 90: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Activitatea de reasoningpoate fi realizată automat de un reasoner

clasificarea conceptelor

rezultă:un arbore – ierarhie strictă, taxonomie

sauun digraf aciclic (DAG) – poli-ierarhie, graf conceptual

Page 91: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Activitatea de reasoningpoate fi realizată automat de un reasoner

normalizare

separarea conceptelor de bază în arbori disjuncți,arborii având legături între ei via definiții și restricții

Page 92: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Exemplu: o ontologie privitoare la animale

înainte de clasificarearbore de concepte

după clasificaredigraf aciclic

Page 93: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

aspecte importante

Dezvoltarea unei ontologii normalizate presupune:

1. Identificarea conceptelor de bază de sine-stătătoare2. Separarea conceptelor în arbori de concepte3. Identificarea relațiilor4. Crearea descrierilor și definițiilor5. Identificarea modului în care entitățile-cheie

trebuie clasificate6. Utilizarea clasificatorului pentru a genera digraful7. Verificarea satisfacerii testelor

Page 94: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Dezvoltarea unei ontologii normalizate presupune:1. Identificarea conceptelor de bază de sine-stătătoare

(cu comentarea celor mai puțin evidente)2. Separarea conceptelor în arbori de concepte

(poate implica specificarea unorproprietăți/concepte auxiliare)

3. Identificarea relațiilor(comentarea acelor relații care nu sunt evidente)

4. Crearea descrierilor și definițiilor(cu oferirea de parafraze pentru fiecare)

5. Identificarea modului în care entitățile-cheietrebuie clasificate (crearea unor teste de regresie)

6. Utilizarea clasificatorului pentru a genera digraful7. Verificarea satisfacerii testelor

Page 95: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

“Trusa” ontologistului

cerințeformalisme (construcții logice)

ontologii existenteresurse de cunoștințe informale

convenții și practiciinstrumente

adaptare după Aldo Gangemi (2008)

Page 96: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

“Trusa” ontologistului

cerințe – e.g., “un model ideal de specificare a lumii” construcții logice: subClassOf, restricții de cardinalitate,…ontologii existente – e.g., DOLCE, FOAF, UMBEL, YAGO etc.resurse de cunoștințe informale: servicii Web, API-uri,…

convenții și practici – inclusiv șabloane de proiectareinstrumente – editoare, instrumente de reasoning,

convertoare, sisteme de stocare etc. (Disco, GATE, Protégé,NeOn Toolkit, FaCT++, Jena, Triplr, Virtuoso,…)

Page 97: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Înțelegerea clară a distincțiilor (Franconi, 2003)

concept (clasă) vs. individ

concept (clasă) vs. proprietate (rol)

entitate definită vs. entitate dedusă

Page 98: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus instanță (individ)

o mulțime de indivizi este una numărabilă, discretă

spațiul privitor la concepte e ideal continuu și infinit

Page 99: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus instanță (individ)

fiecare individ posedă o identitate clară

Page 100: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus instanță (individ)

dacă două concepte au descrieri echivalente, atunci desemnează același concept

descrierile privitoare la indivizipot fi alterate (pot evolua)

Page 101: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus instanță (individ)

uzual, actualizările vizând indiviziinu schimbă ierarhia conceptelor

Page 102: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus instanță (individ)

alegerea “clasă vs. individ” depinde de granularitate

Page 103: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus proprietate (rol)

nu e ușor de decis dacă o entitate trebuie să fie modelatăca un concept sau drept proprietate

Page 104: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus proprietate (rol)

nu e ușor de decis dacă o entitate trebuie să fie modelatăca un concept sau drept proprietate

Persoana este un concept (clasă)Mama ca și concept nu există dacă nu considerăm

ce rol joacă într-o relație parentală(este un concept dependent de o relație)

Page 105: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Clasă (concept) versus proprietate (rol)

nu e ușor de decis dacă o entitate trebuie să fie modelatăca un concept sau drept proprietate

convenție:alegerea de nume neambigue pentru roluri

e.g., hasParent, areMama, areGen etc.

Page 106: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Fiecărui concept ales i se pot asocia:

proprietăți intrinsecicaracteristice naturii conceptului

proprietăți extrinseciexterne – pot să se modifice pe parcurs

Page 107: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Fiecărui concept ales i se pot asocia:

proprietăți intrinsecicaracteristice naturii conceptului

exemplu: identitatea unei persoane

proprietăți extrinseciexterne – pot să se modifice pe parcurs

e.g., ocupația unei persoane: student, programator, artist

Page 108: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Fiecărui concept ales i se pot asocia:

părți, fragmente – în cazul obiectelor structurate/compuse

fizice

abstracte

Page 109: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Fiecărui concept ales i se pot asocia:

părți, fragmente – în cazul obiectelor structurate/compuse

fizice“studenții dintr-un an”, “componentele unei tablete”,

“boabele unui strugure” etc.

abstracte“prezentările unei materii”, “subiectele unui blog”,…

Page 110: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

Raționamentele automate privitoare la indivizisunt dificil de realizat

ontologiile vizează în special claseleontologii ≠ baze de date

Page 111: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

O ontologie urmează un ciclu de viață (lifecycle),fiind creată, evaluată, ajustată, exploatată

ca și alt artefact software

Page 112: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

considerații privind modelarea

O ontologie urmează un ciclu de viață (lifecycle),fiind creată, evaluată, ajustată, exploatată

ca și alt artefact software

aspecte de interes:datele

tipurile de workflow-urișabloanele de proiectare (reguli de bună practică)

utilizarea propriu-zisă

Page 113: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

J. Benedict, D. McGuinness, P. Fox (2007)

Page 114: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Modelarea unei ontologii privitoare la animale

adaptare după Alan Rector

Page 115: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Intenții și scopuri

realizarea unei cărți electronice (e-book) despre animale, oferind informații precum:

locul unde trăiescce consumă – carnivore, ierbivore, omnivore

cât de periculoase pot fice anatomie de bază au – e.g., numărul picioarelor,...

ce greutate au...

Page 116: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Colectarea conceptelor

se pot folosi carduri de concepte

se lucrează în grupuri mici de persoane

se pot atrage experți ai domeniului

Page 117: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Dog

Cat

Cow

Person

Tree

Grass

Herbivore

Male

Female

Dangerous

Pet

Domestic animal

Farm animal

Food animal

Fish

Goldfish

Carnivore

Plant

Animal

Fur

Child

Parent

Mother

Father clase posibile

Page 118: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz: organizarea conceptelor

Dog

Cat

Cow

Person

Tree

Grass

Herbivore

Male

Female

Dangerous

Pet

Domestic animal

Farm animal

Food animal

Fish

Goldfish

Carnivore

Plant

Animal

Fur

Child

Parent

Mother

Father

Page 119: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Extinderea conceptelor

gruparea unor concepteși determinarea caracteristicilor comune:

Plant, Animal ↦ Living Thing

ar putea fi adăugați ulterior și termeni ca Bacteria, FungiCat, Dog, Cow, Person ↦ Mammal

alți candidați ar putea fi Goat, Sheep, Horse, Lionetc.

Page 120: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Pentru facilitarea clasificării, colecțiile de subclasetrebuie declarate explicit disjuncte

exemplificare:Plant disjointWith Animal

Page 121: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Alegerea unor axe conceptuale

adăugarea de termeni abstracți

de exemplu: “Living thing”

Page 122: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Alegerea unor axe conceptuale

identificarea relațiilor

de pildă: “eats”, “owns”, “parent of”

Page 123: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Alegerea unor axe conceptuale

identificarea entităților ce pot fi definite(în relație cu altele)

e.g., “child”, “parent”, “Mother”, “Father”

Page 124: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Alegerea unor axe conceptuale

numirea explicită a conceptelor

utilizarea cunoștințelor anterioare(background knowledge)

axiome

Page 125: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Living ThingAnimal

MammalCatDogCowPerson

FishGoldfish

PlantTreeGrassFruit

ModifiersDomestic

PetFarmed

Food

WildHealth

healthysick

GenderMaleFemale

AgeAdultChild

Relationseatsownsparent-of…

DefinablesCarnivoreHerbivoreChildParentMotherFatherFood Animal

Page 126: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Stabilirea entităților de sine-stătătoare

“lucruri” ce există conform substantivelor loroameni, animale, edificii, acțiuni, procese,…

se utilizează majoritatea substantivelor

modificatori (modifiers)“lucruri” ce se pot preschimba în altele

se folosesc adjectivele și adverbele

Page 127: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Reorganizăm conceptele, grupând entitățilecare pot fi definite în arbori separați

constituirea conceptelor de bază (primitives)

Page 128: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Self_standingLiving Thing

AnimalMammal

CatDogCowPerson

FishGold

fish

PlantTreeGrassFruit

ModifiersDomestication

DomesticWild

UseFoodPet

RiskDangerousSafe

GenderMaleFemale

AgeAdultChild

Relationseatsownsparent-of…

DefinablesCarnivoreHerbivoreChildParentMotherFatherFood Animal

Page 129: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

Self_standingLiving Thing

AnimalMammal

CatDogCowPerson

FishGold

fish

PlantTreeGrassFruit

adăugarea comentariilorclarificatoare (parafraze)

Concept abstract incluzând toate entitățile vii

– aici, restricționat la plante și animale.

Page 130: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Identificarea constrângerilor privitoare la domeniu(domain) și interval (range) pentru fiecare proprietate:Animal eats Living_thing

eats domain: Animal range: Living_thing

Person owns Living_thing except Personowns domain: Person

range: Living_thing and not Person

Living_thing parent_of Living_thingparent_of domain: Animal

range: Animal

Page 131: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Pentru entitățile ce pot fi definite,trebuie comentate și formalizate

definițiile acestora în termeni de primitive,relații și alte entități ce pot fi specificate

Page 132: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exemplu

“A ‘Parent’ is an animal that is the parent ofsome other animal” – ignore plants for now

Parent = Animal and parent_of some Animal

Page 133: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exemplu

“A ‘Herbivore’ is an animal that eats only plants”NB: All animals eat some living thing

Herbivore = Animal and eats only Plant

Page 134: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Stabilirea proprietăților ce pot apăreala nivel de clasă

Page 135: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Ce se poate afirma privitor la toți membrii clasei?

exemplu: eats

All cows eat some plants

All cats eat some animals

All pigs eat some animals and eat some plants

Page 136: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Verificarea clasificării

“Cows should be Herbivores”

Cows are animals and, amongst other things,eat some grass and

eat some leafy_plants

Page 137: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Verificarea clasificării

trebuie specificată axioma de închidere (closure axiom)

Cows are animals and, amongst other things,eat some plants and

eat only plants

Page 138: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Verificarea clasificării – aici, folosind Protégé

Page 139: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Examinarea listei de modificatori

identificarea modificatorilorcare au valori mutual exclusive

Domestication, Risk, Gender, Age

precizarea mai precisă a unoraAge ↦ Age_group

Page 140: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

noua listă de modificatori

ModifiersDomestication

DomesticWildFeral

RiskDangerousRiskySafe

GenderMaleFemale

AgeInfantToddlerChildAdultElderly

Page 141: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (soluția 1)

partiții de valori: clase ce partiționează o calitate

Dangerousness cu subcalitățile disjuncteDangerous, Risky, Safe

Page 142: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (soluția 1)

partiții de valori: clase ce partiționează o calitate

se poate specifica proprietatea funcționalăhasDangerousness : Animal↦ Dangereousness

Dangerous_animal = Animal and hasDangerousness some Dangerous

Page 143: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

DangerousRisky

Safe

Cookie’sDanger

Dangerousanimal

Cookiethe Lion

hasDangerousnesssomeValuesFrom

Dangerousness

Animal

www.w3.org/TR/swbp-classes-as-values

diagrama partițiilor de valori

Page 144: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (soluția 1)partiții de valori: clase ce partiționeaza o calitate

calitatea

partițiile de valori

Page 145: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Partițiile de valori în stilul UMLDangerousness_

Value

Safe_value

Risky_value

Dangerous_value

Animal

DangerousAnimal

Cookie the Lion

Cookie’sDangerousness

owl:unionOf

hasDangerousness

hasDangerousnesssomeValuesFrom

Page 146: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (soluția 2)

valori simbolice: indivizii pot enumeratoate valorile unei calități (caracteristici)

în acest caz, calitatea specificată este Gender_value,pentru fiecare valoare existând o mulțime de indivizi

valorile vor fi diferite, date ca o enumerare: Gender_value = { male, female }

Page 147: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (soluția 2)

valori simbolice: indivizii pot enumeratoate valorile unei calități (caracteristici)

se definește o proprietate funcționalăhasGender : Animal↦ Gender_value

Male_animal = Animal and hasGender is male

Page 148: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Valorile simbolice – stilul UML

Gender_value

Person

Man

Sabin

owl:oneOf hasGender

female male

Page 149: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (design pattern)

valori distincte exprimate via Disjoint pentru clasesau allDifferent pentru indivizi

Page 150: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Specificarea valorilor (design pattern)

valorile “acoperă” un tip de date

Calitate = Part1 or Part2 or Part3 or … or Partn

sauCalitate = { v1 , v2 , v3 ,…, vn }

proprietățile exprimate sunt deseori funcționale

Page 151: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exprimarea rolurilor (proprietăților)

apare necesitatea distingerii rolurilorpe care le joacă entitățile în diferite situații

Page 152: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exprimarea rolurilor (proprietăților)

apare necesitatea distingerii rolurilorpe care le joacă entitățile în diferite situații

exemple:“pet” versus “farm animal”

“elev” versus “student” versus “profesor”“medic” versus “pacient”

Page 153: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exprimarea rolurilor (proprietăților)

deseori, calificările trebuie distinse față de roluri

e.g., o persoană poate avea calificare de medic,dar joacă rol de pacient

Page 154: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exprimarea rolurilor (proprietăților)uzual, rolurile desemnează relații

AnimalFood_animal

CowHorse

Pet_animalHorseDog

AnimalMammal

CowHorseDog

Animal_use_roleFood_rolePet_role

Food_animal = Animal and has_rolesome Food_role

Pet_animal = Animal and has_rolesome Pet_role

Page 155: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exprimarea rolurilor (proprietăților)

situație:Horse plays_role some Food_role

toți caii au rol de animale bune de consum

o afirmație prea categorică

Page 156: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Exprimarea rolurilor (proprietăților)

soluții:ignorarea problemei într-un anumit context

sauînlocuirea lui has_role cu may_have_role

se poate specificaFood_Horse = Horse and has_role Food_role

Page 157: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Observație:anumite entități pot fi deduse pe baza inferențelor

– via reasoners (e.g., FaCT++, HermiT, Pellet)

Grass and Leafy_plants are both kinds of Plant

revezi exempleledin cursul anterior

Page 158: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Comentarea și parafrazarea tuturor claselordin cadrul ontologiei

foarte util pentru alte persoane care vor folosiși/sau vor extinde ontologia

Page 159: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Oferirea unui set de clase de probă șia unui cadru de testare a ontologiei

clase de probă = clase suplimentare care pot să fie sau nu satisfiabile sau clasificabile

într-un context particular – “excepțiile de la regulă”

în ontologia finală, vor fi eliminate

Page 160: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz: privire de ansamblu

Living Thing

Grass

Animal

Plant

Tree

Body Part

Arm

Leg

Person

Cow

Carnivore

Herbivoreeats

eats

eats

has part

Page 161: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

Modelarea unui web privitor la un muzeu de artă

adaptare după Enrico Franconi

eronată!

Page 162: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

TBox redundant + ciclicnu se pot detecta ușor inconsistențele

Page 163: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

studiu de caz

La nivel de ABox se specifică:Dali este pictor, Pescuit de ton este tablou,

tabloul Pescuit de ton al lui Dali se găsește în Madridtabloul Pescuit de ton, pictat de Dali în 1966,

se găsește în Madrid etc.

date specificate redundant:Painter (dali), PAINTING (dali, tuna-fishing),

Painting (tuna-fishing), AUTHOR (tuna-fishing, dali),...

Page 164: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

concluzii

Etape importante privind crearea unei ontologii:

initial feasibility study & requirement specification

knowledge acquisition

conceptualization

formalization

evaluation

refinement

Page 165: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

concluzii

Adoptarea unei/unor metodologii

exemplu de referință:NeOn methodology (A. Gómez-Pérez et al., 2010)

propune diverse scenarii,adaptate scopului și domeniului modelat

http://www.neon-project.org/nw/NeOn_Book

Page 166: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

concluzii

Dezvoltarea unei/unor ontologiitrebuie să reprezinte doar primul pas

un model conceptual nu are sensdacă nu e utilizat în practică

Page 167: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

baze de dateaplicațiisoftware

serviciiWeb

problem-solving methods

baze de cunoștințe

recomandare, filtrare, analiză,…

adaptare după Alan Rector et al., 2005

declară o manierăde structurare

oferă o descrierea unui domeniu (web)

ontologii

Page 168: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

rezumat

knowledge engineeringmetodologii de proiectare a ontologiilor

studii de caz

Page 169: Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cunoştinţe. Metodologii de proiectare

Dr.

Sab

in B

ura

ga

www.purl.org/net/busaco

episodul viitor: inginerie ontologică (II)alinierea ontologiilor & șabloane de proiectare