Home » Intelligenza Artificiale » 📋 URL
Confounder
Definiamo variabile confounder (variabile di confondimento) una variabile Z che influenza l’effetto causale tra X e Y.
Un confounder può creare una relazione spuria (falsa) tra il trattamento e l’outcome, facendo sembrare che esista un’associazione causale tra essi quando in realtà non c’è. Pertanto, è importante identificare e controllare i confounder nelle analisi causali per ottenere delle stime accurate dell’effetto del trattamento.
Tale valore potrebbe essere completamente (o solo in parte) non osservabile, dunque per descrivere un sistema che presenza confounder avremo bisogno di rimuovere Z dalle equazioni.
Backdoor paths
Per capire quali sono le predette relazioni spurie avremo bisogno del concetto di backdoor paths. Questi percorsi rappresentano le possibili vie indirette attraverso cui il trattamento può influenzare l’outcome, rendendo necessario controllare i confounder per ottenere una stima corretta dell’effetto causale, cosa che però non siamo in grado di fare a causa dell’inosservabilità dei confounder.
Facendo riferimento alla seguente immagine
Le frecce in rosso rappresentano dei backdoor path, dunque possiamo affermare che, in generale un backdoor path deve presentare le seguenti caratteristiche:
- Deve partire da una freccia entrante in X
- Non importa l’orientamento delle altre frecce né il loro verso di percorrenza: l’importante è che esista un percorso da X a Y
- Un percorso può essere bloccato tramite il condizionamento su chain/forks, oppure essere naturalmente bloccato dai collider
Backdoor criterion
Per capire ora quali sono i confounder che abbiamo bisogno di bloccare per evitare di ottenere una stima distorta dell’effetto causale utilizziamo il backdoor criterion, attraverso il quale cerchiamo un insieme di variabili S che soddisfi le seguenti caratteristiche:
- Riesce a bloccare tutti i backdoor path tra X e Y
- Non contiene discendenti di X
Di fatto, il backdoor criterion aiuta a identificare quali variabili sono necessarie per ottenere una stima corretta dell’effetto causale del trattamento, bloccando i backdoor paths che potrebbero portare a una stima distorta.
Esempio: consideriamo il grafo in figura seguente
Quali sono gli insiemi di variabili che soddisfano il backdoor criterion?
Soluzione
Chiariamo dapprima la situazione proposta nell’esercizio: stiamo studiando l’effetto causale tra le variabili X e Y. Vediamo però che le due variabili sono collegate in più modi, dunque la loro influenza sarà determinata in parte anche da altre variabili, che però in questo momento non sono d’interesse, dunque il loro effetto deve essere mitigato.
Notiamo inoltre che esiste un backdoor path tra le variabili Xe Y: c’è infatti una freccia entrante in X che si collega a Y passando per A e B.
Per capire quali variabili soddisfano il criterio backdoor abbiamo dunque bisogno di trovare un insieme di variabili che riesca a bloccare tutti i backdoor path e non contenga discendenti di X.
Osservando il collider presente in B sappiamo che un backdoor path è bloccato da un collider, dunque l’insieme \{\} (insieme vuoto) soddisfa il criterio, come anche l’insieme \{A\}, dove la variabile A è l’unica a non essere discendente di X. Essendo discendenti di X qualunque altro insieme di variabili non soddisfa il criterio.
Formula aggiustamento backdoor criterion
Utilizzando il criterio backdoor il calcolo di P(y \mid do(x)) possiamo utilizzare una formula di aggiustamento che utilizza l’insieme di variabili S che soddisfano il medesimo criterio
\tag{$\spades$}P(y \mid do(x))=\sum_{s\in S}P(y \mid x, \, s)P(s)
Nota: se S=\{\,\} tale formula si semplifica diventando
P(y \mid do(x))=P(y \mid x)
Esercizi backdoor criterion
Esempio: quali sono gli insiemi di variabili che soddisfano il criterio backdoor per l’effetto causale di X su Y nel seguente grafo
Soluzione
Verifichiamo, nell’ordine le diverse condizioni:
- Troviamo un backdoor path che, dalla freccia che collega B con X può essere percorso “al contrario” per arrivare fino a Y.
- Notiamo inoltre che C è un collider tra B e D dunque l’insieme vuoto \{\} è una scelta valida per bloccare tutti i backdoor path presenti.
- Oltre all’insieme vuoto possiamo però rimuovere anche \{B\}, \{D\} o \{B,\,D\}, infatti in ognuno di questi casi la rimozione elimina il backdoor path e non coinvolge variabili discendenti di X.
- Nel caso in cui vogliamo condizionare su C dobbiamo prestare particolare attenzione a causa del collider che tale variabile forma con B e D. Possiamo infatti scegliere come insiemi \{B,\,C\}, \{C,\,D\} oppure \{B,\,C,\,D\}, rimuovendo in questo modo il collider che non può essere presente “solo per metà”.
Esempio: assumendo X,\,Y,\,Z,\,W variabili booleane, qual è l’effetto causale di X su Y?
Soluzione
- C’è un unico backdoor path tra Xe Y: X\leftarrow Z\rightarrow W\rightarrow Y
- I possibili insiemi che bloccano tale backdoor path sono
\{Z\},\,\{W\},\,\{Z,\,W\} - Utilizzando la formula (\spades) otteniamo
\begin{aligned} &\, \begin{aligned} \text{caso 1:}\Rightarrow\quad P(y \mid do(x)) &=\sum_{s\in W}P(y \mid x,\,s)P(s)\\ &=P(y\mid x,\,w)P(w)+P(y\mid x,\,\neg w)P(\neg w) \end{aligned}\\[30pt] &\, \begin{aligned} \text{caso 2:}\Rightarrow\quad P(y \mid do(x)) &=\sum_{s\in Z}P(y \mid x,\,s)P(s)\\ &=P(y\mid x,\,z)P(z)+P(y \mid x,\,\neg z)P(\neg z) \end{aligned}\\[30pt] &\, \begin{aligned} \text{caso 3: }\Rightarrow\quad P(y \mid do(x)) &=\sum_{i\in Z}\sum_{j\in W}P(y\mid x,\,i,\,j)P(i,\,j)\\ &=P(y\mid x,\,z,\,w)P(z,\,w)+\\ &+P(y \mid x,\,\neg z,\,w)P(\neg z,\,w)+\\ &+P(y \mid x,\,z,\,\neg w)P(z,\,\neg w)+\\ &+P(y\mid x,\,\neg z,\,\neg w)P(\neg z,\,\neg w) \end{aligned} \end{aligned}
Esempio: assumendo A e B variabili booleane e C\in\{c_1,\,c_2,\,c_3\}, qual è l’effetto causale di X su Y
Soluzione
- 2 backdoor path: \{X\leftarrow C\rightarrow Y\}, \{X\leftarrow A\rightarrow B\rightarrow Y\}
- Dobbiamo trovare delle variabili che riescano a bloccare entrambi i backdoor path contemporaneamente. Possiamo dunque scegliere come insiemi
\{A,\,C\},\,\{B,\,C\},\,\{A,\,B,\,C\} - Utilizzando (\spades) possiamo calcolare
inserire formula
Per l’insieme \{B,\,C\} si fa un’operazione simile.
inserire formula
Esempio: assumendo tutte le variabili booleane, qual è l’effetto causale di X su Y?
Soluzione
- Backdoor paths:
\{X\leftarrow B \rightarrow Y\}\\ \{X\leftarrow A\rightarrow B \rightarrow Y\}\\ \{X\leftarrow B\leftarrow C\rightarrow Y\}\\ \{X\leftarrow A\rightarrow B\leftarrow C\rightarrow Y\} - Per bloccarli tutti dobbiamo condizionare su
\{A,\,B\}\\ \{B,\,C\}\\ \{A,\,B,\,C\}
Nota: non posso rimuovere soltanto \{B\} perché rappresenta un collider tra A e C. - Usando (\spades) possiamo scrivere le seguenti relazioni
inserire formule
Nota bene: le diverse probabilità P(y \mid do(x)) devono restituire gli stessi risultati nel caso in cui possano essere bloccati più insiemi di variabili; se ciò non avviene significa che abbiamo commesso un errore.
Front door paths
I front door paths sono l’opposto dei backdoor paths, ovvero un front door path è rappresentato da tutte le frecce uscenti da X che arrivano a Y seguendo la direzione delle frecce.
Front door criterion
Un insieme S di variabili soddisfa il criterio front door se:
- Blocca tutti i front door path tra Xe Y
- Non ci sono backdoor paths tra X e Y
- Tutti i backdoor path da S a Y sono bloccati da X
Formula aggiustamento criterio Front door
Se un insieme S di variabili soddisfa il criterio front door, allora possiamo usare la seguente formula di aggiustamento per calcolare l’effetto causale tra X e Y
\tag{$\clubs$}P(y\mid do (x))=\sum_{s\in S} P(s \mid x) \sum_{x'} P(y \mid x', \, s)P(x')
Esempio: Immaginiamo di avere il seguente grafo
Dove la variabile U non può essere osservata. Calcolare l’effetto causale di X su Y.
Notazione: x, \, x’=\text{smoking}, \, z=\text{tar}, \, y=\text{cancer}, \, u=\text{smoking gene}
Soluzione
Notando che l’unico front door path è formato da
X\rightarrow Z\rightarrow Y
dunque S=\{Z\}. Utilizzando (\clubs) possiamo scrivere la seguente relazione
\begin{aligned} P(y \mid do(x))&=\sum_s P(s \mid x) \sum_{x'} P(y \mid x', \, s)P(x')\\[10pt] &=P(z \mid x)\left[P(y \mid x', \, z)P(x')+ P(y \mid \neg x',\,z)P(\neg x')\right]+\\ &\quad\,\, P(\neg z \mid x)\left[P(y \mid x', \, \neg z)P(x') + P(y \mid \neg x', \, \neg z)P(\neg x')\right] \end{aligned}
Per esempio, nel caso in cui valgano i valori in tabella
Si otterrebbero i seguenti valori
\underbrace{P(z \mid x)}_{380/400} \left[\underbrace{P(y \mid x', \, z)}_{57/380} \underbrace{P(x')}_{400/800} + \underbrace{P(y \mid \neg x',\,z)}_{19/20} \underbrace{P(\neg x')}_{400/800}\right]+\\ \underbrace{P(\neg z \mid x)}_{20/400} \left[\underbrace{P(y \mid x', \, \neg z)}_{2/20} \underbrace{P(x')}_{400/800} + \underbrace{P(y \mid \neg x', \, \neg z)}_{342/380} \underbrace{P(\neg x')}_{400/800}\right]
Risultato: 0.5475.
Esercizio: facendo riferimento alla rete in figura, rispondere alle seguenti domande
- Quali variabili soddisfano il criterio backdoor tra Z e D?
- Da quali variabili è composto il Markov Blanket di Z?
- Quali variabili d-separano le variabili Z e D?
Soluzione
- B, \, C, \, X
- B, \, C, \, X, \, Y
- X, \, Y
In poche parole
✅ Un confounder è una variabile che influenza delle altre variabili creando tra esse una relazione spuria. È importante controllare i confounder nelle analisi causali per ottenere delle stime accurate dell’effetto di un trattamento.
✅ I backdoor paths rappresentano le vie indirette attraverso cui il trattamento può influenzare l’outcome. Il backdoor criterion aiuta a identificare gli insiemi di variabili che bloccano i backdoor paths, consentendo di ottenere stime corrette dell’effetto causale.
✅ Il frontdoor path è un percorso diretto (e direzionato) tra X e Y, mentre il frontdoor criterion è un criterio per identificare le variabili che bloccano i frontdoor paths.