Ontologii în contextul WWW
OWL 2
de la formalizare la realizarea raționamentelor

Dr. Sabin Buragawww.purl.org/net/busaco...
Alfred Korzybski

Dr. Sabin Buragawww.purl.org/net/busaco

“O hartă nu înseamnă teritoriul.”
Dr. Sabin Buragawww.purl.org/net/busaco

realități
Ontologiile au drept scop
modelarea unei (părți a unei) lumi
termenii limbajului de modelare folosit
corespund entităților...
Dr. Sabin Buragawww.purl.org/net/busaco

În unele cazuri, modelarea unor domenii
necesită expresivități care nu sunt ofer...
OWL 2

Dr. Sabin Buragawww.purl.org/net/busaco

Extinderea OWL cu noi construcții care însă
să păstreze proprietățile din...
de exemplu:
restricții de cardinalitate calificate,
restricții privind reflexivitatea,
înlănțuirea proprietăților (propert...
(Horrocks, 2009):
restricții de cardinalitate calificate
e.g., persoane care au 2 prieteni vegetarieni

Dr. Sabin Buragaw...
(Horrocks, 2009):
restricții privind reflexivitatea locală
exemplu: “narcissists love themselves”

Dr. Sabin Buragawww.pu...
(Horrocks, 2009):
exprimarea de proprietăți anti-reflexive sau asimetrice
exemplificare: “nothing can be a proper part of ...
(Horrocks, 2009):
modelarea proprietăților disjuncte
e.g., o persoană nu poate fi simultan părinte și fiu
ai unei persoane...
(Horrocks, 2009):
posibilitatea de exprimare a cheilor (keys),
în sensul bazelor de date
exemplu: locația geografică + num...
Element DisjointUnion Earth Wind Fire Water

syntactic
sugar

Dr. Sabin Buragawww.purl.org/net/busaco

Exprimarea facilă ...
iPad is not a device owned by Ana
33 is not the age of Dan

syntactic
sugar

Dr. Sabin Buragawww.purl.org/net/busaco

Exp...
o resursă poate fi modelată simultan ca individ și clasă
SnowLeopard subClassOf BigCat – clasă
SnowLeopard type Endangered...
alături de proprietăți între obiecte (object property) și
cele vizând datele (data property),
pot fi specificată o suită d...
stabilirea construcțiilor OWL 2 ce corespund
unei anumite complexități computaționale
în vederea efectuării raționamentelo...
raționamente pentru ontologii largi: EL
interogări asupra unui volum mare de instanțe: QL
raționamente în contextul sistem...
oferă suport pentru efectuarea de raționamente
în timp polinomial pentru ontologii cu număr mare
de clase și/sau proprietă...
utilizare uzuală:
ontologii din domeniul științelor vieții
care vizează mai ales scalabilitatea

Dr. Sabin Buragawww.purl...
nu pot fi folosite:
calificări universale – e.g., AllValuesFrom
restricții vizând cardinalitatea
disjuncții la nivel de cl...
suport pentru efectuarea de interogări (optimizate)
în stilul bazelor de date convenționale
logspace
se pretează pentru on...
ofera expresivitatea necesară specificării de lexicoane
sau de scheme de tip UML ori ER (entity-relation)

similar cu OWL ...
se poate baza pe rescrierea interogărilor
conform tehnicilor de raționament automat

Dr. Sabin Buragawww.purl.org/net/bus...
nu pot fi utilizate:
calificări existențiale – e.g., SomeValuesFrom
calificări universale – e.g., AllValuesFrom
enumerări ...
permite exprimarea regulilor în cadrul ontologiilor
poate fi implementat în cadrul sistemelor convenționale
de baze de dat...
soluție complementară la
limbajele de specificare a regulilor la nivel de Web
RIF – Rule Interschange Format

Dr. Sabin Bu...
# reguli Jena privind descoperirea cunoștințelor despre un regizor
[(?movie cinema:directedBy ?director) ->
[(?director ci...
Sandro Hawke, OWL 2 Reference Card, W3C, 2009
www.w3.org/2007/OWL/refcard

Dr. Sabin Buragawww.purl.org/net/busaco

Pentr...
editare și medii de dezvoltare:
Protégé, Fluent Editor, TopBraid Composer
procesare – implementare de referință: OWL API
s...
Dr. Sabin Buragawww.purl.org/net/busaco

În ce manieră exprimăm – formal – înțelesul
(meaning) construcțiilor modelate?
Date o mulțime de enunțuri RDF privitoare
la un graf A și o mulțime de enunțuri referitoare
la un graf B, atunci A determi...
Date o mulțime de enunțuri RDF privitoare
la un graf A și o mulțime de enunțuri referitoare
la un graf B, atunci A determi...
OWL Full entailment
OWL DL entailment
OWL Lite entailment
RDFS entailment

util în realizarea interogărilor SPARQL
la nive...
un model teoretic oferă un mecanism de asociere
de relații între sintaxă și interpretări

Dr. Sabin Buragawww.purl.org/ne...
un model teoretic oferă un mecanism de asociere
de relații între sintaxă și interpretări
e.g., logica de ordin I (FOL – Fi...
Dr. Sabin Buragawww.purl.org/net/busaco

necesitatea folosirii unei/unor logici
Pentru o construcție sintactică,
pot exis...
Modelele se presupune că sunt analoage
unei (părți a unei) lumi
elementele modelului corespund obiectelor lumii

Dr. Sabin...
Trebuie specificată o relație formală
între sintaxă și modele
structura modelelor reflectă relațiile specificate
în cadrul...
Logici
limbaje formalizate menite a reprezenta cunoștințe
cu scopul de a putea fi deduse concluzii

Dr. Sabin Buragawww.p...
Logici
sintaxa exprimă propozițiile (sentences)
în cadrul limbajului folosit
semantica definește înțelesul – formal – al p...
Exemplu: limbajul aritmetic
x + 33 > y este o propoziție; x33 + y > nu e propoziție

x + 33 > y este adevărată (true) iff
...
Logicile sunt caracterizate
de ceea ce exprimă (commit) ca “primitive”

Dr. Sabin Buragawww.purl.org/net/busaco

necesita...
Logicile sunt caracterizate
de ceea ce exprimă (commit) ca “primitive”

Dr. Sabin Buragawww.purl.org/net/busaco

necesita...
Dr. Sabin Buragawww.purl.org/net/busaco

Limbaj
Declarații ontologice Declarații epistemologice
(logic)
(ce anume există)...
Modele
lumi având o anumită structură
în care adevărul poate fi evaluat (dedus)

Dr. Sabin Buragawww.purl.org/net/busaco
...
Modele
lumi având o anumită structură
în care adevărul poate fi evaluat (dedus)
m este model pentru o propoziție p
dacă p ...
Baza de cunoștințe (KB – knowledge base)
mulțime de propoziții descrise într-un limbaj formalizat

teorie logică

Dr. Sabi...
Baza de cunoștințe (KB – knowledge base)
conține cunoștințele privitoare la lumea modelată
care pot fi manipulate via algo...
Baza de cunoștințe KB determină, implică, satisface
(entails) propoziția p
– adică KB ⊨ p –
dacă și numai dacă
p este true...
Baza de cunoștințe KB deduce (infer)
propoziția p folosind algoritmul i
– adică KB ⊦i p –
dacă și numai dacă
p poate fi de...
Soundness
i este sound
dacă având KB ⊦i p atunci e adevărat că KB ⊨ p

Dr. Sabin Buragawww.purl.org/net/busaco

necesitat...
Completeness
i este complete
dacă KB ⊨ p implică faptul că KB ⊦i p

Dr. Sabin Buragawww.purl.org/net/busaco

necesitatea ...
Domeniul modelat – partea lumii modelate de
ontologie – este interpretat ca o mulțime (set) 

Dr. Sabin Buragawww.purl.o...
Obiectele (entitățile, things) lumii
sunt interpretate ca fiind elemente ale lui 

Dr. Sabin Buragawww.purl.org/net/busa...
Obiectele (entitățile, things) lumii
sunt interpretate ca fiind elemente ale lui 
clasele/conceptele (predicate unare)
su...
De exemplu, relația subClassOf dintre clase
poate fi interpretată ca o incluziune de mulțimi

de revizitat
teoria mulțimil...
adaptare după (Sean Bechhofer, 2004)
Dr. Sabin Buragawww.purl.org/net/busaco
Un vocabular este o mulțime de nume utilizate
în cadrul lumii modelate
{ Tux, Pinguin, Animal, Anamaria, Persoana,
Compute...
Un vocabular este o mulțime de nume utilizate
în cadrul lumii modelate
{ Tux, Pinguin, Animal, Anamaria, Persoana,
Compute...
Înțelesul constrângerilor (Enrico Franconi, 2003):

relația de tip isA: AreaManager ⊆ Manager
disjuncția claselor: AreaMan...
Înțelesul relațiilor (Enrico Franconi, 2003):

Dr. Sabin Buragawww.purl.org/net/busaco

formalizare
Înțelesul cardinalităților (Enrico Franconi, 2003):

mulțimea tuturor
instanțelor

Dr. Sabin Buragawww.purl.org/net/busac...
O interpretare I a vocabularului e un tuplu  , ⋅I 

domeniul este reprezentat de mulțimea 
asocierea dintre sintaxă și...
O interpretare I a vocabularului e un tuplu  , ⋅I 
numele obiectelor – asociate elementelor lui 
numele predicatelor u...
Ontologiile modelează în special clase
formează terminologia
ce trebuie să fie adevărat în legătură cu fiecare concept
din...
Ontologiile modelează în special clase
formează terminologia
ce trebuie să fie adevărat în legătură cu fiecare concept
din...
Ontologiile oferă un mecanism limitat de
exprimare a indivizilor – instanțe ale claselor
descrierea indivizilor se poate f...
Ontologiile oferă un mecanism limitat de
exprimare a indivizilor – instanțe ale claselor
descrierea indivizilor se poate f...
Din punct de vedere computațional,
raționamentele privitoare la indivizi
sunt intractabile în general

F. Baader et al., 2...
Din punct de vedere computațional,
raționamentele privitoare la indivizi
sunt intractabile în general
în ipoteza lumilor î...
Semantica formală e dată de logicile descrierii
(description logics)

Dr. Sabin Buragawww.purl.org/net/busaco

formalizar...
Părți decidabile din logica de ordin I
FOL – First Order Logic
constructori pentru definirea de clase și proprietăți
(even...
Proprietăți dezirabile în contextul Web-ului
(Ian Horrocks, 2009)
decidabilitate
complexitate scăzută

important!

Dr. Sab...
Pun la dispoziție sisteme de inferență (reasoners)
proceduri sound & complete pentru luarea deciziilor
privind anumite pro...
Dr. Sabin Buragawww.purl.org/net/busaco

formalizare: reasoning
Implementări optimizate (pentru OWL 1 și/sau 2)
FaCT++
He...
Familie de formalisme logice
folosite pentru reprezentarea cunoștințelor

Dr. Sabin Buragawww.purl.org/net/busaco

descri...
Cea mai simplă DL e ALC (închisă propozițional)

Attributive Language with Complements
AL specificată de (Schmidt-Schauß &...
Cea mai simplă DL e ALC (închisă propozițional)
concepte construite folosind booleeni ⊓, ⊔, 
plus cuantificatorii , 
ro...
Exemplu: “tații fericiți” (Ian Horrocks, 2004)
HappyFather  Man ⊓
 hasChild.Female ⊓
 hasChild.Male ⊓
 hasChild.(Rich ...
Exemplu: specificarea unor concepte privind
organismul uman (Ian Horrocks, 2009)
Heart ⊆ MuscularOrgan ⊓
 isPartOf.Circul...
Dr. Sabin Buragawww.purl.org/net/busaco

description logics – extensii
S proprietățile sunt tranzitive
H ierarhia proprie...
Dr. Sabin Buragawww.purl.org/net/busaco

description logics – extensii
S proprietățile sunt tranzitive
H ierarhia proprie...
Dr. Sabin Buragawww.purl.org/net/busaco

vezi Evgeny Zolin – http://www.cs.man.ac.uk/~ezolin/dl/
Baza de cunoștințe (KB) e compusă din
2 mulțimi de axiome:

Dr. Sabin Buragawww.purl.org/net/busaco

description logics

...
Baza de cunoștințe (KB) e compusă din
2 mulțimi de axiome:

Dr. Sabin Buragawww.purl.org/net/busaco

description logics

...
HappyFather  Man ⊓
hasChild.Female ⊓ …

ABox (data)
Radu : HappyFather
<Radu, Andreea>: hasChild

Dr. Sabin Buragawww.p...
Remarcă:
această separație nu are neapărat
o semnificație logică, dar este convenabilă
atât din punct de vedere conceptual...
Pentru OWL 1 – nivelul DL,
modelul formal este specificat
de logica descrierii de tip SHIQ

Dr. Sabin Buragawww.purl.org/...
Pentru OWL 1 – nivelul DL,
modelul formal este specificat
de logica descrierii de tip SHIQ
echivalentă cu SHOIN(Dn)
OWL DL...
OWL DL

OWL Lite

se permite
“orice”

nu se poate folosi
owl:cardinality pentru
TransitiveProperty

definițiile
RDFS
se po...
Pentru OWL, constructorii DL sunt:

se permite și folosirea tipurilor de date XML Schema
un exemplu: areAni.byte

Dr. Sab...
În cazul OWL 2:
OWL EL la nivel formal se bazează pe logica EL++
restrânsă la exprimarea restricțiilor existențiale
(Baade...
O ontologie OWL se poate asocia
unei baze de cunoștințe DL notată K = <T, A>
T TBox – mulțime de axiome de forma:
C⊑D
CD
...
Exemplu de TBox (Ian Horrocks)

Dr. Sabin Buragawww.purl.org/net/busaco

description logics
Exemplu de ABox (Ian Horrocks)

Dr. Sabin Buragawww.purl.org/net/busaco

description logics

o ontologie OWL e echivalent...
Axiomele TBox sunt de două tipuri:
“definiții”
C ⊑ D sau C  D, unde C reprezintă un nume de concept

Dr. Sabin Buragawww...
Axiomele TBox sunt de două tipuri:
“definiții”
C ⊑ D sau C  D, unde C reprezintă un nume de concept

axiome privitoare la...
Dr. Sabin Buragawww.purl.org/net/busaco

description logics
O interpretare I satisface – modelează – o axiomă A
I ⊨ A dac...
Definiții privind satisfiabilitatea:
I satisface mulțimea TBox T (adică I ⊨ T )
iff I satisface orice axiomă A din T
I sat...
Cunoștințele sunt semnificative (meaningful)
clasele pot avea instanțe:
conceptul C este satisfiabil în ceea ce privește K...
Cunoștințele sunt corecte – modelează intuițiile:
C subsumează D – adică C ⊑ D – în ceea ce privește K
iff pentru orice mo...
Cunoștințele sunt minimal redundante
– nu există sinonime nedorite:
C este echivalent cu D (C  D) în ceea ce privește K
i...
Interogarea cunoștințelor:
x este o instanță a conceptului C în ceea ce privește K
iff pentru orice model I al lui K, xI ...
Aspectele anterioare sunt reductibile la
consistența bazei de cunoștințe
o bază de cunoștințe K este consistentă
iff exist...
Verificarea formală a consistenței e utilă pentru
proiectarea și mentenanța de ontologii
semnificative – toate clasele pot...
Verificarea formală a consistenței e utilă pentru
oferirea de răspunsuri privind clasele/indivizii
găsirea claselor mai ge...
Pentru verificarea satisfiabilității (consistenței)
se pot utiliza algoritmi de tip tablou
(tableaux algorithms)
Francesco...
Dr. Sabin Buragawww.purl.org/net/busaco

description logics
Dat fiind un concept C, se încearcă a se construi un model
(e...
Conceptul C este descompus la nivel sintactic
se folosesc conceptele complexe și axiomele din TBox

Dr. Sabin Buragawww.p...
Se aplică regulile de expandare a tabloului
(tableau expansion rules)
se deduc constrângerile asupra elementelor modelului...
Regulile de tip tablou
corespund constructorilor din logică
de exemplu: ⊓, ⊔ etc.
unele reguli sunt nedeterministe – e.g.,...
Ne oprim când nu mai pot fi aplicate reguli ori
apare un conflict (clash)
conflictul reprezintă o contradicție evidentă
de...
C este satisfiabil iff
regulile pot fi aplicate astfel încât
este construit un arbore complet expandat
fără conflicte

Dr....
Fie baza de cunoștințe
{ HappyParent  Person ⊓ hasChild.(Doctor ⊔
 hasChild.Doctor),
John: HappyParent, John hasChild Ma...
fapte privitoare
la indivizi

Dr. Sabin Buragawww.purl.org/net/busaco

description logics – exemplu
expandare
Dr. Sabin Buragawww.purl.org/net/busaco

description logics – exemplu
expandare
Dr. Sabin Buragawww.purl.org/net/busaco

description logics – exemplu
conflict!
Dr. Sabin Buragawww.purl.org/net/busaco

description logics – exemplu
Dr. Sabin Buragawww.purl.org/net/busaco

description logics – exemplu

pentru a nu exista contradicții,
înseamnă că Mary ...
Person ⊓ hasChild.(Doctor ⊔  hasChild.Doctor)
Dr. Sabin Buragawww.purl.org/net/busaco

<owl:Class>
<owl:intersectionOf ...
Person ⊓ hasChild.(Doctor ⊔  hasChild.Doctor)
Dr. Sabin Buragawww.purl.org/net/busaco

<owl:Class>
<owl:intersectionOf ...
Specificarea grafică a unei ontologii (Franconi, 2003):

Dr. Sabin Buragawww.purl.org/net/busaco

description logics – ex...
“Rescrierea” ontologiei în termeni logici:

Dr. Sabin Buragawww.purl.org/net/busaco

description logics – exemplificare
Dr. Sabin Buragawww.purl.org/net/busaco

inferențe
Sistemele de reasoning bazate pe logicile descrierii
oferă premisele r...
Exemplul 1 – hoțul și călătorul fără bilet
primul fapt: amprentele găsite la locul unui jaf
au identificat ca posibil hoț ...
Dr. Sabin Buragawww.purl.org/net/busaco

inferențe
Exemplul 1 – hoțul și călătorul fără bilet
alt doilea fapt: în tramvai...
Exemplul 1 – hoțul și călătorul fără bilet
poliția deține o aplicație Web ce recurge la
o bază de cunoștințe în care se st...
Exemplul 1 – hoțul și călătorul fără bilet
concluzie: se poate realiza inferența
“Hoțul este călătorul prins fără bilet.”
...
Exemplul 2 – achiziționarea unui aparat foto
Can a take a
photo with this?
3

Aplicație Web
recomandând
cumpărături
online...
Exemplul 2 – achiziționarea unui aparat foto
aplicația Web consultă o ontologie OWL privitoare la
camere digitale de unde ...
Exemplul 2 – achiziționarea unui aparat foto
ontologiile exprimate în OWL pot conduce la
descoperirea dinamică a relațiilo...
Exemplul 3 – locul de naștere a regelui Kamehameha
fapt: în urma extragerii de date de pe Web, s-a obținut
<individ rdf:ab...
Exemplul 3 – locul de naștere a regelui Kamehameha
ontologia privitoare la persoane indică
faptul că un individ are un uni...
Recurgerea la un reasoner
– e.g., FaCT++ sau HermiT incluse în Protégé –
pentru deducția diverselor aspecte privitoare
la ...
nivelul conceptual (cunoștințe): TBox

Multimedia
detinutDe

Audio

rdfs:subClassOf

Video

detine
Proprietar

rdf:type

r...
Dr. Sabin Buragawww.purl.org/net/busaco

deduceri automate pe baza faptelor exprimate
Realizarea de raționamente automate
– interogări (queries) DL –
cu ajutorul expresiilor de clasă (class expression)

speci...
Dr. Sabin Buragawww.purl.org/net/busaco

inferente: studiu de caz

deducerea faptelor referitoare la clasa Proprietar
(ai...
clasa entităților care
nu aparțin clasei Femeie

obținerea claselor complementare cu una specificată

Dr. Sabin Buragawww...
deducții
pe baza relațiilor

Dr. Sabin Buragawww.purl.org/net/busaco

entitățile care sunt rude
cu măcar o femeie
clasa entităților ce dețin
măcar o resursă
multimedia și sunt femei

exprimarea
intersecțiilor de clase

Dr. Sabin Buraga...
clasa entităților care dețin
măcar o resursă
multimedia și sunt bărbați

Dr. Sabin Buragawww.purl.org/net/busaco

inferen...
clasa resurselor
multimedia
deținute de o femeie

exprimarea intervalului
(range-ului) unei relații

Dr. Sabin Buragawww....
clasa resurselor
multimedia
deținute de Anca

specificarea de valori
în contextul relațiilor

Dr. Sabin Buragawww.purl.or...
expresii de clasă
mai complexe

Dr. Sabin Buragawww.purl.org/net/busaco

inferente: studiu de caz
clasa entităților în relație
de rudenie cu un bărbat și
care dețin minim 1 video

exprimarea
cardinalității

Dr. Sabin Bur...
Dr. Sabin Buragawww.purl.org/net/busaco

inferente: studiu de caz

clasa entităților deținute de un individ
sau care apar...
Fluent Editor permite deducții
pentru ontologii modelate în limbaj natural
Dr. Sabin Buragawww.purl.org/net/busaco

infer...
Implementările actuale bazate pe OWL DL
beneficiază de cercetările
din domeniul logicilor descrierilor

Dr. Sabin Buragaw...
Proprietăți formale înțelese în profunzime
(complexitate, decidabilitate)
Algoritmi de raționament automat eficienți
Siste...
OWL 2
logicile descrierii + baze de cunoștințe
suportul pentru raționamente automate

Dr. Sabin Buragawww.purl.org/net/bu...


❄

❄

❄

❄ ❄
❄



episodul viitor: vacanța de iarnă ☃



Dr. Sabin Buragawww.purl.org/net/busaco

❄
Upcoming SlideShare
Loading in …5
×

Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Logicile descrierii. Raţionamente automate

358 views

Published on

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

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
358
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Logicile descrierii. Raţionamente automate

  1. 1. Ontologii în contextul WWW OWL 2 de la formalizare la realizarea raționamentelor Dr. Sabin Buragawww.purl.org/net/busaco Dezvoltarea aplicațiilor Web
  2. 2. Alfred Korzybski Dr. Sabin Buragawww.purl.org/net/busaco “O hartă nu înseamnă teritoriul.”
  3. 3. Dr. Sabin Buragawww.purl.org/net/busaco realități
  4. 4. Ontologiile au drept scop modelarea unei (părți a unei) lumi termenii limbajului de modelare folosit corespund entităților din cadrul lumii Dr. Sabin Buragawww.purl.org/net/busaco realități
  5. 5. Dr. Sabin Buragawww.purl.org/net/busaco În unele cazuri, modelarea unor domenii necesită expresivități care nu sunt oferite de limbajul OWL 1.0
  6. 6. OWL 2 Dr. Sabin Buragawww.purl.org/net/busaco Extinderea OWL cu noi construcții care însă să păstreze proprietățile din cadrul OWL DL
  7. 7. de exemplu: restricții de cardinalitate calificate, restricții privind reflexivitatea, înlănțuirea proprietăților (property chains) etc. Dr. Sabin Buragawww.purl.org/net/busaco Expresivitate ridicată
  8. 8. (Horrocks, 2009): restricții de cardinalitate calificate e.g., persoane care au 2 prieteni vegetarieni Dr. Sabin Buragawww.purl.org/net/busaco OWL 2 oferă putere de expresivitate mai mare
  9. 9. (Horrocks, 2009): restricții privind reflexivitatea locală exemplu: “narcissists love themselves” Dr. Sabin Buragawww.purl.org/net/busaco OWL 2 oferă putere de expresivitate mai mare
  10. 10. (Horrocks, 2009): exprimarea de proprietăți anti-reflexive sau asimetrice exemplificare: “nothing can be a proper part of itself” (proprietate anti-reflexivă) Dr. Sabin Buragawww.purl.org/net/busaco OWL 2 oferă putere de expresivitate mai mare
  11. 11. (Horrocks, 2009): modelarea proprietăților disjuncte e.g., o persoană nu poate fi simultan părinte și fiu ai unei persoane date Dr. Sabin Buragawww.purl.org/net/busaco OWL 2 oferă putere de expresivitate mai mare
  12. 12. (Horrocks, 2009): posibilitatea de exprimare a cheilor (keys), în sensul bazelor de date exemplu: locația geografică + numărul de înmatriculare semnifică identificatorul unic al unui autovehicul Dr. Sabin Buragawww.purl.org/net/busaco OWL 2 oferă putere de expresivitate mai mare
  13. 13. Element DisjointUnion Earth Wind Fire Water syntactic sugar Dr. Sabin Buragawww.purl.org/net/busaco Exprimarea facilă a reuniunilor disjuncte (disjoint unions)
  14. 14. iPad is not a device owned by Ana 33 is not the age of Dan syntactic sugar Dr. Sabin Buragawww.purl.org/net/busaco Exprimarea negațiilor
  15. 15. o resursă poate fi modelată simultan ca individ și clasă SnowLeopard subClassOf BigCat – clasă SnowLeopard type EndangeredSpecies – individ Dr. Sabin Buragawww.purl.org/net/busaco Meta-modelare în OWL2
  16. 16. alături de proprietăți între obiecte (object property) și cele vizând datele (data property), pot fi specificată o suită de proprietăți de adnotare (annotation property) creator, date, versionInfo, priorVersion, backwardCompatibleWith, deprecated, incompatibleWith, seeAlso etc. Dr. Sabin Buragawww.purl.org/net/busaco Suport pentru adnotări
  17. 17. stabilirea construcțiilor OWL 2 ce corespund unei anumite complexități computaționale în vederea efectuării raționamentelor automate Dr. Sabin Buragawww.purl.org/net/busaco Asocierea de profile
  18. 18. raționamente pentru ontologii largi: EL interogări asupra unui volum mare de instanțe: QL raționamente în contextul sistemelor de reguli: RL www.w3.org/TR/owl2-profiles/ de studiat M. Krötzsch, OWL 2 Profiles, Springer (2012) http://korrekt.org/page/OWL_2_Profiles Dr. Sabin Buragawww.purl.org/net/busaco Profile OWL 2:
  19. 19. oferă suport pentru efectuarea de raționamente în timp polinomial pentru ontologii cu număr mare de clase și/sau proprietăți Dr. Sabin Buragawww.purl.org/net/busaco OWL EL
  20. 20. utilizare uzuală: ontologii din domeniul științelor vieții care vizează mai ales scalabilitatea Dr. Sabin Buragawww.purl.org/net/busaco OWL EL
  21. 21. nu pot fi folosite: calificări universale – e.g., AllValuesFrom restricții vizând cardinalitatea disjuncții la nivel de clase, proprietăți sau obiecte enumerări ce implică mai mult de un individ proprietăți obiectuale inverse, (a)simetrice, funcționale Dr. Sabin Buragawww.purl.org/net/busaco OWL EL
  22. 22. suport pentru efectuarea de interogări (optimizate) în stilul bazelor de date convenționale logspace se pretează pentru ontologii având un volum mare de fapte (indivizi) Dr. Sabin Buragawww.purl.org/net/busaco OWL QL
  23. 23. ofera expresivitatea necesară specificării de lexicoane sau de scheme de tip UML ori ER (entity-relation) similar cu OWL Lite – versiunea 1 Dr. Sabin Buragawww.purl.org/net/busaco OWL QL
  24. 24. se poate baza pe rescrierea interogărilor conform tehnicilor de raționament automat Dr. Sabin Buragawww.purl.org/net/busaco OWL QL
  25. 25. nu pot fi utilizate: calificări existențiale – e.g., SomeValuesFrom calificări universale – e.g., AllValuesFrom enumerări de indivizi/literali restricții privind cardinalitatea disjuncția proprietăți (invers) funcționale și tranzitive aserțiuni privind egalitatea indivizilor (SameIndividual) Dr. Sabin Buragawww.purl.org/net/busaco OWL QL
  26. 26. permite exprimarea regulilor în cadrul ontologiilor poate fi implementat în cadrul sistemelor convenționale de baze de date relaționale complexitate polinomială Dr. Sabin Buragawww.purl.org/net/busaco OWL RL
  27. 27. soluție complementară la limbajele de specificare a regulilor la nivel de Web RIF – Rule Interschange Format Dr. Sabin Buragawww.purl.org/net/busaco OWL RL
  28. 28. # reguli Jena privind descoperirea cunoștințelor despre un regizor [(?movie cinema:directedBy ?director) -> [(?director cinema:directsGenre ?genre) <(?movie cinema:hasGenre ?genre) ] [(?director cinema:investigatesTheme ?theme) <(?movie cinema:hasTheme ?theme) ] [(?director cinema:usesImagery ?imagery) <(?movie cinema:hasImagery ?imagery) ] ] Dr. Sabin Buragawww.purl.org/net/busaco Specificarea regulilor pentru procesarea în Jena (exemplu realizat de Sergiu Bursuc, absolvent FII)
  29. 29. Sandro Hawke, OWL 2 Reference Card, W3C, 2009 www.w3.org/2007/OWL/refcard Dr. Sabin Buragawww.purl.org/net/busaco Pentru detalii sintactice, a se consulta:
  30. 30. editare și medii de dezvoltare: Protégé, Fluent Editor, TopBraid Composer procesare – implementare de referință: OWL API sisteme de efectuare de raționamente (reasoners): FaCT++, HermiT, Pellet, Racer Pro etc. interogare – OWL QL: Owlgres, OWLIM, QuOnto etc. Dr. Sabin Buragawww.purl.org/net/busaco Instrumente oferind suport pentru OWL 2
  31. 31. Dr. Sabin Buragawww.purl.org/net/busaco În ce manieră exprimăm – formal – înțelesul (meaning) construcțiilor modelate?
  32. 32. Date o mulțime de enunțuri RDF privitoare la un graf A și o mulțime de enunțuri referitoare la un graf B, atunci A determină (entails) B dacă fiecare enunț din B este adevărat și în A Dr. Sabin Buragawww.purl.org/net/busaco entailment
  33. 33. Date o mulțime de enunțuri RDF privitoare la un graf A și o mulțime de enunțuri referitoare la un graf B, atunci A determină (entails) B dacă fiecare enunț din B este adevărat și în A aceasta nu oferă obligatoriu seria pașilor deductivi care conduc de la A la B (contrast cu procesul de inferență) Dr. Sabin Buragawww.purl.org/net/busaco entailment
  34. 34. OWL Full entailment OWL DL entailment OWL Lite entailment RDFS entailment util în realizarea interogărilor SPARQL la nivel de indivizi adaptare după (Hebeler et al., 2009) RDF entailment Dr. Sabin Buragawww.purl.org/net/busaco entailment
  35. 35. un model teoretic oferă un mecanism de asociere de relații între sintaxă și interpretări Dr. Sabin Buragawww.purl.org/net/busaco Înțelesul (meaning) e dat de asocierea unui formalism
  36. 36. un model teoretic oferă un mecanism de asociere de relații între sintaxă și interpretări e.g., logica de ordin I (FOL – First Order Logic) Dr. Sabin Buragawww.purl.org/net/busaco Intelesul (meaning) e dat de asocierea unui formalism
  37. 37. Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici Pentru o construcție sintactică, pot exista mai multe sensuri (interpretări, modele) dorim obiectivitate – e.g., eliminarea ambiguităților termenul “toc” ≠ termenul “toc”
  38. 38. Modelele se presupune că sunt analoage unei (părți a unei) lumi elementele modelului corespund obiectelor lumii Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  39. 39. Trebuie specificată o relație formală între sintaxă și modele structura modelelor reflectă relațiile specificate în cadrul sintaxei utilizarea unei/unor logici Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  40. 40. Logici limbaje formalizate menite a reprezenta cunoștințe cu scopul de a putea fi deduse concluzii Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  41. 41. Logici sintaxa exprimă propozițiile (sentences) în cadrul limbajului folosit semantica definește înțelesul – formal – al propozițiilor i.e., specifică adevărul (truth) unei propoziții în cadrul lumii modelate Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  42. 42. Exemplu: limbajul aritmetic x + 33 > y este o propoziție; x33 + y > nu e propoziție x + 33 > y este adevărată (true) iff numărul x + 33 nu e mai mic decât numărul y x + 33 > y este true într-o lume în care x = 1 și y = 7 x + 33 > y este false într-o lume în care x = 1 și y = 69 x + 33 > x este true în orice lume – tautologie Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  43. 43. Logicile sunt caracterizate de ceea ce exprimă (commit) ca “primitive” Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  44. 44. Logicile sunt caracterizate de ceea ce exprimă (commit) ca “primitive” Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici declarații ontologice – exprimă ce anume există: fapte (facts), lucruri (things), timp (time), credințe (beliefs) declarații epistemologice – exprimă care este starea cunoașterii acumulate
  45. 45. Dr. Sabin Buragawww.purl.org/net/busaco Limbaj Declarații ontologice Declarații epistemologice (logic) (ce anume există) (ce cunoaște o entitate/agent) Logica prop. fapte (facts) true / false / unknown Logica de fapte, obiecte, relații true / false / unknown ordin I (FOL) Logica fapte, obiecte, relații, true / false / unknown temporală timp Teoria grade de cunoaștere (belief) fapte probab. 0..1 grade de cunoaștere (belief) Logica fuzzy grade de adevăr 0..1 conform (Enrico Franconi, 2003)
  46. 46. Modele lumi având o anumită structură în care adevărul poate fi evaluat (dedus) Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  47. 47. Modele lumi având o anumită structură în care adevărul poate fi evaluat (dedus) m este model pentru o propoziție p dacă p este true în cadrul modelului m M (p) reprezintă mulțimea tuturor modelelor lui p Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  48. 48. Baza de cunoștințe (KB – knowledge base) mulțime de propoziții descrise într-un limbaj formalizat teorie logică Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  49. 49. Baza de cunoștințe (KB – knowledge base) conține cunoștințele privitoare la lumea modelată care pot fi manipulate via algoritmi deductivi (incluși într-un motor de inferență – inference engine) Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  50. 50. Baza de cunoștințe KB determină, implică, satisface (entails) propoziția p – adică KB ⊨ p – dacă și numai dacă p este true în toate lumile în care KB este true dat fiind modelul M (p), KB ⊨ p dacă și numai dacă M (KB) ⊆ M (p) Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  51. 51. Baza de cunoștințe KB deduce (infer) propoziția p folosind algoritmul i – adică KB ⊦i p – dacă și numai dacă p poate fi dedusă (derivată) din KB de către procedura (algoritmul) i Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  52. 52. Soundness i este sound dacă având KB ⊦i p atunci e adevărat că KB ⊨ p Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  53. 53. Completeness i este complete dacă KB ⊨ p implică faptul că KB ⊦i p Dr. Sabin Buragawww.purl.org/net/busaco necesitatea folosirii unei/unor logici
  54. 54. Domeniul modelat – partea lumii modelate de ontologie – este interpretat ca o mulțime (set)  Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  55. 55. Obiectele (entitățile, things) lumii sunt interpretate ca fiind elemente ale lui  Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  56. 56. Obiectele (entitățile, things) lumii sunt interpretate ca fiind elemente ale lui  clasele/conceptele (predicate unare) sunt submulțimi ale lui  proprietățile (predicate binare) sunt submulțimi ale lui    = 2 predicatele ternare sunt submulțimi ale lui 3 … Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  57. 57. De exemplu, relația subClassOf dintre clase poate fi interpretată ca o incluziune de mulțimi de revizitat teoria mulțimilor Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  58. 58. adaptare după (Sean Bechhofer, 2004) Dr. Sabin Buragawww.purl.org/net/busaco
  59. 59. Un vocabular este o mulțime de nume utilizate în cadrul lumii modelate { Tux, Pinguin, Animal, Anamaria, Persoana, Computer, detine,... } Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  60. 60. Un vocabular este o mulțime de nume utilizate în cadrul lumii modelate { Tux, Pinguin, Animal, Anamaria, Persoana, Computer, detine,... } uzual, exprimat sintactic într-un format deschis e.g., DCMI, FOAF etc. Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  61. 61. Înțelesul constrângerilor (Enrico Franconi, 2003): relația de tip isA: AreaManager ⊆ Manager disjuncția claselor: AreaManager ⋂ TopManager = ∅ Manager ⊆ AreaManager ⋃ TopManager Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  62. 62. Înțelesul relațiilor (Enrico Franconi, 2003): Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  63. 63. Înțelesul cardinalităților (Enrico Franconi, 2003): mulțimea tuturor instanțelor Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  64. 64. O interpretare I a vocabularului e un tuplu  , ⋅I  domeniul este reprezentat de mulțimea  asocierea dintre sintaxă și semantică e dată de ⋅I Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  65. 65. O interpretare I a vocabularului e un tuplu  , ⋅I  numele obiectelor – asociate elementelor lui  numele predicatelor unare (clase/concepte) sunt asociate submulțimilor lui  numele predicatelor binare (proprietăți) sunt asociate submulțimilor    similar, pentru arități superioare – dacă există Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  66. 66. Ontologiile modelează în special clase formează terminologia ce trebuie să fie adevărat în legătură cu fiecare concept din cadrul ontologiei Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  67. 67. Ontologiile modelează în special clase formează terminologia ce trebuie să fie adevărat în legătură cu fiecare concept din cadrul ontologiei formal, TBox – terminology box (schemă ontologică exprimată via RDFS și OWL) Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  68. 68. Ontologiile oferă un mecanism limitat de exprimare a indivizilor – instanțe ale claselor descrierea indivizilor se poate face prin baze de date, fișiere JSON, microdate HTML5, triple (RDF/RDFa) etc. Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  69. 69. Ontologiile oferă un mecanism limitat de exprimare a indivizilor – instanțe ale claselor descrierea indivizilor se poate face prin baze de date, fișiere JSON, microdate HTML5, triple (RDF/RDFa) etc. formal, ABox – datele, assertions Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  70. 70. Din punct de vedere computațional, raționamentele privitoare la indivizi sunt intractabile în general F. Baader et al., 2002 Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  71. 71. Din punct de vedere computațional, raționamentele privitoare la indivizi sunt intractabile în general în ipoteza lumilor închise (closed worlds), negația reprezintă eșec – cazul bazelor de date Dr. Sabin Buragawww.purl.org/net/busaco formalizare
  72. 72. Semantica formală e dată de logicile descrierii (description logics) Dr. Sabin Buragawww.purl.org/net/busaco formalizare: description logics detalii în F. Baader, D. Calvanese, D. McGuinness, D. Nardi, P. Patel-Schneider (Editors), The Description Logic Handbook: Theory, Implementation and Applications, Cambridge University Press, 2002
  73. 73. Părți decidabile din logica de ordin I FOL – First Order Logic constructori pentru definirea de clase și proprietăți (eventual, pe baza celor deja existente) pot fi exprimate axiome specificând fapte despre concepte (clase), roluri (proprietăți) și indivizi (instanțe) Dr. Sabin Buragawww.purl.org/net/busaco formalizare: description logics
  74. 74. Proprietăți dezirabile în contextul Web-ului (Ian Horrocks, 2009) decidabilitate complexitate scăzută important! Dr. Sabin Buragawww.purl.org/net/busaco formalizare: description logics
  75. 75. Pun la dispoziție sisteme de inferență (reasoners) proceduri sound & complete pentru luarea deciziilor privind anumite probleme pot fi deduse constrângeri suplimentare e.g., o entitate e sub-entitate a alteia, în cazul în care cea de a doua reprezintă o submultime a primei entități Dr. Sabin Buragawww.purl.org/net/busaco formalizare: reasoning
  76. 76. Dr. Sabin Buragawww.purl.org/net/busaco formalizare: reasoning Implementări optimizate (pentru OWL 1 și/sau 2) FaCT++ HermiT (oferit implicit de mediul Protégé) Pellet Racer Snorocket (pentru OWL EL) TrOWL … www.cs.man.ac.uk/~sattler/reasoners.html
  77. 77. Familie de formalisme logice folosite pentru reprezentarea cunoștințelor Dr. Sabin Buragawww.purl.org/net/busaco description logics
  78. 78. Cea mai simplă DL e ALC (închisă propozițional) Attributive Language with Complements AL specificată de (Schmidt-Schauß & Smolka, 1991) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  79. 79. Cea mai simplă DL e ALC (închisă propozițional) concepte construite folosind booleeni ⊓, ⊔,  plus cuantificatorii ,  rolurile (proprietățile) pot fi atomice Dr. Sabin Buragawww.purl.org/net/busaco description logics
  80. 80. Exemplu: “tații fericiți” (Ian Horrocks, 2004) HappyFather  Man ⊓  hasChild.Female ⊓  hasChild.Male ⊓  hasChild.(Rich ⊔ Happy) un tată fericit este un bărbat care are drept copii – bogați sau fericiți – măcar o fată și un băiat Dr. Sabin Buragawww.purl.org/net/busaco description logics
  81. 81. Exemplu: specificarea unor concepte privind organismul uman (Ian Horrocks, 2009) Heart ⊆ MuscularOrgan ⊓  isPartOf.CirculatorySystem HeartDisease  Disease ⊓  affects.Heart VascularDisease  Disease ⊓  affects.( isPartOf.CirculatorySystem) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  82. 82. Dr. Sabin Buragawww.purl.org/net/busaco description logics – extensii S proprietățile sunt tranzitive H ierarhia proprietăților – e.g., hasDaughter ⊑ hasChild O nominali/singletons – e.g., { Tux } I proprietăți inverse – e.g., isChildOf  hasChild– N restricții de cardinalitate – e.g., ≥2 hasChild, ≤3 hasChild Q restricții de cardinalitate calificate – e.g., ≥2 hasChild.Male F restricții de cardinalitate funcționale – e.g., ≤1 hasMother specii DL
  83. 83. Dr. Sabin Buragawww.purl.org/net/busaco description logics – extensii S proprietățile sunt tranzitive H ierarhia proprietăților – e.g., hasDaughter ⊑ hasChild O nominali/singletons – e.g., { Tux } I proprietăți inverse – e.g., isChildOf  hasChild– N restricții de cardinalitate – e.g., ≥2 hasChild, ≤3 hasChild Q restricții de cardinalitate calificate – e.g., ≥2 hasChild.Male F restricții de cardinalitate funcționale – e.g., ≤1 hasMother la nivel sintactic, pot fi exprimate prin OWL
  84. 84. Dr. Sabin Buragawww.purl.org/net/busaco vezi Evgeny Zolin – http://www.cs.man.ac.uk/~ezolin/dl/
  85. 85. Baza de cunoștințe (KB) e compusă din 2 mulțimi de axiome: Dr. Sabin Buragawww.purl.org/net/busaco description logics TBox descrie structura domeniului – schema conceptuală ABox descrie o situație concretă – datele, instanțele
  86. 86. Baza de cunoștințe (KB) e compusă din 2 mulțimi de axiome: Dr. Sabin Buragawww.purl.org/net/busaco description logics TBox descrie structura domeniului – schema conceptuală SuperStud ⊑ WebDeveloper ⊓ Masterand ⊓ Eminent HappyFather  Man ⊓ hasChild.Female ⊓ … transitive (rudaCu) ABox descrie o situație concretă – datele, instanțele Radu: HappyFather <Radu, Andreea>: hasChild
  87. 87. HappyFather  Man ⊓ hasChild.Female ⊓ … ABox (data) Radu : HappyFather <Radu, Andreea>: hasChild Dr. Sabin Buragawww.purl.org/net/busaco Man  Human ⊓ Male Interface TBox (schema) Inference System Knowledge Base
  88. 88. Remarcă: această separație nu are neapărat o semnificație logică, dar este convenabilă atât din punct de vedere conceptual, cât și din cel al implementării Dr. Sabin Buragawww.purl.org/net/busaco description logics
  89. 89. Pentru OWL 1 – nivelul DL, modelul formal este specificat de logica descrierii de tip SHIQ Dr. Sabin Buragawww.purl.org/net/busaco description logics
  90. 90. Pentru OWL 1 – nivelul DL, modelul formal este specificat de logica descrierii de tip SHIQ echivalentă cu SHOIN(Dn) OWL DL ≈ SHIQ extinsă cu nominali – i.e., SHOIQ OWL Lite ≈ SHIQ cu restricții funcționale – SHIF a se vedea lucrările lui Ian Horrocks: http://www.cs.ox.ac.uk/people/ian.horrocks/ Dr. Sabin Buragawww.purl.org/net/busaco description logics
  91. 91. OWL DL OWL Lite se permite “orice” nu se poate folosi owl:cardinality pentru TransitiveProperty definițiile RDFS se pot mixa cu cele OWL o ontologie OWL DL nu poate importa una OWL Full se mențin restricțiile OWL DL, plus: owl:minCardinality și owl:maxCardinality nu se pot folosi OWL Full e nedecidabilă Dr. Sabin Buragawww.purl.org/net/busaco OWL Full pentru owl:cardinality valorile permise sunt 0 și 1 nu se poate defini o clasă ca membră a alteia nu se pot utiliza: FunctionalProperty si owl:hasValue, InverseFunctionalProperty owl:disjointWith, owl:oneOf, se pot utiliza doar owl:complementOf și pentru ObjectProperty owl:unionOf
  92. 92. Pentru OWL, constructorii DL sunt: se permite și folosirea tipurilor de date XML Schema un exemplu: areAni.byte Dr. Sabin Buragawww.purl.org/net/busaco description logics
  93. 93. În cazul OWL 2: OWL EL la nivel formal se bazează pe logica EL++ restrânsă la exprimarea restricțiilor existențiale (Baader, Brandt & Lutz, 2005, 2008) OWL RL se inspiră din DLP – Description Logic Programs (Grosof et al., 2003) și pD* (Horst, 2005) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  94. 94. O ontologie OWL se poate asocia unei baze de cunoștințe DL notată K = <T, A> T TBox – mulțime de axiome de forma: C⊑D CD P⊑Q PQ P+ ⊑ P incluziunea claselor (conceptelor) echivalența claselor incluziunea proprietăților (rolurilor) echivalența proprietăților tranzitivitatea proprietăților x C <x, y>  P instanțierea unui concept/clase instanțierea unui proprietăți A ABox – mulțime de axiome de forma: Dr. Sabin Buragawww.purl.org/net/busaco description logics
  95. 95. Exemplu de TBox (Ian Horrocks) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  96. 96. Exemplu de ABox (Ian Horrocks) Dr. Sabin Buragawww.purl.org/net/busaco description logics o ontologie OWL e echivalentă cu o bază de cunoștințe DL TBox + ABox
  97. 97. Axiomele TBox sunt de două tipuri: “definiții” C ⊑ D sau C  D, unde C reprezintă un nume de concept Dr. Sabin Buragawww.purl.org/net/busaco description logics
  98. 98. Axiomele TBox sunt de două tipuri: “definiții” C ⊑ D sau C  D, unde C reprezintă un nume de concept axiome privitoare la incluziunea conceptelor generale (General Concept Inclusion – GCIs) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  99. 99. Dr. Sabin Buragawww.purl.org/net/busaco description logics O interpretare I satisface – modelează – o axiomă A I ⊨ A dacă:
  100. 100. Definiții privind satisfiabilitatea: I satisface mulțimea TBox T (adică I ⊨ T ) iff I satisface orice axiomă A din T I satisface mulțimea ABox A (I ⊨ A) iff I satisface orice axiomă A din A I satisface baza de cunoștințe K (I ⊨ K) iff I satisface și T și A Dr. Sabin Buragawww.purl.org/net/busaco description logics
  101. 101. Cunoștințele sunt semnificative (meaningful) clasele pot avea instanțe: conceptul C este satisfiabil în ceea ce privește K iff există un anumit model I al lui K astfel încât CI  ∅ Dr. Sabin Buragawww.purl.org/net/busaco description logics
  102. 102. Cunoștințele sunt corecte – modelează intuițiile: C subsumează D – adică C ⊑ D – în ceea ce privește K iff pentru orice model I al lui K, CI ⊆ DI Dr. Sabin Buragawww.purl.org/net/busaco description logics
  103. 103. Cunoștințele sunt minimal redundante – nu există sinonime nedorite: C este echivalent cu D (C  D) în ceea ce privește K iff pentru orice model I al lui K, CI = DI Dr. Sabin Buragawww.purl.org/net/busaco description logics
  104. 104. Interogarea cunoștințelor: x este o instanță a conceptului C în ceea ce privește K iff pentru orice model I al lui K, xI CI <x, y> este o instanță a rolului (proprietății) P în ceea ce privește K iff pentru orice model I al lui K, (xI, yI ) PI Dr. Sabin Buragawww.purl.org/net/busaco description logics
  105. 105. Aspectele anterioare sunt reductibile la consistența bazei de cunoștințe o bază de cunoștințe K este consistentă iff există un anumit model I al lui K consistența bazei de cunoștințe este reductibilă la consistența conceptelor (concept consistency) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  106. 106. Verificarea formală a consistenței e utilă pentru proiectarea și mentenanța de ontologii semnificative – toate clasele pot avea indivizi corecte – exprimă intuițiile experților domeniului minimal redundante – nu există sinonime nedorite axiomatizate – există (suficiente) descrieri detaliate conform Horrocks (2005) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  107. 107. Verificarea formală a consistenței e utilă pentru oferirea de răspunsuri privind clasele/indivizii găsirea claselor mai generale/particulare extragerea de indivizi conform unei interogări date conform Horrocks (2005) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  108. 108. Pentru verificarea satisfiabilității (consistenței) se pot utiliza algoritmi de tip tablou (tableaux algorithms) Francesco M. Donini & Fabio Massacci, 2000 Jan Hladik & Jörg Model, 2004 Ian Horrocks & Ulrike Sattler, 2005 Dr. Sabin Buragawww.purl.org/net/busaco description logics
  109. 109. Dr. Sabin Buragawww.purl.org/net/busaco description logics Dat fiind un concept C, se încearcă a se construi un model (exemplu concret) arborescent consistent cu axiomele din baza de cunoștințe – faptele de bază din ABox
  110. 110. Conceptul C este descompus la nivel sintactic se folosesc conceptele complexe și axiomele din TBox Dr. Sabin Buragawww.purl.org/net/busaco description logics
  111. 111. Se aplică regulile de expandare a tabloului (tableau expansion rules) se deduc constrângerile asupra elementelor modelului Dr. Sabin Buragawww.purl.org/net/busaco description logics
  112. 112. Regulile de tip tablou corespund constructorilor din logică de exemplu: ⊓, ⊔ etc. unele reguli sunt nedeterministe – e.g., ⊔, ≤ în practică, aceasta înseamnă căutare Dr. Sabin Buragawww.purl.org/net/busaco description logics
  113. 113. Ne oprim când nu mai pot fi aplicate reguli ori apare un conflict (clash) conflictul reprezintă o contradicție evidentă de exemplu: A(x), ¬ A(x) pentru terminare, poate fi necesară verificarea ciclurilor (blocarea – blocking) Dr. Sabin Buragawww.purl.org/net/busaco description logics
  114. 114. C este satisfiabil iff regulile pot fi aplicate astfel încât este construit un arbore complet expandat fără conflicte Dr. Sabin Buragawww.purl.org/net/busaco description logics
  115. 115. Fie baza de cunoștințe { HappyParent  Person ⊓ hasChild.(Doctor ⊔  hasChild.Doctor), John: HappyParent, John hasChild Mary, Mary: ¬ Doctor, Wendy hasChild Mary, Wendy marriedTo John } Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplu (Horrocks)
  116. 116. fapte privitoare la indivizi Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplu
  117. 117. expandare Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplu
  118. 118. expandare Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplu
  119. 119. conflict! Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplu
  120. 120. Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplu pentru a nu exista contradicții, înseamnă că Mary trebuie să aibă un copil doctor
  121. 121. Person ⊓ hasChild.(Doctor ⊔  hasChild.Doctor) Dr. Sabin Buragawww.purl.org/net/busaco <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Person"/> <owl:Restriction> <owl:onProperty rdf:resource="#hasChild"/> <owl:toClass rdf:resource="#PersonWithChildDoctor"/> </owl:Restriction> </owl:intersectionOf></owl:Class> <owl:Class rdf:ID="DoctorWithChildDoctor"> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Doctor"/> <owl:Restriction> <owl:onProperty rdf:resource="#hasChild"/> <owl:hasClass rdf:resource="#Doctor" /> </owl:Restriction> </owl:unionOf> de la formule exprimate via logicile descrierii </owl:Class> la sintaxa XML a limbajului OWL
  122. 122. Person ⊓ hasChild.(Doctor ⊔  hasChild.Doctor) Dr. Sabin Buragawww.purl.org/net/busaco <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Person"/> <owl:Restriction> <owl:onProperty rdf:resource="#hasChild"/> <owl:toClass rdf:resource="#PersonWithChildDoctor"/> </owl:Restriction> </owl:intersectionOf></owl:Class> <owl:Class rdf:ID="DoctorWithChildDoctor"> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Doctor"/> <owl:Restriction> <owl:onProperty rdf:resource="#hasChild"/> <owl:hasClass rdf:resource="#Doctor" /> </owl:Restriction> </owl:unionOf> de la formule exprimate via logicile descrierii </owl:Class> la sintaxa XML a limbajului OWL
  123. 123. Specificarea grafică a unei ontologii (Franconi, 2003): Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplificare
  124. 124. “Rescrierea” ontologiei în termeni logici: Dr. Sabin Buragawww.purl.org/net/busaco description logics – exemplificare
  125. 125. Dr. Sabin Buragawww.purl.org/net/busaco inferențe Sistemele de reasoning bazate pe logicile descrierii oferă premisele realizării de inferențe în mod automat
  126. 126. Exemplul 1 – hoțul și călătorul fără bilet primul fapt: amprentele găsite la locul unui jaf au identificat ca posibil hoț pe Lödi Gogo </raport-2013-12-10-pol4> rdf:type :Jaf ; dc:description "..." ; :implicaSuspect [ rdfs:seeAlso <http://www.persoane.ro#LödiGogo> ]. Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  127. 127. Dr. Sabin Buragawww.purl.org/net/busaco inferențe Exemplul 1 – hoțul și călătorul fără bilet alt doilea fapt: în tramvai, a fost găsit un călător fără bilet, numit Justin Bip – acesta a fost reținut </raport-2013-12-10-pol4> rdf:type :Amenda ; dc:description "..." ; :prejudiciu [ :comisDe :Cetatean ; rdfs:seeAlso < http://www.persoane.ro#JustinBip> ].
  128. 128. Exemplul 1 – hoțul și călătorul fără bilet poliția deține o aplicație Web ce recurge la o bază de cunoștințe în care se stipulează următoarele: :Jaf rdfs:subClassOf :Infractiune . :Amenda rdfs:subClassOf :Infractiune . :implicaSuspect a rdf:Property ; TBox rdfs:domain :Infractiune ; rdfs:range :Suspect . :Suspect rdfs:subClassOf :Cetatean . :Cetatean rdfs:subClassOf foaf:Person . <http://www.persoane.ro#LödiGogo"> a foaf:Person ; ABox owl:sameAs <http://www.persoane.ro#JustinBip"> . Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  129. 129. Exemplul 1 – hoțul și călătorul fără bilet concluzie: se poate realiza inferența “Hoțul este călătorul prins fără bilet.” pe baza logicilor descrierii, OWL oferă posibilitatea de a exprima faptul că două resurse – e.g., clase, proprietăți, instanțe – sunt identice Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  130. 130. Exemplul 2 – achiziționarea unui aparat foto Can a take a photo with this? 3 Aplicație Web recomandând cumpărături online <Nikon_D7000> a :DSLR ; :sensor "16.2"^^xsd:float ; :lens [ :min "18"^^units:mm ; :max "55"^^units:mm ] ; gr:hasPriceSpecification … “Trimite-mi catalogul de produse” 1 2 situl Web al magazinului “Iată catalogul...” (date RDF) inspirat de (Costello et al., 2003) Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  131. 131. Exemplul 2 – achiziționarea unui aparat foto aplicația Web consultă o ontologie OWL privitoare la camere digitale de unde se poate determina că DSLR este subclasă a clasei Camera asociată echipamentelor foto :DSLR a owl:Class ; rdfs:subClassOf :Camera . :takes rdfs:domain :Camera ; rdfs:range :Photo . DSLR <Nikon_D7000> a :DSLR . Camera Point-and-Shot Analogue Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  132. 132. Exemplul 2 – achiziționarea unui aparat foto ontologiile exprimate în OWL pot conduce la descoperirea dinamică a relațiilor dintre resurse pe baza unui sistem de deducție (reasoning), via construcții RDFa recurgând la Good Relations, pot fi extrase, comparate & recomandate ofertele disponibile pe diverse situri Web Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  133. 133. Exemplul 3 – locul de naștere a regelui Kamehameha fapt: în urma extragerii de date de pe Web, s-a obținut <individ rdf:about="http://www.persoane.ro#Kamehameha"> <locNastere rdf:about="http://www.states.com/Hawaii" /> </individ> <individ rdf:about="http://www.persoane.ro#Kamehameha"> <locNastere rdf:about="http://world.info/Sandwich_Islands" /> </individ> <individ rdf:about="http://www.persoane.ro#Kamehameha"> <locNastere rdf:about="http://history.org/Aloha" /> </individ> Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  134. 134. Exemplul 3 – locul de naștere a regelui Kamehameha ontologia privitoare la persoane indică faptul că un individ are un unic loc de naștere se poate trage concluzia că Hawaii, Sandwich Islands și Aloha reprezintă aceeași localitate OWL oferă suport pentru precizarea cardinalității unei relații dintre o resursă și o alta – în acest caz, exact una Dr. Sabin Buragawww.purl.org/net/busaco inferențe
  135. 135. Recurgerea la un reasoner – e.g., FaCT++ sau HermiT incluse în Protégé – pentru deducția diverselor aspecte privitoare la un model conceptual Dr. Sabin Buragawww.purl.org/net/busaco inferențe: studiu de caz
  136. 136. nivelul conceptual (cunoștințe): TBox Multimedia detinutDe Audio rdfs:subClassOf Video detine Proprietar rdf:type rdf:type rdf:type detinutDe the_eye detinutDe detine ancuta anca owl:sameAs zidul Dr. Sabin Buragawww.purl.org/net/busaco rdfs:subClassOf eugen rudaCu nivelul datelor (indivizi): ABox
  137. 137. Dr. Sabin Buragawww.purl.org/net/busaco deduceri automate pe baza faptelor exprimate
  138. 138. Realizarea de raționamente automate – interogări (queries) DL – cu ajutorul expresiilor de clasă (class expression) specificate în sintaxa Manchester (2012) http://www.w3.org/TR/owl2-manchester-syntax/ Dr. Sabin Buragawww.purl.org/net/busaco inferențe: studiu de caz
  139. 139. Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz deducerea faptelor referitoare la clasa Proprietar (aici, supraclasele și indivizii aparținând clasei)
  140. 140. clasa entităților care nu aparțin clasei Femeie obținerea claselor complementare cu una specificată Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  141. 141. deducții pe baza relațiilor Dr. Sabin Buragawww.purl.org/net/busaco entitățile care sunt rude cu măcar o femeie
  142. 142. clasa entităților ce dețin măcar o resursă multimedia și sunt femei exprimarea intersecțiilor de clase Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  143. 143. clasa entităților care dețin măcar o resursă multimedia și sunt bărbați Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  144. 144. clasa resurselor multimedia deținute de o femeie exprimarea intervalului (range-ului) unei relații Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  145. 145. clasa resurselor multimedia deținute de Anca specificarea de valori în contextul relațiilor Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  146. 146. expresii de clasă mai complexe Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  147. 147. clasa entităților în relație de rudenie cu un bărbat și care dețin minim 1 video exprimarea cardinalității Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz
  148. 148. Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz clasa entităților deținute de un individ sau care aparțin unei clase date
  149. 149. Fluent Editor permite deducții pentru ontologii modelate în limbaj natural Dr. Sabin Buragawww.purl.org/net/busaco inferente: studiu de caz “No male is a female”: male ⊑ ¬(female)
  150. 150. Implementările actuale bazate pe OWL DL beneficiază de cercetările din domeniul logicilor descrierilor Dr. Sabin Buragawww.purl.org/net/busaco concluzii
  151. 151. Proprietăți formale înțelese în profunzime (complexitate, decidabilitate) Algoritmi de raționament automat eficienți Sisteme de deducție (reasoning) având implementări optimizate Dr. Sabin Buragawww.purl.org/net/busaco concluzii
  152. 152. OWL 2 logicile descrierii + baze de cunoștințe suportul pentru raționamente automate Dr. Sabin Buragawww.purl.org/net/busaco rezumat
  153. 153.  ❄ ❄ ❄ ❄ ❄ ❄  episodul viitor: vacanța de iarnă ☃  Dr. Sabin Buragawww.purl.org/net/busaco ❄

×