Projet réalisé par Ibrahim Zongo - Essentials Batch #10 - Le jeu de donné choisi a été sélectionné sur Kaggle. J’ai choisi ce dataset car j’ai trouvé que ce serait intéressant et utile d’être capable de prédire les personnes qui rembourseront leur crédit, et celles qui ne le feront pas. L’objectif du projet Machine Learning est de prévoir et anticiper les clients à risques.
[Projet de Ibrahim réalisé suite à la formation débutant en Data de Jedha : 40 heures de formation pour devenir comprendre les problématiques, apprendre Python et la gestion de bases de données avec SQL et réaliser son premier projet Data]
Le dataset comporte environ 30 000 observations.
Par le Machine Learning, on effectue le même procédé qui est utilisé dans les banques. le banquier est capable de déterminer si son client sera capable de rembourser son crédit s’il lui accorde un prêt. L’objectif du projet Machine Learning est de prévoir et anticiper les clients à risques.


Algorithme et type d'apprentissage
Pour réaliser la prédiction de données, il faut déterminer le type d’apprentissage à utiliser, l’apprentissage supervisé ou non supervisé. Dans mon projet c’était assez clair car mon jeu de données était composé de données labélisées. La bonne réponse étant donnée, elle est annotée c’est la colonne encadrée en rouge « Default payment next month »Nous avons donc comme valeurs pour cette colonne « 1 » ou « 0 » : « 1 » pour vrai et « 0 » pour faux. J’ai choisi 2 algorithmes pour effectuer de l’apprentissage automatique.


Problématiques du projet
Afin de mener à bien le projet, j’ai listé les principales problématiques.
1) Déterminer le type d’apprentissage à utiliser, en fonction du jeu de données et des résultats que l’on veut obtenir.
2) Nettoyer le jeu de données
3) Séparer le jeu de données
4) Effectuer de nombreux tests
Les solutions
La méthode que j’ai utilisée s’est décomposé de la manière suivante.
1) Sélectionner le type d’apprentissage
2) Utilisation du langage python et sckitlearn
3) Nettoyer son dataset
4) Séparer son jeu de données
5) Effectuer des tests jusqu’à obtenir le résultat escompté Séparation du jeu de données. Le jeu de données est séparé en 2, en training set et testing set. Souvent le jeu de données est séparé avec une proportion de 80% pour le training set et 20% pour les testing test ou 70%/30%. Le training set aura pour objectif entrainer modèles sur ces données ensuite l’on pourra faire une comparaison des résultats obtenues avec les testing set.

Utilisation des K-means
Utilisation des k plus proches voisins avec en paramètre 3 voisins

Utilisation des k plus proches voisins avec en paramètre 12 voisins

On peut constater le score est plus élevé avec en paramètre 12 voisins. L’objectif de la courbe est de déterminer sur l’axe des abscisses de la figure suivante, l’on a le nombre de voisins et l’on peut remarquer que le taux d’erreur est le moins élevés avec 12 voisin. C’est pourquoi j’ai mis 12 en paramètres.

Utilisation de l'arbre de décision
Avec l’utilisation des arbres de décision, je peux observer une net amélioration, elle me parait étrange car elle a un score élevé sur le training set proche des 100% tandis que sur le training set le score avoisine 75%, l’écart est assez conséquent, on parle alors de sur apprentissage.

Avec une profondeur de « 2 » pour l’arbre l’on peut constater un score assez égal entre le training set et testing set. Le score est plus élevé qu’avec l’algorithme des k plus proches voisins sur notre jeu de données.

J’ai ensuite réalisé un graphique grâce à « Dataiku » qui illustre les variables les plus importantes du jeu de données.

J’ainsi pu générer une matrice de confusion, son objectif est de déterminer le nombre de fausse prédictions et des vraies prédictions. Dans le tableau ci-dessous, les vraies prédictions en vert et fausses prédictions en rouge.

Conclusion et perspectives
Il n’y a pas d’algorithme idéal, un algorithme sera performant sur certains types de données et moins efficaces sur d’autres. Le nettoyage du jeu de données constitue une étape très importante car il influe sur les résultats obtenus.
Merci d’avoir lu cet article rédigé par un de nos élèves pour son projet Machine Learning, si vous êtes vous même intéressé par l’apprentissage de la Data Science, n’hésitez pas à consulter notre site.