Intelligenza Artificiale
Probabilità
Slides Intelligenza Artificiale,
Vincenzo Cutello
1
Outline





Incertezza
Probabilità
Sintassi
Semantica
Regole di inferenza
Slides Intelligenza Artificiale,
Vincenzo Cutello
2
Incertezza
Sia l’azione At = partire per l’aeroporto t minuti prima del volo
At mi farà arrivare in tempo ?
Problemi:
1.
2.
3.
4.
parziale osservabilità (strada, piani degli altri guidatori, ecc.)
sensori rumorosi (rapporti sul traffico)
Incertezza sul risultato dell’azione
Enorme complessità di modellizzazione e predizione del traffico
Usando un approccio puramente logico o


”risk falsehood”: “A25 mi farà arrivare in tempo”, oppure
Giungere a conclusioni che sono troppo deboli per prendere
decisioni:”A25 mi farà arrivare in tempo se non ci sono incidenti sul ponte
e non piove, ecc. ecc.”
(A1440 mi farebbe ragionevolmente arrivare in tempo ma dovrei stare tutta
la notte in aeroporto)
Slides Intelligenza Artificiale,
Vincenzo Cutello
3
Metodi per gestire l’incertezza
Logica non-monotona:
 Assumiamo che la mia macchina non abbia le gomme lisce
 Assumiamo che A25 è corretta a meno che non sia contraddetta
dall’evidenza
Esito:
– Quali assunzioni sono ragionevoli ?
– Come gestire le contraddizioni ?
Probabilità:
Date le prove disponibili, A25 mi farà arrivare in tempo con
probabilità 0.8, ossia su cento volte che sono partito per l’aereoporto
25 minuti prima, 80 volte sono arrivato in orario
Logica fuzzy:
Data la mia esperienza e conoscenza, Acirca 25 mi farà
arrivare in orario
Slides Intelligenza Artificiale,
Vincenzo Cutello
4
Probabilità
Le asserzioni probabilistiche riassumono gli effetti di:
 pigrizia: mancanza di enumerazione delle eccezioni, etc.
 ignoranza: mancanza di fatti rilevanti, condizioni iniziali,
ecc.
Probabilità soggettiva o bayesiana:
 Le probabilità legano le proposizioni allo stato di
conoscenza
– es., P(A25|non si sono verificati incidenti) = 0.06
 Le probabilità delle proposizioni cambiano con nuove
prove:
– es., P(A25|non si sono verificati incidenti, 5 a.m.)=0.15
Slides Intelligenza Artificiale,
Vincenzo Cutello
5
Prendere decisioni sotto incertezza
Supponiamo che io creda nelle seguenti:
–
–
–
–
P(A25 mi fa arrivare in orario|…) = 0.04
P(A90 mi fa arrivare in orario|…) = 0.70
P(A120 mi fa arrivare in orario|…) = 0.95
P(A1440 mi fa arrivare in orario|…) = 0.9999
Quale azione scegliere ?
Dipende dalle mie preferenze tra perdere il volo e attendere
all’aeroporto, ecc.
 La teoria dell’utilità è usata per rappresentare e inferire preferenze
 Teoria delle decisioni = teoria dell’utilità + teoria delle probabilità
 Teoria dei giochi = teoria delle decisioni in presenza di avversari che a
loro volta prendono decisioni che possono andare contro la nostra
utilità
Slides Intelligenza Artificiale,
Vincenzo Cutello
6
Struttura di un agente-DT
function AGENTE-DT(percezione)
returns un’azione
static: un insieme di credenze probabilistiche circa lo stato del mondo
– calcola le probabilità aggiornate per lo stato corrente basate sulle prove
disponibili comprendenti l’azione corrente e precedente
– calcola il valore delle probabilità per le azioni, data la descrizione
dell’azione e le probabilità degli stati correnti
– seleziona l’azione con la più alta utilità attesa dati i valori delle
probabilità per i vari esiti e l’utilità dell’informazione
return azione
Slides Intelligenza Artificiale,
Vincenzo Cutello
7
Assiomi di probabilità
Siano A e B due eventi qualsiasi
1. 0 ≤ P(A) ≤ 1
2. P(True) = 1 e P(False) = 0
3. P(A  B) = P(A) + P(B) –P(A
B)
De Finetti (1931): un agente che scommette in accordo con
le probabilità che violano questi assiomi può essere forzato
a perdere soldi indipendentemente dall’esito della
scommessa
Slides Intelligenza Artificiale,
Vincenzo Cutello
8
Sintassi
Simile alla logica proposizionale: possibili mondi definiti
dall’ assegnamento di valori a variabili random.
 Variabili random Booleane o Proposizionali
–
es., Carie (hai una carie ?)
 Include le espressioni della logica proposizionale
 Variabili random multivalore
–
es., Il tempo meteorologico assume uno tra <soleggiato, pioggia,
nuvoloso, neve>
– I valori devono essere esaustivi e mutuamente esclusivi
 Proposizione costruita dall’assegnamento di un valore:
–
es., tempo = soleggiato; Carie = vero
Slides Intelligenza Artificiale,
Vincenzo Cutello
9
Sintassi (cont.)
Probabilità non condizionate o a priori di proposizioni, es.,
P(Carie) = 0.1 e P(Tempo = soleggiato) = 0.72
corrispondono alla credenza a priori all’arrivo di una qualsiasi (nuova) prova
La distribuzione di probabilità è normalizzata, cioè, la somma è 1 e sono
noti i valori per tutti i possibili assegnamenti:
P(Tempo) = <0.72, 0.1, 0.08, 0.1>
Distribuzione di probabilità congiunta per un insieme di variabili fornisce i
valori per ogni possibile assegnamento a tutte le variabili
P(Tempo, Carie) = una matrice 4*2 di valori:
Tempo =
soleggiato pioggia nuvoloso neve
Carie = true
Carie = false
Slides Intelligenza Artificiale,
Vincenzo Cutello
10
Sintassi (cont.)
Probabilità condizionata o a posteriori
– es., P(Carie|Mal_di_denti) = 0.8
– cioe’, dato che il mal di denti è tutto quello che io conosco
Notazione per distribuzioni condizionali:
– P(Tempo|Primavera)= un vettore di 2 elementi di vettori di 4 elementi
– Se noi conosciamo di più, es., la carie è data, allora avremo
P(Carie|Mal_di_denti,Carie) = 1
Nota: la credenza meno specifica rimane valida dopo l’arrivo
di nuovi fatti, ma non è sempre utile
Nuovi fatti possono essere irrilevanti, permettendo semplificazioni,
P(Carie|Mal_di_denti,lunedì) = P(Carie|Mal_di_denti) = 0.8
Questo genere di inferenza, sanzionato dal dominio di conoscenza,
è cruciale
Slides Intelligenza Artificiale,
Vincenzo Cutello
11
Probabilità condizionata
Definizione di probabilità condizionata:
P(A  B)
P(A | B) 
if P(B)  0
P(B)
La regola del prodotto fornisce una formulazione alternativa:
P( A  B)  P( A | B) P( B)  P( B | A) P( A)

Una versiona generale è mantenuta per le intere distribuzioni, es.,
– P(Tempo,Carie) = P(Tempo|Carie)P(Carie)
– (Vedila come un insieme 4*2 di equazioni, non matrice multipla)
La regola a catena è derivata da successive applicazioni della regola
del prodotto:
P( X 1 ,..., X n )  P( X 1 ,..., X n 1 )P( X n | X 1 ,..., X n 1 ) 
 P( X 1 ,..., X n  2 )P( X n 1 | X 1 ,..., X n  2 )P( X n | X 1 ,..., X n 1 )
 ...
  in1 P( X i | X 1 ,..., X i 1 )
Slides Intelligenza Artificiale,
Vincenzo Cutello
12
Bayes’ Rule
Regola del prodotto P( A  B)  P( A | B) P( B)  P( B | A) P( A)
 Bayes' rule P( A | B) 
P( B | A) P( A)
P( B)
Perché è utile ? Per assegnare le probabilità diagnostiche dalla
conoscenza di quelle causali:
P( Effetto| Causa) P(Causa)
P(Causa | Effetto) 
P( Effetto)
Es., sia M la meningite, S il torcicollo:
P( S | M ) P( M ) 0.8  0.0001
P( M | S ) 

 0.0008
P( S )
0.1
Nota: la probabilità a posteriori della meningite è ancora molto bassa !
Slides Intelligenza Artificiale,
Vincenzo Cutello
13
Normalizzazione
Supponiamo di voler calcolare una distribuzi one a posteriori su
A dato B  b, e supponiamo che A possa assumere i seguenti valori a1 ,..., am
Possiamo applicare la regola di Bayes per ogni valore di A :
P ( A  a1 | B  b)  P ( B  b | A  a1 ) P ( A  a1 )/P( B  b)
...
P ( A  am | B  b )  P ( B  b | A  am ) P ( A  am ) / P ( B  b)
Aggiungend o quest' ultime e notando che iP( A  ai | B  b)  1 :
1 / P ( B  b)  1 / i P ( B  b | A  ai ) P ( A  ai )
Questo è il fattore di normalizza zione, denotato con 
P( A | B  b)  P( B  b | A)P( A)
Tipicament e si calcola una distribuzi one non normalizza ta e la si normalizza alla fine,
es., supponiamo
P( B  b | A)P( A)  0.4,0.2,0.2 
P( A | B  b)    0.4,0.2,0.2 
allora

 0.4,0.2,0.2 
 0.5,0.25,0.25 
0.4  0.2  0.2
Slides Intelligenza Artificiale,
Vincenzo Cutello
14
Condizionamento
Introducendo una variabile come una condizione extra:
P ( X | Y )  z P ( X | Y , Z  z ) P ( Z  z | Y )
Intuizione: più facile “assess” ogni specifica circostanza.
Quando Y è assente, avremo una marginalizzazione:
P ( X )  z P ( X | Z  z ) P ( Z  z )  z P ( X , Z  z )
In generale, data una distribuzione congiunta su un
insieme di variabili, la distribuzione su un qualsiasi
sottoinsieme (chiamata distribuzione marginale per ragioni
storiche) può essere calcolata “summing out” le altre
variabili.
Slides Intelligenza Artificiale,
Vincenzo Cutello
15
Distribuzioni totalmente congiunte
Un modello di probabilità completa specifica ogni caso nella distribuzione
congiunta per tutte le variabili X = X1,…,Xn
Cioè, una probabilità per ogni possibile mondo
X1 = x1,…,Xn = xn
(Cf. Le teorie complete in logica)
Es., supponiamo che Mal_di_denti e Carie siano variabili random:
Mal_di_denti = true Mal_di_denti = false
Carie = true
0.04
0.06
Carie = flase
0.01
0.89
I possibili mondi sono mutuamente esclusivi  P( w1  w2 )  0
I possibili mondi sono esaustivi  w1  ...  wn è Vera quindi
Slides Intelligenza Artificiale,
Vincenzo Cutello
 P( w )  1
i
i
16
Distribuzioni totalmente congiunte
1) Per una qualsiasi proposizio ne  definita su variabi li random  ( wi ) è vera o falsa
2)  è equivalent e alla disgiunzio ne di delle wi dove  ( wi ) è vera
Quindi P ( )  w : ( w ) P ( wi )
i
i
Cioè, la probabilit à non condiziona ta di una qualsiasi proposizio ne è calcolabil e
come la somma delle varie casistiche delle distribuzi one totalment e congiunta
Le probabilit à condiziona te possono essere calcolate nella stessa maniera
come rapporto :
P ( |  ) 
P (   )
P ( )
Es.,
P (Carie | Mal _ di _ denti) 
P (Carie  Mal _ di _ denti)
0.04

 0.08
P ( Mal _ di _ denti)
0.04  0.01
Slides Intelligenza Artificiale,
Vincenzo Cutello
17
Inferenza dalle distribuzioni congiunte
Tipicamente, siamo interessati alla distribuzione congiunta a posteriori
della variabile domanda Y dati specifici valori e per le variabili di prova E
Siamo H = X – Y – E le variabili nascoste
Allora la sommatoria richiesta dei casi congiunti è fatta sommando le
variabili nascoste:
P(Y | E  e)   P(Y, E  e)   h P(Y, E  e, H  h)
I termini nella sommatoria sono i casi congiunti perché Y, E, e H
ricoprono l’insieme delle variabili random
Problemi evidenti:
1) Complessità temporale nel caso peggiore di O(dn) dove d è la più
grande arietà
2) Complessità spaziale di O(dn) per memorizzare la distribuzione
congiunta
3) Come trovare i numeri per O(dn) casi ???
Slides Intelligenza Artificiale,
Vincenzo Cutello
18
Indipendenza
Due variabili random A, B sono (assolutamente)
indipendenti se e solo se
P(A | B)  P(A)
P(A,B)  P(A | B)P(B)  P(A)P(B)
o
es., A e B sono due monete
Se n variabili Booleane sono indipendenti, la
 giunzione
P( X 1 ,..., X n )  i P( X i )
totale è
quindi può essere specificata da solo n numeri
L’indipendenza assoluta è un requisito molto forte,
raramente incontrato
Slides Intelligenza Artificiale,
Vincenzo Cutello
19
Indipendenza: esempio
Consideriamo un problema di azioni con tre variabili random:

A+ (azione sale), SF (stato finanziario società), D=l
(giorno della settimana è lunedì)

La probabilità che l’azione salga A+, dipende dallo stato
finanziario buono SF della società ma non dal giorno
della settimana:
–

P(A+ | SF, D=l) = P(A+|SF)
cioè, A+ è condizionatamente indipendente dal D data la
SF
La stessa indipendenza si mantiene anche se non è
lunedì:
–
P(A+ | SF, NOT D=l ) = P(A+ | SF)
Slides Intelligenza Artificiale,
Vincenzo Cutello
20
Indipendenza: esempio 2
Consideriamo tre variabili random:
Caldo (temp > 25), Maggio, Dentro_casa
 Se siamo in Maggio, la probabilità che faccia caldo non
dipende dall’essere in casa o fuori casa (non ci sono
riscaldamenti):
 P(Caldo | Maggio,Dentro_casa) = P(Caldo|Maggio)
cioè, Caldo è condizionatamente indipendente da
Dentro_casa dato Maggio
La stessa indipendenza si mantiene anche se non sono
Dentro_casa:
 P(Caldo | Maggio, ┐Dentro_casa) = P(Caldo | ┐Maggio)
Slides Intelligenza Artificiale,
Vincenzo Cutello
21
Reti di credenza
 Rappresentano una semplice notazione grafica per le asserzioni di
indipendenza condizionale e quindi per una specifica compatta delle
distribuzioni congiunte totali
 Sintassi:
–
–
–
un insieme di nodi, uno per ogni variabile
un grafo diretto e aciclico (gli archi rappresentano le influenze dirette)
una distribuzione condizionata per ogni nodo dati i suoi genitori:
P(Xi | Genitori(Xi))
 Nel caso più semplice, distribuzione condizionata rappresentata come
una tabella di probabilità condizionate (CPT)
Slides Intelligenza Artificiale,
Vincenzo Cutello
22
Esempio
Sono a lavoro, il mio vicino di casa John mi chiama per dirmi che l’allarme
sta suonando, ma la mia vicina Mary non chiama. Qualche volta è attivato
da un lieve terremoto. C’è un intruso ?
Variabili: Intruso, Terremoto, Allarme, J, M
La topologia della rete riflette la conoscenza causale:
Terremoto
Intruso
Allarme
J
M
Nota: Genitori ≤ k  O(dkn) numeri rispetto a O(dn)
Slides Intelligenza Artificiale,
Vincenzo Cutello
23
Semantica
 Le semantiche “globali” definiscono la distribuzione congiunta totale
come il prodotto delle distribuzioni condizionate locali
P( X 1 ,..., X n )  i 1 P( X i | Genitori( X i ))
n
es., P( J  M  A  I  T )
 P(I ) P(T ) P( A | I  T ) P( J | A) P( M | A)
 Semantiche “locali”: ogni nodo è condizionatamente indipendente dai
suoi non discendenti dati i suoi genitori
 Teorema: Semantiche locali se e solo se Semantiche globali
Slides Intelligenza Artificiale,
Vincenzo Cutello
24
Markov blanket
Ogni nodo è condizionatamente indipendente
da tutti gli altri
Markov blanket: genitori+figli+altri genitori dei figli
Slides Intelligenza Artificiale,
Vincenzo Cutello
25
Costruzione delle reti di credenza
 Abbiamo bisogno di un metodo tale che una serie
di asserzioni localmente verificabili di indipendenze
condizionali garantisca le semantiche globali
richieste
1.Scegliere un ordine delle variabile X 1 ,..., X n
2.Per i  1 fino a n
aggiungi X i alla rete
seleziona i genitori da X 1 ,..., X i-1 tali che
P( X i | Genitori( X i ))  P( X i | X 1 ,..., X i 1 )
Questa scelta dei genitori garantisce le semantiche globali :
P( X 1 ,..., X n )  i 1 P( X i | X 1 ,..., X i 1 ) (regola della concatenaz ione)
n
 i 1 P( X i | Genitori( X i )) per costruzion e
n
Slides Intelligenza Artificiale,
Vincenzo Cutello
26
Esempio
Supponiamo di scegliere l’ordine M, J, A, I, T
M
J
Allarme
Intruso
Terremoto
P(J | M) = P(J) ? No
P(A | J, M) = P(A | J) ? P(A | J,M) = P(A) ? No
P(I | A, J, M) = P(I | A) ?
Si
P(I | A, J, M) = P(I) ?
No
No
P(T | I, A, J, M) = P(T | A) ?
Si
P(T | I, A, J, M) = P(T | A, I) ?
Slides Intelligenza Artificiale,
Vincenzo Cutello
27
Esempio: dal meccanico
Problema: il motore non parte
Variabili: Batteria, Radio, Iniezione, Gasolio,
Accensione
B
I
G
R
A
Slides Intelligenza Artificiale,
Vincenzo Cutello
28