Calcularea și descrierea predicțiilor

Modele Liniare Generalizate în Python

Ita Cirovic Donev

Data Science Consultant

Calcularea predicțiilor

După ajustarea modelului

  1. Valori ajustate pentru valorile originale $x$

Diagrama procesului de ajustare a modelului.

Modele Liniare Generalizate în Python

Calcularea predicțiilor

După ajustarea modelului

  1. Valori ajustate pentru valorile originale $x$

  2. Valori noi ale $x$ pentru valori prezise

Diagrama procesului de ajustare a modelului și calcularea predicțiilor.

Modele Liniare Generalizate în Python

Calcularea predicțiilor

  • Modelul pentru crabul potcoavă y ~ weight $$ \mu = \frac{\exp(-3.6947+1.8151 \times weight)}{1+\exp(-3.6947+1.8151 \times weight)} $$

  • Măsurătoare nouă: 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 $$

Modele Liniare Generalizate în Python

Predicții în Python

  • Calcularea predicțiilor modelului pentru setul new_data
    # Compute model predictions
    model_GLM.predict(exog = new_data)
    
Modele Liniare Generalizate în Python

De la probabilități la clase

Separarea rezultatelor modelului în funcție de pragul de probabilitate definit.

Modele Liniare Generalizate în Python

Calcularea predicțiilor de clasă

# 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)
Modele Liniare Generalizate în Python

Calcularea predicțiilor de clasă

# 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
Modele Liniare Generalizate în Python

Matricea de confuzie

Matrice de confuzie goală.

Modele Liniare Generalizate în Python

Matricea de confuzie - True Negatives

Prezentarea negativelor adevărate în matricea de confuzie.

Modele Liniare Generalizate în Python

Matricea de confuzie - True Positives

Prezentarea negativelor și pozitivelor adevărate în matricea de confuzie.

Modele Liniare Generalizate în Python

Matricea de confuzie - False Positives

Prezentarea negativelor adevărate, pozitivelor adevărate și falselor pozitive în matricea de confuzie.

Modele Liniare Generalizate în Python

Matricea de confuzie - False Negatives

Prezentarea negativelor adevărate, pozitivelor adevărate, falselor pozitive și falselor negative în matricea de confuzie.

Modele Liniare Generalizate în Python

Matricea de confuzie în 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
Modele Liniare Generalizate în Python

Să exersăm!

Modele Liniare Generalizate în Python

Preparing Video For Download...