Comprendere i bias nascosti nell’analisi dei dati

Generato con DALL-E

A volte le statistiche mostrano cose sorprendenti che ci fanno dubitare di ciò che vediamo quotidianamente. Il paradosso di Berkson ne è un esempio. Questo paradosso è fortemente correlato al problema della distorsione del campionamento e si verifica quando pensiamo erroneamente che due cose siano correlate perché non vediamo il quadro completo. In qualità di esperto di machine learning, dovresti avere familiarità con questo paradosso perché può avere un impatto significativo sull’accuratezza dei tuoi modelli predittivi portando a presupposti errati sulla relazione tra le variabili.

  • Basato su BerksonPer fare l’esempio originale, immaginiamo uno studio retrospettivo condotto in un ospedale. In questo ospedale i ricercatori stanno studiando i fattori di rischio della colecistite (una malattia della cistifellea) e uno di questi rischi potrebbe essere il diabete. Poiché i campioni vengono prelevati da una popolazione ospedalizzata piuttosto che dalla popolazione generale, esiste un errore di campionamento e questo può portare all’errata convinzione che il diabete protegga dalla colecistite.
  • Un altro esempio ben noto viene da Jordan Ellenberg. In questo esempio, Alex crea un pool di appuntamenti. Questo gruppo non rappresenta bene tutti gli uomini; abbiamo un bias di campionamento perché sceglie uomini molto amichevoli, attraenti o entrambi. E, nel pool di appuntamenti di Alex, succede qualcosa di interessante… Tra gli uomini con cui esce, sembra che più sono carini, meno sembrano attraenti, e viceversa. Questo bias di campionamento può portare Alex a credere erroneamente che esista un’associazione negativa tra l’essere amichevole e attraente.

Supponiamo di avere due eventi indipendenti, X E Y. Poiché questi eventi sono indipendenti:

Questi eventi casuali possono essere, ad esempio, avere la malattia della colecistite o avere il diabete, come nel primo esempio, oppure essere gentili o belli nel secondo esempio. Naturalmente è importante rendersi conto che quando dico che i due eventi sono indipendenti, mi riferisco all’intera popolazione!

Negli esempi precedenti il ​​bias di campionamento era sempre dello stesso tipo: non vi erano casi in cui non si verificava nessuno dei due eventi. Nei campioni ospedalieri, nessun paziente ha né colecistite né diabete. E nel campione di Alex, nessun uomo è allo stesso tempo ostile e brutto. Siamo, quindi, condizionati alla realizzazione di almeno uno dei due eventi: evento X si è verificato o un evento Y si è verificato, o entrambi. Per rappresentare questo, possiamo definire un nuovo evento, Z, che è l’unione degli eventi X E Y.

E ora possiamo scrivere quanto segue per indicare che siamo nell’ipotesi della distorsione del campionamento:

Questa è la probabilità dell’evento X accade, sapendo che conosciamo quegli eventi X O Y (o entrambi) sono già stati realizzati. Intuitivamente, possiamo sentire che questa probabilità è superiore a P(X) …ma è possibile anche esibirlo formalmente.

Per fare ciò, sappiamo che:

Assumendo che sia possibile che i due eventi non si verifichino contemporaneamente (ad esempio, ci sono persone brutte e ostili), l’affermazione precedente può diventare una disuguaglianza rigorosa; perché l’insieme (X sì) non è lo spazio campionario Ω:

Ora, se dividiamo entrambi i lati di questa rigorosa disuguaglianza per P(X ∪ Y) e poi moltiplicare per P(X)noi abbiamo:

Dove

Pertanto, abbiamo effettivamente questa probabilità in caso di bias di campionamento P(X|Z) è superiore a P(X) nell’intera popolazione:

Ok, va bene… Ma ora torniamo al nostro paradosso di Berkson. Abbiamo due variabili casuali indipendenti, X E Ye vogliamo dimostrare che diventano dipendenti dalla distorsione del campionamento Z descritto sopra.

Per fare ciò, cominciamo con P(X | Y ∩ Z)che è la probabilità di osservare un evento Xdato che conosciamo l’evento Y si è già verificato e che stiamo sottocampionando errori di campionamento Z. Notare che P(X | Y ∩ Z) può anche essere scritto come P(X | Y, Z).

COME (Y ∩ Z) = (Y ∩ (X ∪ Y)) = Y, e come X E Y sono variabili indipendenti, abbiamo:

E… finalmente, saperlo P(X) < P(X | Z)otteniamo ciò che stiamo cercando:

Questa equazione mostra che sotto la distorsione di campionamento definita da Z, i due eventi inizialmente indipendenti, X E Sì, diventare dipendenti (altrimenti avremmo avuto l’uguaglianza anziché “>”).

Torna all’esempio del pool di appuntamenti di Alex, se

  • Z è l’evento in cui si trova nel pool di appuntamenti di Alex
  • X è l’evento in cui viene selezionato un ragazzo amichevole
  • Y è l’evento in cui viene selezionato un ragazzo attraente

Poi (X|Z) è l’evento in cui Alex incontra un uomo simpatico e (X | Y ∩ Z) è l’evento in cui Alex incontra un uomo simpatico dato che è bello. A causa del processo di selezione utilizzato per costruire il pool di appuntamenti di Alex, e a causa del paradosso di Berkson, Alex sentirà che quando incontra ragazzi di bell’aspetto, non saranno così carini, mentre questi potrebbero essere due eventi indipendenti se fossero presi da tutta la popolazione….

Per illustrare il paradosso di Berkson, usiamo due dadi:

  • Evento X: il primo dado mostra un 6.
  • Evento Y: il secondo dado mostra un 1 o un 2.

Questi due eventi sono chiaramente indipendenti, dove P(X)=1/6 E P(Y)=1/3.

Ora introduciamo la nostra condizione (Z), che rappresenta il campionamento distorto escludendo tutti i risultati in cui il primo dado non è sei e il secondo non è né 1 né 2.

Nella nostra condizione di campionamento distorto, dobbiamo calcolare la probabilità che si verifichi l’evento X si verifica, dato che almeno uno degli eventi (X O Y) si è verificato, e questo è indicato da P(X|Z).

Per prima cosa dobbiamo determinare la probabilità di Z = (X ∪ Y)… e scusate, ma da adesso bisognerà fare un po’ di calcoli… lo faccio io per voi…. 🙂

Successivamente, calcoliamo la probabilità di X dato Z:

Per vedere se c’è una dipendenza tra X E Y partendo dal presupposto che Z si verifica, dobbiamo calcolare P(X | Y ∩ Z).

COME

Abbiamo

Per dimostrare il paradosso di Berkson, confrontiamo P(X|Z) con P(X ∣ Y ∩ Z) e abbiamo:

  • P(X | Z) = 0,375
  • P(X |Y ∩ Z) ≈ 0,1666…

Recuperiamo infatti la proprietà che nel paradosso di Berkson, a causa del bias di campionamento Z, abbiamo P(X | Z) > P(X ∣ Y ∩ Z).

Personalmente lo trovo sorprendente! Avevamo due dadi… Due eventi casuali chiaramente indipendenti… e possiamo ottenere l’impressione che i tiri dei dadi diventino dipendenti attraverso un processo di campionamento.

Nel codice seguente, simulerò i tiri di dado con Python.

Il codice seguente simula un milione di esperimenti lanciando due dadi, dove per ciascun esperimento controlla se il primo lancio di dadi è un 6 (evento X) e se il secondo lancio di dadi è un 1 o 2 (evento Y). Quindi memorizza i risultati di questi controlli (Vero o Falso) rispettivamente negli elenchi X e Y.

import random

#Get some observations for random variables X and Y
def sample_X_Y(nb_exp):
X = ()
Y = ()
for i in range(nb_exp):
dice1 = random.randint(1,6)
dice2 = random.randint(1,6)
X.append(dice1 == 6)
Y.append(dice2 in (1,2))
return X, Y

nb_exp=1_000_000
X, Y = sample_X_Y(nb_exp)

Dobbiamo quindi verificare se questi due eventi sono effettivamente indipendenti. Per fare ciò, il codice seguente calcola la probabilità dell’evento X e la probabilità condizionale dell’evento X dato l’evento Y. Lo fa dividendo il numero di risultati positivi per il numero totale di esperimenti per ciascuna probabilità.

# compute P(X=1) and P(X1=1|Y=1) to check if X and Y are independent
p_X = sum(X)/nb_exp
p_X_Y = sum((X(i) for i in range(nb_exp) if Y(i)))/sum(Y)

print("P(X=1) = ", round(p_X,5))
print("P(X=1|Y=1) = ", round(p_X_Y,5))

P(X=1) =  0.16693
P(X=1|Y=1) = 0.16681

Come possiamo vedere, entrambe le probabilità sono vicine; quindi (come previsto 😉 ) o due dadi sono indipendenti.

Ora vediamo cosa succede quando si introduce il bias di campionamento Z. Il codice seguente filtra i risultati degli esperimenti, mantenendo solo quelli in cui X = 1, Y = 1 o entrambi. Memorizza questi risultati filtrati negli elenchi XZ e YZ.

# keep only the observations where X=1, Y=1 or both (remove when X=0 and Y=0)
XZ = ()
YZ = ()
for i in range(nb_exp):
if X(i) or Y(i):
XZ.append(X(i))
YZ.append(Y(i))
nb_obs_Z = len(XZ)

E ora controlliamo se queste nuove variabili sono ancora indipendenti.

# compute P(X=1|Z=1) and P(X1=1|Y=1,Z=1) to check if X|Z and Y|Z are independent
p_X_Z = sum(XZ)/nb_obs_Z
p_X_Y_Z = sum((XZ(i) for i in range(nb_obs_Z) if YZ(i)))/sum(YZ)

print("P(X=1|Z=1) = ", round(p_X_Z,5))
print("P(X=1|Y=1,Z=1) = ", round(p_X_Y_Z,5))

P(X=1|Z=1) =  0.37545
P(X=1|Y=1,Z=1) = 0.16681

Abbiamo una disuguaglianza (gli stessi valori della sezione precedente), il che significa che se Z è vera, allora avere informazioni su Y cambia le probabilità per X; pertanto, non sono più indipendenti.

Non credo che gli esperti di machine learning prestino sufficiente attenzione a questo tipo di pregiudizio. Quando parliamo del paradosso di Berkson, ci addentriamo in un argomento critico per le persone che lavorano nel machine learning. Questa idea riguarda la comprensione di come possiamo essere fuorviati dai dati che utilizziamo. Il paradosso di Berkson ci avverte del pericolo di utilizzare dati distorti o unilaterali.

Sistemi di punteggio del credito: In finanza, i modelli addestrati su dati che presentano candidati con reddito elevato o punteggi di credito elevati, ma raramente entrambi, potrebbero erroneamente dedurre una correlazione negativa tra questi fattori. Ciò rischia di comportare pratiche di prestito sleali favorendo determinati gruppi demografici.

Algoritmi dei social media: Negli algoritmi dei social media, il paradosso di Berkson può emergere quando si addestrano modelli su dati di utenti estremi, come contenuti virali con elevata popolarità ma basso coinvolgimento e contenuti di nicchia con profondo coinvolgimento ma bassa popolarità. Questo campionamento distorto spesso porta alla falsa conclusione che la popolarità e la profondità del coinvolgimento siano correlate negativamente. Di conseguenza, gli algoritmi potrebbero sottovalutare i contenuti che bilanciano popolarità e coinvolgimento moderati, distorcendo il sistema di raccomandazione dei contenuti.

Strumenti di screening dei candidati al lavoro: I modelli di screening basati su candidati con titoli di studio elevati o con una vasta esperienza potrebbero erroneamente suggerire una relazione inversa tra questi attributi, trascurando potenzialmente candidati ben bilanciati.

In ogni scenario, trascurare il paradosso di Berkson può portare a modelli distorti, che influiscono sul processo decisionale e sull’equità. Gli esperti di machine learning devono contrastare questo problema diversificando le fonti di dati e convalidando continuamente i modelli rispetto a scenari del mondo reale.

In conclusione, il paradosso di Berkson è un promemoria fondamentale per i professionisti del machine learning affinché esaminino attentamente le loro fonti di dati ed evitino correlazioni fuorvianti. Comprendendo e tenendo conto di questo paradosso, possiamo costruire modelli più accurati, equi e pratici che riflettono veramente le complessità del mondo reale. Ricorda, la chiave per un machine learning affidabile risiede negli algoritmi sofisticati e nella raccolta e analisi ponderata e completa dei dati.

Ti invitiamo a seguirmi se desideri rimanere aggiornato sulle mie ultime pubblicazioni e aumentare la visibilità di questo blog.

Fonte: towardsdatascience.com

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *