Calcolare e descrivere le previsioni

Modelli lineari generalizzati in Python

Ita Cirovic Donev

Data Science Consultant

Calcolare le previsioni

Dopo aver stimato il modello

  1. Valori adattati per gli $x$ originali

Diagramma del processo di stima del modello.

Modelli lineari generalizzati in Python

Calcolare le previsioni

Dopo aver stimato il modello

  1. Valori adattati per gli $x$ originali

  2. Valori nuovi di $x$ per i valori previsti

Diagramma del processo di stima del modello e del calcolo delle previsioni.

Modelli lineari generalizzati in Python

Calcolare le previsioni

  • Modello granchio ferro di cavallo y ~ weight $$ \mu = \frac{\exp(-3.6947+1.8151 \times weight)}{1+\exp(-3.6947+1.8151 \times weight)} $$

  • Nuova misura: weight = 2.85

$$ \mu = \frac{\exp(-3.6947+1.8151 \times \color{blue}{2.85})}{1+\exp(-3.6947+1.8151 \times \color{blue}{2.85})} = 0.814 $$

Modelli lineari generalizzati in Python

Previsioni in Python

  • Calcola le previsioni del modello per il dataset new_data
    # Compute model predictions
    model_GLM.predict(exog = new_data)
    
Modelli lineari generalizzati in Python

Da probabilità a classi

Separazione dell'output del modello dato un cutoff di probabilità.

Modelli lineari generalizzati in Python

Calcolare le classi predette

# Extract fitted probabilities from model
crab['fitted'] = model.fittedvalues.values
# Define cut-off value
cut_off = 0.4
# Compute class predictions
crab['pred_class'] = np.where(crab['fitted'] > cut_off, 1, 0)
Modelli lineari generalizzati in Python

Calcolare le classi predette

# Count occurences for each class
crab['pred_class'].value_counts()
1    151
0     22
Cut-off $\hat y=1$ $\hat y=0$
$\mu = 0.4$ 151 22
$\mu = 0.5$ 126 47
Modelli lineari generalizzati in Python

Matrice di confusione

Matrice di confusione vuota.

Modelli lineari generalizzati in Python

Matrice di confusione - Veri negativi

Presentazione dei veri negativi nella matrice di confusione.

Modelli lineari generalizzati in Python

Matrice di confusione - Veri positivi

Presentazione dei veri negativi e veri positivi nella matrice di confusione.

Modelli lineari generalizzati in Python

Matrice di confusione - Falsi positivi

Presentazione di veri negativi, veri positivi e falsi positivi nella matrice di confusione.

Modelli lineari generalizzati in Python

Matrice di confusione - Falsi negativi

Presentazione di veri negativi, veri positivi, falsi positivi e falsi negativi nella matrice di confusione.

Modelli lineari generalizzati in Python

Matrice di confusione in Python

print(pd.crosstab(y_actual, y_predicted, 
            rownames=['Actual'], colnames=['Predicted'], 
            margins = True))
Predicted   0    1  All
Actual                 
0          15   47   62
1           7  104  111
All        22  151  173
Modelli lineari generalizzati in Python

Passiamo alla pratica!

Modelli lineari generalizzati in Python

Preparing Video For Download...