Mondo della computazione
Mondo della Vita
Parlare
del mondo
Macchina
Linguaggi di
programmazione
Modelli
computazionali
Linguaggio
naturale
Mondo
percezioni
Modelli mentali
conoscenza
Rappresentazione del
mondo
Ragionamento
Mondo della computazione
Mondo della Vita
Programmazione classica
ALGORITMO
Struttura dati
DATI
Parlare
del mondo
Macchina
Turing
Linguaggi di
programmazione
Modelli
computazionali
Strumenti
per
scrivere
algoritmi
Linguaggio
naturale
Mondo
percezioni
Modelli mentali
conoscenza
Rappresentazione del
mondo
Ragionamento
Mondo della computazione
Programmazione classica
procedurale
ALGORITMO
Mondo della Vita
I dati
strutturati
sono saldati
agli algoritmi
Struttura dati
DATI
Parlare
del mondo
Macchina
Turing
Linguaggi di
programmazione
Modelli
computazionali
Linguaggio
naturale
Mondo
percezioni
Modelli mentali
conoscenza
Rappresentazione del
mondo
Ragionamento
Mondo della computazione
Mondo della Vita
Parlare
del mondo
Macchina
Linguaggi di
programmazione
Modelli
computazionali
Linguaggio
naturale
Mondo
percezioni
Modelli mentali
conoscenza
Linguaggi
formali
Rappresentazione
della conoscenza
Modelli
concettuali
Metodi
inferenziali
Rappresentazione del
mondo
Ragionamento
Mondo della computazione
Mondo della Vita
Parlare
del mondo
Macchina
Turing
Linguaggi di
programmazione
Modelli
computazionali
Linguaggio
naturale
Mondo
percezioni
Modelli mentali
conoscenza
PROBLEM
SOLVING
METHOD
CONOSCENZA
DATI
Programmazione AI
Linguaggi
formali
Rappresentazione
della conoscenza
Modelli
concettuali
Metodi
inferenziali
Rappresentazione del
mondo
Ragionamento
Mondo della computazione
Mondo della Vita
Parlare
del mondo
Macchina
Turing
Linguaggi di
programmazione
Modelli
computazionali
Linguaggio
naturale
Strumenti
per
scrivere
algoritmi
Mondo
percezioni
Modelli mentali
conoscenza
PROBLEM
SOLVING
METHOD
CONOSCENZA
DATI
Programmazione AI
dichiarativo
La
conoscenza
è separata
dagli
algoritmi
Linguaggi
formali
Rappresentazione
della conoscenza
Modelli
concettuali
Metodi
inferenziali
Rappresentazione del
mondo
Ragionamento
Mondo della computazione
Programmazione classica
Mondo della Vita
I dati
strutturati
sono saldati
agli algoritmi
procedurale
ALGORITMO
Struttura dati
DATI
Parlare
del mondo
Macchina
Turing
Linguaggi di
programmazione
Modelli
computazionali
Linguaggio
naturale
Strumenti
per
scrivere
algoritmi
Mondo
percezioni
Modelli mentali
conoscenza
PROBLEM
SOLVING
METHOD
CONOSCENZA
DATI
Programmazione AI
dichiarativo
La
conoscenza
è separata
dagli
algoritmi
Linguaggi
formali
Rappresentazione
della conoscenza
Modelli
concettuali
Metodi
inferenziali
Rappresentazione del
mondo
Ragionamento
L’implementazione delle rappresentazioni
Linguaggio naturale e rappresentazioni visive
Linguaggi formali e di programmazione
La conoscenza e i suoi modelli
IL MODELLO CLASSICO
Teleologia, la forma della perfezione
In un’accezione larga, i modelli sono spesso usati nella vita quotidiana. Ad
esempio, quando diciamo che una persona o un animale è di un certo tipo
esprimiamo un modello del comportamento che è nella nostra mente e che
consente di prevedere il comportamento di una persona in una certa situazione.
Un altro esempio di modello è un modello verbale, nel quale il comportamento di
un sistema in differenti condizioni è descritto a parole; ad esempio un modello
verbale descrittivo del comportamento elettorale di un sistema democratico è:
se il governo esprime una politica dannosa per i cittadini allora aumentano i voti per
i partiti di opposizione.
Vi sono anche i modelli fisici. Esempi sono i modelli in scala ridotta
di un’opera artistica o architettonica, oppure i prototipi che sono
realizzati per effettuare dei test di resistenza meccanica o
aerodinamica.
IL MODELLO MATEMATICO
Un modello di un sistema esprime la conoscenza di un fenomeno e
come tale consente di rispondere a domande sul sistema senza la
necessità di compiere un esperimento. Esso costituisce quindi un potente
mezzo di previsione e descrizione del comportamento di un
sistema.
Tipicamente il modello matematico di un sistema consiste in
un’equazione differenziale che stabilisce una relazione tra le variabili
d’ingresso e le variabili d’uscita di un sistema.
La descrizione di un sistema in termini di ingressi ed uscite è detta
descrizione ingresso uscita. Il legame matematico consente di
determinare le uscite a partire dagli ingressi e quindi di studiare la
dinamica o il comportamento di un sistema in un certo ambiente.
Esempio: Modello matematico di un sistema idraulico
Il serbatoio in figura è caratterizzato dalla portata d’ingresso qi e dall’altezza del
battente idrico h che rappresenta la variabile d’uscita. Assumendo un serbatoio di
sezione costante A, il volume di liquido risulta: V=Ah.
qi(t)
h
Per la legge di conservazione della massa (legge di continuità) si ha che
qi 
dV
dh
A
dt
dt
Procedurale e Dichiarativo
I dati strutturati sono saldati agli
algoritmi
Procedure
Rappresentazione della conoscenza
Prendi due numeri
AeB
Sostituisci A con B
e B con C
La conoscenza
è separata dagli algoritmi
Dividi A per B
E memorizza il resto C
Aspetto modellistico
R. il Mondo
R. La
conoscenza
sul Mondo
Come è il
mondo
Cosa so del
mondo
C è zero?
Aspetto inferenziale:
il Calcolo logico
Ragionamento
Come fare quello
che si deve fare
(sulla base di ciò che so
essere vero nel mondo)
Reti semantiche
Grafi concettuali
Ferma il calcolo e
Stampa la risposta
Problem solving
Conoscenza
Logica
Rappresentazione della
conoscenza
Le reti semantiche costituiscono una classe di sistemi di
rappresentazione tipici dell’IA, basati sull’idea generale di
utilizzare come strumento di rappresentazione un grafo, in
cui ad ogni nodo è associata un’entità concettuale di qualche
tipo ( ad esempio concetto, il significato di un enunciato, o il
significato di un elemento lessicale)
Le relazioni di tipo logico o associativo fra entità concettuali
diverse sono rappresentate mediante gli archi che
connettono i nodi
I tipi di nodi e di archi che è possibile utilizzare, la loro
interpretazione, le regole sintattiche che permettono di
comporli in una rete, ed i meccanismi di inferenza che sono
definiti sulle reti variano notevolemente nei molteplici
sistemi di rappresentazione che sono stati via via elaborati
Evoluzione degli alberi
Le Reti semantiche
• Nascono dentro lo studio per il trattamento formale del
linguaggio naturale
• Possono essere viste come evoluzione ‘orizzontale’ di
alberi
• L’idea di fondo è che il significato di un concetto derivi
dalle relazioni che lo collegano ad altri concetti
Rappresentare enti e relazioni
• Il "significato" di un concetto e' l'insieme di tutti i nodi
che possono essere raggiunti a partire dal nodo che la
rappresenta
• La rete semantica asserisce il fatto intuitivo che la
definizione di un oggetto non può fare a meno della
definizione degli oggetti con cui e' in relazione e, in ultima
analisi, del contesto in cui l'oggetto e' situato
Tavoli, tovaglie e posate
Apparecchiare proceduralmente
Scrivere un insieme di istruzioni definite sugli oggetti del dominio, e
da eseguire per realizzare l’obiettivo di apparecchiare
• Prendi il piatto piano e spostalo in quella certa posizione del
tavolo
• Prendi il bicchiere e mettilo in certe coordinate del tavolo
• Fai…
•…
• END
Apparecchiare dichiarativamente
Prima questione:
Questione
ontologica
Come è fatto il mondo in cui si
apparecchiano tavoli?
Rappresentare il mondo
Una tavola imbandita si compone di vari oggetti...
QUALI???
Apparecchiare dichiarativamente
Tavoli, tovaglie e posate
Il mondo formalizzato in una rete semantica
Apparecchiare dichiarativamente
Tavoli, tovaglie e posate
Il mondo formalizzato in una rete semantica
Apparecchiare dichiarativamente
Tavoli, tovaglie e posate
Il mondo formalizzato in una rete semantica
Il problema: Apparecchiare
Quali sono le conoscenze indispensabili per poter
apparecchiare?
Le conoscenze per risolvere il
problema
Il modello in linguaggio naturale
La tovaglia è appoggiata (z) sul tavolo
Le posate sono appoggiate (z) sulla tovaglia
Il piatto piano è appoggiato (z) sul piatto fondo
La forchetta normale è alla sinistra (x) del piatto
La forchetta da pesce è alla sinistra (x) del piatto
Il coltello normale è alla destra (x) del piatto
Il coltello da pesce è alla destra (x) del coltello normale
Il cucchiaio normale è alla destra (x) del coltello da pesce
Il tovagliolo è alla destra (x) del cucchiaio normale
Il piattino per il pane è sopra (y) la forchetta normale
La forchetta da dolce è alla destra (x) del piattino per il pane ed è sopra (y) il piatto
Il cucchiaio da dolce è sopra (y) la forchetta da dolce
Il bicchiere da acqua è alla destra (x) della forchetta da dolce ed è sopra (y) il coltello normale
Il bicchiere da vino rosso è alla destra (x) del bicchiere da acqua
Il bicchiere da vino bianco è alla destra (x) del bicchiere da vino rosso
Le relazioni tra gli enti rappresentati nella rete semantica
Le relazioni tra gli enti rappresentati nella rete semantica
Le relazioni tra gli enti rappresentati nella rete semantica
Grafi concettuali: uno strumento
per parlare del mondo
rappresentato in una rete
semantica
Grafi concettuali
Informalmente, un grafo concettuale è una struttura di
concetti e di relazioni tra concetti, dove ogni arco collega
alcune relazioni concettuali r a qualche concetto c.
In un grafo concettuale, le scatole sono chiamate concetti, e
i circoli sono chiamati relazioni concettuali
A
B
[A](B) [C].
C
Definizione
Un grafo concettuale g è un grafo bipartito caratterizzato da
due tipi di nodi chiamati rispettivamente, concetti e relazioni
concettuali.
• Ogni arco a di g deve collegare una relazione concettuale r
in g ad un concetto c in g. L’arco a è detto appartenente alla
relazione r e attaccato al concetto c. Ma l’arco a non
appartiene a c.
• Il grafo concettuale g può avere concetti non collegati ad
alcuna relazione concettuale; ma ogni arco che appartiene
a ciascuna relazione concettuale in g deve essere
collegato ad uno e solo un concetto in g.
g
r
a
c
Campo del Tipo e campo del Referente
Ogni concetto è caratterizzato da un tipo t e da un referente r
Il tipo è normalmente scritto sul lato sinistro di un concetto, mentre il
referente sul lato destro, ed i due campi sono separati da ‘due punti’.
Consideriamo il seguente grafo concettuale, che rappresenta
l’enunciato John sta andando a Boston
[Persona: John]  (Agente)  [andare]  (dest)  [Città: Boston]
Quali enti quali relazioni
[Persona: John]  (Agente)  [andare]  (dest)  [Città: Boston]
Questo grafo contiene tre concetti:
• [Person: John], [andare] e [Città: Boston]
Due relazioni concettuali:
• (Agente) collega [andare] all’agente John, e (dest) collega
[andare] alla destinazione Boston.
• Ogni arco del grafo concettuale collega un concetto ed una
relazione concettuale; non sono possibili archi che colleghino
concetti a concetti o relazioni a relazioni.
Quali enti quali relazioni
“Un gatto è seduto sullo zerbino”
“Il gatto è seduto sullo zerbino”
Quali enti quali relazioni
“Una scimmia sta mangiando una noce con un
cucchiaio ricavato dal guscio della noce”
Quali enti quali relazioni
“Una scimmia sta mangiando una noce con un
cucchiaio ricavato dal guscio della noce”
Grafi e ontologia
Grafi concettuali: formalizzare il modello
La tovaglia è appoggiata (z) sul tavolo
Le posate sono appoggiate (z) sulla tovaglia
Il piatto piano è appoggiato (z) sul piatto fondo
La forchetta normale è alla sinistra (x) del piatto
La forchetta da pesce è alla sinistra (x) del piatto
Il coltello normale è alla destra (x) del piatto
Il coltello da pesce è alla destra (x) del coltello normale
Il cucchiaio normale è alla destra (x) del coltello da pesce
Il tovagliolo è alla destra (x) del cucchiaio normale
Il piattino per il pane è sopra (y) la forchetta normale
La forchetta da dolce è alla destra (x) del piattino per il pane ed è sopra (y) il piatto
Il cucchiaio da dolce è sopra (y) la forchetta da dolce
Il bicchiere da acqua è alla destra (x) della forchetta da dolce ed è sopra (y) il coltello normale
Il bicchiere da vino rosso è alla destra (x) del bicchiere da acqua
Il bicchiere da vino bianco è alla destra (x) del bicchiere da vino rosso
Esempio di tema d’esame
• Usando appropriate relazioni concettuali e
facendo attenzione a tipizzare solo
quando necessario, tradurre in un grafo
concettuale la seguente frase:
• “Matteo, ragazzo vivace, correndo in
corridoio, inciampa nello skate regalatogli
dal fratello Giovanni e da lui stesso lì
abbandonato. La madre di Matteo e
Giovanni si chiama Maria.”
Scarica

linguaggio naturale - Università degli Studi di Milano-Bicocca