Controfattuali e scoperta causale
In questa pagina 4
Argomento del corso da 9 CFU. Si appoggia a Inferenza causale - modelli causali strutturali e scala della causalitàI dati e la distribuzione congiunta da soli non dicono quali variabili causano quali: lo mostrano il paradosso di Simpson (la medicina funziona in ogni sottogruppo ma sembra peggiorare la popolazione) e il fatto che reti bayesiane diverse (A→B e B→A) descrivono la stessa congiunta. Serve un modello causale: un modello causale strutturale (SCM) ha variabili esogene U, endogene V e funzioni $v_i=f_i(\text{genitori},u_i)$; il suo grafo è la rete causale, e una rete causale è una rete bayesiana in cui le frecce sono cause. Le tre strutture elementari decidono l'indipendenza: catena $A\to B\to C$ e fork $A\leftarrow B\to C$ si bloccano osservando B, il collider $A\to B\leftarrow C$ si blocca se B e i suoi discendenti NON sono osservati (osservarlo crea dipendenza, explaining away). d-separazione: X e Y sono separati da Z se ogni cammino è bloccato; allora $X\perp!!!\perp Y\mid Z$. La scala della causalità (Pearl): associazione $P(y\mid x)$, intervento $P(y\mid do(x))$, controfattuali. Argomento del corso da 9 CFU.Inferenza causale - modelli causali strutturali e scala della causalità → (SCM, d-separazione) e a Interventi e operatore do - criterio backdoor e aggiustamentoOsservare $X=x$ e forzare $X=x$ sono cose diverse: $P(y\mid x)\ne P(y\mid do(x))$ quando c'è un confondente. L'intervento $do(X=x)$ si calcola con la «chirurgia» del grafo (si tolgono le frecce entranti in X) e si traduce in probabilità osservazionali con la formula di aggiustamento $P(y\mid do(x))=\sum_z P(y\mid x,z)P(z)$, dove $Z$ sono i genitori di X, o più in generale un insieme S che soddisfa il criterio backdoor: blocca ogni cammino backdoor (cammino da X a Y che inizia con una freccia entrante in X) e non contiene discendenti di X. Effetto causale medio $ACE=P(y\mid do(x))-P(y\mid do(\neg x))$. Se il confondente non è osservabile ma c'è un mediatore Z con X→Z→Y, vale il front-door $P(y\mid do(x))=\sum_z P(z\mid x)\sum_{x'}P(y\mid x',z)P(x')$. Mediazione: effetto diretto controllato CDE con $do(x),do(z)$. Se due insiemi backdoor danno risultati diversi sui dati, il modello è sbagliato. Argomento del corso da 9 CFU.Interventi e operatore do - criterio backdoor e aggiustamento →. Per la regressione si veda Regressione lineareNell'apprendimento supervisionato si impara una funzione $F(x)$ dagli esempi $(x,y)$: regressione se $y$ è continua, classificazione se è categorica. Il modello lineare è $F_\beta(x)=\beta_0+\beta_1x_1+\dots+\beta_px_p=X\beta$ (con una colonna di uni per $\beta_0$) e i parametri si scelgono minimizzando l'errore quadratico medio $\mathrm{MSE}=\frac1n\sum_i(y_i-F_\beta(x_i))^2$, funzione convessa dei parametri. Annullando il gradiente di $J(\beta)=|y-X\beta|^2$ si ottengono le equazioni normali $X^TX\beta=X^Ty$ e la soluzione dei minimi quadrati ordinari $\beta=(X^TX)^{-1}X^Ty$. Il coefficiente di determinazione $R^2=1-SS_{res}/SS_{tot}$ misura la qualità del fit (0 = come la media, negativo = peggio della media). Un modello va valutato su un test set mai usato per addestrare: l'errore sul training è ottimistico e un polinomio di grado alto lo azzera senza generalizzare.Regressione lineare →, per le gaussiane Distribuzione gaussiana (normale)N(μ, σ²) ha densità e^(−(x−μ)²/(2σ²)) / √(2πσ²), a campana centrata in μ con larghezza σ; media μ, varianza σ²; si standardizza con Z = (X − μ)/σ ~ N(0, 1) e si calcola P(X ≤ x) = Φ((x − μ)/σ), con Φ(−z) = 1 − Φ(z); aX + b è ancora gaussiana, N(aμ + b, a²σ²).Distribuzione gaussiana (normale) →.
1. Controfattuali
Un controfattuale è una possibilità ipotetica: «cosa sarebbe successo se...?». Esempio: in autostrada c'è molto traffico, esco e prendo una strada di campagna, ma a causa di lavori ci metto comunque molto; arrivato mi chiedo «sarei stato più veloce restando in autostrada?». Si cerca la probabilità di un mondo ipotetico (nel passato) sapendo che cosa è successo davvero. È il terzo livello della scala della causalità.
Definizione
Sia l'SCM con grafo (peso ), (peso ), (peso ). Si scrive (o ) per « sarebbe stato se fosse stato , nella situazione » (per esempio è il percorso, il tempo, un fattore esterno come il tipo di auto). Il controfattuale produce un modello modificato : Allo stesso modo è «cosa sarebbe stato se fosse stato »: nel modello (, ) vale , cioè «se fosse stato » non cambia (come atteso, non è causa di ).
Con tre valori e si possono scrivere tutti i controfattuali:
| 1 | 1 | 2 | 2 | 3 | 4 | 1 | 1 | 1 |
| 2 | 2 | 4 | 3 | 4 | 5 | 2 | 2 | 2 |
| 3 | 3 | 6 | 4 | 5 | 6 | 3 | 3 | 3 |
Come si legge: , (mondo reale); (per : ; per : ; per : ); per ogni .
Controfattuali e interventi
- I controfattuali sono definiti a livello individuale: riguarda l'individuo e richiede un SCM con le funzioni.
- Gli interventi sono a livello di popolazione: è la distribuzione di su tutta la popolazione quando è forzato.
Le due nozioni sono legate da Ma, con un'evidenza , in generale Nel primo si interviene su e poi si guardano le unità con dopo l'intervento (condizionamento post-intervento); poi si calcola la distribuzione di . Nel secondo si guardano gli individui con nel mondo reale (condizionamento pre-intervento) e per quegli stessi individui si chiede quale sarebbe il loro esito se fosse .
Calcolo di un controfattuale
Risolvere il controfattuale in equivale a risolvere in : .
Esempio (tutoraggio). Ore di tutoraggio migliorano lo studio a casa e il voto , secondo
Caso deterministico. Lo studente Joe ha , , . Domanda: quale sarebbe stato il suo voto se avesse raddoppiato lo studio a casa, cioè ?
- Abduzione. Dai dati si ricavano i valori delle esogene di Joe, invertendo le equazioni:
- Azione. Si sostituisce l'equazione di con la costante (modello : non dipende più da ).
- Predizione. Si calcola nel nuovo modello con le di Joe:
Il valore non serve (con forzato la sua equazione sparisce), ma l'abduzione lo ricava comunque; quello che serve è , la parte del voto di Joe non spiegata da e . Svolto per intero, con altre domande sullo stesso Joe, in Esercizio - Controfattuali di Joe e della tabella di U (slide del corso).
Caso probabilistico. Invece dei valori di un individuo si ha la distribuzione e si calcola la probabilità di un controfattuale data l'evidenza , :
- Abduzione: si aggiorna con l'evidenza, ottenendo ;
- Azione: si modifica sostituendo l'equazione di con (modello );
- Predizione: si usa con le probabilità aggiornate per calcolare la probabilità di .
Esempio. Nel modello , () con , , , i controfattuali non condizionati si leggono dalla tabella:
- ( solo per );
- ;
- (per : e ; per : non è );
- ( e solo per ).
Condizionali: . Si cercano gli con : per , con probabilità . Tra questi solo per (; per ). Quindi (Abduzione: dopo l'evidenza si ha , ; azione: ; predizione: per , per .) Tutti questi valori sono stati ricalcolati con frazioni esatte.
2. Modelli lineari gaussiani
Finora variabili discrete. Molti problemi hanno variabili continue; si considera una classe ampia: SCM lineari con variabili gaussiane.
Definizione (SCM lineare). Le equazioni strutturali sono lineari, per esempio I coefficienti strutturali (di cammino) quantificano l'effetto diretto di un genitore sul figlio.
Grafico interattivo: SCM lineare: Z = aX + U_Z, W = bX + cZ + U_W, Y = dZ + eW + U_Y, con X = U_X
Variabili gaussiane: con valore atteso e varianza (Distribuzione gaussiana (normale)N(μ, σ²) ha densità e^(−(x−μ)²/(2σ²)) / √(2πσ²), a campana centrata in μ con larghezza σ; media μ, varianza σ²; si standardizza con Z = (X − μ)/σ ~ N(0, 1) e si calcola P(X ≤ x) = Φ((x − μ)/σ), con Φ(−z) = 1 − Φ(z); aX + b è ancora gaussiana, N(aμ + b, a²σ²).Distribuzione gaussiana (normale) →, Vettori gaussianiX = (X₁, ..., Xₙ) è un vettore gaussiano N(m, Σ) se ogni combinazione lineare a·X è gaussiana (equivalentemente X = m + AZ con Z gaussiane standard indipendenti); se Σ è invertibile ha densità exp(−½(x−m)ᵀΣ⁻¹(x−m)) / √((2π)ⁿ det Σ). Proprietà chiave: AX + b ~ N(Am + b, AΣAᵀ), le marginali sono gaussiane e componenti non correlate sono indipendenti.Vettori gaussiani →). Per le distribuzioni gaussiane valgono due proprietà:
- ;
- , dove sono i coefficienti di regressione parziale: pendenze dell'(iper)piano che minimizza la somma dei quadrati degli errori .
Coefficienti strutturali = coefficienti di regressione. In un SCM lineare gaussiano, i coefficienti di regressione di ogni variabile endogena sui suoi genitori coincidono con i coefficienti strutturali: , , .
Non basta regredire su variabili qualsiasi: regredire solo su dà un coefficiente diverso da (il cammino è un backdoor aperto).
Effetto causale totale. L'effetto totale tra due variabili è la somma dei prodotti dei coefficienti strutturali lungo ogni cammino orientato (non backdoor) da una all'altra. Nell'esempio, l'effetto totale di su è (cammini e ); quello di su è .
Verifica numerica (coefficienti scelti da me: , , , , , rumori , campioni):
- regressione sui genitori: dà ; dà e ; dà e : i coefficienti strutturali;
- effetto totale di su : ; la simulazione dell'intervento dà . Regredire solo su dà (distorto); regredendo su e (insieme backdoor ) il coefficiente di è ;
- effetto totale di su : ; la simulazione dà e la regressione semplice (nessun backdoor per ).
Procedura generale. Dati osservati: se il modello è lineare gaussiano e tutte le variabili sono osservabili, si fa regressione lineare di ogni figlio sui suoi genitori; se non lo sono, si fa la regressione sulle variabili disponibili (scegliendo un insieme valido per il criterio backdoor, Interventi e operatore do - criterio backdoor e aggiustamentoOsservare $X=x$ e forzare $X=x$ sono cose diverse: $P(y\mid x)\ne P(y\mid do(x))$ quando c'è un confondente. L'intervento $do(X=x)$ si calcola con la «chirurgia» del grafo (si tolgono le frecce entranti in X) e si traduce in probabilità osservazionali con la formula di aggiustamento $P(y\mid do(x))=\sum_z P(y\mid x,z)P(z)$, dove $Z$ sono i genitori di X, o più in generale un insieme S che soddisfa il criterio backdoor: blocca ogni cammino backdoor (cammino da X a Y che inizia con una freccia entrante in X) e non contiene discendenti di X. Effetto causale medio $ACE=P(y\mid do(x))-P(y\mid do(\neg x))$. Se il confondente non è osservabile ma c'è un mediatore Z con X→Z→Y, vale il front-door $P(y\mid do(x))=\sum_z P(z\mid x)\sum_{x'}P(y\mid x',z)P(x')$. Mediazione: effetto diretto controllato CDE con $do(x),do(z)$. Se due insiemi backdoor danno risultati diversi sui dati, il modello è sbagliato. Argomento del corso da 9 CFU.Interventi e operatore do - criterio backdoor e aggiustamento →); se il modello non è lineare gaussiano servono altri metodi.
3. Scoperta causale
La scoperta causale (causal discovery) ricava il grafo causale dai dati. I metodi basati su vincoli usano test di indipendenza condizionata (i vincoli) per identificare il grafo: PC (Spirtes e Glymour), FCI, GES. Qui si studia PC, che richiede quattro assunzioni:
- Aciclicità: nessun ciclo nel grafo.
- Sufficienza: nessun confondente non osservato (tutte le cause comuni sono tra le variabili).
- Markov: la d-separazione nel grafo implica indipendenza condizionata nella distribuzione (grafo causale dati).
- Fedeltà (faithfulness): vale anche il viceversa: se nei dati, allora e sono d-separati da nel grafo (dati grafo; escludo cancellazioni accidentali di effetti).
Classi di equivalenza di Markov
, e implicano la stessa indipendenza condizionata (e nessun'altra): appartengono alla stessa classe di equivalenza di Markov e dai soli dati sono indistinguibili. Il collider è diverso: implica (non condizionato) e dipendenza dato , quindi si riconosce. Per questo i collider sono decisivi negli algoritmi di scoperta.
Algoritmo PC
Dati da un processo ignoto con grafo vero da scoprire:
Grafico interattivo: Grafo vero G* da scoprire: A → B ← C (collider in B), B → D, B → E
- Grafo completo non orientato tra tutte le variabili.
- Scheletro. Per , per ogni arco si prova ogni insieme di variabili adiacenti: se (test statistico, per esempio Fisher o differenza di BIC) si toglie l'arco e si ricorda (insieme separatore).
- Collider. Per ogni cammino con e non adiacenti e non nell'insieme separatore di : orienta .
- Propagazione. Un arco di un cammino parzialmente orientato con e non adiacenti si orienta (altrimenti si creerebbe un collider che il passo 3 ha escluso).
Esempio (slide). Cinque variabili da un grafo vero , , . Per concretezza ho generato campioni lineari gaussiani da questo grafo e applicato PC con il test di Fisher (correlazione parziale , , livello ):
- : indipendenza non condizionata: solo (, ): si toglie e si ricorda . Le altre coppie sono correlate ( tra e ).
- : si tolgono , , , , , tutte con (correlazioni parziali tra e ). , , , restano (per esempio ? no, ).
- Scheletro: , , .
- Collider: , e non adiacenti, non nell'insieme separatore : . Invece : è nell'insieme separatore di , quindi non è un collider (catena o fork: la classe di equivalenza non decide).
- Propagazione: con , non adiacenti: ; : .
Risultato: , , , cioè esattamente . Il codice completo, con il test di Fisher scritto in numpy, è in Esercizio - Algoritmo PC sul grafo con cinque variabili (slide del corso). Se il grafo vero fosse una sola catena , PC restituirebbe due archi non orientati (classe di equivalenza): verificato con la stessa funzione, che per un collider orienta invece entrambi gli archi.
Il legame con le reti bayesiane: l'apprendimento della struttura di una rete bayesiana (Apprendimento delle reti bayesiane - parametri e strutturaImparare una rete bayesiana significa stimare i parametri (le CPT) con la struttura nota, oppure trovare la struttura stessa dai dati. Con dati completi la stima di massima verosimiglianza (ML) è una frequenza: $P(B_i\mid A_j,C_k)\approx N_{ijk}/N_{jk}$. Per evitare probabilità zero si usa lo smoothing di Laplace: $P(x_i)=(1+m)/(k+N)$ ($k$ valori, $N$ campioni, $m$ occorrenze). Con valori mancanti si inferisce il valore più probabile dagli altri della riga e si ristimano i parametri; con variabili nascoste si usa l'algoritmo EM (passo E: stima dei dati mancanti con i parametri correnti; passo M: aggiornamento dei parametri), da inizializzazione casuale fino a convergenza. L'apprendimento della struttura è difficile (numero di DAG superesponenziale): metodi globali (ricerca con punteggio, ad esempio BIC $=\log P(D\mid m)-|m|\log|D|/2$ con hill climbing) e metodi locali (test di indipendenza, algoritmo PC).Apprendimento delle reti bayesiane - parametri e struttura →) cerca un grafo compatibile con i dati, ma da solo non dà il verso causale; PC restituisce la classe di equivalenza e orienta solo ciò che i collider permettono.
Domande d'esame
- SCM , . Osservo . Quanto varrebbe se fosse stato ? Abduzione: . Azione: . Predizione: .
- , e sono distinguibili dai soli dati? I primi due no (stessa classe di Markov, ); il terzo sì (collider: ma non dato ).
- In un SCM lineare , , quanto vale l'effetto totale di su ? (cammini e ).
- Perché ? Nel primo è osservato dopo l'intervento, nel secondo gli individui con sono scelti nel mondo reale prima dell'intervento.
Versione ripasso
Argomento del corso da 9 CFU; si appoggia a Inferenza causale - modelli causali strutturali e scala della causalitàI dati e la distribuzione congiunta da soli non dicono quali variabili causano quali: lo mostrano il paradosso di Simpson (la medicina funziona in ogni sottogruppo ma sembra peggiorare la popolazione) e il fatto che reti bayesiane diverse (A→B e B→A) descrivono la stessa congiunta. Serve un modello causale: un modello causale strutturale (SCM) ha variabili esogene U, endogene V e funzioni $v_i=f_i(\text{genitori},u_i)$; il suo grafo è la rete causale, e una rete causale è una rete bayesiana in cui le frecce sono cause. Le tre strutture elementari decidono l'indipendenza: catena $A\to B\to C$ e fork $A\leftarrow B\to C$ si bloccano osservando B, il collider $A\to B\leftarrow C$ si blocca se B e i suoi discendenti NON sono osservati (osservarlo crea dipendenza, explaining away). d-separazione: X e Y sono separati da Z se ogni cammino è bloccato; allora $X\perp!!!\perp Y\mid Z$. La scala della causalità (Pearl): associazione $P(y\mid x)$, intervento $P(y\mid do(x))$, controfattuali. Argomento del corso da 9 CFU.Inferenza causale - modelli causali strutturali e scala della causalità → e Interventi e operatore do - criterio backdoor e aggiustamentoOsservare $X=x$ e forzare $X=x$ sono cose diverse: $P(y\mid x)\ne P(y\mid do(x))$ quando c'è un confondente. L'intervento $do(X=x)$ si calcola con la «chirurgia» del grafo (si tolgono le frecce entranti in X) e si traduce in probabilità osservazionali con la formula di aggiustamento $P(y\mid do(x))=\sum_z P(y\mid x,z)P(z)$, dove $Z$ sono i genitori di X, o più in generale un insieme S che soddisfa il criterio backdoor: blocca ogni cammino backdoor (cammino da X a Y che inizia con una freccia entrante in X) e non contiene discendenti di X. Effetto causale medio $ACE=P(y\mid do(x))-P(y\mid do(\neg x))$. Se il confondente non è osservabile ma c'è un mediatore Z con X→Z→Y, vale il front-door $P(y\mid do(x))=\sum_z P(z\mid x)\sum_{x'}P(y\mid x',z)P(x')$. Mediazione: effetto diretto controllato CDE con $do(x),do(z)$. Se due insiemi backdoor danno risultati diversi sui dati, il modello è sbagliato. Argomento del corso da 9 CFU.Interventi e operatore do - criterio backdoor e aggiustamento →.
- Controfattuale. = valore di nel modello (equazione di sostituita da ) con fissato. Con , : e («se fosse stato » non cambia ). Con : , , .
- Livello individuale. Richiede l'SCM. Gli interventi sono a livello di popolazione: , ma : nel primo è osservato dopo l'intervento, nel secondo gli individui con sono presi nel mondo reale prima.
- Tre passi. (1) Abduzione: da si ricavano le (o ); (2) azione: in ; (3) predizione: si calcola in .
- Joe. , , ; dati , , .
- Abduzione: , , .
- Azione: .
- Predizione: .
- Caso probabilistico. : , , , , (solo : ; per ).
- SCM lineare gaussiano. , , . Per le gaussiane (regressione, minimi quadrati; : , ). I coefficienti di regressione sui genitori sono i coefficienti strutturali (Regressione lineareNell'apprendimento supervisionato si impara una funzione $F(x)$ dagli esempi $(x,y)$: regressione se $y$ è continua, classificazione se è categorica. Il modello lineare è $F_\beta(x)=\beta_0+\beta_1x_1+\dots+\beta_px_p=X\beta$ (con una colonna di uni per $\beta_0$) e i parametri si scelgono minimizzando l'errore quadratico medio $\mathrm{MSE}=\frac1n\sum_i(y_i-F_\beta(x_i))^2$, funzione convessa dei parametri. Annullando il gradiente di $J(\beta)=|y-X\beta|^2$ si ottengono le equazioni normali $X^TX\beta=X^Ty$ e la soluzione dei minimi quadrati ordinari $\beta=(X^TX)^{-1}X^Ty$. Il coefficiente di determinazione $R^2=1-SS_{res}/SS_{tot}$ misura la qualità del fit (0 = come la media, negativo = peggio della media). Un modello va valutato su un test set mai usato per addestrare: l'errore sul training è ottimistico e un polinomio di grado alto lo azzera senza generalizzare.Regressione lineare →).
- Effetto totale = somma dei prodotti dei coefficienti lungo i cammini non backdoor: : ; : . Con : e , confermati dalla simulazione. Regredire su da solo dà (backdoor aperto); con aggiunto .
- Procedura. Lineare gaussiano? Sì: regressione di ogni figlio sui genitori (tutte osservabili) o sulle variabili disponibili con un insieme backdoor valido; no: altri metodi.
- Scoperta causale (PC). Assunzioni:
- aciclicità;
- sufficienza (nessun confondente non osservato);
- Markov: grafo dati, cioè d-separazione implica indipendenza;
- fedeltà: dati grafo.
- Classe di Markov. Catena e fork () sono indistinguibili; il collider no: ma non dato .
- Passi di PC.
- Grafo completo non orientato.
- Si toglie se , con crescente (Fisher o BIC), ricordando .
- con non adiacenti e non nell'insieme separatore: .
- Propagazione: con non adiacenti dà .
- Esempio . Con cade (insieme separatore ); con cadono (tutti con ). Collider ; propagazione , : si ritrova (Esercizio - Algoritmo PC sul grafo con cinque variabili (slide del corso)). Una sola catena darebbe due archi non orientati.
- Errori tipici: scambiare e controfattuale; saltare l'abduzione; dire che PC trova un solo grafo (trova la classe di equivalenza); orientare un arco quando il nodo centrale sta nell'insieme separatore.