Calculer et décrire des prédictions

Modèles linéaires généralisés en Python

Ita Cirovic Donev

Data Science Consultant

Calculer des prédictions

Après l'ajustement du modèle

  1. Valeurs ajustées pour les valeurs $x$ d'origine

Schéma du processus d'ajustement du modèle.

Modèles linéaires généralisés en Python

Calculer des prédictions

Après l'ajustement du modèle

  1. valeurs ajustées pour les valeurs $x$ d'origine

  2. Nouvelles valeurs de $x$ pour des valeurs prédites

Schéma de l'ajustement du modèle et du calcul des prédictions.

Modèles linéaires généralisés en Python

Calculer des prédictions

  • Modèle crabe fer à cheval y ~ weight $$ \mu = \frac{\exp(-3.6947+1.8151 \times weight)}{1+\exp(-3.6947+1.8151 \times weight)} $$

  • Nouvelle mesure : 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 $$

Modèles linéaires généralisés en Python

Prédictions en Python

  • Calculer les prédictions du modèle pour le jeu de données new_data
    # Compute model predictions
    model_GLM.predict(exog = new_data)
    
Modèles linéaires généralisés en Python

Des probabilités aux classes

Séparation de la sortie du modèle selon un seuil de probabilité défini.

Modèles linéaires généralisés en Python

Calculer des classes prédites

# 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)
Modèles linéaires généralisés en Python

Calculer des classes prédites

# Count occurences for each class
crab['pred_class'].value_counts()
1    151
0     22
Seuil $\hat y=1$ $\hat y=0$
$\mu = 0.4$ 151 22
$\mu = 0.5$ 126 47
Modèles linéaires généralisés en Python

Matrice de confusion

Matrice de confusion vide.

Modèles linéaires généralisés en Python

Matrice de confusion - vrais négatifs

Présentation des vrais négatifs dans la matrice de confusion.

Modèles linéaires généralisés en Python

Matrice de confusion - vrais positifs

Présentation des vrais négatifs et des vrais positifs dans la matrice de confusion.

Modèles linéaires généralisés en Python

Matrice de confusion - faux positifs

Présentation des vrais négatifs, des vrais positifs et des faux positifs dans la matrice de confusion.

Modèles linéaires généralisés en Python

Matrice de confusion - faux négatifs

Présentation des vrais négatifs, des vrais positifs, des faux positifs et des faux négatifs dans la matrice de confusion.

Modèles linéaires généralisés en Python

Matrice de confusion en 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
Modèles linéaires généralisés en Python

Passons à la pratique !

Modèles linéaires généralisés en Python

Preparing Video For Download...