Sunteți pe pagina 1din 43

U 2

C 0
SISTEME SEMANTICE V 1

BAZE DE CUNOŞTINŢE 6

MIHAELA COLHON
TIPURI DE CUNOŞTINŢE

Definiţie. Din punct de vedere al inteligenţei artificiale cunoştinţele


pot fi văzute ca mulţimea de fapte şi principii acumulate de oameni
sau, mai general, nivelul cunoaşterii umane la un moment dat.
Cunoştinţele includ idei, concepte, teorii, abstractizări, limbaje, reguli,
jocuri, obiceiuri.

2
FORME DE CUNOAŞTERE

3
TIPURI DE REPREZENTĂRI

• Reprezentări logice: logica cu predicate, Prolog

• Reprezentări relaţionale: grafuri şi reţele

• Reprezentări procedurale: reguli, sisteme de producţie

• Reprezentări structurale: frame‐uri, scripturi, obiecte

4
REPREZENTĂRI BAZATE PE LOGICĂ

Folosite de două clase de inferenţă (în funcţie de instrumente):
• Logica – unde mecanismul principal îl constituie inferenţa 
logică
• Regulile (utilizate cu precădere în sistemele expert) –
principalele mecanisme sunt înlănţuirea înainte şi înlănţuirea 
înapoi.

5
REPREZENTĂRI RELAȚIONALE

Rețelele semantice și grafurile conceptuale – reprezentari de tip


graf, principalul mecanism de inferenta este cautarea.

6
REPREZENTĂRI STRUCTURATE

Reprezentari de tip slot‐filler
• Cadrele si scripturile – reprezentari structurate, principalul
mecanism de inferenta este potrivirea sabloanelor.

7
REPREZENTARI STRUCTURATE

Cadre sau Frame-uri  o reprezentare structurată în


care obiectele sunt organizate în grupuri de concepte
legate prin relaţia de moştenire. Un cadru este un
şablon general, în care datele noi sunt interpretate în
termenii sau conceptele experienţei dobândite
anterior.
Aceste reprezentări includ posibilitatea atașării de
proceduri pentru calcularea valorilor unor anumite
atribute în funcție de valorile altora.

8
REPREZENTĂRI STRUCTURATE.
MOȘTENIREA PROPRIETĂȚILOR

9
REPREZENTĂRI RELAŢIONALE
Reţelele semantice (semantic network SN): o reprezentare
distribuită în care obiecteleconceptele sunt legate între ele prin
diverse relaţii.
SN exprimă cunoștințele sub formă de relații binare ce există între
concepte => pentru a înțelege un concept trebuie să știm cum se
“leagă” de celelalte concepte ale domeniului de cunoaștere.
SN au fost iniţial folosite în lingvistică.

10
TIPURI DE CUNOŞTINŢE

1. Cunoştinţe relaţionale simple
2. Cunoştinţe care permit moştenirea
3. Cunoştinţe inferenţiale
4. Cunoştinţe procedurale

11
TIPURI DE CUNOŞTINŢE

1. Cunoştinţe relaţionale simple
Cea mai simplă modalitate de reprezentare a faptelor declarative foloseşte
schemele de relaţii utilizate în sistemele de baze de date.
Astfel, cunoştinţele relaţionale sunt descrise de o mulţime de atribute și
caracterizate de valorile asociate acestora.
Aceasta reprezentare nu include și mecanisme de inferență. Ele însă au
devenit intrări pentru motoare de inferență puternice ‐> SGBDurile.

Nume Prenume Vârstă Adresă


Ionescu Ion 30 Craiova

12
TIPURI DE CUNOŞTINŢE

1. Cunoştinţe relaţionale simple
2. Cunoştinţe care permit moştenirea
3. Cunoştinţe inferenţiale
4. Cunoştinţe procedurale

13
TIPURI DE CUNOŞTINŢE

2. Cunoştinţe care permit moştenirea

Cunoştinţele despre obiecte, atribute şi valorile acestora sunt


deseori mult mai complexe decât permit reprezentările cu
scheme de relaţii.
Una din cele mai utilizate forme de inferenţă este moştenirea
proprietăţilor, prin care elementele care aparţin anumitor clase
moştenesc atribute şi valori provenite de la clase mai generale,
în care sunt incluse.

14
TIPURI DE CUNOŞTINŢE

2. Cunoştinţe care permit moştenirea

Pentru a face posibilă moştenirea proprietăţilor, obiectele


trebuie să fie grupate în clase, iar clasele trebuie să fie
organizate în cadrul unei ierarhii.

15
TIPURI DE CUNOŞTINŢE

2. Cunoştinţe care permit moştenirea

In IA acest tip de cunoştinţe stă la baza a două formalisme de 
reprezentare şi raţionament:
• reţele semantice
• baze de cunoştinţe cu cadre

16
TIPURI DE CUNOŞTINŢE

1. Cunoştinţe relaţionale simple
2. Cunoştinţe care permit moştenirea
3. Cunoştinţe inferenţiale
4. Cunoştinţe procedurale

17
TIPURI DE CUNOŞTINŢE

3. Cunoştinţe inferenţiale
Moştenirea proprietăţilor este un mecanism de inferenţă
putenic insă nu suficient pentru a putea construi un mecanism
de raţionament complet.
Este deci necesară, îmbogăţirea acestor cunoştinţe cu proceduri
de inferenţă care implementează regulile logice de inferenţă.
Exista mai multe astfel de proceduri, unele folosesc
rationamente “inainte”, rationamente “inapoi” sau mixte.

18
TIPURI DE CUNOŞTINŢE

3. Cunoştinţe inferenţiale

19
TIPURI DE CUNOŞTINŢE

1. Cunoştinţe relaţionale simple
2. Cunoştinţe care permit moştenirea
3. Cunoştinţe inferenţiale
4. Cunoştinţe procedurale

20
TIPURI DE CUNOŞTINŢE

4. Cunoştinţe procedurale

Cunoştinţele enumerate pana acum sunt formalisme ale


faptelor declarative. Un alt tip de cunoştinţe extrem de utile
sunt cunoştinţele procedurale sau operaţionale, care specifică
ce anume trebuie făcut şi când.
Cea mai folosită tehnică de reprezentare a cunoştinţelor
procedurale în programele de IA este aceea a utilizării regulilor
de producţie.

21
TIPURI DE CUNOŞTINŢE

4. Cunoştinţe procedurale. Reguli de producţie

Regulile de producţie sunt numite şi reguli de tip if‐then, care


pot fi imbogățite cu informații asupra modului în care pot fi
folosite. Acestea sunt cunoştinţe/instructiuni condiţionale de
tipul:
IF conditie THEN concluzie 
Regulile de producţie sunt foarte utilizate în proiectarea
sistemelor expert.

22
BAZE DE CUNOŞTINŢE

O bază de cunoştinţe poate fi privită ca o colecţie de entităţi


având o structură sintactică în concordanţă cu o anumită
metodă de reprezentare a cunoştinţelor, astfel incât printr‐un
efectuarea unui calcul numit raţionament sau inferenţă să se
poată deduce noi informaţii cu privire la obiectele sau
conceptele reprezentate în bază.

23
MOTORUL DE INFERENTA

Mecanismul de inferenţă urmăreşte o serie de obiective majore,


cum ar fi:
• Alegerea strategiei de control în funcţie de problema curentă;
• Actualizarea automată a elementelor din baza de cunoștințe
cu cele obținute prin inferență.

24
SISTEME BAZATE PE CUNOŞTINŢE

În sistemele simbolice de IA, operaţiile de bază sunt


reprezentate de prelucrările care manipulează cunoştinţele din
baza de cunoştinţe.
Astfel de sisteme se numesc sisteme bazate pe cunoştinţe,
caracteristica lor definitorie fiind că există o separare netă între
baza de cunoştinţe şi modulul de inferenta (de rationament).
Una din cele mai grele probleme ale dezvoltării unui astfel de
sistem este construirea bazei de cunoştinţe, ce rezultă în urma
procesului de achiziţie de cunoştinţe.

25
SISTEME BAZATE PE CUNOŞTINŢE

Deosebirea dintre un program clasic şi unul bazat pe cunoştinţe,


constă în faptul că în primul caz cunoştinţele sunt implicite, pe
când în al doilea caz, ele sunt explicite.
Sistemele bazate pe cunoştinţe sunt aplicații care rezolvă
inteligent probleme complexe şi în acest scop, în procesul de
proiectare trebuie să se aibă în vedere două aspecte esenţiale:
• găsirea unei reprezentări a cunoştinţelor cât mai adecvată
clasei de probleme
• construirea unui modul de prelucrare a cunoştinţelor, numit şi
motor de inferenţă.

26
SISTEME BAZATE PE CUNOŞTINŢE

procesari

inferente

27
SISTEME BAZATE PE CUNOŞTINŢE

Metoda de reprezentare
pt. sisteme evoluate: a cunoștințelor
acest modul
utilizează tehnici de
învățare și astfel SE
dobăndește
capacitatea de a-și
adăuga noi
cunoștințe

28
MOTOR DE INFERENȚĂ VS. 
BAZA DE CUNOȘTINȚE
Motorul de inferență este proiectat pentru a manipula
cunoștințele din BC însă nu depinde de conținutul efectiv al
acestora ci de modul de reprezentare al lor.

Un același modul de inferență poate fi utilizat pentru baze de


cunoștințe diferite, dacă toate aceste respectă un anume
formalism de reprezentare.

29
LIMBAJE DE REPREZENTARE A CUNOȘTINȚELOR

‐ Text brut: o secvență de caractere care nu respectă un anumit


formalism de reprezentare
‐ Text adnotat sintactic: conform unor anumite limbaje de
adnotare sintactică: HTML, LaTeX, XML
‐ Text adnotat semantic: marcarea textului cu metadate (de
obicei folosind RDFa) care transmit mașinii semantica textului
‐ Text afișat sau tipărit: conform specificațiilor incluse în
adnotări

30
SEMANTIC WEB

• Formalismul de reprezentare a datelor trebuie să descrie


semantica datelor astfel încât aceste date să fie procesabile
automat de către calculatoare.
• În contextul Semantic Web, markup se refera la:
• afisarea informatiei (dimensiune font, culoare, etc.)
• Hyper‐linkuri pentru a lega conținut

31
SGML
STANDARD GENERALIZED MARKUP LANGUAGE
• Permite reprezentarea textului independent de mașină sau de 
sistemul de operare folosit
• Metalimbaj – limbaj de descriere formală a unui limbaj de 
adnotare
• Limbaj cu caracter declarativ – marchează zone în text fără a 
preciza rolul și modul de folosire; prelucrările se programează 
în baza marcajelor din text
• Permite definirea de tipuri de documente – Document Type 
Definition (DTD)

32
HYPERTEXT

• Hipertextul reprezintă o formă nelineară de document


electronic.
• Hipertextul este un mod de organizare complexă a
informațiilor în care datele sunt memorate într‐o rețea (graf)
de noduri și legături.
• Hipertextul reprezintă o formă de comunicare dintre om și
calculator, interfața fiind chiar hipertextul.

33
HTML
HYPERTEXT MARKUP LANGUAGE
• Limbaj de marcare, derivat din SGML, având DTD asociat
• Oferă doar un sprijin limitat pentru marcaje semantice
• Limbajul prin care sunt structurate și prezentate informații de 
natură diversă (text, imagini, video)
• Permite specificarea legăturilor dintre diverse resurse 
hipertext
• XHTML – limbajul HTML rescris în termeni XML

34
XML
EXTENSIBLE MARKUP LANGUAGE
Destinat:
• Scrierii de pagini web, adnotării documentelor electronice
• Schimbului de informații
• Au fost create un număr important de limbaje de marcare 
bazate pe XML:
• Limbaje de interogare pentru Web
• Ontologii prin intermediul limbajului OWL (Ontology Web 
Language)
• Specifică arborele documentului
• NU identifică conținutul documentului !

35
HTML & XML

36
LIMBAJE DE REPREZENTARE A CUNOȘTINȚELOR

Utilizate pentru a marca cunoștințele în text.


• Limbaje ca RDF si OWL nu sunt doar limbaje de descriere a
datelor, ci sunt practic limbaje de reprezentare a cunostintelor
de categorie ușoară (lightweight knowledge representation
languages).
• Acest lucru înseamnă că ele sunt “logici” care permit
obținerea de informație suplimentară prin raționament sau
inferență pornind de la informația dată.

37
LIMBAJE DE REPREZENTARE A CUNOȘTINȚELOR

• RDF are o expresivitate logică redusă permițând inferențe


foarte simple:
• Moștenirea proprietăților
• Inferențe cu tipuri referitoare la restricții de domeniu (gama de valori)
• OWL are o expresivitate logică mai bogată decât RDF. Permite
inferențe suplimentare:
• Constrângeri de (in)egalitate
• Constrângeri numerice
• Existența obiectelor

38
SISTEME SEMANTICE

Din punct de vedere intuitiv, un sistem semantic (SS) este o


colecţie de componente care cooperează astfel încât sistemul să
fie capabil să raţioneze, adică să dea un răspuns la o interogare.
Orice asemenea sistem utilizează o bază de cunoştinţe şi
implicit o anumită metodă de reprezentare a cunoştinţelor.

39
SS & BAZE DE CUNOŞTINŢE

Raportul dintre o bază de cunoştinţe şi un SS este următorul:


un SS nu conţine o anumită bază de cunoştinţe ci defineşte
(printre altele) un formalism de reprezentare și raționament,
deci implicit definește totalitatea bazelor de cunoştinţe corecte
din puctul de vedere al formalismelor pe care le reprezintă şi pe
care le pot procesa.

40
SS & SGBD

Pe cazul particular al bazelor de date, un SS devine un SGBD:


• la fel ca SGBD‐urile, si SS‐urile folosesc un singur formalism de
reprezentare pentru bazele de date/baze de cunoştinţe
• noţiunii de interogare de la SGBD îi corespunde noţiunea de
deducţie la SS

41
SISTEME SEMANTICE

Sistemul S=(LKB, LQ, LAns, LI, ├, Ans, Upd) se numeste sistem semantic, 


unde:
• LKB este mulţimea tuturor bazelor de cunoştinţe considerate 
corecte
• LQ este limbajul de interogare
• LAns este limbajul de raspuns
• ├ este relatia de deductie realizata de S
• Ans: LKB  LQ  LAns este functia de raspuns
daca K ├ w atunci Ans(K, w) contine toate solutiile la interogarea w
pentru K  LKB
• Upd : LKB  LI  LKB este functia de actualizare
K2 = Upd(K1, w) pentru K1, K2  LKB

42
VĂ MULŢUMESC!

Referințe bibliografice:
• Sabin Corneliu Buraga, Semantic Web. Fundamente și 
aplicații, Editura MATRIX ROM București (2004)
• Mihaela Colhon, Baze de cunoștințe, Editura Sitech Craiova, 
ISBN 978‐ 606‐11‐4358‐0 (2014)
• Adina Magda Florea, Inteligență artificială, Note de curs 
(2010‐2011).
• Ștefan Trăușan Matu, Familia XML, 
http://andrei.clubcisco.ro/cursuri/4ioc/2‐familia.xml.pdf

43

S-ar putea să vă placă și