You are on page 1of 52

13.

Reprezentarea cunostintelor - Logici


descriptive

January 17, 2017


Outline

Mental events and mental objects - 12.4

Reasoning systems for categories - 12.5


Retele semantice
Logicile Descriptive
Elemente ALC
Interpretare ALC
Alti constructori
Structura unui sistem DL
Inferenta
Linked data examples

Reasoning with default information


Scopul reprezentarii cunostinelor (Knowledge Representation) este:
develop formalisms for providing high-level descriptions of the
world that can be effectively used to build intelligent applications

formalisms = sintaxa si semantica formala, bine definite


Scopul reprezentarii cunostinelor (Knowledge Representation) este:
develop formalisms for providing high-level descriptions of the
world that can be effectively used to build intelligent applications

high-level = concentrare pe aspectele relevante si ignorarea


detaliilor irelevante
Scopul reprezentarii cunostinelor (Knowledge Representation) este:
develop formalisms for providing high-level descriptions of the
world that can be effectively used to build intelligent applications

intelligent = abilitatea de a rationa pe cunostinte si de a deduce


cunostinte implicite din cunostinte explicit reprezentate
Scopul reprezentarii cunostinelor (Knowledge Representation) este:
develop formalisms for providing high-level descriptions of the
world that can be effectively used to build intelligent applications

effective use = disponibilitatea uneltelor practice de rationare


Ontological engineering = reprezentarea conceptelor abstracte,
precum Events, Time, Physical objects, Beliefs care apar in mai
multe domenii
Ontology = orice ontologie e un tratat - o intelegere sociala - intre
oameni cu un motiv pt partajare
special purpose ontologies
general purpose ontologies, upper ontologies
Categories
Taxonomy = organizarea categoriilor pe baza relatiei de subclasa
BasketBalls Balls
Reification = transformarea unei propozitii intr-un obiect:
BasketBalls(x) devine BasketBalls (John McCarthy: thingification)
BBC semantics

http://www.bbc.co.uk/ontologies
http://www.bbc.co.uk/ontologies/sport
http://www.bbc.co.uk/ontologies/bbc
Mental objects - 12.4

Propositional attitudes: Beliefs, Knows, Wants, Intends,


Informs
Knows(Lois, CanFly (Superman))
modal logic - operatori modali = preiau propozitii (nu
termeni) drept parametrii

A knows P se reprezinta KA P

, unde K operator modal pt a sti


Wise men problem: sunt cel mult doua palarii albastre
Exemplu in logica modala: Wise men details

Cel putin o palarie este rosie, deci sunt maxim doua palarii albastre:

K (b1&b2 b3)&(b3&b1 b2)&(b2&b3 b1);

Fiecare intelept vede palaria celuilalt

(K2 b1 | K2 b1)&(K3 b1 | K3 b1)&

(K3 b2 | K3 b2)&(K1 b2 | K 1b2)&


(K1 b3 | K1 b3)&(K2 b3 | K 2b3)
Reasoning systems for categories (12.5): Retele semantice
- Semantic networks

1909: existential graphs


retele semantice: reprezinta obiecte individuale, categorii de
obiecte, relatii intre obiecte
reprezentare grafica:
obiecte sau nume de categorii - oval sau dreptunghi
relatii - arce etichetate
Retea semantica
Mammals

SubsetOf
HasMother Legs
Persons 2

SubsetOf SubsetOf
Female Male
Persons Persons

MemberOf MemberOf

SisterOf Legs
Mary John 1

relatia (link) MemberOf intre un obiect si o categorie


Retea semantica
Mammals

SubsetOf
HasMother Legs
Persons 2

SubsetOf SubsetOf
Female Male
Persons Persons

MemberOf MemberOf

SisterOf Legs
Mary John 1

relatia (link) MemberOf intre un obiect si o categorie


relatia SubsetOf intre doua categorii
Retea semantica
Mammals

SubsetOf
HasMother Legs
Persons 2

SubsetOf SubsetOf
Female Male
Persons Persons

MemberOf MemberOf

SisterOf Legs
Mary John 1

relatia (link) MemberOf intre un obiect si o categorie


relatia SubsetOf intre doua categorii
relatia HasMother tip special - intre membrii unei categorii

x x Persons [y HasMother (x, y ) y FemalePerson]


Retea semantica
Mammals

SubsetOf
HasMother Legs
Persons 2

SubsetOf SubsetOf
Female Male
Persons Persons

MemberOf MemberOf

SisterOf Legs
Mary John 1

relatia (link) MemberOf intre un obiect si o categorie


relatia SubsetOf intre doua categorii
relatia HasMother tip special - intre membrii unei categorii

x x Persons [y HasMother (x, y ) y FemalePerson]


!!nu categoria are picioare, ci fiecare membru

x x Persons Legs(x, 2)
Retea semantica
Mammals

SubsetOf
HasMother Legs
Persons 2

SubsetOf SubsetOf
Female Male
Persons Persons

MemberOf MemberOf

SisterOf Legs
Mary John 1

relatia (link) MemberOf intre un obiect si o categorie


relatia SubsetOf intre doua categorii
relatia HasMother tip special - intre membrii unei categorii

x x Persons [y HasMother (x, y ) y FemalePerson]


!!nu categoria are picioare, ci fiecare membru

x x Persons Legs(x, 2)
Calculul mostenirii: Mary are 2 picioare
Probleme ale retelelor semantice
Mostenirea multipla
Relatii inverse: HasSister - SisterOf

p, s HasSister (p, s) SisterOf (s, p)

se pot reprezenta doar relatii binare

Fly (Shankar , NewYork, NewDelhi , Yesterday )

Solutie: reificare intr-un eveniment


FlyEvents

MemberOf

Fly17
Agent During

Origin Destination

Shankar NewYork NewDelhi Yesterday


Valori implicite

Mammals

SubsetOf
HasMother Legs
Persons 2

SubsetOf SubsetOf
Female Male
Persons Persons

MemberOf MemberOf

SisterOf Legs
Mary John 1

O persoana are doua picioare - valoare implicita:


o persoana se presupune ca are doua picioare, exceptie cazul in
care exista o informatie mai specifica contradictorie John are un
singur picior
Obs: algoritmul de mostenire: de la obiect la categorii permite
suprascrierea valorii generale cu cea specifica
Logicile Descriptive
au derivat din retele semantice
permit definirea notiunilor principale (clase, relatii, obiecte)
ale unui domeniu prin intermediul conceptelor, rolurilor si
indivizilor
permit definirea constrangerilor si deducerea consecintelor
Speaker Person gives.Talk

Speaker (FRANK ), attends(FRANK , DL TUTORIAL), Tutorial(DL TUTORIAL)


Tutorial attended by .PhD student
succesul notabil al adoptarii DL: limbajul OWL bazat pe DL a
fost adoptat drept limbajul standard al ontologiilor in webul
semantic
Bibliografie:
Description Logics. Franz Baader, Theoretical Computer
Science Dresden, Germany
AIMA, capitolul 12.5
ALC = Attributive Logic with Complement

Concepte atomice, roluri atomice + constructori pentru descrierea


de concepte
Fie NC setul numelor de concepte si NR setul numelor de roluri.
Setul ALC al descrierilor de concepte este cel mai mic set astfel
incat:
toate numele conceptelor sunt descrieri de concepte ALC
daca C siD sunt descrieri de concepte ALC, atunci si
C (negatia), C D(conjunctia), C D(disjunctia) sunt
descrieri de concepte
daca C este o descriere de concept si r NR , atunci si r .C
(existential restriction) si r .C (value restriction) sunt
descrieri de concepte
Interpretare

O interpretare este o pereche I = (I , I ),


I un set nevid
I o functie care asigneaza
fiecarui nume de concept A un set AI I
fiecarui nume de rol o relatie binara r I I xI
functia este extinsa la descrieri de concepte ALC cu:
(C D)I = C I D I
(C D)I = C I D I
(C )I = I \ C I
Restrictie existentiala:
(r .C )I = {x I |y I cu(x, y ) r I si y C I }
Restrictie pe valoare:
(r .C )I = {x I |y I , (x, y ) r I y C I }
Exemplu de interpretare
Consideram I = {U, F , N}
Exemple

= A A - top concept = intreg domeniul


= - bottom concept = setul vid
Participant attends.Talk
Exemple

= A A - top concept = intreg domeniul


= - bottom concept = setul vid
Participant attends.Talk participanti la conferinta care
participa la cel putin o prelegere
Participant attends.(Talk Boring )
Exemple

= A A - top concept = intreg domeniul


= - bottom concept = setul vid
Participant attends.Talk
Participant attends.(Talk Boring ) participanti care
participa numai la prelegerile care nu sunt plictisitoare
Speaker gives.(Talk (Boring topic.DL))
Exemple

= A A - top concept = intreg domeniul


= - bottom concept = setul vid
Participant attends.Talk
Participant attends.(Talk Boring )
Speaker gives.(Talk (Boring topic.DL)) vorbitori care
sutsin o prelegere care este plictisitoare sau are drept topic
doar DL
Relatie cu logica predicatelor de ordinul intai
ALC este un fragment din logica predicaetlor de ordinul intai
numele de concepte = predicate unare
numele de roluri = predicate binare
pentru x o variabila de ordinul intain, o descriere de concept
ALC C este translatata la formula x (C ) cu variabila libera x:
x (A) := A(x) pentru numele de concepte A
x (C D) := x (C ) x (D)
x (C D) := x (C ) x (D)
x (C ) := x (C )
x (r .C ) := y .(r (x, y ) y (C ))
x (r .C ) := y .(r (x, y ) y (C )), y este o variabila diferita de
x
Relatie cu logica predicatelor de ordinul intai
ALC este un fragment din logica predicaetlor de ordinul intai
numele de concepte = predicate unare
numele de roluri = predicate binare
pentru x o variabila de ordinul intain, o descriere de concept
ALC C este translatata la formula x (C ) cu variabila libera x:
x (A) := A(x) pentru numele de concepte A
x (C D) := x (C ) x (D)
x (C D) := x (C ) x (D)
x (C ) := x (C )
x (r .C ) := y .(r (x, y ) y (C ))
x (r .C ) := y .(r (x, y ) y (C )), y este o variabila diferita de
x
Participant attends.Talk
ar rezulta

x Participant(x) y Attends(x, y ) Talk(y )


Alti constructori

restrictie numerica calificata (qualified number restrictions):


nr .C , nr .C

Person( 20attends.Talk)( 3attends.(Talk topic.DL))


Alti constructori

restrictie numerica calificata (qualified number restrictions):


nr .C , nr .C

Person( 20attends.Talk)( 3attends.(Talk topic.DL))

Persoane care au participat la cel putin 20 de prelegeri si cel


putin 3 prelegeri au un topic DL
Rol invers: r 1

Speaker gives.(Talk attends 1 .(Bored Sleeping ))


Alti constructori

restrictie numerica calificata (qualified number restrictions):


nr .C , nr .C

Person( 20attends.Talk)( 3attends.(Talk topic.DL))

Persoane care au participat la cel putin 20 de prelegeri si cel


putin 3 prelegeri au un topic DL
Rol invers: r 1

Speaker gives.(Talk attends 1 .(Bored Sleeping ))

Vorbitori care dau o prelegere la care cei care participa sunt


fie plictisiti fie somnorosi.
Structura unui sistem DL
TBOX = terminological box

GCI (general concept inclusion) A C


definitii de concepte A C
ABOX = Assertional box

Fapte despre indivizi

Lecturer (FRANZ ), teaches(FRANZ , Tut03)

Tutorial (Tut03), topic(Tut03, ReasoningInDL), DL(ReasoningInDL)


Inferenta

Principalele taskuri de inferenta sunt:


incluziunea (subsumption) = verificarea daca o categorie este
un subset al altei categorii prin compararea definitiilor lor
echivalenta = verificarea daca o categorie este echivalenta cu
alta categorie prin compararea definitiilor lor
satisfiabilitatea unui concept C in raport cu un TBOX: daca
C I 6= pentru o interpretare I
clasificarea unui individ = verificarea daca un obiect apartine
unei categorii
consistenta ABOX: exista o interpretare
Taskuri de inferenta compuse: TBOX classification, realization
A A satisfiabil sau nu?
A A e echivalent cu r .A r .A
A B A?
r .(A B) r .A
r .(A B) r .A r .B
r .A r .B r .(A B)
A A satisfiabil sau nu? nesatisfiabil
A A e echivalent cu r .A r .A DA, ambele sunt
echivalente cu
A B A? DA
r .(A B) r .ADA
r .(A B) r .A r .BDA
r .A r .B r .(A B)DA
Happy father

Tata fericit: tati ai caror copii sunt doctori si toti copiii au prieteni
bogati sau fericit:

HappyFather Male (hasChild.)

hasChild.(Doctor hasFriend.(Rich Famous))


Quiz 1

FRANZ este instanta a caror concepte?


Quiz 1

FRANZ este instanta a caror concepte?


Man, Speaker, MaleSpeaker
QUIZ 2
Descrieti in DL urmatoarele concepte: (puteti folosi rolul hasChild)

Person: Person Male Female


Mother, Father:
Parinte:
Persoana fara copii:
Grandmother:
Parinte de baieti (are cel putin un baiat):
Parinte doar baieti:
Mama cu multi copii (mai mult de 3):

D Grandmother
hasChild.(ParentOfOnlySons Childless)
QUIZ 2
Descrieti in DL urmatoarele concepte: (puteti folosi rolul hasChild )

Person: Person Male Female


Mother, Father: Mother Female hasChild .Person
Father Male hasChild .Person
Parinte:Parinte Person hasChild .Person
Persoana fara copii:
Childless Person (hasChild .Person) sau
Childless Person hasChild .
Grandmother: Grandmother Mother hasChild .Parent
Parinte de baieti (are cel putin un baiat):
ParentsOfSons Parent hasChild .Male
Parinte doar baieti:
ParentsOfSons Parent hasChild .Male
Mama cu multi copii (mai mult de 3):
MotherWithManyChildren Mother 3hasChild
Bunica doar de nepoti baieti:

D Grandmother

hasChild .(ParentOfOnlySons Childless)


Semantic web - RDF
If HTML and the Web make all online documents look like one
huge book, RDF, schema, and inference languages will make all the
data in the world look like a huge database. - Tim Berners Lee
Triples: Subject Property objects
Linked data

Linked Open data cloud


DBpedia
BBC
Bio2RDF
Example of Queying RDF with SPARQL

DBpedia: Public Data Infrastructure for a Large, Multilingual,


Semantic Knowledge Graph
View the resources: http://dbpedia.org/page/Roman Polanski
Endpoint: dbpedia.org/sparql
What are the birth date and the directed movies of Roman
Polanski?
PREFIX dbpedia2 : <http :// dbpedia . org / property / >
SELECT ? date ? movie
WHERE {
<http :// dbpedia . org / resource / R o m a n _ P o l a n s k i > dbpedia2 :
birthDate ? date .
? movie dbpedia2 : director <http :// dbpedia . org / resource /
Roman_Polanski>
}
BBC semantic annotated news

Resources: http://www.bbc.co.uk/things/78080d81-2849-497e-
bc3a-bf364626456b
Pick a news:
http://www.bbc.com/news/business-38633982?intlink_from_url=
search for 78080d81-2849-497e-bc3a-bf364626456b
take one topic ids: 60e9f197-2f48-4ded-8383-ba6f3004bc6
BBCs 2010 World Cup
Domeniul medical

DrugBank: https://www.drugbank.ca
Bio2RDF project: http://bio2rdf.org/
Reasoning with default information - 12.6

Proprietatea mostenita de toti membrii unei categorii poate fi


inlocuita de informatie mai specifica
Monotonic logic - all entailed sentences remain entailed after
mew sentences are added to the knowledge base
Nonmonotonic logic - the set of beliefs does not grow
monotonically over time as new evidences are added
Exemplu:
cineva vede o masina, doar 3 roti sunt vizibile - by default
concluzia este ca masina are 4 roti
vede un om cu o roata in mana si masina ridicata pe cric -
concluzia se modifica, masina are doar 3 roti
Circumscription and default logic

Abnormal (x) este considerat adevarat atat timp cat nu e stiut ca


fiind adevarat

Bird(x) Abnormal (x) Flies(x)

Penguin(x) Abnormal (x)


Nixon diamond

Republican(Nixon) Quaker (Nixon)

Republican(x) Abnormal2 (x) Pacifist(x)


Quaker (x) Abnormal3 (x) Pacifist(x)
Rezumat

Mental events and mental objects - 12.4

Reasoning systems for categories - 12.5


Retele semantice
Logicile Descriptive
Elemente ALC
Interpretare ALC
Alti constructori
Structura unui sistem DL
Inferenta
Linked data examples

Reasoning with default information

You might also like