Uso della logica fuzzy all'interno di ontologie scritte in OWL2, basato sul lavoro di U. Straccia e F. Bobillo. Presentazione fatta per il corso di Web Semantico @ Università degli studi di salerno.
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Web Semantico e Logica Fuzzy
1. Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Web Semantico e Logica Fuzzy
Introduzione
Ontologie
Fuzzy
Antonio Sanfelice
Fuzzy OWL2
Università degli Studi di Salerno
18 Novembre 2011
2. Problemi della logica classica
Web
Semantico e
Logica Fuzzy Paradosso del mucchio
Antonio
Sanfelice 1 Un lm che dura 5 minuti è breve;
Introduzione 2 un lm breve che dura un minuto in più è ancora breve;
Ontologie
Fuzzy 3 =⇒ Un lm che dura 1030 anni è breve (?!)
Fuzzy OWL2
Vi è piaciuto il lm?
Si (true);
No (false);
Abbastanza (?!);
Non proprio (?!!).
3. Problemi della logica classica
Web
Semantico e
Logica Fuzzy
Il problema
Antonio
Sanfelice
La teoria naive degli insiemi non permette di denire
Introduzione insiemi vaghi (lm brevi o recenti);
Ontologie
Fuzzy La logica classica non permette di trattare la conoscenza
Fuzzy OWL2 vaga e imprecisa (Il lm è molto divertente);
La soluzione
La soluzione arriva nei primi anni '60 da un matematico azero:
Lofti A. Zadeh, che denisce due strumenti:
Insiemi Fuzzy
Logica Fuzzy
4. L'idea di base
Web
Semantico e
Logica Fuzzy
Fuzzy Set
Antonio
Sanfelice
Consideriamo il grado di appartenenza dell'elemento
all'insieme:
Introduzione
Il signore degli anelli ∈ Film Lunghi con grado 0.9
Ontologie
Fuzzy Star Wars ∈ Film Fantasy con grado 0.3
Fuzzy OWL2
The Eye 3 ∈ Film Horror con grado 0.1
Fuzzy Logic
Consideriamo il grado di verità dell'asserzione:
Twilight è un bel lm: abbastanza falso (verità 0.1)
Paranormal Activity è spaventoso: meh (verità 0.5)
Una settimana da Dio è divertente: vero (verità 1.0)
5. Denire un fuzzy set
Web
Semantico e
Logica Fuzzy
Antonio
Denizione
Sanfelice
Dato un insieme U denito universo, un fuzzy set A su U è una
Introduzione funzione
Ontologie µA : U → [0, 1]
Fuzzy
Fuzzy OWL2 µA è anche detta funzione di appartenenza (membership)
Un fuzzy set viene denito
nel caso U discreto nel caso U continuo
A = ∑ x /µA (x ) A= x /µA (x )
x ∈U U
6. Funzioni di appartenenza
Web
Semantico e
Logica Fuzzy Lineare Triangolare
Antonio
Sanfelice
Introduzione
Ontologie
Fuzzy
Fuzzy OWL2
Spalla destra Trapezoidale
7. Relazioni fuzzy binarie
Web
Semantico e Premesse
Logica Fuzzy
Antonio Siano U e V due insiemi classici.
Sanfelice
Sia A un fuzzy set denito su U con f.a. µA
Introduzione Sia B un fuzzy set denito su V con f.a. µB
Ontologie
Fuzzy
Fuzzy OWL2 Prodotto cartesiano fra insiemi fuzzy
Il prodotto cartesiano S fra A e B si ottiene come segue:
1 S ← UxV
2 µS (x , y ) ← min(µA (x ), µB (y )) : x ∈ U , y ∈ V
Relazione fuzzy
come nel caso classico, R (A, B ) ⊆ AxB ;
simili(Avatar, Pocahontas) = 0.65
8. Logica Fuzzy
Web
Semantico e Predicati Fuzzy
Logica Fuzzy
Antonio Nella Logica Fuzzy i predicati sono espressi nella forma
Sanfelice
Introduzione
AèT
Ontologie
Fuzzy dove:
Fuzzy OWL2 A è una Variabile Linguistica
T è un Termine, ovvero un valore assumibile dalla V.L.,
rappresentato da un fuzzy set.
Esempi
(l'età di) Harry Potter 7 è nuovo
(l'età in) Una notte da leoni è recente
(l'età di) La storia innita è vecchio
9. Esempio
Web
Semantico e
Logica Fuzzy Variabile linguistica Età (lm)
Antonio
Sanfelice
Introduzione
Ontologie
Fuzzy
Fuzzy OWL2
10. Modicatori Fuzzy
Web
Semantico e
Logica Fuzzy E se volessi modicare il signicato di un termine?
Antonio
Sanfelice
Questo lm è molto vecchio;
Introduzione Questo lm è abbastanza recente;
Ontologie
Fuzzy È possibile denire dei modicatori fuzzy
Fuzzy OWL2
Modicatori Fuzzy
Un modicatore fuzzy è una funzione che agisce sulla funzione
di appartenenza del fuzzy set. Si dividono in diverse categorie
Restrittivi;
Espansivi;
...
11. Modicatori: Esempi
Web
Semantico e Elevamento a potenza
Logica Fuzzy
Antonio
Sanfelice
Introduzione
mα (A) :U → [0, 1]
Ontologie x → (µA (x ))α
Fuzzy
Fuzzy OWL2
12. Modicatori: Esempi
Web
Semantico e Traslazione
Logica Fuzzy
Antonio
Sanfelice
mα (A) :U → [0, 1]
Introduzione
Ontologie
x → µA (x − α)
Fuzzy
Fuzzy OWL2
13. Logiche Fuzzy
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Introduzione
Diversi tipi di logiche
Ontologie
Fuzzy
Si distinguono a seconda di come deniscono le operazioni di:
Fuzzy OWL2 T-Norma (Intersezione);
T-Conorma (Unione);
Negazione;
Implicazione;
14. Logiche Fuzzy
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice Famiglie di logiche fuzzy
Introduzione
Famiglia Zadeh Gödel Šukasiewicz
Ontologie
Fuzzy t-Norma min {α, β } min {α, β } max {α + β − 1, 0}
Fuzzy OWL2
t-Conorma max {α, β } max {α, β } min {α + β , 1}
1, α =0
Negazione 1−α 1−α
0, α 0
1, α ≤β
Implicazione max {1 − α, β } min {1 − α + β , 1}
β, α β
15. Ontologia
Web
Semantico e
Logica Fuzzy Denizione Formale
Antonio
Sanfelice
È una tupla
O ≡ (C , T , R , σ )
Introduzione
Ontologie Dove
Fuzzy
Fuzzy OWL2
C insieme di concetti;
T relazione d'ordine parziale
Riessiva
Anti-Simmetrica
Transitiva
R è un insieme di relazioni;
σ : R → C + funzione che associa ad ogni relazione la sua
arietà;
16. Ontologia Fuzzy
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice Denizione Formale
Introduzione È una tupla
Ontologie
Fuzzy
O ≡ (C , T , R )
Fuzzy OWL2 Dove
C insieme di concetti fuzzy (fuzzy sets);
T Tassonomia Fuzzy
A è un B con grado α
R è un insieme di relazioni fuzzy;
17. Scelta dello strumento
Web
Semantico e
Logica Fuzzy
Come rappresentare la conoscenza imprecisa?
Antonio
Sanfelice
Attualmente non ci sono standard e non sembra che ce ne
Introduzione
saranno a breve termine;
Ontologie
Fuzzy Si è ancora alla ricerca di una soluzione che ora un buon
Fuzzy OWL2
tradeo fra capacità espressiva e semplicità d'uso.
Possiamo identicare principalmente due loni:
Estendere un linguaggio esistente con meccaniche fuzzy;
Usare un linguaggio esistente per rappresentare concetti
fuzzy;
Nella situazione attuale conviene sicuramente usare un
linguaggio già esistente: usiamo OWL2
18. Caratteristiche dello strumento
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Cosa dobbiamo riuscire a fare con OWL2?
Introduzione
Ontologie
Fuzzy
rappresentare fuzzy set;
Fuzzy OWL2 denire ruoli astratti fuzzy;
denire ruoli concreti fuzzy;
denire modicatori fuzzy;
denire relazioni tassonomiche fuzzy.
19. Una possibile soluzione
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Fuzzy OWL2
Introduzione
Ontologie Utilizza il meccanismo delle annotazioni di OWL2.
Fuzzy Ciò consente di:
Fuzzy OWL2
Estendere ontologie esistenti con concetti fuzzy;
Utilizzare editor testati e ranati per creare le ontologie;
Continuare ad usare reasoner non-fuzzy, i quali scarteranno
semplicemente le annotazioni;
20. Annotazioni
Web
Semantico e Sintassi OWL/XML
Logica Fuzzy
Antonio AnnotationAssertion
Sanfelice AnnotationProperty IRI =# annotationProperty /
IRI # className / IRI
Introduzione Literal datatypeIRI = rdf ; PlainLiteral
Ontologie annotationValue
Fuzzy / Literal
Fuzzy OWL2 / AnnotationAssertion
Fuzzy OWL2
Usa una propria annotation property: fuzzyLabel;
Un elemento può avere al massimo una annotazione fuzzy;
Ogni annotazione fuzzy deve essere delimitata dai tag
fuzzyOwl2/fuzzyOwl2;
L'attributo fuzzyType specica il tipo di elemento
annotato;
21. Fuzzy Ontology
Web
Semantico e
Logica Fuzzy
Scelta della logica
Antonio
Sanfelice
Tramite la fuzzyLabel è possibile sceglire quale logica usare.
Introduzione Sono supportate:
Ontologie
Fuzzy Zadeh
Fuzzy OWL2 Šukasiewicz
Sintassi
fuzzyOwl2 fuzzyType = ontology
FuzzyLogic logic = FUZZY_LOGIC /
/ fuzzyOwl2
FUZZY_LOGIC := lukasiewicz | zadeh
22. Fuzzy Datatype
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice Sintassi
Introduzione fuzzyOwl2 fuzzyType = datatype
Ontologie DATATYPE
Fuzzy / fuzzyOwl2
Fuzzy OWL2
DATATYPE :=
Datatype type = leftshoulder a = DOUBLE b = DOUBLE / |
Datatype type = rightshoulder a = DOUBLE b = DOUBLE / |
Datatype type = triangular a = DOUBLE b = DOUBLE
c = DOUBLE / |
Datatypetype = trapezoidal a = DOUBLE b = DOUBLE
c = DOUBLE d = DOUBLE /
24. Fuzzy Datatype: Esempio
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
L'annotazione Fuzzy
Introduzione
Ontologie AnnotationAssertion
Fuzzy AnnotationProperty IRI = '# fuzzyLabel '/
Fuzzy OWL2
IRI # Vecchio / IRI
Literal datatypeIRI = ' rdf ; PlainLiteral '
fuzzyOwl2 fuzzyType = datatype
Datatype type = leftshoulder a =5 b =7/
/ fuzzyOwl2
/ Literal
/ AnnotationAssertion
25. Modicatori Fuzzy
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Sintassi
Introduzione
fuzzyOwl2 fuzzyType = modifier
Ontologie
Fuzzy MODIFIER
/ fuzzyOwl2
Fuzzy OWL2
MODIFIER :=
Modifier type = linear c = DOUBLE / |
Modifier type = triangular a = DOUBLE b = DOUBLE
c = DOUBLE /
26. Modicatori Fuzzy: Esempio
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Annotazione
Introduzione
AnnotationAssertion
Ontologie
Fuzzy AnnotationProperty IRI = '# fuzzyLabel '/
IRI # molto / IRI
Fuzzy OWL2
Literal datatypeIRI = ' rdf ; PlainLiteral '
fuzzyOwl2 fuzzyType = modifier
Modifier type = linear c =0.8/
/ fuzzyOwl2
/ Literal
/ AnnotationAssertion
27. Modicatori Fuzzy: Applicazione
Web
Semantico e Sintassi
Logica Fuzzy
Antonio fuzzyOwl2 fuzzyType = datatype
Sanfelice Datatype type = modified modifier = STRING
base = STRING /
Introduzione / fuzzyOwl2
Ontologie
Fuzzy
Fuzzy OWL2 Annotazione
AnnotationAssertion
AnnotationProperty IRI = '# fuzzyLabel '/
IRI # MoltoVecchio / IRI
Literal datatypeIRI = ' rdf ; PlainLiteral '
fuzzyOwl2 fuzzyType = datatype
Datatype type = modified modifier = molto
base = vecchio
/ fuzzyOwl2
/ Literal
/ AnnotationAssertion
28. Asserzioni Fuzzy
Web
Semantico e Sintassi
Logica Fuzzy
fuzzyOwl2 fuzzyType = axiom
Antonio
Sanfelice Degree value = DOUBLE /
/ fuzzyOwl2
Introduzione
Ontologie
Fuzzy Esempio
Fuzzy OWL2
ClassAssertion
Class IRI = '# Spaventoso '/
NamedIndividual IRI = '# paranormalActivity '/
Annotation
AnnotationProperty IRI = '# fuzzyLabel '/
Literal datatypeIRI = ' rdf ; PlainLiteral '
fuzzyOwl2 fuzzyType = axiom
Degree value =0.5/
/ fuzzyOwl2
/ Literal
/ Annotation
/ ClassAssertion
29. Plugin per Protégé
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Introduzione
Ontologie
Fuzzy
Fuzzy OWL2
30. Riferimenti
Web
Semantico e
Logica Fuzzy
Antonio
Sanfelice
Introduzione
Ontologie
Fuzzy
U.Straccia, F.Bobillo
Fuzzy OWL2
Fuzzy Ontology Representation Using OWL 2
Martine De Cock
Representing the Adverb Very in Fuzzy Set Theory