Vous êtes sur la page 1sur 22

Rapport du stage d’Eté

Présenté à

L’institut supérieur d’informatique et de multimédia de Sfax


Effectué à

Maison du Nabeul
Par

Belaazi Nada

Licence Fondamentale
Spécialité :

Informatique et Multimédia
Sommaire
Chapitre I : Cadre générale du projet 4
Introduction 5
Présentation de l’entreprise 5
Présentation du sujet 6
1. Contexte 6
2. L’objectif 6
Chapitre II : Etat de l’art 7

I. Environnement de travail, les outils utilisés : 8

1. R Langage 8

2. R Studio 8

II. Notion de base : 8

1. La science des données « Data-science»  8

2. L’exploration des données «Data-Mining» 9

3. L’apprentissage automatique «Machine Learning» 9

4. L’apprentissage en profondeur «Deep Learning» 10

5. IA 10

Chapitre III : Modélisation 11

I. Analyse 12

1 .Dataset 12

2. Variable dépendante 14

3. Variable indépendante 14

4. Algorithme K-NN 14

II. Description des taches 14

1. Encoding the target feature as factor 14

2. Spliting the dataset into the Training set and Test set  15

3. Feature Scaling: 16

4. Visualisation test set and training set avec l’algorithme k-NN: 17

III Conclusion : 19

2
Liste des figures :
Figure 1 : Data-science 9
Figure 2 : Data-Mining  9
Figure 3 : Machine Learning 10
Figure 4 : Code dataset 13
Figure 5 : Dataset 14
Figure 6 : Training set 15
Figure 7: Test set 16
Figure 8 : Feature Scaling training set 17
Figure 9 : Feature test set 17
Figure 10 : Visualisation training set 18
Figure 11 : Visualisation test set 18
Figure 12 : visualisation training set (decision tree) 19
Figure 13 : Visualisation test set(decision tree) 19

3
Remerciement
Je tiens à remercier toutes les personnes qui ont contribué au succès de mon stage et qui
m'ont aidé lors de la rédaction de ce rapport.

Je tiens à remercier vivement mon maitre de stage, Mr Houcem Rezgi pour son accueil, le
temps passé ensemble et le partage de son expertise au quotidien. Grâce aussi à sa
confiance j'ai pu m'accomplir totalement dans mes missions. Il fut d'une aide précieuse
dans les moments les plus délicats.

Introduction générale :
L’apprentissage automatique est un sous-domaine de l’intelligence artificielle (IA). En
générale, On a l’impression de comprendre automatiquement la structure et l’intégration
dans les modèles qui peuvent être compris et utilisé par tout le monde.

Bien que l’apprentissage soit automatiquement soit un domaine de l’informatique, il diffère


des approches informatiques traditionnelles. En fait, les algorithmes sont des ensembles
d’instruction explicite utilisée par les ordinateurs pour calculer ou résoudre les problèmes.

Les algorithmes d’apprentissage automatique ont été mémorisés et analysés pour produire
des valeurs qui se situent dans une plage spécifique.

Ce rapport est composé de trois chapitres. Dans le premier chapitre nous présentons le
cadre générale du projet. Le second chapitre comporte une description des différents outils
qui peuvent être utilisé pour résoudre le problème de classification et quelque Notion de
base ... Et enfin, dans le dernier chapitre, nous présentons les étapes de nos démarches qui
résoudre le problème.

4
Chapitre I : Cadre générale du projet

5
Introduction : Ce chapitre introductif est consacré à la présentation de l’organisme
d’accueil ainsi que le cadre général du projet. Nous exposons, dans un premier temps, la
société Maison du web. Nous présentons par la suite les objectifs de notre travail.

Présentation de l’entreprise :
Maison de web est une société créée en mars 2012, la société Maison du Web est une
agence de communication tunisienne sise à Nabeul. Elle est spécialisée dans le
développement informatique orienté Web. La société est composée principalement de trois
services :

 Web pour la création et l’audit des sites Web,


 Marketing digital pour le référencement naturel, le Google AdWord, Facebook et
l’Emailing.
 Ingénierie des données

Présentation de sujet

Contexte : Ce projet consiste à classifier les acheteurs d’un produit selon deux axes
(salaire estimé et âge d’acheteur) en vue de résulter le public cible

L’objectif : Mise en pratique de l'une des méthodes d’apprentissage par Machine


Learning pour un problème de classification.

6
Chapitre II : État de l'art

7
I. Environnement de travail, les outils utilisés :

1. R langage :
  R est un langage de programmation et un logiciel libre destiné aux statistiques et à la
science des données soutenu par la R Foundation for Statistical Computing. R fait partie de
la liste des paquets GNU et est écrit en C, Fortran et R.

Le langage R est largement utilisé par les statisticiens, les data miners, data scientists
pour le développement de logiciels statistiques et l’analyse des données.

2. R studio :
RStudio est un environnement de développement gratuit, libre et multiplateforme pour R,
un langage de programmation utilisé pour le traitement de données et l’analyse statistique.
Il est disponible sous la licence libre AGPLv3, ou bien sous une licence commerciale,
soumise à un abonnement annuel.
RStudio est disponible en deux versions : RStudio Desktop, pour une exécution locale du
logiciel comme tout autre application, et RStudio Server qui, lancé sur un serveur Linux,
permet d'accéder à RStudio par un navigateur web.
La science des données est un "concept pour unifier les statistiques, l'analyse des données,
l'apprentissage automatique et les méthodes associées" afin de "comprendre et analyser les
phénomènes réels" avec des données. Il utilise des techniques et des théories issues de
nombreux domaines dans les domaines des mathématiques, de la statistique, de la science
de l'information et de l'informatique.

II. Notion de base 

1. La science des données «  Data-science » :

8
La science des données « Data-science » est un concept pour unifier les statistiques,
l'analyse des données, l'apprentissage automatique et les méthodes associées afin de
comprendre et analyser les phénomènes réels avec des données. Il utilise des techniques et
des théories issues de nombreux domaines dans les domaines des mathématiques, de la
statistique, de la science de l'information et de l'informatique.

Figure 1: Data-science

2. L’exploration des données « Data-Mining » :

L'exploration des données « Data-Mining » est le processus de découverte de modèles dans


de grands ensembles de données impliquant des méthodes situées à l'intersection de
l'apprentissage automatique, des statistiques et des systèmes de base de données.

Figure 2: Data-Mining

3. L’apprentissage automatique « Machine Learning » :

L’apprentissage automatique  « machine Learning en anglais » regroupe l’ensemble des


méthodes et algorithmes basées sur l’accumulation de données et leur analyse statistique,
afin d’en inférer de nouvelles et de guider les décisions prises par le logiciel.

9
Figure 3 : Machine Learning

Le principe :

Il s’agit d’améliorer la performance P d’une machine à réaliser la tâche T en utilisant un


ensemble d’exercices E.

Exemple: Jeu de dames

E = L’expérience de jouer à beaucoup de jeux de dames.

T = La tâche de jeu de dames.

P = La probabilité que le programme gagnera le jeu suivant.

4. l’apprentissage en profondeur  « Deep Learning » :

L’apprentissage en profondeur « Deep Learning » fait partie d’une famille de méthodes


d’apprentissage automatique fondées sur l’apprentissage de représentations de données, par
opposition à des algorithmes spécifiques à une tâche. L'apprentissage peut être supervisé,
semi-supervisé ou non supervisé

5. L’intelligence artificielle :

L'intelligence artificielle (IA) est l'ensemble des théories et des techniques mises en


œuvre en vue de réaliser des machines capables de simuler l'intelligence »1. Elle
correspond donc à un ensemble de concepts et de technologies plus qu'à une discipline
autonome constituée.

Ainsi, l’intelligence artificielle est une chose qui fait un lien entre des données d’entrée et
de sortie. (Je lui donne du rouge et l’intelligence artificielle me rend du bleu par exemple.)

10
Chapitre III : Modélisation

11
I. Analyse :

1. Dataset :
Data est présent dans le fichier Data.csv dans le dossier ou le répertoire de travail en cours
(utilisez la commande setwd ("Emplacement actuel du Data.csv") pour définir le répertoire
de travail sur le répertoire en cours.)

*Import Dataset :

12
Figure 4 : code dataset

13
Figure 5 : Dataset

2. Variable dépendante :
*Salaire : variable continue qui exprime le salaire d'un employé.
*Age : variable continue qui exprime l’âge d’un employé.
*Purchased : variable continue qui exprime acheté de client.

3. Variable indépendante :
*Salaire : variable continue qui exprime le salaire d'un employé.
*Age : variable continue qui exprime l’âge d’un employé.
*Purchased: variable continue qui exprime acheté de client.

4. algorithme k-NN :
La méthode d’apprentissage utiliser pour résoudre le problème de classification est :
méthode des k plus proches voisins « K-NN » est une méthode d’apprentissage supervisé.

Alors comment l'utiliser ??


1. Choisissez le nombre k de voisins
2. Prendre le k voisin le plus proche du nouveau point de données, en fonction de la
distance euclidienne 
3. Parmi ces k voisins, calculez le nombre de points de données dans chaque catégorie
4. Assignez le nouveau point de données à la catégorie où vous avez compté le plus
de voisins

II. Description des taches :


1. Encoding the target feature as factor

14
Les données catégoriques sont des données non numériques qui appartiennent à un
ensemble spécifique de catégories.
Par défaut, la fonction read.csv () dans R rend toutes les variables de chaîne sous forme de
variables catégorielles (facteur), mais supposons qu'il existe une colonne de nom dans
l'ensemble de données. Dans ce cas, nous n'en avons pas besoin en tant que variables
catégoriques. Donc on créer des variables spécifiques en tant que variables factorielles.

2. Spliting the dataset into the Training set and Test set :

Lorsque « dataset » est présenté pour effectuer des tâches d'apprentissage


automatique, nous avons besoin de certaines données dans le cadre de la formation et
de tester le modèle une fois l'étape d'apprentissage terminée.

« Training set »peut être sélectionné en appliquant un filtre aléatoire aux données,


par exemple en sélectionnant 20% des points au hasard pour générer le modèle et
tester par rapport aux 80% restants.
SplitRatio est le rapport entre l’entraînement et le test, il est généralement réglé à
80:20 pour l’entraînement et le test.

sample.split () méthode prend la colonne et calcule un tableau numérique avec


« true » et  « false » dans des emplacements aléatoires et avec le taux de division
donné.

La méthode subset () prend l'ensemble de données et le sous-ensemble en fonction de


la condition.

Figure6 : training set

15
Figure 7: test set

3. Feature Scaling:

La mise à l'échelle des fonctionnalités est nécessaire lorsque différentes fonctionnalités ont
des plages différentes, par exemple Age et Salaire

Ils ont des plages très différentes, mais lorsque nous formons un modèle, qui essaie
fondamentalement d’ajuster une ligne (en régression linéaire)

16
Figure 8 : training set

Figure 9: test set

4. Visualisation test set and training set avec l’algorithme k-NN:

17
Figure 10: k-NN (training set)
Plot description:

*Le classificateur prédit que la région rouge est "Ne pas acheter"
*Le classificateur prédit que la région verte est "Acheter"
*Les points rouges sont ceux qui n'ont pas acheté
*Les points verts sont ceux qui ont réellement acheté.
*La ligne est la limite de prédiction.

Maintenant, nous voyons le résultat de “test set”:

Figure 11: k-NN (test set)

Remarque :

On remarque les deux modèles (training set, test set) similaires, donc notre modèle a
probablement capturé la chimie et la physique essentielle du problème.

III. Conclusion :
Il existe d’autres méthodes d’apprentissages supervisé comme :
*Boosting
*Mélanges de lois
*Réseau de neurones

18
*arbre de décision
Dans cette partie, on va faire une comparaison entre deux algorithmes « k-NN » et
« decision_tree » et va voir celle qui donne des résultats meilleur pour la résolution
de problème de classification

Maintenant, nous voyons le résultat de “test set”:

On remarque les deux modèles (training set, test set) ne pas similaires.
En a constater en étudiant les deux algorithmes que le k-NN donne le meilleur résultat
suite a une série de tests.

19
20
21
22

Vous aimerez peut-être aussi