La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Concetti di base sulla Teoria delle Probabilità e sulle Reti bayesiane

Presentazioni simili


Presentazione sul tema: "Concetti di base sulla Teoria delle Probabilità e sulle Reti bayesiane"— Transcript della presentazione:

1 Concetti di base sulla Teoria delle Probabilità e sulle Reti bayesiane
Mariagrazia Semenza

2 Concetti preliminari Ambito di applicazione: l’incertezza, le possibilità Oggetto della teoria delle probabilità: “variabili random” in un dominio di interesse Esempi di “variabili random” o aleatorie: numeri aleatori funzioni aleatorie variabili categoriche o, in generale, enti aleatori eventi aleatori

3 Definizioni di probabilità
Approccio oggettivista o frequentista, che considera la probabilità come un’entità misurabile, legata alla frequenza di accadimento Approccio soggettivista, che considera la probabilità una misura del grado di attesa soggettivo del verificarsi di un evento (schema delle scommesse) Approccio oggettivista: - frequenza di eventi ripetibili - teoria della misura - statistica

4 Teoremi delle probabilità totali
Sono i teoremi che nel caso degli eventi stabiliscono le proprietà necessarie e sufficienti per definire la proprietà additiva delle probabilità rispettando le condizioni di coerenza. Teorema 1: Nel caso di eventi incompatibili, la probabilità dell’evento somma deve coincidere con la somma delle probabilità Teorema 2: Nel caso di partizioni (finite) le probabilità devono dare come somma 1. In particolare, per due eventi opposti (partizione con n=2) le probabilità di eventi opposti devono essere complementari Eventi incompatibili A e B: se si verifica A è certo che non si verifica B e viceversa

5 Partizione E’ un insieme di eventi incompatibili ed esaustivi, dei quali cioè è certo che deve verificarsi uno ed uno solo. Come si ricava una partizione partendo da un insieme qualunque di eventi? Se E1,...,En sono incompatibili ma non esaustivi si completa la partizione con Eo=1- (E1+...+En) = notE1. notE2... notEn In generale i termini della partizione si possono ricavare da (E1+notE1)(E2+notE2)(En+notEn) = 1 Insieme di eventi esaustivi è un insieme completo Nell’espressione E0=1- (E1+...+En) 1 significa la certezza (in senso logico)

6 Ecco i termini, detti costituenti:
E1.E2...En, E1.E2... notEn, E1. notE2...En, ..., notE1. notE2... notEn Il numero massimo di costituenti della partizione determinata da E1, E2, ...,En è 2n Geometricamente possono essere visti come versori che individuano gli assi ortogonali di uno spazio ad s £ 2n dimensioni Il numero di costituenti è = 2n quando tutte le combinazioni tra gli eventi e le loro negazioni sono possibili (dipende dalla struttura del problema) Il caso più “anonimo” è la pura combinazione. Nei problemi concreti la presenza di tutte le possibilità è segno di scarsa strutturazione del problema o di scarsa conoscenza.

7 Corollario al teorema 2:
Perchè risulti determinata la probabilità di tutti gli eventi E logicamente dipendenti da E1,...,En è necessario e sufficiente attribuire delle probabilità a tutti i costituenti C1,...,Cs. La p(E) ne risulta linearmente dipendente. Interessante: una volta individuati gli eventi che consideriamo pertinenti, possiamo definire uno spazio in cui, per ogni altro evento logicamente dipendente, possiamo calcolare la probabilità

8 p(A|B) = p(B|A)p(A)/p(B) = K p(B|A)p(A)
Le tre leggi alla base della teoria delle probabilità: Condizione di convessità: 0 £ p(E) £ 1 Additività semplice: p(AUB) £ p(A)+p(B) (l’uguaglianza stretta vale solo nel caso di eventi incompatibili) Regola del prodotto: p(AB) = p(A|B)p(B) = p(B|A)p(A) Dalla terza proprietà deriva direttamente: p(A|B) = p(B|A)p(A)/p(B) = K p(B|A)p(A) Teorema di Bayes Additività semplice: l’uguaglianza stretta vale solo per eventi incompatibili. In caso contrario: p(AUB)=p(A)+p(B)-p(AB) p(AUBUC)=p(A)+p(B)+p(C)-p(AB)-p(BC)-p(AC)+p(ABC) ... (vedere diagrammi di Venn)

9 Significato del Teorema di Bayes: apprendimento dall’esperienza
p(A|B) = K p(B|A) p(A) p(A) probabilità a priori p(A|B) probabilità a posteriori p(B|A) verosimiglianza K fattore di normalizzazione E se p(A) = 0? In pratica, mentre ricevo informazioni (B) posso variare la mia valutazione di probabilità sull’evento A aumentandone o diminuendone il valore a seconda che le evidenze rendano più o meno verosimile, a mio giudizio, la probabilità che si verifichi A. Se p(A)=0=impossibile, non posso aggiornare la valutazione qualunque sia il numero e la significatività delle informazioni che ricevo in seguito. Allora, piuttosto che considerare un evento “senza speranza”, meglio attribuirgli una probabilità molto bassa in modo da poterlo considerare trascurabile salvo informazioni contrarie (regola di Cromwell)

10 p(A,B,C,D) = p(A|B,C,D)p(B|C,D)p(C|D)p(D)
Definizioni utili per le reti bayesiane Regola del prodotto: p(A,B) = p(A|B) p(B) p(A,B) è detta probabilità congiunta La probabilità congiunta di un insieme di eventi può essere espressa come una catena di probabilità condizionali: p(A,B,C,D) = p(A|B,C,D)p(B|C,D)p(C|D)p(D) In generale: k p(E1,E2,...,Ek) = P p(Ei|Ei-1,...E1) i = 1

11 Definizioni utili per le reti bayesiane
Inferenza probabilistica Consideriamo un insieme di eventi E1,E2,..,Ek e tutte le possibili combinazioni dei loro valori Vero e Falso Conosciamo tutti i valori: p(E1,E2,...,Ek) Supponiamo che un sottoinsieme di questi presenti un valore definito, per es. Ej = Vero = e Chiamiamo inferenza probabilistica il processo di calcolo del valore p(Ei=Vero|Ej=e) Notazione: per “tutti i valori p(E1, E2,...,Ek)” si intende p(E1v,E2v,...,Ekv) p(E1v,E2v,...,Ekf) p(E1v,E2f,...,Ekv) ... p(E1f,E2f,...,Ekf) Ricorda qualcosa?

12 p(Ei=Vero,Ej=e) = S p(E1,...,Ek)
Inferenza probabilistica: p(Ei=Vero|Ej=e) Come si calcola? p(Ei=Vero|Ej=e) = p(Ei=Vero,Ej=e)/p(Ej=e) (def. probabilità condizionali, o regola del prodotto) Per calcolare p(Ei=Vero,Ej=e) ricordiamo che abbiamo tutti i valori p(E1,E2,...,Ek) e quindi p(Ei=Vero,Ej=e) = S p(E1,...,Ek) Ei=Vero, Ej=e Allo stesso modo si calcola p(Ej=e) “In generale l’inferenza probabilistica non è trattabile usando questo metodo, perchè, avendo k eventi, dovremmo avere una lista di 2k probabilità congiunte p(E1,E2,...,Ek). Per molti problemi che ci interessano non potremmo scrivere una lista del genere anche se l’avessimo (e che generalmente non abbiamo)”

13 p(A|B,C) = p(A|C) (indipendenza stocastica subordinata)
Definizioni utili per le reti bayesiane Secondo Pearl gli umani organizzano la loro conoscenza utilizzando il concetto di Indipendenza condizionale Diciamo che l’evento A è condizionalmente indipendente da un evento B, dato l’evento C, se p(A|B,C) = p(A|C) (indipendenza stocastica subordinata) In pratica A è condizionalmente indipendente da B, dato C, se la conoscenza di B non porta a nessuna ulteriore variazione della probabilità di A rispetto a quella apportata dall’avverarsi di C. Così, per quanto riguarda A, se conosciamo C possiamo ignorare B. Dall’indipendenza condizionale di A e B dato C otteniamo: p(A,B|C) = p(A|C)p(B|C) (= p(B,A|C)) In generale B e C possono essere insiemi di eventi; se C è un insieme vuoto: p(A,B) = p(A)p(B) (noncorrelazione) Secondo Pearl gli umani organizzano la loro conoscenza di un dominio in un modo efficace utilizzando il concetto di indipendenza condizionale, che consente di semplificare notevolmente il calcolo delle probabilità condizionali. Simmetria: p(A,B|C)=p(A|B,C)p(B|C)=p(A|C)p(B|C) p(B,A|C)=p(B|A,C)p(A|C)=p(B|C)p(A|C)

14 Le reti bayesiane sono una struttura che rappresenta le indipendenze condizionali
Sono DAG (o GOA, grafi orientati aciclici) i cui nodi sono eventi (E) Una rete bayesiana stabilisce che ogni nodo, dati i suoi immediati ascendenti (parents P), è condizionalmente indipendente da ogni altro che non sia suo discendente Cioè, per ogni E del grafo p(E|A,P(E)) = p(E|P(E)) per ogni A, evento o insieme di eventi, che non sia discendente di E. Possiamo anche scrivere I(E,A|P(E)) Le reti bayesiane sono chiamate anche reti causali, perchè gli archi che connettono i nodi possono essere visti come se rappresentassero relazioni causali dirette Le reti bayesiane sono un metodo grafico di rappresentazione della conoscenza in presenza di incertezza. Altri metodi: catene di Markov, alberi degli eventi, alberi dei guasti,...

15 “Gli umani esperti sono spesso capaci di collegare cause ed effetti in modo tale da evidenziare indipendenze condizionali rappresentabili con una rete bayesiana”. ATTENZIONE: ogni strumento è limitato; non esiste uno strumento universale di rappresentazione della conoscenza. Nel tentativo di costruire un modello semplifichiamo, schematizziamo la realtà o quello che della realtà abbiamo percepito. Lo strumento non deve forzarci a distorcere ulteriormente il modello per esigenze di calcolo.

16 L B M G Formula della rete:
Probabilità a priori, associata ad ogni nodo che non ha ascendenti Formula della rete: p(G,M,B,L) = p(G|B)p(M|B,L)p(B)p(L), invece di p(G,M,B,L) = p(G|M,B,L)p(M|B,L)p(B|L)p(L) p(L)=0.7 p(B)=0.95 L B M G p(M|Bv,Lv)=0.9 p(M|Bv,Lf)=0.05 p(M|Bf,Lv)=0.0 p(M|Bf,Lf)=0.0 p(G|Bv)=0.95 p(G|Bf)=0.1 Tavole delle probabilità condizionali associate ad ogni nodo ed ai suoi ascendenti

17 Cammini inferenziali nelle reti di Bayes
Inferenza causale o top-down Inferenza diagnostica o bottom-up Explaining away spiegazione alternativa p(L)=0.7 p(B)=0.95 L B M G p(M|Bv,Lv)=0.9 p(M|Bv,Lf)=0.05 p(M|Bf,Lv)=0.0 p(M|Bf,Lf)=0.0 p(G|Bv)=0.95 p(G|Bf)=0.1 Inferenza causale: si calcola la probabilità di un nodo (query node) in presenza di una evidenza a monte (causa) Es. L = Vero è evidenza M = Vero è query Si calcola p(Mv|Lv) Inferenza diagnostica: si calcola la probabilità di un nodo (query node) in presenza di un’evidenza a valle (effetto o sintomo) Es. M = Falso è evidenza L = Falso è query Si calcola p(Lf|Mf) Explaining away: si tratta di una inferenza che usa un ragionamento causale incastrato in uno diagnostico. Porta alla diminuzione della probabilità del query node p(Lf|Bf,Mf). L’evidenza di B = Falso spiega M = Falso, rendendo meno “certo” (probabile) L = Falso

18 Evidenza incerta “Nel calcolo delle reti bayesiane, perchè possa essere considerata per “data” l’evidenza di un nodo, dobbiamo esser certi della verità o falsità della proposizione rappresentata dal nodo” p(L)=0.7 p(B)=0.95 L B M G p(M|Bv,Lv)=0.9 p(M|Bv,Lf)=0.05 p(M|Bf,Lv)=0.0 p(M|Bf,Lf)=0.0 p(G|Bv)=0.95 p(G|Bf)=0.1 L’affermazione non vale solo per le reti bayesiane. Ma evidenza incerta è una denominazione infelice. In realtà, v. esempio, del malfunzionamento del motore non ho un’evidenza, ma una segnalazione non del tutto affidabile. L’evento M non è correttamente definito. Allora l’operazione corretta è inserire l’evento che avevo trascurato (M’) che rappresenta il sensore. Le due probabilità p(M’|Mv) e p(M’|Mf) rappresentano l’affidabilità del sensore. Così p(Lf|Bf,Mf) viene sostituito da p(Lf|Bf,M’f) dove M’f è una vera evidenza; dà cioè garanzia dello stato di vero o falso. M’ p(M’|Mv)= p(M’|Mf)=

19 D-Separation L B M G (Separazione direction-dependent) p(L)=0.7
p(B)=0.95 L B M G p(M|Bv,Lv)=0.9 p(M|Bv,Lf)=0.05 p(M|Bf,Lv)=0.0 p(M|Bf,Lf)=0.0 p(G|Bv)=0.95 p(G|Bf)=0.1 Un altro risultato a proposito dell’indipendenza condizionale delle reti bayesiane è la d-separation (separazione dipendente dalla direzione) Guardando l’esempio si vede che, dato G (effetto), questo può influenzare B (causa) e quindi anche M (altro effetto). Ma se è dato B, G non ha più nulla da dire a proposito di M. In questo caso diciamo che B d-separa G e M.

20 Le tre regole che definiscono la d-separation:
Due nodi A e B sono condizionalmente indipendenti, dato un insieme di nodi di evidenza E, se su ogni cammino che unisce A con B esiste un nodo Eb che gode di una delle seguenti proprietà: 1 - Eb è in E ed entrambi gli archi del cammino sono diretti fuori da Eb 2 - Eb è in E ed un arco va verso Eb mentre l’altro esce 3 - Eb non è in E ed entrambi gli archi vanno verso Eb A Eb2 Eb1 Eb è in E significa che Eb è un nodo di evidenza Sul libro di Pearl (v. bibliografia) si trovano le dimostrazioni delle tre regole B Insieme dei nodi di evidenza E Eb3

21 Quando per un cammino vale una di queste condizioni diciamo che Eb blocca il cammino, e se tutti i cammini che collegano A e B sono bloccati diciamo che E d-separa A e B. A e B sono condizionalmente indipendenti dato E. Esempio: I(G,L|B) per la regola 1, |B per la regola 3, M mentre non vale I(B,L|M) p(L)=0.7 p(B)=0.95 L B M G p(M|Bv,Lv)=0.9 p(M|Bv,Lf)=0.05 p(M|Bf,Lv)=0.0 p(M|Bf,Lf)=0.0 p(G|Bv)=0.95 p(G|Bf)=0.1 Vale I(G,L|B) per la regola 1 (perchè B appartiene al set di evidenza (|B) ed entrambi gli archi escono) e per la regola 3(perchè M non appartiene al set di evidenza ed entrembi gli archi entrano) Non vale I(B,L|M) perchè M è nel set di evidenza (|M) ed entrambi gli archi puntano verso M, che quindi non blocca il cammino.

22 Politree o multi-albero
Anche con le semplificazioni introdotte dalle reti bayesiane, strutture del genere, se di grandi dimensioni, non sono trattabili. Fortunatamente, però, per un’importante classe di reti, chiamata politree, esistono numerose scorciatoie per calcolare le probabilità condizionali, cioè per compiere inferenza probabilistica. Un politree è un GOA (grafo orientato aciclico) tale che esista un solo cammino, lungo gli archi in qualunque direzione, tra due nodi del GOA.

23 Ecco un “tipico” politree:
Q P10 P11 Vogliamo calcolare la p(Q|qualche altro nodo) P9 Si usano algoritmi ricorsivi bottom-up e/o top-down p(Q|qualche altro nodo) Sono possibili tre casi: i nodi di evidenza sono tutti sopra Q i nodi di evidenza sono tutti sotto Q i nodi di evidenza sono sia sopra sia sotto Q P12 P13 P14 P15 La complessità degli algoritmi cresce linearmente con il numero di nodi, ma questo vale solo per i politree

24 Quando una rete non è un politree le procedure ricorsive non possono essere utilizzate a causa dei cammini multipli che collegano i nodi. Approcci possibili: Monte Carlo - ai nodi privi di ascendenti si assegnano random, in funzione delle rispettive probabilità, i valori Vero e Falso. A partire da questi valori, ed usando le CPT dei discendenti, si assegnano a questi ultimi valori random, e così via fino a completare tutta la rete. Si ripete il processo per molte (“infinite”) volte e si memorizzano i risultati. p(Qv|Ev) si calcola dividendo il numero di volte in cui Q=Vero ed E=Vero per il numero di volte in cui E=Vero Terminata l’iterazione si otterranno per ogni nodo valori coerenti con le probabilità congiunte stabilite dalla rete e con le CPT.

25 Altro approccio possibile:
Clustering - consiste nel raggruppare un certo numero di nodi in supernodi, in modo tale che la rete alla fine risulti un politree. I possibili valori di un supernodo sono ora tutte le combinazioni dei possibili valori dei nodi che lo compongono. L’inconveniente è che ora ad ogni supernodo sono associate molte CPT, che ora danno le probabilità condizionali di tutti i valori dei supernodi, condizionate da tutti i valori dei nodi parents, che possono essere supernodi a loro volta.

26 Costruire una rete bayesiana
Si parte da un training set di dati, cioè da un insieme di valori (evidenze, osservazioni, misure) associati a tutte o ad una parte delle “variabili”. Bisogna trovare una rete che si accordi nel modo migliore con il training set, una volta stabilito il metodo di punteggio per ognuna delle reti ipotizzate. Per “trovare una rete” si intende trovare sia la struttura del GOA, sia le CPT (tavole di probabilità condizionali) associate ad ogni nodo.

27 1° caso: la struttura della rete è nota
Dobbiamo solo trovare le CPT (Spesso gli esperti riescono a trovare la struttura appropriata per il problema ma non le CPT) Se siamo fortunati abbiamo un training set completo, che cioè contiene un valore per ogni variabile rappresentata nella rete. Altrimenti il problema si complica.

28 Esempio di struttura nota con training set completo: L B M G
In tabella abbiamo 100 rilevazioni di valori G, B, M, L. Si noti che alcune combinazioni non compaiono, e che alcune sono rilevate più frequentemente di altre. Calcolo di p(B=Vero) (di una delle probabilità “a priori”, senza ascendenti) è data dal rapporto tra il numero di osservazioni in cui B=Vero e il numero totale di osservazioni. (94/100) Calcolo dei valori della CPT di M Es.: p(M=Vero|B=Vero, L=Falso) Si ottiene dal rapporto fra il numero di osservazioni in cui compare M=Vero, B=Vero e L=Falso e il numero di osservazioni di B=Vero e L=Falso. (1/30) Si noti il fatto che combinazioni tra gli eventi che presentino uno scarso numero di osservazioni potrebbero portare a valori delle CPT poco accurati.

29 Esempio di struttura nota con training set incompleto
B M G Per risolvere il problema si usa un processo di calcolo iterativo, chiamato massimizzazione dell’attesa (expectation maximization - EM)

30 2° caso: bisogna trovare anche la struttura
Cioè bisogna trovare quella struttura, associata alle relative CPT, che meglio si adatta al training set. Per far questo bisogna trovare una metrica per assegnare un punteggio ad ogni struttura candidata e specificare una procedura di ricerca fra le possibili strutture, in quanto non è possibile esaminare in modo esaustivo tutte le possibili strutture. Spesso si procede per piccoli cambiamenti: si può partire da una struttura qualunque (anche quella senza archi, dove cioè i nodi sono indipendenti) e si aggiunge o si toglie un arco, o se ne modifica la direzione. Si calcola il punteggio per ogni modifica. Una metrica utilizzabile, detta description length, è presa dalla teoria dell’informazione. Ha la proprietà di essre scomponibile, nel senso che il calcolo del punteggio può essere spezzato su ogni CPT della rete. Così ogni modifica locale può essere confrontata direttamente con la situazione precedente, senza che il calcolo debba essere ripetuto su tutta la rete.

31 2° caso: bisogna trovare anche la struttura
In alcuni casi la struttura della rete può essere semplificata in modo significativo introducendo un nodo i cui valori non sono contenuti nel training set, un cosiddetto nodo nascosto Esempio: La bontà dell’introduzione di un nodo nascosto va valutata usando la stessa metrica stabilita per gli archi, considerando che i dati associati a questo nodo non sono misurabili, quindi sono da considerare “mancanti” Il miglioramento ottenuto introducendo un nodo nascosto può essere spesso spiegato da una migliore descrizione delle relazioni causali esistenti fra le variabili (cioè se l’evento è aggiunto in seguito ad una maggiore comprensione del problema)

32 Esempi di applicazioni delle reti bayesiane
Diagnosi mediche (Pathfinder, 1990) Analisi decisionale (Si incorporano nodi dei valori e nodi di decisione; si parla allora di diagrammi di influenza) Diagnosi di reti mobili (cellulari) Analisi di dati finanziari Previsioni meteorologiche Esplorazioni in campo petrolifero Esplorazione del deep space (NASA AutoClass, open source in LISP e C) Interazione software-utente (Microsoft, progetto Lumiere) Interazione pilota-aereo Data mining Costruzione di mappe (robotica) Comprensione di storie

33 Ambienti freeware di sviluppo di reti bayesiane
MSBNx di Microsoft (Windows) (http://research.microsoft.com/adapt/MSBNx/) JavaBayes: BNJ:http://bndev.sourceforge.net/ Un minimo di riferimenti bibliografici: “Probabilistic reasoning in intelligent systems: networks of plausible inference” di Judea Pearl Ed. Morgan Kaufmann “Intelligenza artificiale” di N. Nilsson Ed. Apogeo “Bayesian Networks without tears” di Eugene Charniak, AI Magazine (AAAI) Per pubblicazioni in rete v. elenco in oppure


Scaricare ppt "Concetti di base sulla Teoria delle Probabilità e sulle Reti bayesiane"

Presentazioni simili


Annunci Google