Upload
sabin-buraga
View
1.115
Download
2
Embed Size (px)
DESCRIPTION
Aspecte referitoare la ingineria ontologica: modelarea si managementul cunostintelor, metodologii, reasoning etc.
Citation preview
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Web semantic
Dr. SabinCorneliu BuragaFacultatea de Informatica
Universitatea “A.I.Cuza” – Iasi, Romania
http://www.infoiasi.ro/~busaco/
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Inginerie ontologica
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“It is not the strongest of the species that survive, nor the most intelligent,
but the ones most responsive to change.”
Charles Darwin
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Folosind ontologiile, putemmodela cunostinteleknowledge modeling
Apare necesitatea managementului acestoraknowledge management
intro
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Aspecte privind managementul cunostintelor(Shadbolt & O’Hara, 2004):
achizitia (acquiring)modelarea (modelling)reutilizarea (reusing)preluarea (retrieving)publicarea (publishing)mentinerea (maintaining)
intro
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Achizitia (acquiring)aplicatiile Web trebuie sa preia cunostinte,
nu date brute, fara semnificatiee.g., texte (formatate) preluate din formulare
utilizatorii obisnuiti nu vor marca datelein XML, RDF sau OWL
conceptele trebuie stocate ca informatii structurate
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Modelarea (modelling)ideal, fiecare fragment de informatie trebuie modelat
riguros la nivel semanticin practica, acest aspect este aproape imposibil
vezi dificultatile de dezambiguizare a limbajului natural
pasi de urmat: identificarea claselor,definirea proprietatilor, completarea datelor despreindivizi (input explicit, tagging, microformate etc.)
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Reutilizarea (reusing)fiecare entitate trebuie definita doar o singura data
informatiile trebuie sa poata fi accesatela nivel global (eventual, via politici de acces)
facilitarea reutilizarii este data de usurinta utilizariisistemului (e.g., sintaxa simpla, asistenti digitali,
flexibilitate etc.)
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Preluarea (retrieving)mecanisme de interogare si filtrare a cunostintelor
oferirea de suport pentru efectuarea de agregari, procesarisi extrageri de informatii, in maniera (semi)automata,pe baza meta‐datelor si relatiilor dintre entitati
exemplu: extragerea intereselor comuneale membrilor unui grup dintr‐o retea sociala
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Publicarea (publishing)cunostintele trebuie sa poata fi publicate
in formate standardizate, care sa incurajeze refolosirea in alte contexte
accesul la cunostinte are in vedereatit utilizatorii umani, cit si aplicatiile
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Publicarea (publishing)cunostintele trebuie sa fie usor redate,
conform necesitatilor si preferintelor utilizatorilor
depozitele de cunostinte trebuie sa ofere exportin formate consacrate (RDF, OWL)
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Mentinerea (maintaining)necesitatea existentei unor servicii care sa asigure
consistenta cunostintelor
un suport manual poate fi oferit de wiki‐uri
serviciile automate se pot baza pe reasoners
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Ontologiile pot fi considerate dreptlego‐uri conceptuale (Conceptual Lego)
managementul cunostintelor
Masterandurm(ar)indcursul
“Semantic Web”
Agent Web
Adaptaredupa
Horrocks&
Rector, 2004
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Ontologiile pot proveni din sau pot fi salvate sub forma de:scheme XML,
scheme de baze de date,diagrame UML,spreadsheets,alte specificatii
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Probleme: Crearea de ontologii din diverse surseManagementul versiunilorRealizarea colectiilor de ontologii (asocieri, comparatii, reconcilieri, validari, conversii,...)
Obtinerea, organizarea & vizualizarea domeniului de cunoastere inainte si in timpul crearii unei ontologii
Utilizarea ontologiilor in functie de context
managementul cunostintelor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Existenta unor metodologii de ingineriea cunostintelor
(knowledge engineering methodologies)procesul prin care experti ai domeniului si ingineri
vor constitui o baza de cunostinte, specificata de un limbajde reprezentare a cunostintelor side o suita de instrumente aditionale
procesele, limbajele si instrumentele care pot fi folositese bazeaza pe diverse paradigme de reprezentare
a cunostintelor
necesitate
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Traditionale din ingineria software clasica(knowledge engineering)
CommonKADS (Scheriber et al., 2000)
Agile (mai flexibile & facile)eXtreme ProgrammingXP.K (Knublauch, 2002), RapidOWL (Auer, 2005)
abordari
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Dezvoltarea unei ontologii implicapartajarea de informatii si colaborare
“Knowledge is fractal” (Alan Rector, 2004)ontologiile prezinta aceeasi structura la fiecare nivel
de granularitate (detaliu)
Atentie la dezvoltarile exponentiale ale ontologiei!fenomenul “exploding bicycle”
observatii
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Complicatii:necunoasterea apriori a dimensiunii ontologiei
numarul persoanelor implicate
utilizarea ontologiei de catre utilizatoricare nu sunt experti
natural laziness☺
...
inginerie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Conflicte privitoare la intuitii
intuitiile sunt dificil de formalizatexpertii in domeniu sunt condusi de obisnuinte si practica
(sabloane de proiectare) prototipuri & generalizari
logicienii sunt motivati de logica si computabilitatedefinitii & operatori universali
inginerie: dificultati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Transparenta & predictibilitateversus rigoare & completitudine
Utilizatorii fara experienta
inginerie: dificultati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Studiu de caz – Peter Morville, 2007alergia la alune (peanut allergy):Acces urgent la informatii exacte & utileCredibilitatea surselor este esentialaOrice cautare pe Google esueaza
(popularitate ≠ autoritate in domeniu)Cunostintele trebuie sa poate fi regasite pe Web
(necesita expertiza in domeniu + abilitati avansate de cautare via motoare)
Context: Information Architecture (IA)
inginerie: dificultati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
ModelareaSemantica (meaning): corectitudinea clasificarilor
& extragerii cunostintelorIndexarea: desfasurarea activitatilor de
descoperire, cautare si gasire a cunostintelorUtilizarea: introducerea datelor, luarea de decizii,...
Achizitia: capt(ur)area cunoasterii
inginerie: dificultati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Asigurarea calitatii & managementul modificarilorCalitatea:
stabilirea de criterii privitoare la ceea ce este “corect”
Evolutia: luarea in calcul a schimbarilor viitoare ale ontologiei
Testarea: controlul modificarilor, asigurarea calitatii (QA)
inginerie: dificultati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Privitoare la persoanele implicateAparitia confuziilor privitoare la termeni
si la utilizarea ontologiei
Persoane provenind din medii eterogenefilosofie, interactiune om‐calculator, inginerie software,
lingvistica, stiinte cognitive,...
Recurgerea la sintaxe diferite
inginerie: dificultati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Gasirea dificila unor criterii formale(consistenta, completitudine, concizie,...)
inginerie: realitati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Generarea manuala a ontologiilor
taxonomii navigabile: Open Directory, Yahoo!,...
folksonomii
ontologii publice – de exemplu, Gene Ontology
ontologii interne – e.g., Daimler‐Chrysler
inginerie: realitati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Ontologiile generale (toplevel) nu sunt cu adevaratutile in practica
inginerie: realitati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Apar probleme teoretice/practice privind:asigurarea coerentei, facilitarea procesarii,
folosirea surselor de date multiple
inginerie: realitati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Diferite vocabulare in vigoare
clasa ≈ concept ≈ categorie ≈ tip
instanta ≈ individ
entitate ≈ obiect (clasa/individ)
proprietate ≈ slot ≈ relatie ≈ atribut ≈ ≈ rol ≈ legatura semantica
inginerie: realitati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Diferite sintaxe existente:sintaxa abstracta,
N3, XML/RDF,
logica de ordin I, formatul Protégé,
limbaj natural (parafraza),...
inginerie: realitati
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea domeniului de cunoastereOrganizarea ontologiei“Umplerea” ontologieiVerificarea ontologieiPublicarea ontologiei
metodologie (Noy & McGuinness, 2003)
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea domeniului de cunoastere
asamblarea resurselor de informatie si expertizaa ceea ce vor deveni concepte (things)
ale domeniului de interes
se vor asigura consensul si consistenta
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Organizarea ontologieiproiectarea pe ansamblu a structurii conceptuale:
Identificarea principalelor concepte concrete si a proprietatilor acestora
Identificarea relatiilor dintre concepteCrearea conceptelor abstracteIdentificarea instantelor
Referentierea/includerea altor ontologii...
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
“Umplerea” ontologieiadaugarea conceptelor
inserarea relatiilor/constringeriloradaugarea indivizilor
…la nivelul de detaliere necesarpentru realizarea scopurilor ontologiei
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Verificarea ontologiei
reconcilierea inconsistentelor dintre elemente,la nivel sintactic, logic & semantic
verificarea consistentei poate implica o clasificareautomata, rezultind noi concepte bazate
pe proprietati individuale sau relatii intre clase
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Publicarea ontologiei
verificarea finala de catre experti ai domeniului
publicarea in cadrul comunitatii de practica
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
metodologie
Procesul ideal de dezvoltare a unei ontologii:
determinescope
considerreuse
enumerateterms
defineclasses
defineproperties
defineconstraints
createinstances
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
metodologie
Procesul realist de dezvoltare a unei ontologii:determine
scopeconsider
reuseenumerate
termsdefine
classesconsider
reuseenumerate
termsdefine
classes
defineproperties
createinstances
defineclasses
defineproperties
defineconstraints
createinstances
defineclasses
considerreuse
defineproperties
defineconstraints
createinstances
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea scopuluiColectarea cunostintelor
(la nivel informal ori semi‐formal)Rafinarea cerintelor & testarea
Implementarea (modelarea propriu‐zisa)Evaluarea & asigurarea calitatii
Monitorizarea utilizarii si a evolutiei
metodologie (Rector & Horrocks, 2004)
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea scopuluicerinte, evaluare,reutilizare,
…
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Colectarea cunostintelorla nivel informal ori semi‐formal
Stabilirea termenilorOrganizarea informala a termenilorParafrazarea si clarificarea termenilor
definitii informale ale conceptelorRealizarea de diagrame informale
Rafinarea cerintelor & testarea
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Implementarea – modelarea propriu‐zisaParafrazare & comentare la fiecare fazaDezvoltarea unei scheme normalizate si
a unui “schelet” de ontologieImplementarea unui prototip(consemnind intentiile) Verificarea scalabilitatii
Popularea ontologiei – text mining,procesare a limbajului uman, microformate,XHTML/XML structurat (semantic) etc.
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Evaluarea si asigurarea calitatiiUrmarirea scopului initial
Includerea de verificari privind evolutia ontologieisi ajustarea manierei de management al ei
Proiectarea de teste si “probe”in mod similar testarii aplicatiilor software
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Monitorizarea utilizarii si a evolutiei(mentenanta)
“Process not product” (Alan Rector, 2004)
metodologie
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Rationamentul lumilor inchise vs. deschiselumi deschise (open world reasoning)
Negatia reprezinta contradictie (orice poate fi adevaratpina cind se poate demonstra ca e fals)
Se rationeaza in maniera:“orice alta lume poate fi consistenta cu aceasta”
lumi inchise (close world reasoning)Negatia inseamna esec (orice nu poate fi gasit este fals)
“Totul este valabil numai in aceasta lume”
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Rationamentul lumilor inchise vs. deschise
ontologiile sunt considerate lumi deschise,iar bazele de date lumi inchise
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Knowledge Base vs. Data Base
O baza de cunostinte (knowledge base) nu definesteun model unic, ci reprezinta un set de constringericare pot defini o multime de modele posibile
nici o constringere orice model e posibil
cu cit exista mai multe constringeri, cu atit numarul modelelor posibile scade
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Knowledge Base vs. Data Base
O baza de date defineste un model unic
numele diferite sunt interpretate ca indivizi distincti
domeniul e compus numai din indivizii numiti in cadrulbazei de date (modelul lumii inchise)
extensiile sunt cit mai reduse posibil
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Knowledge Base vs. Data BaseModelul unic (Bechhofer, 2004):
expresivitate redusa – nu exista negatii/disjunctii
nu poate captura informatii incomplete
non‐monoton – adaugarea de informatiinu pastreaza adevarul
procesul de reasoning (interogare) este facil si rapid
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Knowledge Base vs. Data BaseModelele multiple (Bechhofer, 2004):
expresivitate ridicata – conectori booleeni, reuniune,...
poate captura/exprima informatii incomplete
monotonic – adaugarea de informatii pastreaza adevarul
procesul de reasoning (interogare) este dificil si lent
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Activitatea de reasoningpoate fi realizata automat de un reasoner
clasificarea conceptelor – rezultind:un arbore (ierarhie stricta, taxonomie)
un digraf aciclic – DAG (poli‐ierarhie, graf conceptual)
normalizare = separarea conceptelor de bazain arbori disjuncti, arborii avind legaturi intre ei
via definitii si restrictii
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exemplu: o ontologie privitoare la animale
aspecte importante
Inainte de clasificareArbore de concepte
Dupa clasificareDAG
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Dezvoltarea unei ontologii normalizate presupune:Identificarea conceptelor de baza de sine‐statoareSepararea conceptelor in arbori de concepteIdentificarea relatiilorCrearea descrierilor & definitiilorIdentificareamodului in care elementele‐cheietrebuie clasificate
Utilizarea clasificatorului pentru a forma DAG‐ulVerificarea satisfacerii testelor
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Dezvoltarea unei ontologii normalizate presupune:Identificarea conceptelor de baza de sine‐statoare(cu comentarea celor mai putin evidente)
Separarea conceptelor in arbori de concepte(poate implica specific. unor proprietati/concepte auxiliare)
Identificarea relatiilor(comentarea acelor relatii care nu sunt evidente)
Crearea descrierilor & definitiilor(cu oferirea de parafraze pentru fiecare)
Identificarea modului in care elementele‐cheie trebuie clasificate(crearea unor teste de regresie)
Utilizarea clasificatorului pentru a forma DAG‐ulVerificarea satisfacerii testelor
aspecte importante
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Modelarea unei ontologii privitoare la animale
adaptare dupa (Rector, 2004)
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Intentii & scopuri:realizarea unui index al unei carti despre animale,
oferind informatii precum: locul unde traiesc
ce consuma (carnivore, ierbivore, omnivore)cit de periculoase pot fi
ce anatomie de baza au – e.g., numarul picioarelor,...ce greutate au
...
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Colectarea conceptelor:se pot folosi carduri de concepte
se lucreaza in grupuri mici de persoane
se pot atrage experti ai domeniului
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de caz
DogCatCowPersonTreeGrassHerbivoreMaleFemale
DangerousPetDomestic animalFarm animalFood animalFishGoldfish
CarnivorePlantAnimalFurChildParentMotherFather Clase
posibile
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de caz: organizarea conceptelor
DogCatCowPersonTreeGrassHerbivoreMaleFemale
DangerousPetDomestic animal
Farm animalFood animalFishGoldfish
CarnivorePlantAnimalFurChildParentMotherFather
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Extinderea conceptelorgruparea unor concepte
si determinarea caracteristicilor comune:Plant, Animal↦ Living Thing
ar putea fi adaugati ulterior si termeni ca Bacteria, Fungi,…Cat, Dog, Cow, Person↦ Mammal
alti candidati ar putea fi Goat, Sheep, Horseetc.
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Pentru facilitarea clasificarii, colectiile de subclasetrebuie declarate explicit disjuncte
Plant disjointWith Animal
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Alegerea unor axe conceptualeAdaugarea de termeni abstracti
De exemplu: “Living thing”Identificarea relatiilor
De exemplu: “eats”, “owns”, “parent of”Identificarea entitatilor ce pot fi definiteE.g., “child”, “parent”, “Mother”, “Father”
Numirea explicita a conceptelorUtilizarea cunostintelor anterioare(background knowledge) – axiome
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de cazLiving Thing
AnimalMammal
CatDogCowPerson
FishGoldfish
PlantTreeGrassFruit
ModifiersDomestic
PetFarmed
FoodWildHealth
healthysick
GenderMaleFemale
AgeAdultChild
Relationseatsownsparent‐of…
DefinablesCarnivoreHerbivoreChildParentMotherFatherFood Animal
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea entitatilor de sine‐statatoare:
“Lucruri” ce exista conform substantivelor lorOameni, animale, case, actiuni, procese,…Se utilizeazamajoritatea substantivelor
Modificatori (modifiers)“Lucruri” ce se pot preschimba in alteleSe folosesc adjectivele si adverbele
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Reorganizam conceptele, grupind entitatilecare pot fi definite in arbori separati
constituirea conceptelor de baza (primitives)
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de cazSelf_standing
Living ThingAnimal
MammalCatDogCowPerson
FishGoldfish
PlantTreeGrassFruit
ModifiersDomestication
DomesticWild
UseFoodPet
RiskDangerousSafe
GenderMaleFemale
AgeAdultChild
Relationseatsownsparent‐of…
DefinablesCarnivoreHerbivoreChildParentMotherFatherFood Animal
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de cazSelf_standing
Living ThingAnimal
MammalCatDogCowPerson
FishGoldfish
PlantTreeGrassFruit
Concept abstract incluzind toate entitatile vii
– restrictionat la plante si animale in acest moment
Adaugarea comentariilorclarificatoare (parafraze)
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Identificarea constringerilor privitoare la domeniu(domain) si 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 PersonLiving_thing parent_of Living_thing
parent_of domain: Animalrange: Animal
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Pentru entitatile ce pot fi definite trebuie comentate siformalizate definitiile acestora in termeni de primitive,
relatii si alte entitati ce pot fi definite
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exemplul 1: “A ‘Parent’ is an animal that is the parent of some other animal” (Ignore plants for now)
Parent = Animal and parent_of some Animal
Exemplul 2: “A ‘Herbivore’ is an animal that eatsonly plants” (NB: All animals eat some living thing)
Herbivore = Animal and eats only Plant
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Stabilirea proprietatilor ce pot apareala nivel de clasa
Ce se poate afirma privitor la totimembrii clasei?
exemplu: eats All cows eat some plantsAll cats eat some animals
All pigs eat some animals and eat some plants
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Verificarea clasificarii
“Cows should be Herbivores”
Cows are animals and, amongst other things,eat some grass and eat some leafy_plants
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Verificarea clasificarii
Trebuie specificata axioma de inchidere (closure axiom)
Cows are animals and, amongst other things,eat some plants andeat only plants
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Verificarea clasificarii (aici, in Protégé):
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Examinarea listei de modificatori
identificarea modificatorilorcare au valori mutual exclusiveDomestication, Risk, Gender, Age
precizarea mai precisa a unoraAge↦ Age_group
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Noua lista de modificatori
studiu de cazModifiers
DomesticationDomesticWildFeral
RiskDangerousRiskySafe
GenderMaleFemale
AgeInfantToddlerChildAdultElderly
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Specificarea valorilor (solutia 1)partitii de valori: clase care partitioneaza o calitate
Dangerousness cu sub‐calitatile disjuncteDangerous, Risky, Safe
Se poate specifica proprietatea functionalahasDangerousness : Animal Dangereousness
Dangerous_animal = Animal and hasDangerousness some Dangerous
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de caz
DangerousRisky
Safe
Leo’sDanger
Dangerousanimal
Leo theLion
hasDangerousnesssomeValuesFrom
Dangerousness
AnimalDiagrama partitiilor de valori
Vezi si www.w3.org/TR/swbp-classes-as-values
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Specificarea valorilor (solutia 1)partitii de valori: clase care partitioneaza o calitate
studiu de caz
calitatea
partitiile de valori
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de caz
Dangerousness_Value
Safe_value
Risky_value
Dangerous_value
Animal
DangerousAnimal
Leo theLion
Leo’sDangerousness
owl:unionOf
hasDangerousness
hasDangerousnesssomeValuesFrom
Partitiile de valori in stilul UML
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Specificarea valorilor (solutia 2)valori simbolice: indivizii pot enumeratoate valorile unei calitati (caracteristici)
calitatea specificata este Gender_value,pentru fiecare valoare existind o multime de indivizi
valorile vor fi diferite, date ca o enumerare: Gender_value = { male, female }
se specifica o proprietate functionalahasGender : Animal Gender_value
Male_animal = Animal and hasGender is male
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de caz
Gender_value
Person
Man
Andrei
owl:oneOf
hasGender
female male
Valorile simbolice – stilul UML
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Principii pentru specificarea valorilor(design pattern):
Valori distincte exprimate via Disjoint pentru clase sau allDifferent pentru indivizi
Valorile “acopera” un tip de date Calitate = Part1 or Part2 or Part3 or… or PartnCalitate = {v1 , v2 , v3 ,…, vn}
Proprietatile exprimate sunt deseori functionale
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exprimarea rolurilor (proprietatilor)apare necesitatea distingerii rolurilor
pe care le joaca entitatile in diferite situatii
Exemple: “pet” vs. “farm animal”,“profesor” vs. “student”, “medic” vs. “pacient”
Deseori, calificarile trebuie distinse fata de rolurie.g., o persoana poate avea calificare de medic,
dar joaca rol de pacient
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exprimarea rolurilor (proprietatilor)uzual, rolurile desemneaza relatii
studiu de caz
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
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exprimarea rolurilor (proprietatilor)
Situatie: Horse plays_role some Food_roletoti caii joaca rol de animale bune de consum
o afirmatie prea categorica
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Observatie:anumite entitati pot fi deduse pe baza inferentei
– via reasoners (e.g., Pellet)
Grass and Leafy_plants are both kinds of Plant
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Exprimarea rolurilor (proprietatilor)
Solutii:ignorarea problemei intr‐un anumit contextinlocuirea lui has_role cu may_have_role
se poate specificaFood_Horse = Horse and has_role Food_role
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Comentarea & parafrazarea tuturor claselordin cadrul ontologiei
foarte util pentru alte persoane care vor utilizasi/sau extinde ontologia
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Oferirea unui set de clase de proba sia unui cadru de testare a ontologiei
Clase de proba = clase suplimentare care pot sa fie sau nu satisfiabile sau clasificabile intr‐un context
particular (“exceptiile de la regula”)in ontologia finala, vor fi eliminate
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
studiu de caz: privire de ansamblu
Living Thing
Grass
Animal
Plant
Tree
Body Part
Arm
Leg
Person
CowCarnivore
Herbivoreeats
eats
eats
has part
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Modelarea unui web privitor la un muzeu de arta
adaptare dupa (Enrico Franconi, 2003)
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Considerarea – eronata – a unui concept ca fiind rol
Painter subClassOf only PAINTING.Painting
Painting subClassOf only AUTHOR.Painter
PaintEvent subClassOfintersectionOf (some WHO.Painter, some WHAT.Painting)
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Acest TBox este redundant
Nu se pot detecta usor inconsistentele
TBox‐ul este ciclic
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
La nivel de ABox se specifica:Tabloul Pescuit de ton al lui Dali se gaseste in Madrid
Tabloul Pescuit de ton, pictat de Dali in 1966,se gaseste in Madrid
Redundanta:Painter (dali), PAINTING (dali, tuna-fishing),
Painting (tuna-fishing), AUTHOR (tuna-fishing, dali) etc.
studiu de caz
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Aspecte de interes (Aldo Gangemi, 2008):cerinte – e.g., “doresc sa urmez masterul ideal”
contructii logice: subClassOf, restrictii de cardinalitate,…ontologii existente – e.g., FOAF, BibTeX, DOLCE, OpenCycresurse de cunostinte informale: CiteSeer, Open Directory
conventii & practici, inclusiv sabloane de proiectareinstrumente – editoare, instrumente de reasoning,
convertoare etc. (Protégé, NeON Toolkit, FaCT++, Pellet, Jena, Virtuoso, Semantic MediaWiki,…)
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Intelegerea clara a distinctiilor (Franconi, 2003):
concept (clasa) vs. individ
concept (clasa) vs. proprietate (rol)
entitate definita vs. entitate dedusa
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Clasa (concept) versus instanta (individ)O multime de indivizi este una numarabila, discretaSpatiul privitor la concepte e ideal continuu si infinit
Fiecare individ poseda o identitate claraDaca 2 concepte au descrieri echivalente,
atunci desemneaza acelasi conceptDescrierile privitoare la indivizi pot fi alterate
Actualizarile privitoare la indivizi, uzual, nu schimbaierarhia conceptelor
Alegerea “clasa vs. individ” depinde de granularitate
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Nu e usor de decis daca o entitate trebuie sa fie modelataca si concept sau drept rol
Persoana este un concept (clasa)Mama ca si concept nu exista daca nu consideram
ce rol joaca intr‐o relatie parentala(este un concept dependent de o relatie)
conventie: alegerea de nume neambigue pentru rolurie.g., hasParent, areMama, areGen etc.
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Fiecarui concept ales i se pot asocia:proprietati intrinseci – caracteristice naturii conceptului
proprietati extrinseci – externe, pot sa se modifice in timp
parti, fragmente – in cazul obiectelor structurate/compusepot fi fizice (“studentii dintro grupa”, “componentele unui
calculator”, “boabele unui strugure”) sau abstracte(“prezentarile unui curs”, “subiectele evocate de artist”,…)
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Rationamentele automate privitoare la indivizisunt dificil de realizat
ontologiile vizeaza in special claseleontologii ≠ baze de date
a se consulta siwww.coode.org
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Ontologiile reprezinta artefacte avind o structura specifica(lingvistica, ierarhica, logica)
Ontologiile vizeaza uzual atit domeniul de cunoastere,cit si activitatile desfasurate specifice acelui domeniu
Ontologia urmeaza un ciclu de viata (lifecycle), fiind creata, evaluata, ajustata, exploatata ca si alt artefact softwareaspecte de interes: datele, tipurile deworkflow‐uri,sabloanele de proiectare, utilizarea propriu‐zisa
de retinut
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
Rezumat
Knowledge engineeringMetodologii de proiectare a ontologiilor
Dr. Sabin Buraga http://www.purl.org/net/busaco
Semantic Web <?xml version=“1.0” ?><curs desc=“…” />
?