Modelli Grafici Probabilistici (1): concetti generali Corso di Modelli di Computazione Affettiva Prof. Giuseppe Boccignone Dipartimento di Informatica Università di Milano [email protected] [email protected] http://boccignone.di.unimi.it/CompAff2016.html Modelli • Teorie: Basi psicologiche e neurobiologiche delle emozioni • Modelli: Modelli probabilistici per la computazione affettiva: • Apprendimento • Inferenza • Applicazioni: Esempi di sistemi di computazione affettiva Modelli grafici probabilistici • Modello stato mentale (nascosto) generazione inferenza comportamento non verbale (visibile) Modelli grafici probabilistici • Supponiamo di avere a che fare con un problema complesso: • Inferire un possibile stato d’animo dal volto Modelli grafici probabilistici //rappresentazione • Soluzione generale probabilistica: • Step 1. Identifico gli oggetti semanticamente rilevanti e li rappresento in termini di variabili aleatorie stato mentale (nascosto) • (Step 2). Definisco la “probabilità di tutto”, o probabilità congiunta Modelli grafici probabilistici //algoritmi: inferenza e apprendimento • (Step 2). Definisco la “probabilità di tutto”, o probabilità congiunta S X1 X2 X3 P( S, X1, X2, X3) Modelli grafici probabilistici //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) Grafo indiretto Modelli grafici probabilistici //algoritmi: inferenza e apprendimento • Step 3. Introduco i “vincoli” del problema: mi consentono di strutturare / semplificare la congiunta. La rappresentazione è un grafo probabilistico S P( S, X1, X2, X3) = P( X1 | S) * P( X2 | S) * P( X3 | S) * P(S) X1 X2 X3 Modelli grafici probabilistici //algoritmi: inferenza e apprendimento • Step 4. • Inferenza sulle variabili (latenti) del modello query: P( S = felice | X1, X2, X3) ? S P( S, X1, X2, X3) = P( X1 | S) * P( X2 | S) * P( X3 | S) * P(S) X1 X2 X3 Modelli nelle scienze cognitive e comportamentali //livelli di spiegazione: modelli probabilistici S Modello teorico Modelli teorici Bayesiani: Modello Grafico + PDF Inferenza su MG SIMULAZIONE Modello neurobiologico Modello implementativo P( S, X1, X2, X3) = P( X1 | S) * P( X2 | S) * P( X3 | S) * P(S) Modelli grafici diretti • Directed Acyclic Graph (DAG) Modelli grafici diretti Fattorizzazione*generale Modelli grafici diretti //esempio variabili discrete Modelli grafici diretti //esempio variabili discrete Fattorizzazione*generale Shared*prior Modelli grafici diretti //indipendenza condizionale a*è*indipendente*da*b,* dato%c Modelli grafici diretti //indipendenza condizionale: esempio 1 il path di condizionamento non è bloccato tail4to4tail il path di condizionamento è bloccato Modelli grafici diretti //indipendenza condizionale: esempio 2 il path di condizionamento non è bloccato head4to4tail il path di condizionamento è bloccato Modelli grafici diretti //indipendenza condizionale: esempio 3 il path di condizionamento è bloccato head4to4head il path di condizionamento non è bloccato Modelli grafici diretti //indipendenza condizionale: esercizio • L’auto non va: ho finito la benzina? B F* G * =* =* =* * Batteria*(0=scarica,*1=carica)* serbatoio*(0=vuoto,*1=pieno)* spia*benzina (0=vuoto,*1=pieno) B F* G * =* =* =* * Batteria*(0=scarica,*1=carica)* serbatoio*(0=vuoto,*1=pieno)* spia*benzina (0=vuoto,*1=pieno) da*cui Modelli grafici diretti //indipendenza condizionale: esercizio • L’auto non va: ho finito la benzina? La*probabilità*di*avere*il*serbatoio*vuoto*aumenta**se*osservo* G = 0.* Modelli grafici diretti //indipendenza condizionale: esercizio • L’auto non va: ho finito la benzina? B F* G * La*probabilità*di*avere*il*serbatoio*vuoto*si*riduce**se*osservo* B = 0.* =* =* =* * Batteria*(0=scarica,*1=carica)* serbatoio*(0=vuoto,*1=pieno)* spia*benzina (0=vuoto,*1=pieno) Explaining* away 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 I=0 I=1 0.8 0.2 0.9 0.1 A=0 A=1 B=0 B=1 P=0 I=0 1 0 P=0 0.8 0.2 P=1 I=0 0 1 P=1 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? • 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 P(I=true | A=true) = ? 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 falso vero • Caso 2: poi osserva il prato del vicino, Bob…..: anche quello è bagnato P(I=true | A=true,B=true) = 0.1604 Esempio: Alice e Bob in BNT (kevin murphy) Modelli grafici diretti //indipendenza condizionale: D-separazione • A, B, C sono sottoinsiemi del DAG e hanno intersezione nulla • C = sottoinsieme dei nodi osservati • Un path da A verso B è bloccato se contiene un nodo tale che: • o il nodo è in C ed è head-to-tail o tail-to-tail • oppure il nodo è head-to-head e né il nodo né i suoi discendenti sono in C • Se tutti i path da A verso B sono bloccati, allora A e B sono dseparati da C • Se A e B sono d-separati, la distribuzione congiunta su tutte le variabili del DAG soddisfa la seguente Modelli grafici diretti //D-separazione: esempio Modelli grafici diretti //D-separazione: dati I.I.D. Non*è*vera* l’ipotesi*IID! Esempio //Classificatore Naive Bayes C • Indicando con • Valgono le seguenti ipotesi di indipendenza X1 X2 X3 • P fattorizza come Qui**è*vera* l’ipotesi*IID! Esempio //Naive Bayes C • Decidiamo se Obama è allegro (C=c1) o triste (C= c2) X1 • Se non ci sono vincoli particolari, P(C)= 0.5 X2 X3 Esempio reale //Naive Bayes: Sebe et al. (2002) Esempio reale //Naive Bayes: Sebe et al. (2002) Esempio reale //Naive Bayes: Sebe et al. (2002)