Modelli lineari generalizzati in Python
Ita Cirovic Donev
Data Science Consultant
Esempi:
NON RAGGRUPPATI
RAGGRUPPATI


Esito test: $PASS=1$ o $FAIL=0$
Vogliamo modellare
$P(y=1)=\beta_0 + \beta_1x_1$
$P(\text{Pass})=\beta_0 + \beta_1 \times \text{Ore di studio}$

Esito test: $PASS=1$ o $FAIL=0$
Vogliamo modellare
$P(y=1)=\beta_0 + \beta_1x_1$
$P(\text{Pass})=\beta_0 + \beta_1 \times \text{Ore di studio}$
$f(z) = \frac{1}{(1+\exp(-z))}$
$$ ODDS = \frac{\text{evento che si verifica}}{\text{evento che NON si verifica}} $$
$$ \text{RAPPORTO DI ODDS} = \frac{odds 1}{odds 2} $$
4 partite

Odds 3 a 1

$$ \text{odds} \neq \text{probabilità} $$
$$ \text{odds} = \frac{\text{probabilità}}{1-\text{probabilità}} $$
$$ \text{probabilità} = \frac{\text{odds}}{1+\text{odds}} $$
Passo 1. Modello di probabilità
$E(y)=\mu=P(y=1)=\beta_0 + \beta_1x_1$
Passo 2. Funzione logistica
$f(z) = \large{\frac{1}{(1+\exp(-z))}}$
Passo 3. Applica la funzione logistica $\rightarrow$ INVERSA-LOGIT
$\mu = \large{\frac{1}{1+\exp(-(\beta_0+\beta_1x_1))}} = \large{\frac{\exp(\beta_0+\beta_1x_1)}{1+\exp(\beta_0+\beta_1x_1)}}$
$1-\mu = \large{\frac{1}{1+\exp(\beta_0+\beta_1x_1)}}$
$$ LOGIT(\mu)=log(\frac{\mu}{1-\mu}) = \beta_0+\beta_1x_1 $$
Funzione - glm()
model_GLM = glm(formula = 'y ~ x',
data = my_data,
family = sm.families.Binomial()).fit
Input
y = [0,1,1,0,...]
y = ['No','Sì','Sì',...]
y = ['Fail','Pass','Pass',...]
Modelli lineari generalizzati in Python