La classification des Emails utilisant le modèle MapReduce
1. Etat de l’art
La Classification des emails
utilisant le modèle MapReduce
Présenter par:
- MEGHERBI Nour El Houda
Département D’informatique
Master2 – WIC
2014-2015
Sidi Bel Abbes
2. Plan de travail
1 - Introduction
2 - Notion de bases
• 2.1.La fouille de données
• 2.2.La fouille de textes
3 - La classification de textes
• 3.1.Les algorithmes d’apprentissage
• 3.1.1.Les techniques de la classification automatique
4 - Le courrier électronique
5 - Le modèle MapReduce
6 - Les approches
7 - Tableau comparatif des différentes approches
8 - Conclusion
9 - Références bibliographiques
2
3. 1- Introduction
Avec le développement rapide de l'Internet et de la technologie
informatique, la quantité de données électroniques est en croissance
exponentielle.
Cette grandes quantité de données est devenu un saillant problème
devrait être résolu. La catégorisation de texte a été une application très
populaire de l'apprentissage automatique dans le passé décennie.
De nombreux algorithmes parallèles sont implémentés en utilisant
différentes techniques de parallélisation comme le MapReduce.
3
4. 2 - Notion de bases
2.1 Fouille de Donnée (Data Mining)
Le DM est un processus inductif, itératif et interactif de découverte dans les Bases de Données larges, de
modèles de données valides, nouveaux, utiles et compréhensibles.
Itératif : nécessite plusieurs passes.
Interactif : l’utilisateur est dans la boucle du processus.
Valides : valables dans le futur.
Nouveaux: non prévisibles.
Utiles : permettent à l’utilisateur de prendre des décisions.
Compréhensibles: présentation simple.
L’objectif du DM: l’extraction automatique de connaissances à partir de données structurées.
4
5. 2.2 Fouille de Texte (Text Mining)
Est une technique permettant d’automatiser le traitement de gros volumes de contenus texte pour
en extraire les principales tendances et répertorier de manière statistique les différents sujets
évoqués.
Les techniques de text mining sont surtout utilisées pour des données déjà disponibles au format
numérique. Sur Internet, le text mining peut être utilisé pour analyser le contenu des e-mails
entrants ou les propos tenus sur des forums et médias sociaux.
Donc le Text mining: « Traitement automatique d’une base de
données composée exclusivement de texte. »
5
6. 3 - La classification de textes
La classification de textes consiste à séparer des documents textuels en
plusieurs catégories distinctes, selon leur contenu.
Chaque catégorie regroupe donc des documents au contenu similaire.
Le but principal de cette tâche est d’avoir une représentation sommaire du sujet
de chaque document afin de pouvoir rapidement et facilement identifier les
documents connexes à un certain sujet.
6
7. 3.1 Les algorithmes d’apprentissage
3.1.1 Les Techniques de la classification automatique
Apprentissage automatique
A. Supervisé
A. Non
Supervisé
7
Partitionnement
s
Algo de
classification
hiérarchique
- Il existe plusieurs algo
d’App supervisé
Les plus connus parmi eux,
il s’agit de kNN, les réseaux
de neurones et Naïve
Bayes…
8. 8
- Apprentissage non supervisé -
- L'algorithme des k-moyennes (ou K-means en anglais) est un algorithme de partitionnement de
données relevant des statistiques et de l'apprentissage automatique (plus précisément de
l'apprentissage non supervisé).
- C'est une méthode dont le but est de diviser des observations en K partitions (clusters) dans
lesquelles chaque observation appartient à la partition avec la moyenne la plus proche.
- La classification hiérarchique:
il existe deux types de classification hiérarchique :
- Ascendante
- Descendent.
9. 9
- Apprentissage supervisé -
Il existe plusieurs algorithmes d’apprentissage supervisé.
· kNN : (k nearest neighbor), Il est de type LAZY.
La méthode de k plus proche voisin consiste a déterminer pour chaque nouvel individu que l’on veut
classer, la liste des k plus proches voisins parmi les individus déjà classer.
L’individu est affecté a la classe qui contient le plus proche d’individu parmi ces k plus proches voisins.
Cette méthode nécessite de choisir une distance ( euclidienne ou de Manhattan), et le nombre k de
voisins a prendre en compte.
· NB (Naïve Bayes) : - Modélisation statistique.
- Un algorithme simple et plus efficace.
- Tous les attributs contribuent de façon équitables et indépendantes.
- P(B|A) = P(B|A) P(A) / P(B)
- calcule la probabilité d'une classe, sur la base de la distribution des mots du document.
10. 10
- Apprentissage supervisé -
· Les réseaux de neurones :
Un réseau de neurones (ou Artificial Neural Network en anglais) est un modèle de calcul dont la
conception est très schématiquement inspiré du fonctionnement de vrais neurones(humains ou non).
yk = f(wk1x1 + wk2x2 + ……. + wknxn + bk)
11. 11
- Apprentissage supervisé -
• Machines à support vectoriel :
•Introduite par Vladimir Vapnik en 1995
•Capacité à traiter des données de grande dimensionnalité
•Principe:
Sortie:Entrée:
(Xi; Yi)
Pour n > 2
Pour n = 2
12. 4 - Le courrier électronique
Le “courrier électronique”, plus connu sous le nom d'email, est une des
formes de communication les plus utilisées aujourd'hui.
il est possible de classer les messages selon les aspects suivants:
- Type de message
- Type de suivi
- Contenu du message
- Ton du message
12
13. 5- Le modèle MapReduce
5.1 Introduction
5.1.1.Qu’est-ce que c’est ?
- Un Framework de traitement distribué sur de gros volumes de données.
- Un modèle de programmation parallèle conçu pour la scalabilité et la tolérance
aux pannes.
5.1.2.Qui utilise MapReduce ?:
- :
* Construction des Index pour Google Search
* Regroupement des articles pour Google News
- :
* Alimenter Yahoo! Search avec “Web map”
• Détection de Spam pour Yahoo! Mail
- l’utilise à des fins de Data Mining
13
14. 5.2 MapReduce,
pour quelle problématique ?
Souvent lors de la manipulation des données, effectuant les mêmes opérations, à
savoir :
Itérer sur un grand nombre d’enregistrements
Extraire quelque chose ayant un intérêt de chacun de ces enregistrements
Regrouper et trier les résultats intermédiaires
Agréger tous ces résultats ensemble
Générer le résultat final
14
15. 5.3 - L’Algorithme MapReduce(Modèle de
programmation)
5.3.1.Fonction globale de MapReduce:
15
16. 5.3.2.Modèle de programmation :
Map
- Prend en entrée un ensemble de « Clé,
Valeurs »
- Retourne une liste intermédiaire de « Clé1,
Valeur1 »
- Map( key, value ) list(key1,value1)
Reduce
- Prend en entrée une liste intermédiaire de «
Clé1, Valeur1 »
- Fournit en sortie un ensemble de « Clé1,
Valeur2 »
- reduce(key1, list(value1)) value2
16
17. 5.3.3.Le ‘Maître” MapReduce (Master) :
- Coordonne l’exécution des “unités de travail” (Workers)
- Attribue aux unités de travail les tâches “map” et “reduce”
- Gère la distribution des données
- Déplace les ‘workers’ vers les données
- Gère la synchronisation
- Regroupe, trie, et réorganise les données intermédiaires
- Détecte les défaillances des unités de travail et relance la tâche
17
18. 18
5.3.4.Structure de données du ‘Worker’ :
- Un ‘Worker’ est une “unité de travail” qui possède trois états :
18
Worker
Idle: indique qu’un worker
est disponible pour une
nouvelle planification
Completed: indique la fin d’un
traitement, le worker informe
le Master de la taille, de la
localisation des ses fichiers
intermédiaires
In-progress indique qu'un
traitement est en cours
- Les ‘reducers’ sont
informés des états des
workers par le Master
20. 5.4 - Avantages et Inconvénients :
Avantages Inconvénients
- Fourni une abstraction totale des mécanismes
de parallélisassions sous-jacents
- Peu de tests sont nécessaires. Les librairies
MapReduce ont déjà étaient testées et
fonctionnent correctement
- L’utilisateur se concentre sur son propre code
- Largement utilisé dans les environnements de
Cloud Computing
- Une seule entrée pour les données
- Deux primitives de haut-niveau seulement
- Le flux de données en deux étapes le rend très
rigide
- Le système de fichiers distribués (HDFS)
possède une bande passante limitée en entrée /
sortie
- Les opérations de tris limitent les
performances du Framework (implémentation
Hadoop)
20
21. 5.5 Les différentes implémentations de
MapReduce
Hadoop (Yahoo) constitue un modèle équivalent et étendu
DryadLinQ (Microsoft) est une approche un peu plus générique
MapReduce-Merge qui étend le Framework (modèle) avec la possibilité de fusionner des
résultats
…
21
22. 5.6 Conclusion
MapReduce est un modèle de programmation facile d’utilisation Il est robuste et
permet de traiter de très gros volume de données.
A été mis dans le domaine public avec l’implémentation Hadoop de Yahoo.
Plusieurs projets universitaires ont permis de l’améliorer
22
23. 6 – Les approches
6.1 Les approches de classification des emails basé sur
apprentissage automatique:
K-NN
Séquentiel SMO
Neural Network
NB
SVM
Arbre de décision
23
24. 6.2 Les approches basé sur les algorithmes
parallèles:
C4.5
K-NN
parallèle NB
PSMR
PAM
SVM
24
25. 7 - Le tableau comparatif des différentes
approches
25
26. 8 - Conclusion
Pour un développeur, il est difficile de traiter de grandes volumes de
données, et de paralléliser et distribuer des traitements.
Le text mining (fouille de texte) et la classification automatique deviennent
des technologies pivots pour structurer les big data et leur donner du
sens, concevoir de nouveaux services documentaires, produire des
connaissances nouvelles ou fournir des outils d’aide à la décision.
Le MapReduce est un modèle de programmation facile d’utilisation, Il est
robuste et permet de traiter de très gros volume de données
Donc, ce modèle nous aide à faire une bonne classification des
textes en générale et des emails en spécial.
26
27. 9 – Références bibliographiques
R.BENKHELIFA, S.GAGUI.(Juin 2013)Fouille de données d’opinion. UKM Ouargla. Université Kasdi Merbah –
Ouargla(Consulter le 01/11/ 2014.)
P. Habermehl,D. Kesner.(2014)Programmation Logique et IA.Consulter le 17/11/ 2014).
K.Tannir. (8 May 2011)in Algorithmes, MapReduce. Disponible sur:
http://blog.khaledtannir.net/2011/05/mapreduce/#.VMUAykeG9pt(Consulter le 01/12/ 2014)
F.X. Jollois.(1 décembre 2014) Paradigme MapReduce et algorithme EM. Paris, Séminaire équipe Fouille de données,
LIPADE, 7 p.(Consulter le 01/12/ 2014.)
P. Zhou et al. (2011)/Journal of Computational Information Systems 7:16 (Consulter le 02/12/2014 à 18:16)
Généralités sur HDFS et MapReduce[tutoriel En ligne]. Disponible sur:
http://mbaron.developpez.com/tutoriels/bigdata/hadoop/introduction-hdfs-map-reduce/#LIV-B.(Consulter le 21/12/2014).
Y.Hanane, M.zeggane.(2009) Algorithmes d'apprentissage pour la classification de documents.Université de
Mostaganéme,Algérie(Consulter le 22/12/ 2014).
E-G. Talbi.Laboratoire d’Informatique Fondamentale de Lille(Consulter le 21/12/ 2014).
Ke Xu,Cui Wen, Qiong Yuan, et al. (JUNE 2014 ). JOURNAL OF NETWORKS, VOL. 9, NO. 6. A MapReduce based
Parallel SVM for Email Classification(Consulter le 21/12/2014).
Gong-Qing Wu1, Hai-Guang Li. et al. (2009) C4.5 Ensemble Classification with MapReduce University of Vermont
Burlington, U.S.A. (Consulter le 22/12/ 2014)
F.Andrew (Nov 2004) Investigation of Support Vector Machines for Email Classification Monash University (Consulter le
22/12/ 2014)
27
28. Chi Zhang, Feifei Li, Jeffrey Jestes, (2012). Efficient Parallel kNN Joins for Large Data in MapReduce.
Berlin, Germany.(Consulter le 22/12/ 2014)
Konstantin Tretyakov, (May 2004). Institute of Computer Science, University of Tartu. Machine
Learning Techniques in Spam Filtering.(Consulter le 23/12/ 2014)
Wei Lu Yanyan Shen Su Chen Beng Chin Ooi. Efficient Processing of k Nearest Neighbor Joins using
MapReduce.National University of Singapore.(Consulter le 23/12/ 2014)
Amol G. Kakade et al,(2013), International Journal of Computer Science and Mobile Computing Vol.2
Issue. 11, November- 2013,India. pg. 91-98. (Consulter le 23/12/ 2014)
Sergei Laada.(2014). Suitability of the Spark framework for data classification TARTU 2014.
(Consulter le 23/12/ 2014)
Lijuan Zhou, Hui Wang, Wenbo Wang.(Sep 2012). Parallel Implementation of Classification Algorithms
Based on Cloud Computing Environment. Beijing, China,(Consulter le 23/12/ 2014).
JI Yudian, WANG Yuxi, and XU Diwen(Avril 2014).Distributed Learning Algorithms on
MapReduce,(Consulter le 23/12/ 2014).
Jahnke, Glenn, "MRCRAIG: MapReduce and Ensemble Classifiers for Parallelizing Data Classification
Problems" (2009).Master's Projects. Paper 143.(Consulter le 23/12/ 2014).
Jimmy Lin and Chris Dyer (April 2010)Data-Intensive Text Processing with MapReduce. University of
Maryland, College ParkManuscript prepared,(Consulter le 23/12/ 2014).
Cloudera, Inc. (2009)MapReduce Algorithms,(Consulter le 23/12/ 2014).
Karthika Renuka Dhanaraj, Visalakshi Palaniswami. Firefly and BAYES Classifier for Email Spam
Classification in a Distributed Environment Australian Journal of Basic and Applied Sciences, 8(17)
November 2014, Pages: 118-130 ,(Consulter le 23/12/ 2014).
28