## Confusion Matrix and Statistics
##
## Reference
## Prediction 0 1
## 0 779 180
## 1 57 363
##
## Accuracy : 0.8281
## 95% CI : (0.8072, 0.8477)
## No Information Rate : 0.6062
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.6251
## Mcnemar's Test P-Value : 2.286e-15
##
## Sensitivity : 0.9318
## Specificity : 0.6685
## Pos Pred Value : 0.8123
## Neg Pred Value : 0.8643
## Prevalence : 0.6062
## Detection Rate : 0.5649
## Detection Prevalence : 0.6954
## Balanced Accuracy : 0.8002
##
## 'Positive' Class : 0
##
Prédiction des résultats en terme de probabilité
## 0 1
## 1 0.33838384 0.6616162
## 2 0.06049822 0.9395018
## 3 0.06049822 0.9395018
## 4 0.06049822 0.9395018
## 5 0.06049822 0.9395018
## 6 0.17021277 0.8297872
Visualisation interactive
## Confusion Matrix and Statistics
##
## Reference
## Prediction 0 1
## 0 775 148
## 1 61 395
##
## Accuracy : 0.8484
## 95% CI : (0.8284, 0.867)
## No Information Rate : 0.6062
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.6734
## Mcnemar's Test P-Value : 2.702e-09
##
## Sensitivity : 0.9270
## Specificity : 0.7274
## Pos Pred Value : 0.8397
## Neg Pred Value : 0.8662
## Prevalence : 0.6062
## Detection Rate : 0.5620
## Detection Prevalence : 0.6693
## Balanced Accuracy : 0.8272
##
## 'Positive' Class : 0
##
##
## Call:
## glm(formula = class ~ ., family = binomial(link = "logit"), data = a)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -4.8887 -0.6883 -0.5739 0.6667 1.9673
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -1.72035 0.06665 -25.810 < 2e-16 ***
## ind_1 0.78617 0.14046 5.597 2.18e-08 ***
## ind_2 -0.04664 0.04581 -1.018 0.308561
## ind_3 0.58540 0.08456 6.923 4.43e-12 ***
## ind_4 1.90852 1.00260 1.904 0.056965 .
## ind_5 0.70931 0.07864 9.020 < 2e-16 ***
## ind_6 1.11693 0.16949 6.590 4.40e-11 ***
## ind_7 4.34180 0.36559 11.876 < 2e-16 ***
## ind_8 1.81592 0.20319 8.937 < 2e-16 ***
## ind_9 1.83464 0.20075 9.139 < 2e-16 ***
## ind_10 0.23172 0.06863 3.377 0.000734 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 4321.2 on 3221 degrees of freedom
## Residual deviance: 3093.2 on 3211 degrees of freedom
## AIC: 3115.2
##
## Number of Fisher Scoring iterations: 9
La régression logistique n’est pas un algorithme de classification à proprement parler. Il s’agit de la régression de la probabilité. Pour utiliser le résultat de régression, on doit choisir un seuil pour avoir les prédictions.
## Confusion Matrix and Statistics
##
## Reference
## Prediction 0 1
## 0 771 208
## 1 65 335
##
## Accuracy : 0.802
## 95% CI : (0.78, 0.8228)
## No Information Rate : 0.6062
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.5653
## Mcnemar's Test P-Value : < 2.2e-16
##
## Sensitivity : 0.9222
## Specificity : 0.6169
## Pos Pred Value : 0.7875
## Neg Pred Value : 0.8375
## Prevalence : 0.6062
## Detection Rate : 0.5591
## Detection Prevalence : 0.7099
## Balanced Accuracy : 0.7696
##
## 'Positive' Class : 0
##
On peut normaliser les valeurs à l’aide la fonction suivante :
Ainsi toutes les variables prennent des valeurs entre 0 à 1 :
Pour tester l’algorithme, on répartit les données en deux bases : base d’apprentissage et base de test.
On peut faire la prédiction des classes de la base de test à l’aide la fonction knn
du package class
. On peut choisir dans un premier temps k=5
.
ou utiliser la fonction confusionMatrix
qui permet de calculer automatiquement certains caractéristiques :