Modelli Probabilistici per la Computazione Affettiva: Reti Bayesiane Corso di Modelli di Computazione Affettiva Prof. Giuseppe Boccignone Dipartimento di Informatica Università di Milano boccignone@di.unimi.it Giuseppe.Boccignone@unimi.it http://boccignone.di.unimi.it/compaff2015.html //rappresentazione: PGM diretti (DAG) Grafo diretto (Rete Bayesiana) Grafo indiretto
//rappresentazione a BN Costruzione del modello: Step 1. Identifico gli oggetti semanticamente rilevanti e li rappresento in termini di variabili aleatorie (Step 2). Definisco la probabilità di tutto, o probabilità congiunta //rappresentazione: struttura Step 3. Introduco i vincoli del problema: mi consentono di strutturare / semplificare la congiunta. La rappresentazione è un grafo probabilistico Grafo diretto (Rete Bayesiana)
//rappresentazione: struttura Step 3. Introduco i vincoli del problema: mi consentono di strutturare / semplificare la congiunta. La rappresentazione è un grafo probabilistico Chain Rule per Reti Bayesiane //rappresentazione: struttura Questo mi consente di fattorizzare il tabellone della congiunta CPD : Conditional Probability Distribution 0.6 * 0.3 * 0.02 * 0.8 * 0.01 CPT : Conditional Probability Tables
//rappresentazione: struttura Questo mi consente di fattorizzare il tabellone della congiunta CPD : Conditional Probability Distribution 0.6 * 0.3 * 0.02 * 0.8 * 0.01 CPT : Conditional Probability Tables //rappresentazione: struttura Questo mi consente di fattorizzare il tabellone della congiunta CPD : Conditional Probability Distribution 0.6 * 0.3 * 0.02 * 0.8 * 0.01 CPT : Conditional Probability Tables
//rappresentazione: PGM diretti (DAG) Definizione di rete Bayesiana: è una coppia è grafo diretto aciclico (DAG) sulle variabili Le variabili aleatorie sono i nodi del grafo a cui sono associate le CPD P è una distribuzione che fattorizza sul grafo secondo la chain rule: //rappresentazione: PGM diretti (DAG) Si noti che la distribuzione congiunta P così ottenuta è effettivamente una distribuzione di probabilità ammissibile: P 0 (Dim. E il prodotto di CPD tutte non negative) P = 1 (Dim. Si somma su tutte le variabili sfruttando la fattorizzazione)
//BN: Pattern di ragionamento / inferenza Valutiamo il pattern downstream o causale o predittivo Bob avrà una lettera di raccomandazione? Bob non è tanto intelligente. Avrà una lettera di raccomandazione? 1.49 +1.51= 3 1.51 / 3 = 0.503 Cause Bob non è tanto intelligente ma l esame di Matematica è semplice. Avrà una lettera di raccomandazione? Effetti //BN: Pattern di ragionamento / inferenza Valutiamo il pattern upstream o evidenziale : Bob è intelligente? mmm... 30% a priori Bob prende C. Bob è intelligente? evidenza Cause evidenza Effetti
//BN: Pattern di ragionamento / inferenza Valutiamo il pattern intercausale: lo studente prende C Bob è intelligente? mmm... 30% a priori Bob prende C. Bob è intelligente? Bob prende C, ma l esame di Matematica è difficile. Bob è intelligente? Cause Cause Effetti //BN: Pattern di ragionamento / inferenza Valutiamo il pattern intercausale: lo studente prende C Bob è intelligente? mmm... 30% a priori Bob prende C. Pero Bob aveva superato il SAT brillantemente Cause Cause Explaining away Effetti
//Flussi in BN: quando X influenza Y? Condizionando su X, influenzo la credenza di Y causale evidenziale causa comune effetto comune V structure //Flussi in BN: quando X influenza Y? L influenza è come un flusso che si propaga su trail (cammini) attivi attivo se Z non osservato attivo se Z non osservato attivo se Z non osservato V structure attivo se Z osservato
//Flussi in BN: quando X influenza Y? L influenza è come un flusso che si propaga su trail (cammini) attivi V structure attivo se Z o un figlio di Z osservato attivo se Z non osservato attivo se Z non osservato attivo se Z non osservato //Flussi in BN: quando X influenza Y? Ho un trail (cammino) attivo S - I- G - D se: Ho un trail (cammino) bloccato S - I- G - D se:
//Flussi in BN: trail attivi Sia un trail sul grafo G. Sia Z un sottoinsieme di variabili osservate sul grafo G. Il cammino è attivo se e solo se Data una struttura V del tipo è in Z un discendente di è in Z Nessun altro nodo del trail è in Z Esempio //Il problema dell irrigatore Alice vive a Napoli (dove piove poco): Caso 1: si sveglia e osserva il prato del giardino bagnato: ha lasciato l irrigatore in funzione? Caso 2: poi osserva il prato del vicino, Bob..: anche quello è bagnato QUERY: qual è la probabilità che l'irrigatore fosse in funzione nei due casi?
Esempio //Il problema dell irrigatore Supponiamo che tutte le tabelle di probabilità siano note (nessun learning) P=0 P=1 0.8 0.2 I=0 I=1 0.9 0.1 A=0 A=1 B=0 B=1 P=0 0.8 0.2 P=1 0 1 P=0 I=0 1 0 P=1 I=0 0 1 P=0 I=1 0.1 0.9 P=1 I=1 0 1 Esempio //Il problema dell irrigatore: soluzione con BNT QUERY: qual è la probabilità che l'irrigatore fosse in funzione nei due casi? P(I=true A=true) =? Caso 1: si sveglia e osserva il prato del giardino bagnato: ha lasciato l irrigatore in funzione? Caso 2: poi osserva il prato del vicino, Bob..: anche quello è bagnato
Esempio //Il problema dell irrigatore: soluzione con BNT QUERY: qual è la probabilità che l'irrigatore fosse in funzione nei due casi? P(I=true A=true,B=true) =? Caso 1: si sveglia e osserva il prato del giardino bagnato: ha lasciato l irrigatore in funzione? Caso 2: poi osserva il prato del vicino, Bob..: anche quello è bagnato trail attivo Esempio //Il problema dell irrigatore: soluzione con BNT QUERY: qual è la probabilità che l'irrigatore fosse in funzione nei due casi? Caso 1: si sveglia e osserva il prato del giardino bagnato: ha lasciato l irrigatore in funzione? P(I=true A=true) = 0.3382 falso vero Caso 2: poi osserva il prato del vicino, Bob..: anche quello è bagnato P(I=true A=true,B=true) = 0.1604 falso vero
Esempio: Alice e Bob in BNT (kevin murphy) //Flussi in BN e indipendenza condizionale Il concetto di trail attivo / non attivo su grafo è in relazione con il concetto di indipendenza condizionale Ricordiamo il concetto di indipendenza (marginale): due eventi indipendenti in P, sono se vale inoltre indipendenza marginale Analogamente per le VA
//Flussi in BN e indipendenza condizionale Esempio: G non è osservata e marginalizzo su G per ottenere P(I,D),... P(I,D,G) G G non è osservato: il trail è bloccato P(I,D) D P(I) P(D) I P(I,D) = P(I) * P(D) //Flussi in BN e indipendenza condizionale Per eventi: Per variabili aleatorie vale qualunque Caveat: l indipendenza marginale è il sotto caso Vale la proprietà: Sia P una distribuzione su indipendenza indipendenza condizionale Denotiamo l insieme delle asserzioni di che valgono in P come:
//Flussi in BN e indipendenza condizionale Definizione insieme delle asserzioni di indipendenza valide per P Si tratta di comprendere la relazione fra proprietà di indipendenza e fattorizzazione Idea generale: P fattorizza nella forma: INDIPENDENZA FATTORIZZAZIONE //Flussi in BN e indipendenza condizionale P(I,S,G) I è osservato: il trail è bloccato P(S,G I = i 0 ) P(S I = i 0 ) X P(G I = i 0 )
//Fattorizzazione e indipendenza Concetto fondamentale: due modi equivalenti di vedere la struttura grafica Fattorizzazione: G permette di rappresentare P I-map: le indipendenze codificate da G valgono in P A B P fattorizza su G ecc... Insieme delle asserzioni di indipendenza che valgono in P //Fattorizzazione e indipendenza Generalizziamo il flusso di influenza nel concetto di d-separazione Si supponga di avere tre insiemi di nodi in G, Se non esiste nessun trail attivo tra qualsiasi nodo dato Z, allora e qualsiasi
//Fattorizzazione e indipendenza Fattorizzazione Indipendenza Teorema (proprietà di validità o soundness): P fattorizza su G Esempio: dimostrare che vale l indipendenza se Questa vale //Fattorizzazione e indipendenza Denotiamo l insieme delle indipendenze che corrispondono alla d- separazione come: Definizione: I-map Se P soddisfa I(G), allora G è una I-map (indipendency map) di P I(G) Insieme delle indipendenze che corrispondono alla d-separazione
//Fattorizzazione e indipendenza Proprietà di validità (soundness): Se la distribuzione P fattorizza come G, allora ovvero G è una I- map per P Oss. 1: ci dice che se due nodi sono d-separati dato Z, allora sono condizionalmente indipendenti dato Z Oss. 2: Posso leggere direttamente sul grafo G le indipendenze per P I(G) Insieme delle indipendenze che corrispondono alla d-separazione I(P) Insieme delle asserzioni di indipendenza che valgono in P //Fattorizzazione e indipendenza La proprietà fondamentale delle RB deriva da questo teorema: Ogni nodo della rete, dati i suoi genitori, è d-separato dai suoi nondiscendenti P fattorizza su G Formalmente: Una rete Bayesiana è un DAG che codifica un insieme di ipotesi di indipendenza (indipendenze locali): Per qualunque variabile Ogni VA è indipendente dalle altre VA non figlie, dati i suoi genitori Semantica delle RB
//Fattorizzazione e indipendenza Fattorizzazione Indipendenza Teorema: G è una I-map per P P fattorizza su G: P soddisfa I(G) Insieme delle indipendenze che corrispondono alla d-separazione //Fattorizzazione e indipendenza Esempio chain rule (regola del prodotto) IPOTESI: G è una I-map per P: TESI: P fattorizza su G:
//Fattorizzazione e indipendenza In sintesi: due modi equivalenti di vedere la struttura grafica Fattorizzazione: G permette di rappresentare P I-map: le indipendenze codificate da G valgono in P Se P fattorizza su un grafo G, possiamo leggere dal grafo le indipendenze che devono valere per P (ovvero la mappa delle indipendenze, I-map) Esempio //Naive Bayes Indicando con C Valgono le seguenti ipotesi di indipendenza X1 X2 P fattorizza come X3
Esempio //Naive Bayes Decidiamo se Obama è allegro (C=c1) o triste (C= c2) C X1 X2 Se non ci sono vincoli particolari, P(C)= 0.5 X3 Esempio //Naive Bayes: Sebe et al. (2002)
Esempio //Naive Bayes: Sebe et al. (2002) Esempio //Naive Bayes: Sebe et al. (2002)