Tải bản đầy đủ (.pdf) (66 trang)

LUẬN văn kỹ THUẬT PHẦN mềm segmentation des mots et modélisation de textes vietnamiens en modèle de programmation mapreduce dans le nuage informatique

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.63 MB, 66 trang )

Département de Technologie de logiciel
Faculté des Technologies de l’information
Université de Cantho

Segmentation des mots et modélisation de textes
vietnamiens en modèle de programmation MapReduce
dans le nuage informatique

Tuteur :

Auteur :

Prof.TRẦN Cao Đệ

NGUYỄN Ngọc Thành

Mémoire présenté pour l’obtention du diplôme d’ingénieur en informatique

Juillet 2013
 NGUYEN Ngoc Thanh, 2013



SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

RÉSUMÉ
La modélisation des textes est une étape de prétraitement qui est très
important dans de nombreux domaines comme l’exploitation de donnée textuelle
et le traitement de langue naturelle. Actuellement, il y a beaucoup de modèles pour
modélisation des textes. Il existe de ce jour certains modèles comme le modèle


d’espace vectoriel et le modèle de fréquence qui sont bien simples et efficaces.
Cependant, dans l’ère de données massives, on ne peut pas réaliser la modélisation
des textes par le traitement séquentiel. Le traitement du grand volume de donnée
dépasse la capacité d’un ordinateur et nécessite un groupe des ordinateurs - signifie
l’organisation de calcul sur des dizaines, des centaines ou des milliers des
ordinateurs. C’est pourquoi, des modèles de traitement distribués deviennent très
importants. Typiquement, c’est le modèle de MapReduce et l’installation réelle est
Hadoop. En plus, le logiciel de nuage informatique d’Openstack et le projet de
Savanna va optimiser des ressources de matériel pour le modèle de programmation
de MapReduce et faire élastiquement le groupe des ordinateurs d’Hadoop. Donc,
cette thèse va étudier la programmation en MapReduce avec Hadoop pour
modélisation des textes en modèle d’espace vectoriel et le modèle de fréquence sur
la base de nuage informatique d’Openstack et le projet de Savanna.
Mots – Clés : modélisation des textes, modèle d’espace vectoriel, modèle
de fréquence, MapReduce, Hadoop, nuage informatique, Openstack, Savanna
Openstack.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

ABSTRACT
Text modeling is a preprocessing step which is very important in different
domains such as textual data exploitation and natural language processing.
Currently, there are many models for the text modeling. We can see now some
models such as vector space model and frequency model that are simple and
efficient. However, in the era of big data, we can’t realize the modeling of texts
with the sequent processing. The large data processing exceeds a capacity of a

computer and requires a cluster of computers, means organizing a computation on
tens, hundreds or thousands of computers. Therefore, distributed processing
models become very important. Typically, that is the MapReduce model and an
actual installation is Hadoop. In addition, the Openstack and Savanna project open
source cloud operating system will optimize hardware resources and elasticize the
Hadoop cluster of computers. This thesis will study the MapReduce programming
model with Hadoop to model texts by the vector space model and the frequency
model on the Openstack and Savanna project cloud computing basis.
Keywords: text modeling, vector space model, frequency model,
MapReduce, Hadoop, cloud computing, Openstack, Savanna Openstack.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

TABLE DES MATIÈRES

TABLE DES MATIÈRES ................................................................................... 1
LISTE DE FIGURES ........................................................................................... 4
LISTE DES TABLEAUX .................................................................................... 6
SYMBOLE ET ABRÉGEMENT DU MOT ...................................................... 7
REMERCIEMENTS............................................................................................ 8
CHAPITRE 1 : GÉNÉRALITÉ.......................................................................... 9
1.1 PROBLÉMATIQUE .................................................................................... 9
1.2 RÉTROSPECTIVE DU PROBLÈME DE MODÉLISATION DES
TEXTES ............................................................................................................. 9
1.3 CONTENU DU PROBLÈME.................................................................... 10
1.4 OBJECTIF DU PROBLÈME .................................................................... 10

1.5 ÉCHELLE DU PROBLÈME ..................................................................... 10
1.6 MÉTHODOLOGIE D’ÉTUDE ET SOLUTION ...................................... 10
1.6.1 En théorie ............................................................................................ 10
1.6.2 En expérimentation ............................................................................. 11
CHAPITRE 2 : THÉORIE DE BASE.............................................................. 12
2.1 MODÉLISATION DES TEXTES ............................................................. 12
2.2 MÉTHODES DE MODÉLISATION DES TEXTES EN VIETNAMIEN 12
2.2.1 Modèle logique.................................................................................... 12
2.2.2 Modèle d’analyse syntaxique .............................................................. 13
2.2.3 Modèle d’espace vectoriel .................................................................. 14
2.2.4 Modèle Booléen .................................................................................. 15
2.2.5 Modèle de fréquence ........................................................................... 15
2.3 PROGRAMMATION EN MODÈLE DE MAPREDUCE ........................ 16
2.3.1 Idées principales de MapReduce......................................................... 16
2.3.2 Principe de l’algorithme de MapReduce - Diviser pour mieux régner18
2.3.3 Origine de MapReduce ....................................................................... 18
2.3.4 Structure de donnée dans MapReduce ................................................ 19
2.3.5 Mapper et Reducer - Composants principaux de MapReduce............ 20
Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 1


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

2.3.6 Partitioner et Combiner ....................................................................... 21
2.3.7 Execution framework .......................................................................... 22
2.3.8 Système de fichier distribué dans MapReduce ................................... 22
2.3.9 Principe de fonctionnement de MapReduce ....................................... 23

2.4 CADRE D’HADOOP (HADOOP FRAMEWORK) ................................. 24
2.4.1 Introduction ......................................................................................... 24
2.4.2 Groupe des ordinateurs d’Hadoop (Hadoop Cluster) ......................... 24
2.4.3 Architecture d’HDFS .......................................................................... 25
2.4.4 Modèle réalisé d’application de MapReduce dans Hadoop ................ 26
2.5 NUAGE INFORMATIQUE ...................................................................... 27
2.5.1 Concept ............................................................................................... 27
2.5.2 Point de vue sur le nuage informatique ............................................... 27
2.5.3 Caractéristiques du nuage informatique .............................................. 28
2.5.4 Avantage et Inconvénient du nuage informatique .............................. 29
2.5.5 Technologie virtuelle du nuage informatique ..................................... 30
2.5.6 Modèles de service et de déploiement ................................................ 31
2.6 SYSTÈME D’EXPLOITATION DE NUAGE DE SOURCE OUVERT
D’OPENSTACK .............................................................................................. 34
2.6.1 L’infrastructure de calcul d’OpenStack (Nova) .................................. 35
2.6.2 Le service d’image d’OpenStack (Glance) ......................................... 36
2.6.3 L’infrastructure de stockage d’OpenStack (Swift). ............................ 36
2.6.4 Le service d’identité d’OpenStack (Keystone) ................................... 37
2.6.5 L’interface administratif d’OpenStack (Horizon) ............................... 37
2.7 PROJET DE SAVANNA ........................................................................... 37
2.7.1 Concept ............................................................................................... 37
2.7.2 Communication entre le projet de Savanna et les composants
d’Openstack.................................................................................................. 38
2.7.3 Composants de l’architecture de Savanna .......................................... 38
CHAPITRE 3 : SEGMENTATION EN MOTS ET DE MODÉLISATION
DES TEXTES ..................................................................................................... 40
3.1 INTRODUCTION...................................................................................... 40
3.2 DES ÉTAPES POUR RÉALISER LE TRAVAIL DE MAPREDUCE .... 42
Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành


Page 2


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

3.3 TRAVAIL DE MAPREDUCE 1 ............................................................... 42
3.3.1 Problème à résoudre ............................................................................ 42
3.3.2 Méthode à résoudre ............................................................................. 42
3.4 TRAVAIL DE MAPREDUCE 2 ............................................................... 46
3.4.1 Problème à résoudre ............................................................................ 46
3.4.2 Méthode à résoudre ............................................................................. 46
3.5 TRAVAIL DE MAPREDUCE 3 ............................................................... 49
3.5.1 Problème à résoudre ............................................................................ 49
3.5.2 Méthode à résoudre ............................................................................. 49
3.6
INITIALISATION
ET
CONFIGURATION
LE
SYSTÈME
D’EXPLOITATION DE NUAGE DE SOURCE OUVERT D’OPENSTACK
ET LE PROJET DE SAVANNA POUR FONCTIONNER CE LOGICIEL .. 54
3.7 RÉSULTAT EXPÉRIMENTAL ................................................................ 56
3.7.1 Résultat expérimental de la segmentation des mots, des méthodes de
suppression des mots arrêtés et de la modélisation des textes en modèle
d’espace vectoriel ......................................................................................... 56
3.7.2 Résultat expérimental de la modélisation des textes avec un grand
volume de donnée en modèle de programmation de MapReduce sur un groupe
des ordinateurs d’Hadoop (Hadoop Cluster) ............................................... 57

CHAPITRE 4 : CONCLUSION ET SUGGESTION DE DEVELOPPEMENT
.............................................................................................................................. 59
4.1 RÉSULTAT OBTENU .............................................................................. 59
4.1.1 En produit de logiciel .......................................................................... 59
4.1.2 En connaissance obtenue .................................................................... 59
4.2 SUGGESTION DE DEVELOPPEMENT ................................................. 60
RÉFÉRENCES ................................................................................................... 61

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 3


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

LISTE DE FIGURES
Figure 2.2.3.1 : Des vecteurs de texte dans l’espace bidimensionnel .................. 14
Figure 2.3.1.1: Scale « out », not « up » .............................................................. 17
Figure 2.3.2.1: Diviser pour mieux régner ........................................................... 18
Figure 2.3.3.1 : Modèle programmation fonctionnelle ........................................ 19
Figure 2.3.5.1 : Deux composants Mapper et Reducer ........................................ 20
Figure 2.3.6.1 : Deux composants Partitioner et Combiner ................................. 21
Figure 2.3.9.1: Principe de fonctionnement de MapReduce ................................ 23
Figure 2.4.2.1: Groupe des ordinateurs d’Hadoop (Hadoop Cluster) .................. 24
Figure 2.4.3.1 : Architecture d’HDFS .................................................................. 25
Figure 2.4.4.1 : Modèle réalisé d’application de MapReduce dans Hadoop ....... 26
Figure 2.5.1.1 : Nuage informatique .................................................................... 27
Figure 2.5.3.3.1 : Utilisation de ressource commune........................................... 28
Figure 2.5.5.1 : Technologie virtuelle du nuage informatique ............................ 30

Figure 2.5.5.2 : Technologie virtuelle de système d’exploitation ........................ 31
Figure 2.5.5.3 : Technologie virtuelle de matériel ............................................... 31
Figure 2.5.6.1 : Modèles de service et de déploiement ........................................ 31
Figure 2.5.6.1.1 : Trois modèles de service du nuage informatique .................... 32
Figure 2.6.1 : Architecture d’Openstack .............................................................. 35
Figure 2.7.2.1 : Communication entre le projet de Savanna et les composants
d’Openstack.......................................................................................................... 38
Figure 2.7.3.1 : Composants de l’architecture de Savanna .................................. 39
Figure 3.1.1: Processus de la segmentation et modélisation des textes ............... 40
Figure 3.1.2 : La modélisation des textes en modèle MapReduce ....................... 41
Figure 3.2.1 : Les étapes pour réaliser le travail de MapReduce ......................... 42
Figure 3.3.2.1 : Diagramme d’algorithme du travail de MapReduce 1 ............... 43
Figure 3.3.2.2.1 : Diagramme d’algorithme de Mapper 1 ................................... 44
Figure 3.3.2.3.1 : Diagramme d’algorithme de Reducer 1 .................................. 45
Figure 3.4.2.1 : Diagramme d’algorithme du travail de MapReduce 2 ............... 46
Figure 3.4.2.2.1 : Diagramme d’algorithme de Mapper 2 ................................... 47
Figure 3.4.2.3.1 : Diagramme d’algorithme de Reducer 2 .................................. 48

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 4


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

Figure 3.5.2.1 : Diagramme d’algorithme du travail de MapReduce 3 ............... 50
Figure 3.5.2.1.1 : Diagramme d’algorithme de Mapper 3 ................................... 50
Figure 3.5.2.3.1 : Diagramme d’algorithme de Reducer 3.1 ............................... 52
Figure 3.5.2.3.1 : Diagramme d’algorithme de Reducer 3.2 ............................... 53

Figure 3.6.1 : Modèle de nuage informatique pour fonctionner le logiciel ......... 55
Figure 3.7.2.1 : Temps d’exécution de la modélisation des textes avec un grand
volume de donnée sur un groupe des ordinateurs d’Hadoop ............................... 57

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 5


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

LISTE DES TABLEAUX
Tableau 2.2.1.1: Modélisation en modèle logique 1 ............................................ 12
Tableau 2.2.1.2 : Modélisation en modèle logique 2 ........................................... 13
Tableau 2.2.2.1 : Modélisation en modèle d’analyse syntaxique ........................ 14
Tableau 2.2.3.1 : Modélisation en modèle d’espace vectoriel ............................. 14
Tableau 2.2.4.1 : Modélisation en modèle de Boolean ........................................ 15
Figure 3.7.1.1: Résultat expérimental de la modélisation des textes 1 ................ 56
Figure 3.7.1.2 : Résultat expérimental de la modélisation des textes 2 ............... 56
Figure 3.7.1.3 : Résultat expérimental de la modélisation des textes 3 ............... 57
Figure 3.7.2.2 : Comparaison de temps d’exécution entre................................... 58
Standalone Mode et Pseudo-Distributed Mode ................................................... 58

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 6


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce

avec la technologie de nuage informatique

SYMBOLE ET ABRÉGEMENT DU MOT
API : Application Programming Interface
DF : Document Frequency
DFS : Distributed File System
GUI : Graphic User Interface
HDFS : Hadoop Distributed File System
HPC : High Performance Computing
IaaS : Infrastructure as a Service
IDF : Inverse Document Frequency
PaaS: Platform as a Service
RR: Record Reader
SaaS: Software as a Service
TF: Term Frequency
UI: User Interface
VM: Virtual Machine

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 7


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

REMERCIEMENTS
Je tiens à exprimer mes sincères gratitudes à Monsieur TRAN Cao De, mon
tuteur de thèse qui m’a fourni des nouvelles connaissances, m’a mobilisé et m’a
aidé de tout cœur à résoudre des difficultés que j’ai rencontrées au cours de la

réalisation de mon mémoire.
Je tiens à remercier sincèrement Monsieur BUI Vo Quoc Bao qui m’a
mobilisé et m’a aidé avec l’enthousiasme à résoudre des difficultés pour installer
un nuage informatique et des connaissances de réseaux concernés.
Je remercie les professeurs de la faculté de Technologie d’Information et de
Communication qui non seulement m’ont guidé avec l’enthousiasme dans mes
études en informatique, mais m’ont donné des conseils précieux. Grâce à leur aide,
je peux accomplir bien mon programme d’études en complétant ce mémoire. Je les
souhaite de la santé et du succès dans la vie.
Je voudrais exprimer mes sincères gratitudes à mes parents qui m’ont
éduqués et créé les meilleures conditions pour que je puisse étudier et cultiver mon
vertu. Ils m’ont encouragé à passer toutes les difficultés dans la vie.
Mes remerciements vont à mes amis de ma classe. J’ai une pensée pour
vous et les années passées ensembles.
Avec mes sincères remerciements.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 8


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

CHAPITRE 1 : GÉNÉRALITÉ
1.1 PROBLÉMATIQUE
De nos jours, avec le développement impétueux de la technologie de
l’information et de l’Internet entraîne le nombre d’utilisateur d’Internet et
d’ordinateur est de plus en plus élevé. Et bien sûr, la conséquence de cela est un
grand volume de données généré et pose des défis dans le stockage et le traitement.

En effet, il y a beaucoup de problèmes de traitement de grandes données comme
la classification des textes, l’exploitation de donnée textuelle et le traitement de
langue naturelle, dans lesquels il y a la modélisation des textes. La modélisation
des textes est une étape de prétraitement qui est très important, on ne peut pas
résoudre les problèmes mentionnés ci-dessus s'il n'y a pas de modélisation des
textes. Actuellement, il y a beaucoup de modèles pour modélisation des textes.
Toutefois, le modèle d’espace vectoriel et le modèle de fréquence sont bien
simples et efficaces. Donc, la question posée est la construction d'un système
automatique de modélisation des textes. Cependant, on ne peut pas sauvegarder un
très grand volume de donnée sur un seul disque dur et le traiter en manière de
lecture/écriture séquentielle car il faut perdre beaucoup de temps. C’est pourquoi,
on doit sauvegarder ce très grand volume de donnée sur beaucoup de disques durs
et le traiter parallèlement par beaucoup d’ordinateurs sur ces disques durs. Alors,
ce mémoire va étudier le modèle de programmation de MapReduce et le cadre
d’Hadoop pour résoudre de ce problème. Mais, le cadre d’Hadoop est construit
afin de déployer un groupe des ordinateurs qui est basé sur le matériel commun
(commodity hardware). C’est pourquoi, l’endommagement est fréquent et on doit
configurer le groupe des ordinateurs d’Hadoop à la main quand on ajouter un
ordinateur à ce groupe. Mais, tout est résolu si on déploie le groupe des ordinateurs
d’Hadoop sur la plate-forme de nuage informatique. Avec le nuage informatique,
on peut créer un groupe des ordinateurs virtuels d’Hadoop plutôt que un groupe
des ordinateurs physiques d’Hadoop. C’est pourquoi, l’endommagement est
diminué. En plus, on peut ajouter ou réduire des ordinateurs à sortir du groupe des
ordinateurs d’Hadoop à la demande. Cela est complètement élastique et
automatique. Donc, ce mémoire va aussi étudier le système d’exploitation de
nuage de source ouvert d’OpenStack et le projet de Savanna afin de déployer un
groupe des ordinateurs virtuels d’Hadoop pour modélisation des textes en modèle
d’espace vectoriel et modèle de fréquence.
1.2 RÉTROSPECTIVE DU PROBLÈME DE MODÉLISATION DES
TEXTES

Maintenant, on utilise souvent des modèles représentés pour résoudre la
plupart de problème concernant le texte. Après des textes sont modelés, les textes
deviennent une structure de données intuitive, simple et peut traiter. C’est
pourquoi, les modèles est de plus en plus développé. En effet, il y a beaucoup de
Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 9


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

modèles représentés comme le modèle logique, le modèle d’analyse syntaxique, le
modèle Booléen. Les modèles représentés traditionnels comme le modèle d’espace
vectoriel, le modèle de fréquence sont les plus populaire modèles. Ces modèles
sont très simples et efficaces, ils représentent des textes comme le vecteur
caractéristique des termes qui apparaissent dans tous les textes. Le poids de la
caractéristique est calculé souvent par la mesure de TF*IDF. En outre, il y a le
nouveau modèle comme le modèle de graphique. Ce modèle peut fournir des
informations importantes comme l’ordre apparu des mots dans un texte, la position
apparu des mots dans un texte qui sont ignorés dans le modèle d’espace vectoriel.
1.3 CONTENU DU PROBLÈME

˗ L’ordre des étapes de modélisation des textes (segmentation des mots 
˗
˗
˗
˗
˗
˗

˗

suppression des mots arrêtés (stop words)  choix d’un modèle représenté
pour modélisation des textes).
Des méthodes pour suppression des mots arrêtés.
Des modèles représentés pour modélisation des textes.
Le traitement un très grand volume de donnée en modèle de MapReduce,
cadre d’Hadoop.
La technologie de nuage informatique et l’application.
L’étude du système d’exploitation de nuage de source ouvert d’OpenStack
et le projet de Savanna.
La manière pour créer un nuage informatique privé.
La manière pour déployer un groupe des ordinateurs virtuels d’Hadoop sur
un nuage informatique privé.

1.4 OBJECTIF DU PROBLÈME

˗ Il faut construire un logiciel de modélisation automatique des textes en
˗

vietnamien qui peut traiter un grand volume de donnée de texte.
Il faut créer un groupe des ordinateurs virtuels d’Hadoop sur le nuage
informatique d’Openstack pour fonctionner ce logiciel.

1.5 ÉCHELLE DU PROBLÈME
Utilisez le modèle de MapReduce et le cadre d’Hadoop avec le nuage
informatique pour construire un logiciel de modélisation automatique des textes
en vietnamien en modèle d’espace vectoriel et du modèle de fréquence qui peut
traiter un grand volume de donnée de texte .
1.6 MÉTHODOLOGIE D’ÉTUDE ET SOLUTION

1.6.1 En théorie

˗ Je dois étudier :
+ La méthode TF-IDF pour suppression des mots d’arrêt (stop words).
+ Le modèle d’espace vectoriel et du modèle de fréquence pour
modélisation des textes.
Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 10


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

+
+
+
+

Le modèle de programmation de MapReduce.
Le cadre d’Hadoop pour créer un groupe des ordinateurs d’Hadoop.
Le nuage informatique.
Le système d’exploitation de nuage de source ouvert d’Openstack pour
créer un nuage informatique privé afin de déployer ce groupe des
ordinateurs virtuels d’Hadoop.

1.6.2 En expérimentation

˗ Je dois faire :
+ Le prétraitement des textes

 Utilisez le logiciel vnTokenizer pour segmentation des mots.
 Supprimez des mots arrêtés basés sur une liste de mots arrêtés
Vietnamien.
+ Installez l’algorithme TF-IDF pour suppression des mots d’arrêt (stop
words).
+ La modélisation des textes
 Installez l’algorithme de modélisation des textes en modèle d’espace
vectoriel et du modèle de fréquence.
+ Installation d’environnement fonctionné
 Installez un nuage informatique privé en logiciel d’OpenStack.
 Installez un groupe des ordinateurs virtuels d’Hadoop en projet de
Savanna.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 11


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

CHAPITRE 2 : THÉORIE DE BASE
2.1 MODÉLISATION DES TEXTES

˗ C’est une étape de prétraitement important pour l’exploitation de donnée
textuelle et le traitement de langue naturelle. Modélisation des textes
signifient à représenter un ensemble des textes sans structure en structure
de données intuitive, simple et peut traiter comme un vecteur, un graphique
… Après, il peut résoudre les problèmes mentionnées ci-dessus en
l’utilisation des opérations sur ces structure de données intuitive. Donc, la

partie suivante va étudier les méthodes de modélisation des textes en
vietnamien.
2.2 MÉTHODES DE MODÉLISATION DES TEXTES EN VIETNAMIEN
2.2.1 Modèle logique

˗ Pour ce modèle, on dénombre des mots significatifs dans chaque texte. Les

˗
˗

mots significatifs sont les mots qui contiennent des informations principales
du texte sauvegardé et quand on voit ces mots, on peut connaître le sujet du
texte.
Après ce travail, on a l’ensemble des mots significatifs des textes. Ensuite,
chaque mot significatif, on détermine son nombre ordinal de position
apparu dans les textes contenus.
Par exemple, on a deux textes suivants : texte01.txt, texte02.txt
texte01.txt : « Cộng hòa xã hội chủ nghĩa Việt Nam »
texte02.txt : « Đất nước Việt Nam »

˗ La modélisation des textes suivant :
Texte
texte01.txt

texte02.txt

Mot significatif
Cộng
1
hòa

2
xã hội
3
chủ
4
nghĩa
5
Việt Nam
6
2
Đất nước
1
Tableau 2.2.1.1: Modélisation en modèle logique 1

˗

Ou :

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 12


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

Texte

Nom du texte et
position apparu


Mot significatif
Cộng
texte01.txt(1)
hòa
texte01.txt(2)
xã hội
texte01.txt(3)
chủ
texte01.txt(4)
nghĩa
texte01.txt(5)
Việt Nam
texte01.txt(6), texte02.txt(2)
Đất nước
texte02.txt(1)
Tableau 2.2.1.2 : Modélisation en modèle logique 2
(Document de référence : Luận văn tốt nghiệp – Nguyễn Việt Cường – Đại học
Công Nghệ - Đại học Quốc Gia Hà Nội).
2.2.2 Modèle d’analyse syntaxique

˗ Dans ce modèle, chaque texte doit être analysé et renvoie des informations
˗

sur les sujets du texte. Ensuite, on va indexer les sujets de chaque texte. Les
textes sont gérés via ces sujets.
Par exemple, on a deux textes : texte01.txt, texte02.txt
texte01.txt : « Cộng hòa xã hội chủ nghĩa Việt Nam »
texte02.txt : « CNTT ngày càng phát triển »


˗ L’analyse syntaxique des textes suivant :
+ Supposé que :

˗

 texte01.txt parle de deux sujets : sujet « Société », sujet
« Politique ».
 Le sujet « Société » contient les mots : « xã hội ».
 Le sujet « Politique » contient les mots : « Cộng hòa », « chủ nghĩa ».
 texte02.txt parle de sujet : sujet « Technologie ».
 Le sujet « Technologie » contient les mots : « CNTT »
La modélisation des textes suivant :
Sujet
Société
Mot
Cộng hoà
xã hội
chủ nghĩa
Việt Nam
CNTT
ngày
càng
phát triển

Politique

Technologie

texte01.txt(1)
texte01.txt(2)

texte01.txt(3)

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

texte02.txt(1)

Page 13


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

Tableau 2.2.2.1 : Modélisation en modèle d’analyse syntaxique
(Document de référence : Luận văn tốt nghiệp – Nguyễn Việt Cường – Đại học
Công Nghệ - Đại học Quốc Gia Hà Nội).
2.2.3 Modèle d’espace vectoriel

˗ Ce modèle est simple, efficace et le plus populaire modèle. Dans ce modèle,
chaque texte est modélisé en un vecteur. Chaque composante du vecteur est
un mot-clé distinct dans l’ensemble de texte entré et est assigné une valeur
de fonction f pour montrer la densité apparu du mot dans le texte.
texte 1
texte 2

texte 3

texte 4

Figure 2.2.3.1 : Des vecteurs de texte dans l’espace bidimensionnel


˗ Par exemple, supposons qu’un texte est modélisé par un vecteur V (v1,
v2,…, vn). Là-dedans, vi est la fréquence du mot-clé ordinal i dans le texte.
On a deux textes : texte01.txt, texte02.txt
texte01.txt : « CNTT ngày càng phát triển »
texte02.txt : « Đất nước Việt Nam »

˗ La modélisation des textes est comme le suivant :
Texte
texte01.txt

texte02.txt

Mot significatif
CNTT
1/4
0
ngày
1/4
0
càng
1/4
0
phát triển
1/4
0
Đất nước
0
1/2
Việt Nam
0

1/2
Tableau 2.2.3.1 : Modélisation en modèle d’espace vectoriel

˗ En plus, dans ce modèle, la relation entre des textes est calculée sur les
vecteurs représentés donc c’est très efficace. Spécialement, les recherches
Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 14


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

sur la relation «similaire» entre les sites web (une des relations les plus
typiques entre les pages Web) sont basées sur la représentation du modèle
vectoriel.
(Document de référence : Luận văn tốt nghiệp – Nguyễn Việt Cường – Đại học
Công Nghệ - Đại học Quốc Gia Hà Nội).
2.2.4 Modèle Booléen

˗ Supposons que on a un ensemble de texte qui contient m textes, D = {d1,
d2,… dm}. Chaque texte est modélisé en un vecteur contient n mots-clés T
= {t1, t2,…tn}. Appelez W = {wij} est une matrice de poids, là-dedans, wij
est le poids du mot-clé ti dans le texte dj.
1 si ti est apparu dans dj
wij =
0 si inversement

˗ Par exemple, on a deux textes : texte01.txt, texte02.txt
texte01.txt : « Tôi yêu quê hương »

texte02.txt : « Đất nước Việt Nam »

˗ La modélisation des textes suivant :
Texte
texte01.txt texte02.txt
Mot significatif
Tôi
1
0
yêu
1
0
quê hương
1
0
Đất nước
0
1
Việt Nam
0
1
Tableau 2.2.4.1 : Modélisation en modèle de Boolean
(Document de référence : Luận văn tốt nghiệp – Nguyễn Việt Cường – Đại học
Công Nghệ - Đại học Quốc Gia Hà Nội).
2.2.5 Modèle de fréquence
Pour ce modèle, la matrice W = {wij} est déterminée par plusieurs façons en basant
sur la fréquence de mots:
2.2.5.1 Méthode basée sur la fréquence des mots-clés (TF – Term Frequency)
wij = fij
wij = 1 + log (fij)

𝒘𝒊𝒋 = √𝒇𝒊𝒋
Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 15


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

Là-dedans, wij est le poids du mot-clé ti dans le texte dj. fij est le nombre
d’occurrence du mot ti dans le texte dj.
2.2.5.2 Méthode basée sur l’inverse de fréquence de texte (IDF – Inverse
Document Frequency)
𝒍𝒐𝒈

𝒎
𝒉𝒊

= 𝐥𝐨𝐠(𝒎) − 𝐥𝐨𝐠⁡(𝒉𝒊 ) Si le mot-clé ti est apparu dans le texte dj

wij =
0 si inversement

˗ Là-dedans, m est le nombre de texte et hi est le nombre de texte que le mot˗

clé est apparu.
Le poids wij représente l'importance du mot-clé ti dans le texte dj. Si ti
apparaît dans moins de textes, cela signifie qu’il est important de distinguer
le texte dj avec les autres.


2.2.5.3 Méthode TF*IDF
𝒎

[𝟏 + 𝐥𝐨𝐠⁡(𝒇𝒊𝒋 )]𝐥𝐨𝐠⁡( ) Si 𝒇𝒊𝒋 ≥ 𝟏
𝒉𝒊

wij =
0 si inversement
C’est le modèle qui associe des bons points de la méthode TF et de la
méthode IDF. Le poids wij est calculé par le nombre d’occurrence du mot ti dans
le texte dj et la rare mesure du mot-clé ti dans l’ensemble de texte.
(Document de référence : Luận văn tốt nghiệp – Nguyễn Việt Cường – Đại học
Công Nghệ - Đại học Quốc Gia Hà Nội).
2.3 PROGRAMMATION EN MODÈLE DE MAPREDUCE
MapReduce est un modèle de programmation présenté par Google pour le
traitement et la génération un ensemble de grande donnée sur des groupes des
ordinateurs (clusters).
2.3.1 Idées principales de MapReduce

˗ Scale « out », not « up » (Élargissez pas de mise à niveau) : Pour augmenter
la capacité de traitement, on augmente souvent le nombre de serveurs usuels
(low-end server). Donc, cette solution est plus économique car elle utilise
les serveurs disponibles et ajoute des autres serveurs tandis que la solution
de mise à niveau peut devoir acheter tous les serveurs nouveaux. En plus,
le prix d’un serveur spécifique (high-end server) est plus beaucoup cher
qu’un groupe des serveurs usuels pour une capacité de traitement égale.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 16



SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

Figure 2.3.1.1: Scale « out », not « up »

˗ Assume failures are commun (Assumez les échecs sont commun) :

˗

˗

˗
˗

l’augmentation de nombre de serveurs dans un groupe des serveurs
(cluster), alors des erreurs sont fréquent. Le modèle de MapReduce a des
mécanismes automatiques pour traiter des erreurs comme un redémarrage
des tâches sur des différents nœuds, un envoi des messages aux nœuds pour
obtenir des informations nécessaires de la réalisation de tâche …
Move processing to the data (Déplacez le traitement aux données) : Dans
les systèmes traditionnels (High Performance Computing - HPC), les nœuds
de calcul et les nœuds de stockage sont connectés via une connexion de
grande vitesse. C’est pourquoi, cela entraîne le phénomène de Bottleneck
pour des travails ont des grandes données car il faut déplacer les données
aux nœuds de calcul via le réseau. Donc, dans le modèle de MapReduce, il
va déplacer le traitement à la donnée. Dans l’architecture de MapReduce,
les nœuds de calcul et les nœuds de donnée sont mis ensemble. Alors, on
peut fonctionner directement des logiciels sur les nœuds de calcul et les

données locales.
Process data sequentially and avoid random access (traitez des données
séquentielles et évitez des aléatoires accès) : Pour augmenter la vitesse de
traitement du travail. MapReduce traite séquentiellement l’ensemble de
donnée entrée.
Hide system-level details from the application developer (cachez le
détail de système pour les développeurs) : MapReduce fournit des modèles
de programmation abstractive et des interfaces simples et prédéfinis.
Seamless scalability : Dans le modèle de MapReduce, on peut ajouter
facilement des ordinateurs à un groupe des ordinateurs pour élargir ce
groupe.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 17


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

2.3.2 Principe de l’algorithme de MapReduce - Diviser pour mieux
régner

˗
˗
˗
˗

˗


La partition du grand problème en des plus petits problèmes.
Des petits problèmes sont traités parallèlement et indépendamment.
L’intégration des résultats intermédiaires en un résultat final.
Des travailleurs peuvent être :
+ Threads dans core de processeur
+ Cores dans multi-core de processeur
+ Multiple processeurs dans un ordinateur
Multiple ordinateurs dans cluster.

Figure 2.3.2.1: Diviser pour mieux régner
2.3.3 Origine de MapReduce

˗ L’origine de MapReduce est la programmation fonctionnelle. Elle a deux
fonctions de Map et de Fold. La fonction de Map prend une fonction f qui
a un paramètre et applique cette fonction à tous les éléments dans la liste.
La fonction de Fold prend une fonction g qui a deux paramètres et une
valeur initiale. La fonction g applique d’abord aux la valeur initiale et le
premier élément dans le liste, le résultat est sauvegardé dans une variable
intermédiaire pour l’utilisation du seconde élément.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 18


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

Figure 2.3.3.1 : Modèle programmation fonctionnelle


˗ La fonction de Map dans MapReduce est correspondant avec la fonction de
Map, la fonction de Reduce est correspondant avec la fonction de Fold.
2.3.4 Structure de donnée dans MapReduce

˗ La structure de donnée élémentaire : des paires clé-valeur.
˗ Les types de donnée des paires clé-valeur: integers, float, strings, raw bytes
˗

ou le type de donnée défini de l’utilisateur.
Il y a un problème posé : la détermination la structure clé-valeur dans
l’ensemble de donnée à traiter. Par exemple, dans l’ensemble de site web,
des key peuvent être des URL et des valeurs peuvent être des contenus de
la page de HTML.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 19


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

2.3.5 Mapper et Reducer - Composants principaux de MapReduce

Figure 2.3.5.1 : Deux composants Mapper et Reducer

˗ Dans MapReduce, les programmateurs définissent une classe Mapper et une

˗


classe Reducer et deux fonctions principales selon ordre dans Mapper et
Reducer.
+ Map (k1, v1)  [(k2, v2)]
+ Reduce (k2, [v2])  [(k3, v3)]
Le symbole […] est une liste des paires clé-valeur ou une liste des valeurs.
Des fichiers de donnée entrée d’un travail de MapReduce sont sauvegardés
sur le système de fichier distribué. Mapper est appliqué à tous les paires clévaleur pour créer les paires clé-valeur intermédiaires. Reducer est appliqué
à tous les valeurs qui ont key intermédiaire identique pour créer des paires
clé-valeur de l’output. Entre la phase Map et la phase Reduce, il y a un
traitement distribué des paires clé-valeur intermédiaire basées sur key. Ces
paires clé-valeur intermédiaire sont envoyé à chaque Reducer selon ordre
qui est arrangé par key. Les paires clé-valeur de l’output de Reducer sont
sauvegardées sur le système de fichier distribué. L’output final est r fichiers
sur le système de fichier distribué, là-dedans r est le nombre de reducer. Ces
r fichiers peuvent être l’input d’un autre travail de MapReduce.

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 20


SUJET: Segmentation des mots et modélisation des textes Vietnamien en modèle de MapReduce
avec la technologie de nuage informatique

2.3.6 Partitioner et Combiner

Figure 2.3.6.1 : Deux composants Partitioner et Combiner

˗ Partitioner répartit les clé-valeur intermédiaires après la phase Map et


˗

envoie ces paires clé-valeur à Reducer. En d'autres termes, Partitioner
indique la tâche que ces paires clé-valeur intermédiaires doivent être
envoyées à là. Partitioner utilise une fonction d’hachage pour répartir les
paires clé-valeur intermédiaires à Reducer. Mais, Partititoner ne s’intéresse
pas aux valeurs dans les paires clé-valeur, c’est pourquoi, il est possible
qu’il y a des situations de répartition de donnée sur Reducer.
Combiner est un composant optimisé qui augmente des données
transporteurs entre Mapper et Reducer. Combiner regarde comme un petit
Reducer (mini-reducer) qui est mis à l’output de Mapper et devant la phase

Tuteur: Prof.TRẦN Cao Đệ - Auteur: NGUYỄN Ngọc Thành

Page 21


×