Etude comparative entre Knn, Decision Tree et
Rendom Forest
Introduction
L’ensemble de données MNIST est un ensemble de données publiques bien connu qui se compose
de chiffres manuscrits. Il possède un ensemble de formation comportant 60 000 exemples et un ensemble
de tests de 10 000 exemples. A été créé en remixant les échantillons prélevés auprès des employés de
l’American Census Bureau et les lycéens américains. L’ensemble de formation contient 30 000 images
d’employés et 30 000 images d’étudiants tandis que le jeu d’essai contient 5 000 images d’employés et
5 000 des étudiants.
Réduction de dimensionnalité dans MNIST
La base MNIST (Modified National Institute of Standards and Technology database) est
un ensemble de données constitué d'un jeu d'apprentissage de 60.000 chiffres décimaux
manuscrits et d'un jeu de test de 10.000 chiffres de même nature, mais différents de ceux
contenus dans le jeu d'apprentissage. [17]
Figure 23 : Exemples d'images de la base de données de chiffres du MNIST [18]
Les images sources, sélectionnées par Chris Burges et Corinna Cortes, ont été
initialement codées dans des matrices 20 x 20, puis converties en matrices de 28 lignes par
28 colonnes, chaque composante de la matrice étant codée sur un octet (donc avec 256
valeurs possibles, de 0 à 255) et représentant une quantité d'encre donnée, la valeur 0
indiquant qu'il n'y a pas d'encre dans la case (case blanche) et la valeur 255 indiquant que la
case est complètement remplie d'encre (case noire). Les chiffres manuscrits ont été
positionnés dans les matrices de façon à placer leur centre de masse au centre de la matrice.
La suite d'octets constituée par cet ensemble de chiffres manuscrits ne peut pas être
visualisée sans l'aide des outils approprié. (L’interpréteur RPN).
Les quatre fichiers sont disponibles dans le conteneur directement :
- [Link] : images du jeu d’apprentissage (9912422 octets).
- [Link] : étiquettes du jeu d’apprentissage (28881 octets).
- [Link] : images du jeu de tests (1648877 octets).
- [Link] : étiquettes du jeu de tests (4542 octets).
MNIST est un simple jeu de données de vision par ordinateur. Il se compose d'images de
28 x 28 pixels de chiffres manuscrits, tels que : Chaque point de données MNIST, chaque image,
peut être considéré comme un tableau de nombres décrivant le degré d'obscurité de chaque pixel. Par
exemple, nous pourrions penser à 1 comme quelque chose comme :
Figure 24 : La description de 1 dans la base MNIST [20]
Puisque chaque image a 28 par 28 pixels, nous obtenons un tableau de 28x28. Nous
pouvons aplatir chaque tableau en un vecteur dimensionnel 28 ∗ 28 = 784. Chaque
composante du vecteur est une valeur comprise entre zéro et un décrivant l'intensité du pixel.
Ainsi, nous considérons généralement MNIST comme une collection de vecteurs de 784
dimensions.
La raison pour laquelle la réduction de dimensionnalité est utile, est que les données de
plus petite dimension peuvent être traitées plus rapidement. Cette opération est cruciale en
apprentissage automatique par exemple, pour lutter contre le fléau de la dimension.
K-Neighbors Classifier
Comme l'ordinateur portable lui-même ne peut pas prendre en charge l'utilisation des 60 000 échantillons pour
la validation croisée. 10 000 les échantillons sont prélevés à l'aide de StratifiedKFold afin de conserver le
rapport de l'étiquette inchangé dans les données de brassage. La configuration de la validation croisée est dans
ce tableau :
La performance des différents hyper paramètres est illustrée à la Figure ci-dessous :
Score d'hyper paramètres différents pour le classificateur knn
Comme le montre cette figure, alors que n voisins = 1, la formation et la validation ont les performances les
plus élevées, et à mesure que le nombre de n voisins augmente, les performances des deux l'ensemble
d’apprentissage et l'ensemble de validation empirent, ce qui montre que le modèle n'apprend pas.
Donc n voisins = 1 sera l'hyper paramètre sélectionné pour le classificateur k-voisins.
Arbre de décision
Pour l'arbre de décision, seule la profondeur maximale est considérée comme l'hyper
paramètre qui nécessite un réglage.
Dans ce cas, la recherche par grille est appliquée pour parcourir toutes les valeurs
possibles.
La configuration de la validation croisée est dans le tableau :
Table : La configuration de la validation croisée pour l'arbre de décision
La performance des différents hyper paramètres est illustrée à la Figure ci-dessous
Figure : Score de différents hyper paramètres pour le classificateur d'arbre d²e décision.
D'après la figure 4.3, on peut voir que la précision augmente lorsque la profondeur est
inférieure à 10, après quoi la précision de la formation continue d'augmenter tandis que la
précision de la validation diminue, ce qui signifie sur-ajustement. Donc, dans ce cas, le
meilleur hyper-paramètre pour l'arbre de décision sera profondeur max = 10.
Random Forest
Pour Random Forest, les estimateurs n sont considérés comme l'hyper paramètre qui
nécessite un réglage, car les autres hyper paramètres sont identiques à l'arbre de décision.
Dans ce cas la grille.
la recherche est appliquée pour parcourir toutes les valeurs possibles.
La configuration de la validation croisée est dans ce tableau :
La performance des différents hyper paramètres est montrée dans cette figure :
Score de différents hyperparamètres pour le classificateur Random Forest
À partir de cette figure, on peut conclure que la précision de la formation et de la validation augmente à
mesure que le nombre d'estimateurs augmente. Bien qu'après n estimateurs¿40 l'augmentation soit constante
mais la variance ne devient pas plus grande, donc n estimateurs = 100 seront les meilleurs hyperparamètres
pour le classificateur de forêt aléatoire.