Apprentissage automatique République du Sénégal Un Peuple-Un But-Une Foi Minist

Apprentissage automatique République du Sénégal Un Peuple-Un But-Une Foi Ministère de l’Enseignement Supérieur de la Recherche et de L’Innovation Université Iba Der Thiam de THIES UFR sciences et Technologie Filière Informatique option Réseaux et Télécommunications Niveau : Master I Projet : Intelligence Artificielle Présenté par : Professeur : Mame Cheikh SYLLA Dr F. KALY Ibra KOUNDOUL Année académique 2020/ 2021 Plan Introduction I. Présentation des outils de travail II. TP 1 : Les k plus proches voisins Classification a. Objectif b. Analyse des données c. Séparation des données en bases d’apprentissage et de test d. Apprentissage et test e. Jouer avec le paramètre k III. TP 2 : La régression linéaire a. Objectif b. Analyse des données c. Séparation des données en bases d’apprentissage et de test Conclusion Introduction L’apprentissage automatique ou machine learning en anglais est un champ d’étude de l’intelligence artificielle qui se fonde sur des approches mathématiques et statistiques pour donner aux ordinateurs la capacité d’apprendre à partir de données, c’est-à-dire d’améliorer leurs performances à résoudre des taches sans être explicitement programmés pour chacune. Plus largement, il concerne la conception, l’analyse, l’optimisation, le développement et l’implémentation de telles méthodes. I. Présentation des outils de travail Dans le cadre de la réalisation de ce LAB nous allons utilise le logicielle Jupiter intégrer sur anaconda IDE comme environnement de développement, python comme langage de programmation qui nous permettra de faire l’analyse des données et leur traitement. a. Python Python est le langage le plus populaire dans le monde de l’intelligence artificielle. C’est un langage orienté objet et se veut relativement facile d’accès. Il est très utilisé au sein de la communauté scientifique et particulièrement dans le domaine de l’intelligence artificielle. Les principaux Framework de machine Learning et Deep Learning sont effectivement disponibles en Python. Python3 b. Anaconda Anaconda est une distribution libre et open source des langages de programmation Python et R appliqué au développement d'applications dédiées à la science des données et à l'apprentissage automatique, qui vise à simplifier la gestion des paquets et de déploiement. Anaconda c. Jupiter Jupiter est une application web utilisée pour programmer différente langages de programmation, dont Python, Julia, Ruby et tant d’autres. C'est un projet communautaire dont l'objectif est de développer des logiciels libres, des formats ouverts et des services pour l'informatique interactive. C’est une évolution du projet Python et permet de réaliser des calepins ou notebooks, c'est-à-dire des programmes contenant à la fois du texte en mark down et du code. Ces calepins sont utilisés en science des données pour explorer et analyser des données. Jupiter II. TP 1 : Les k plus proches voisins Classification a. Objectif L’objectif de ce TP consiste à prédire si l'objet repéré par le sonar est un rocher ou une mine. Il n'y aura donc que deux options possibles nous permettant de classer notre prédiction dans l'une ou l'autre catégorie. Il s'agira donc bien d'un problème de classification. Nous allons utiliser l’algorithme des k-plus proches voisins afin de réaliser notre classification. b. Analyse des données  Renommons les variables avec utilisant la commande names Après le renommage des différentes variables de notre datagramme nous avons l’observation suivante.  Afficher les premières lignes de la base de données Avec la commande Head () on peut afficher les toutes premières ligne de notre data frame.  Combien de classes ? Nous avons deux classes dont la classe R comme ROCHER et M qui représente les objets de type MINE Avec la commande value_counts( ) nous constatons qu’il y’a 111 objet de type Minier(M) et 97 objets de Types Rocher(R)  Combien de caractéristiques descriptives ? De quels types ? Nous avons 61 caractéristiques descriptives Les 60 premier sont de variables qui vont de F1 A F60 et leur type est Float64 La dernière s’appelle OBJET et sont type est objet  Calculer les statistiques de base des variables 2 à 7  Combien d’exemples ? Nous avons 6 exemples  Combien d’exemples de chaque classe ? Classe R=2 exemple et Classe M=4 exemples  Comment sont organisés les exemples ? Les donnes sont organisées comme suit c. Séparation des données en bases d’apprentissage et de test Nous allons commencer à charger les différentes Bibliothèques nécessaires pour la séparation des données de notre data frame d. Apprentissage et test Création du model avec la fonction from sklearn.model_selection import train_test_split qui fonction a l’avantage de randomiser l’ensemble avant de faire le split, ce qui est très important avec la base des Sonars. Ainsi on peut créer notre model Après la création du model nous allons mesurer sa précision du modèle en utilisant la fonction score. Un Second Test Score obtenue en apprentissage 0.915662…… Score obtenue en test ? 0.833333……………. Affichage de la matrice de confusion. e. Jouer avec le paramètre k Observations Lorsqu’on change la valeur du paramètre k a 3 nous avons les scores suivants Au vu de voir le comportement du score lorsqu’on joue sur le paramètre k, nous avons pensé a utilisé une boucle for pour k allant de 1 à 50 calculer le score correspondant et afficher ca sous forme de courbe On peut dire alors que plus la valeur de k (KNeighborsClassifier) est grand plus on perd la précision alors le score devient de plus en plus faible Courbe de k en fonction des scor es . III. TP 2 : La régression linéaire a. Objectif L’objectif de ce travail consiste à déterminer si lors d'un combat, un Pokémon a de grandes chances de gagner. Comme nous disposons de données d'apprentissage, nous sommes donc dans un cas de Machine Learning dit "supervisé". C'est-à-dire que la machine va apprendre en fonction de ce qu'on lui fournit en entrée. Dans ce fait, nous devons prédire le pourcentage de victoire, c'est donc une valeur et c'est naturellement que nous utiliserons l’algorithme de régression que nous avons découverts dans le cours. b. Analyse des données  Afficher les premières observations de la base de données ? Avec la commande Head () on peut afficher les toutes premières ligne de notre data frame.  Combien de caractéristiques descriptives ? De quels types ? Nous avons 17 caractéristiques descriptives Les 16 premier sont de variables de type est Float64 La dernière s’appelle OBJET et sont type est objet  Faire une analyse descriptive des données La commande describe assosier avec les fonction head et value_counts nous a permis de faire l’analyse descriptive des données de notre base.  Comment sont organisés les exemples ? Les donnes sont organisées comme suit  Tracer les box plots de toutes les variables Avec L’outil sns de la bibliothèque soarbon nous avons pu tracer le box plot de chaque variable donner sur l’image ci-dessus Box Plot de l’ensemble des variables de la base  Calculer et tracer la matrice de corrélation des différentes features Nous avons procédé comme suis pour tracer le matrice de corrélations des différentes variables de la base Matrice de corrélation des différentes features c. Séparation des données en bases d’apprentissage et de test Création du model d’apprentissage avec 20% des données pour le test et 80% pour l’Apprentissage Apprentissage et test Une fois notre model créer Il faut maintenant apprendre le modèle. Ensuite il faut l’entrainer sur la base d’apprentissage Quel score obtenez-vous en apprentissage ? Et en test ? Score obtenue en apprentissage 0.9…… Score obtenue en test ? 0.71……………. Tracer le nuage des points entre le pourcentage de victoire mesuré et le pourcentage de victoire estimé aussi bien pour la base d’apprentissage que la base de teste, Nuage des points entre le pourcentage de victoire mesuré et le pourcentage Puis calculer le coefficient de corrélation Conclusion En Résumé cette série de 2 LAB portant sur l’apprentissage automatique sur des données réelles nous a permis de mieux comprendre le concept de datamining et le fonctionnement des algorithmes de Machine Learning présenté dans le cours d’IA. Ce travail nous a permis également de mettre en pratique les compétences Théorique acquise du cours « introduction à l’IA ». uploads/Management/ projet-ia-mamecheikhsylla-ibrakoundoul.pdf

  • 49
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Mar 16, 2022
  • Catégorie Management
  • Langue French
  • Taille du fichier 0.4869MB