università degli studi di parma

25
Università degli Studi di Parma Ragionamento con conoscenza incerta

Upload: juliet-sanford

Post on 14-Mar-2016

46 views

Category:

Documents


0 download

DESCRIPTION

Università degli Studi di Parma. Ragionamento con conoscenza incerta. Probabilità. Probabilità incondizionata o a priori P(A) è la probabilità che la proposizione A sia vera. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Università degli Studi di Parma

Università degli Studi di Parma

Ragionamentocon conoscenza incerta

Page 2: Università degli Studi di Parma

Probabilità

• Probabilità incondizionata o a priori P(A) è la probabilità che la proposizione A sia vera.

• Probabilità condizionata o a posteriori P(A| B) è la probabilità che A sia vera dato B vero. P(A| B) si può essere definita come:

• P(A| B) = P(AB) / P(B) per P(B) > 0 che si può scrivere:

P(AB) = P(A| B)P(B)

• La teoria delle probabilità si basa sui seguenti assiomi:– 0 P(A) 1– P(True) = 1 allora P(False) = 0– P(AB) = P(A) + P(B) - P(AB) da cui segue P(A) = 1 - P( A)

Page 3: Università degli Studi di Parma

Gli assiomi sono ragionevoli?

• Dati i tre eventi: A, B e (AB) se seguiamo la logica, uno dei tre deve essere falso e quindi è irragionevole credere a tutti e tre.

• Se assegniamo i seguenti valori si violano gli assiomi:

– P(A) =0.4– P(B) = 0.3– P(AB) = 0– P(AB) = 0.8

– infatti: P(AB) = P(A) + P(B) - P(AB)

Page 4: Università degli Studi di Parma

Distribuzionedi probabilità congiunta

• Siano X1... Xn un insieme di variabili che mi definiscono un modello probabilistico del dominio in cui opero.

• Indico con il nome di evento atomico l’assegnamento di un particolare valore a tutte le variabili.

• La distribuzione delle probabilità congiunte P(X1... Xn) assegna le probabilità a tutti i possibili eventi atomici.

Page 5: Università degli Studi di Parma

Distribuzione della probabilita` congiuntaMal Di Denti Mal Di Denti

Carie 0.04 0.06Carie 0.01 0.89

Esempio: due variabili booleane:

Carie e Mal Di Denti

Sommare lungo una riga o lungo una colonna fornisce la probabilita` incondizionata:P(Carie) = 0.04 + 0.06

Oppure: P(Carie Mal Di Denti) = 0.04 + 0.01 + 0.06 = 0.11

Possiamo trovare le probabilita` condizionate da quelle congiunte:

P(Carie|Mal Di Denti) = P(Carie Mal Di Denti) / P(Mal Di Denti) = 0.04 / ( 0.04 + 0.01) = 0.08

Page 6: Università degli Studi di Parma

Regola di Bayes

• Date le due forme:P(AB) = P(A| B)P(B)

P(AB) = P(B| A)P(A)

• Uguagliando e dividendo per P(A) otteniamo la probabilità che l’evento B sia vero dato A:

P(B| A) = P(A| B)P(B) / P(A)

• Questa forma indica La regola può essere estesa al caso siano dati per veri più eventi, ad esempio, A ed E:

P(B| A,E) = P(A| B,E)P(B|E) / P(A|E)

Page 7: Università degli Studi di Parma

Regola di Bayes• Si puo` legare conoscenza causale e diagnostica.• Ad esempio, un medico sa che la meningite induce nel 50% dei casi un

irrigidimento del collo (conoscenza causale).• Conosce anche la probabilita` incondizionate di avere un irrigidimento del

collo e’ di 1/20 e per la mengite di 1/50000. – P(S) = 0.05 la probabilità che un paziente abbia un irrigidimento del collo;– P(M) = 0.00002 la probabilità che un paziente abbia la meningite;– P(S|M) = 0.5 la probabilità che un paziente con abbia un irrigidimento del collo data la

meningite ;

La regola di Bayes permette di calcolare la probabilità che un paziente abbia la meningite in presenza di un irrigidimento del collo (conoscenza diagnostica) :

P(M|S) = P(S|M) P(M) / P(S) = 0.5 x 0.00002 / 0.05 = 0.0002

Page 8: Università degli Studi di Parma

Regola di Bayes• Supponiamo che in alternativa alla meningite, il paziente possa

avere un irrigidimento del collo per un colpo di frusta.• Abbiamo le due equazioni:

– P(M|S) = P(S| M)P(M) / P(S)– P(W|S) = P(S| W)P(W) / P(S)

• Confrontando le due equazioni possiamo calcolare la probabilità relativa:

P(M|S) / P(W|S)= P(S| M)P(M) / P(S| W)P(W)

che per P(S|W) = 0.8 e P(W) = 0.001 assume il valore: P(M|S) / P(W|S)= 0.5 x 0.00002 / (0.8 x 0.001) = 1 / 80

possiamo interpretare questo valore come la verosimiglianza relativa della meningite e del colpo di frusta dato un irrigidimento del collo.

Page 9: Università degli Studi di Parma

Regola di Bayes

• Se abbiamo un insieme esaustivo dei casi e’ possibile calcolare P(M|S)=P(S|M) P(M)/P(S) senza conoscere la probabilita` a priori del sintomo P(S). Tenendo conto che:

P( S) = P(S| M)P(M) + P(S|M)P(M)

la regola di Bayes:P(M| S) = P(S| M)P(M) / P(S)

si può anche scrivere nella forma:P(M| S) = P(S| M)P(M) /(P(S| M)P(M) + P(S|M)P(M))

• Se disponiamo di P(S| M) possiamo evitare di calcolare direttamente P(S).

Page 10: Università degli Studi di Parma

Regola di BayesCombinazione delle prove

• Supponiamo di avere due probabilità condizionate relative alla carie (ci sono due sintomi per la carie):

– P(Carie|MalDiDenti)– P(Carie|Colpire) (Colpire = Il dente fa male se colpito dal sondino del dentista)

• Saremo interessati a conoscere la probabilita` della Carie dati Mal Di Denti e Colpire:

– P(Carie|Mal Di Denti Colpire)

possiamo:– usare la distribuzione delle probabilità congiunte;– usare la regola di Bayes:

P(Carie|Mal Di DentiColpire) =

P(Mal Di DentiColpire|Carie) P(Carie) / P(Mal Di DentiColpire)abbiamo cioe` bisogno di conoscere le probabilita` condizionali di

Mal Di DentiColpire dato Carie (Con n sintomi avrei n*n coppie)

Page 11: Università degli Studi di Parma

Regola di BayesAggiornamento Bayesiano

• Si incorpora un pezzo di prova alla volta.• Iniziamo a considerare il mal di denti applicando

– P(Carie|MalDiDenti) = P(Mal Di Denti|Carie) P(Carie) / P(Mal Di Denti)• Consideriamo adesso Colpire

P(Carie|Mal Di Denti Colpire) =P(Carie|MalDiDenti) P(Colpire|Mal Di Denti Carie)/P(Colpire|Mal Di Denti)=P(Carie) (P(Mal Di Denti|Carie)/P(Mal Di Denti)) * ( P(Colpire|Mal Di Denti Carie) /P(Colpire|Mal Di Denti))

All’ osservazione di ogni nuovo sintomo la credenza della variabile ignota e’ moltiplicata da un fattore contenente il nuovo sintomo.

Tuttavia il fattore di moltiplicazione dipende anche dai sintomi gia` considerati in precedenza.

Page 12: Università degli Studi di Parma

Regola di BayesIndipendenza condizionale

• Possiamo pensare che Mal Di Denti e Colpire siano ambedue causati dalla Carie ma siano indipendenti fra loro:

– P(Colpire|Carie Mal Di Denrti) = P (Colpire|Carie)– P(Mal Di Denti|Carie Colpire) = P(Mal Di Denti|Carie)

• In questo casoP(Carie|Mal Di Denti Colpire) =P(Carie) (P(Mal Di Denti|Carie)/P(Mal Di Denti)) * ( P(Colpire|Mal Di Denti Carie) /P(Colpire|Mal Di Denti))=P(Carie) (P(Mal Di Denti|Carie)/P(Mal Di Denti)) * ( P(Colpire|Carie) /P(Colpire|Mal Di Denti))

Page 13: Università degli Studi di Parma

Reti Bayesiane

• Dato un dominio, se abbiamo a disposizione la distribuzione delle probabilità congiunte, possiamo rispondere ad ogni domanda che lo riguarda.

• Tuttavia il dominio diventa intrattabile al crescere del numero delle variabili.

• L’uso della regola di Bayes e della relazione di indipendenza condizionale può permettere di:

– semplificare il calcolo di una risposta ad una domanda;– ridurre il numero di probabilità condizionate necessarie.

Page 14: Università degli Studi di Parma

Reti Bayesiane

• Per ottenere ciò viene usata una struttura dati detta rete Bayesiana.

• Una rete Bayesiana ha le seguenti proprietà:– ogni nodo rappresenta una variabile casuale;– i nodi sono connessi da archi indicanti le influenze tra i nodi;– ogni nodo ha una tabella delle probabilità condizionate che

quantificano gli effetti che i nodi genitori hanno sul nodo;– la rete è un grafo aciclico.

Page 15: Università degli Studi di Parma

Reti Bayesiane

Burglary

Earthquake

Alarm

JohnCalls

MaryCalls

Burglary

Earthquake

Alarm

JohnCalls

MaryCalls

P(B)0.001

P(E)0.002

B E P(A)T T 0.95T F 0.94F T 0.29F F 0.001

A P(J)T 0.90F 0.05

A P(M)T 0.70F 0.01

Page 16: Università degli Studi di Parma

Reti Bayesiane

• Da una rete bayesiana possiamo calcolare ogni elemento della distribuzione delle probabilità congiunte attraverso la forma:

P(X1... Xn) =i=1 to nP(Xi | Parents(Xi))

• Quindi la probabilità che l’allarme suoni senza intrusione o terremoto e che entrambi John e Mary abbiano chiamino è:

P(J MABE) = P(J|A)P(M|A)P(A|BE)P(B)P(E) = 0.90 x 0.70 x 0.001 x 0.999 x 0.998 = 0.00062

Page 17: Università degli Studi di Parma

Reti Bayesiane

• Usando la definizione di probabilità condizionata si ha che:

P(X1... Xn) = P(Xn|Xn-1... X1) ... P(X2|X1)P(X1) = i=1 to nP(Xi|Xi-1... X1)

che è equivalente a:P(X1... Xn) =i=1 to nP(Xi|Parents(Xi))

se:Parents(Xi){Xi-1... X1)}

• Cioè una rete bayesiana è una corretta rappresentazione se un suo nodo è condizionatamente indipendente dai nodi che lo precedono nell’ordine dei nodi.

Page 18: Università degli Studi di Parma

Reti Bayesiane

• La procedura generale per costruire una rete Bayesiana è la seguente:

– scegliere le variabili che definisco il dominio del problema;– scegliere un ordine per le variabili;– finché ci sono variabili:

» prendere la prima variabile e aggiungere il nodo corrispondente alla rete;

» collegare al nodo l’insieme minimo dei nodi già nella rete da cui il nodo dipende;

» definire la tabella delle probabilità condizionate per il nodo.

Page 19: Università degli Studi di Parma

Reti Bayesiane

• La definizione delle tabelle delle probabilità condizionate può richiedere un gran tempo se le relazioni tra i nodi sono del tutto arbitrarie.

• Spesso tuttavia possono essere rappresentate attraverso delle distribuzioni canoniche:

– relazioni deterministiche, i nodi figli assumono i valori dei nodi genitori senza nessuna aggiunta di incertezza.

– relazioni noisy-OR, se un nodo E (effetto) dipende solo dai nodi elencati Ci (cause) e questi sono indipendenti, indicando con il nome di noise parameter P(NPCi ) = 1 - P(E|Ci ) si ha che:

» P(E) = 0 se le cause sono tutte false;» P(E) = 1 - i:ci =trueP(NPCi )

Page 20: Università degli Studi di Parma

Reti Bayesiane• Siano (fra parentesi gli ‘inibitori’ o parametri di rumore):

– P(Fever|Cold) = 0.4 (0.6)– P(Fever|Flu) = 0.8 (0.2)– P(Fever|Malaria) = 0.9 (O.1)

• Supponiamo che esse siano le uniche possibili cause (Per un nodo di uscita faso si moltiplicano tutti I parametri di rumore dei nodi veri)

Cold Flu Malaria P(Fever) P( Fever)F F F 0.0 1.0F F T 0.9 0.1F T F 0.8 0.2F T T 0.98 0.02 = 0.2 x 0.1T F F 0.4 0.6T F T 0.94 0.06 = 0.6 x 0.1T T F 0.88 0.12 = 0.6 x 0.2T T T 0.988 0.012 = 0.6 x 0.2 x 0.1

Page 21: Università degli Studi di Parma

Reti Bayesiane

• Per poter fare delle inferenze può essere utile sapere se due insiemi di nodo X e Y sono indipendenti tra loro dato un set di un set di osservazioni E.

• Questo è possibile grazie al metodo della separazione della dipendenza diretta detta anche d-separation:

Z

Z

ZX Y

E

(1)

(2)

(3)

Page 22: Università degli Studi di Parma

Reti Bayesiane

• Con una rete Bayesiana possiamo fare diversi tipi di inferenze:

– inferenza diagnostica (dagli effetti alle cause)» P(Burglary|JohnCalls) = 0.016

– inferenza causale (dalle cause agli effetti)» P(JohnCalls|Burglary) = 0.86» P(MaryCalls|Burglary) = 0.67

– inferenza intercausale (tra le cause di un effetto comune)» P(Burglary|Alarm) = 0.376» P(Burglary|AlarmEarthquake) = 0.003

– inferenza mista (combinazione delle inferenze precedenti)» P(Alarm|JohnCallsEarthquake) = 0.03

Page 23: Università degli Studi di Parma

Reti Bayesiane

• Esistono vari algoritmi per fare delle inferenze nelle reti Bayesiane.

• Gran parte di questi algoritmi possono essere applicati solo su reti in cui esiste un unico percorso per unire due nodi (polytree).

A

B C

D

Page 24: Università degli Studi di Parma

Reti Bayesiane

• Uno degli algoritmi più utilizzati calcola una probabilità P(X|E) scomponendo il contributo delle evidenze E in:

– E+, contributo causale, dovuto a evidenze connesse a X tramite i genitori di X, e

– E-, contributo evidenziale, dovuto a evidenze connesse a X tramite i figli di X.

• Quindi potrò scrivere:P(X|E) = P(X|E-,E+) = P(E-|X,E+)P(X|E+) / P(E-|E+)

• Dato che X d-separa E- e E+, allora possiamo scrivere:

P(X|E) = P(X|E-,E+) = P(E-|X,E+)P(X|E+) / P(E-|E+) = P(E-|X)P(X|E+) / P(E-|E+) = P(E-|X)P(X|E+)

Page 25: Università degli Studi di Parma

Reti Bayesiane

• Come si può ragionare con reti che non sono polytree?

– clustering

– conditioning

– stochastic simulation: se le probabilità a priori e le probabilità condizionate di una rete sono corrette dopo un ciclo infinito di simulazioni:

P(D|A) = P(AD) / P(A) = Occ(AD) / Occ(A)

A

B

C

DB+C

D+A

+A

B

CD

-A

-A