Rappresentazioni strutturate della conoscenza Reti semantiche e frame M. Simi, 2014-2015 Ingegneria della conoscenza Tra i vari problemi di rappresentazione le ontologie e le categorie oggetti fisici e sostanze azioni e cambiamento, eventi, tempo conoscenze, credenze … attitudini mentali il ragionamento non monotono Il ragionamento incerto, probabilistico ... Ne vediamo due: Il ragionamento su categorie (reti semantiche, frame … logiche terminologiche o descrittive) Il ragionamento probabilistico (nella II parte) Ontologia generale o superiore Approccio psicologico-linguistico alla R.C. L’ approccio logico: per formalizzare il ragionamento valido nato per la matematica e poi esteso al ragionamento di "senso comune". L’ approccio cognitivo-linguistico: pone l'enfasi sui meccanismi per l'acquisizione, strutturazione ed uso della conoscenza Forti sinergie con: Studi di psicologia cognitiva Studi sul linguaggio naturale Rappresentazioni a grafo Precursore: grafi esistenziali di Charles Pierce (1909) In logica i simboli sono manipolati sintatticamente a prescindere dal loro significato x Fragola(x) Rossa(x) La verità di una formula dipende unicamente dalla verità delle sue sotto-formule e dall’ interpretazione che diamo ai simboli primitivi ma l’uso e dei simboli (e dei concetti che rappresentano) è arbitrario e indipendente dal simbolo usato Teorie associazioniste Le teorie associazioniste si occupano delle relazioni tra simboli e dal significato che scaturisce da tali associazioni Organizzazione gerarchica dei concetti: esperimenti (Collins, Quillian, 1969) Domande: 1. “Un canarino è un uccello?” 2. “Un canarino vola?” 3. “Un canarino respira? Tempi di risposta: T1 < T2 < T3 Eccezioni “Uno struzzo vola?” Risposta immediata Organizzazione gerarchica dei concetti: interpretazione Le proprietà sono "attaccate" al concetto più generale a cui si applicano Trattamento eccezioni Le eccezioni sono memorizzate direttamente con l'oggetto Successo della strutturazione gerarchica dei concetti in informatica ed ingegneria del SW Definizione di rete semantica Le reti semantiche sono una grande famiglia di schemi di rappresentazione "a grafo". Una rete semantica è un grafo in cui: I nodi, etichettati, corrispondono a concetti (individui o classi) Gli archi, etichettati e orientati, a relazioni binarie tra concetti (dette anche ruoli). Due particolari relazioni “primitive” sono sempre presenti: IS, relazione di sotto-classe () IS-A, relazione di appartenenza () Un esempio di rete semantica Un esempio di rete Ereditarietà nelle reti semantiche Ereditarietà come una particolare inferenza legata alla transitività di IS Facilmente implementabile come link traversal Ereditarietà multipla Person hasChild is Parent is Mother Relazioni n-arie (n > 2) Da(John, Mary, book) Eventi-dare “John da un libro a Mary” Questa tecnica viene E1 hasAgent chiamata hasObject ‘rappresentazione tramite struttura di casi’ (case John book-4 structure representation) hasRecipient Mary Rappresentazione per casi: esempio Espressività delle reti semantiche Limitato potere espressivo: , , ... non direttamente esprimibili Nodi proposizione nei grafi concettuali di Sowa Es. “Non ci sono cani rosa” y (cane(x)colore(x,y)rosa(y)) Espressività delle reti semantiche Reti partizionate in K-net [Fikes-Hendrix] “Tutte le Mustang sono costruite da Ford” x xMustangs y yCostruzioni Oggetto(y, x) Agente(y, Ford) Mancanza di “semantica” delle reti sematiche Woods [75] e altri mettono in luce ambiguità e incongruenze nell’uso di nodi e archi, ... ovvero la mancanza di “semantica” delle reti semantiche La semantica talvolta non è chiara o è ricavabile solo dai programmi che usano le reti Esempi di confusione Stessa relazione per appartenenza e per sotto-insieme Istanza canonica o classe di oggetti? Significato diverso delle relazioni (tra classi, tra classi e oggetti, tra oggetti) Reti semantiche e logica Le reti semantiche una notazione conveniente per una parte del FOL, ma pur sempre riconducibili ad un formalismo logico Anche se non del tutto … Traduzione in logica A IS B NOTA: In maiuscolo le classi, in minuscolo gli individui x A(x) B(x) IS-A a B R A R A B(a) b x x A R(x, b) B x x A y yB R(x, y) Un esempio di traduzione Animale IS HaNZampe Mammifero 4 È possibile dedurre: IS HaColore Elefante IS-A Clyde x Mammifero(x) Animale(x) x Mammifero(x) HaNZampe(x, 4) x Elefante(x) Mammifero(x) x Elefante(x) HaColore(x, grigio) Elefante(Clyde) grigio Animale(Clyde) Mammifero(Clyde) HaNZampe(Clyde, 4) HaColore(Clyde, grigio) Ereditarietà corrisponde a E, MP e transitività di … e le eccezioni? n-zampe Mammifero x Mammifero(x) NZampe(x, 4) x Pipistrello(x) Mammifero(x) x Pipistrello(x) NZampe(x, 2) Pipistrello(Pat) 4 IS Pipistrello n-zampe 2 Si deduce: NZampe(Pat, 2) IS-A Pat … ma anche NZampe(Pat, 4) Modellare ragionamento default richiede logiche non monotone WordNet [Miller] Grossa risorsa lessicale organizzata a rete semantica (122.000 termini) i nomi, i verbi, gli aggettivi, gli avverbi sono organizzati in insiemi di sinonimi (synset) che rappresentano un concetto (117.000 synset); alla parola è tipicamente associato un insieme di synset: i sensi della parola http://wordnet.princeton.edu/ organism WordNet: la struttura person … bird beak wing feather … … … … cleric measure colour oscine bishop number red finch Hyperonims Has-part Cardinal Cardinal, c. number Cardinal, carmine ... 4 Synset per ‘cardinal’ Sacred college Cardinal, c. grosbeak Member-of WordNet: esempi di uso Espansione di interrogazioni con sinonimi o iperonimi nella ricerca basata su parole chiave (bisogna in primo luogo identificare il senso giusto) Distanza semantica tra parole Categoria semantica del termine o supersense: persona, organizzazione, luogo, misura … I “frame” La conoscenza è organizzata in strutture mentali complesse, i frame [Minsky, 1974]. Essenza della teoria: “Quando si incontra una situazione nuova, o imprevista, viene evocata dalla memoria una struttura mentale complessa, la quale, mediante un processo di istanziazione, viene adattata alla situazione specifica e fornisce una chiave di interpretazione per essa” Struttura dati per rappresentare "stereotipi", ruolo fondamentale dei default I “frame”come struttura dati Condizioni per l'attivazione Collezione di coppie slot-filler (attributo-valore) I filler possono avere diversi aspetti (facet o faccette) valore specifico restrizione sul valore, riferimento ad altro frame valore default una procedura da attivare quando lo slot riceve un valore (if-added) o è richiesto il valore dello slot (if -needed) demoni o allegati procedurali Slot particolari sono IS e IS-A per organizzazione gerarchica dei frame in sistemi di frame Esempio: una stanza d’albergo I frame e la logica I concetti naturali, a differenza dei concetti matematici, raramente ammettono definizioni del tipo necessario e sufficiente Quadrilatero (x) Poligono(x) N-lati(x,4) Uccello(x) Bipede(x) Pennuto(x) Vola(x) … ? Definizioni di prototipi Quello che caratterizza tipicamente un concetto … Condizioni necessarie Uccello(x) Vertebrato(x) Uccello(x) Bipede (x) Condizioni tipicamente necessarie (default) Uccello(x) Tip Vola(x) Uccello(x) Tip Pennuto(x) Condizioni sufficienti (criteriali) Canarino(x) Uccello(x) Struzzo(x) Uccello(x) Condizioni tipicamente sufficienti Vola(x) Cinguetta(x) Tip Uccello(x) Pennuto(x) Tip Uccello(x) Anche il ragionamento con prototipi è fonte di non monotonia FrameNet [Lowe, Baker, Fillmore] Risorsa costituita da collezioni di frasi annotate sintatticamente e semanticamente, organizzata a frame. Semantica basata su frame: il significato delle parole scaturisce dal ruolo che esse hanno nella struttura concettuale delle frasi La conoscenza è strutturata in 16 domini generali: time, space, communications, cognition, health … 6000 elementi lessicali; 130.000 frasi annotate http://www.icsi.berkeley.edu/~framenet/ FrameNet: un esempio FRAME: communication FRAME DESCRIPTION: A person (COMMUNICATOR) produces some linguistic object (MESSAGE) while addressing some other person (ADDRESSEE) on some topic (TOPIC) FE: COMMUNICATOR … FE: MESSAGE … FE: ADDRESSEE … FE: TOPIC .. FrameNet: un esempio (cnt.) [Pat] communicated [the message] [to me]. [Management] should develop and communicate [to all employees] [a vision of where the organization is going]. Videotapes of school activities are useful means of communicating [about work undertaken at school]. I linguaggi a “frame”e le “shell” Potenti perché integrano conoscenza di tipo procedurale. Un esempio: KEE (Fikes-Kehler, 85) Per la costruzione di sistemi esperti si usano degli strumenti (detti “gusci” – shell – perché sono sistemi esperti “svuotati” della conoscenza del dominio) Architettura tipica di un sistema “ibrido”: Linguaggio a frame (o linguaggio ad oggetti) Linguaggio a regole (o linguaggio di programmazione logica)