Vous êtes sur la page 1sur 131

‫الجزائرية الديمقراطية الشعبية الجمهورية‬

République Algérienne Démocratique et Populaire


‫وزارة التعليم العالي والبحث العلمي‬
Ministère de l’Enseignement Supérieur et de la Recherche Scientifique
‫ – بسيدي بلعباس‬1945 ‫ ماي‬08 - ‫الآمدرسة الآعليا لآلعإلما اللآي‬
Ecole Supérieure en Informatique
Mai 1945- Sidi Bel Abbes 08-

Mémoire de Fin d’étude


Pour l’obtention du diplôme d’ingénieur d’état
Filière : Informatique
Spécialité : Systèmes d’information et web (SIW)

Thème
Implémentation d’un système de classification des
documents approfondis à base d’ontologies
Présenté par :
 Mlle Sarah FAFA
 Mlle Souad HENANE
Soutenu le : 17/09/2019 Devant le jury composé de :
- Mr Mimoun MALKI Président
- Mlle Kheira BENCHERIF Examinatrice
- Mr Ishak MEDDAH Examinateur
- Mr Nabil KESKES Encadreur
- Mr Abdelkarim MOKRANE Co-encadreur

Année Universitaire : 2018 / 2019


ii
Dédicace

Nos chers parents,


on ne vous remercierai jamais assez, ni pour vos sacrifices, ni pour votre patience,
ce sont vos prières qui nous ont permis de réussir ...

Aucune des expressions ne sauraient exprimer l’immense amour qu’on vous porte,
on va donc nous contenter de vous dédier ce modeste travail en guise de nos
reconnaissance éternelle, qu’il soit l’accomplissement de vos vœux.

Á nos chers sœurs et frères,


pour leurs encouragements permanents, et leur soutien moral et qui n’ont cessé
d’être pour nous des exemples de persévérance, de courage et de générosité.

Á nos proches,
pour leurs présence et leurs appui infaillible.

Á tous nos amis,


pour leurs motivations et inspirations inestimables ui n’ont cessé, tout au long de
ces études de nous apporter leurs soutiens. On tient par ce travail vous exprimer
nos plus grande gratitude.

Merci à toutes et à tous d’être toujours là pour nous.

S.FAFA & S.HENANE

iii
iv
Remerciements

Nous remercions avant tout, notre Dieu Allah le tout puissant et miséricordieux
pour nous avoir donné la foi, la force, le courage et suffisamment de patience afin
d’accomplir ce modeste travail.

Nous souhaitons exprimer nos plus profonds remerciements à notre directeur de


mémoire Dr. KESKES Nabil, pour ses conseils , sa direction et sa patience qu’on
ne saurait décrire.

Nous remercions le directeur des système d’information du GSH et notre


co-encadreur A. Mokrane pour la confiance qu’il nous a accordé et de nous Avoir
donné l’opportunité de travailler sur un projet d’une telle envergure. .

Nous souhaitons à remercier aussi l’ensemble des employés pour la précieuse et


totale collaboration que nous avons reçu au sein du GSH .

Les membres du jury pour l’honneur qu’ils ont accepté de siéger à notre soutenance
et évaluer notre travail.

Nous adressons aussi nos plus grands remerciements à nos familles, nos parents,
nos frères et sœurs et tous nos proches et amis.

Et enfin, que tous ceux qui de près ou de loin ont contribué à notre réussite,
trouvent ici l’expression de nos plus sincères remerciements.

S.FAFA & S.HENANE

v
vi
Résumé

Avec l’avènement de l’informatique et l’accroissement de la quantité de docu-


ments numériques et textuels stockés sur les divers supports électroniques et sur
le Web, Les systèmes de classification de documents sont devenus une nécessité au
niveau des entreprises. Ainsi la catégorisation automatique de textes, qui consiste à
assigner un document à une ou plusieurs catégories prédéfinie automatiquement en
fonction de son contenu, s’impose de plus en plus comme une technologie clé dans
la gestion de l’intelligence artificielle et la base d’ontologie qui prends en compte les
relations sémantiques entre les mots.
Le groupe des sociétés HASSNAOUI est une entreprise qui est active au niveau
du secteur de construction et l’agriculture. Avec l’augmentation des documents qui
s’avèrent intense avec plus de 10M de documents au niveau du centre d’archivage .
Dans ce contexte , DSI s’est intéresse au développement d’un système de classifica-
tion automatique afin de rassurer une classification pertinente et faciliter la tache
aux utilisateurs.
Ce projet a pour finalité de mettre en place un systéme de classification approfon-
die basé sur l’ontologie qui répond au besoins des utilisateurs au niveau du centre
d’archivage .

vii
viii RÉSUMÉ
Abstract

With the advent of computing and the increase in the quantity of digital and
text documents stored on various electronic media and on the Web, document clas-
sification systems have become a necessity at the corporate level. Thus automatic
text categorization, which consists of assigning a document to one or more catego-
ries predefined automatically according to its content, is becoming more and more a
key technology in the management of artificial intelligence and the basis of ontology
that takes into account the semantic relationships between words.
The group of companies HASSNAOUI is a company that is active at the level of
construction sector and agriculture. With the increase of the documents which prove
to be intense with more than 10M of documents at the level of the archiving center.
In this context, DSI is interested in the development of an automatic classification
system to reassure a relevant classification and facilitate the task for users.
The purpose of this project is to set up an in-depth classification system based on
ontology that meets the needs of users at the repository center level.

ix
x ABSTRACT
Abréviation

FS Feature Selection
TF-IDF Frequency of the Inverse Document Term
MI Mutuel Information
IG Information Gain
SVM Support Verctor Machine
KNN K-Voisin le plus proche
OWL Web Ontology Language
RDF Resource Description Framework
RDFS Resource Description Framework Shema
DAML Darpa Agent Markup Language
W3C World Wide Web Consortium
GSH Groupe de Sociétés Hasnaoui
DRH Direction Ressource Humaine
DAG Direction Administration Générale
DMC Direction Marketing Commerce
DFC Direction Finance Commerce
DCE Direction Commerce Extérieur
DCG Direction
DGR Direction Générale
VSM Vector Space Model

xi
Table des matières

Résumé vii

Abstract ix

Abréviation xi

I Introduction générale 1
1 Introduction générale 3
1.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Objectif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 Plan de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

II Background 7
2 Classification des documents 9
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 La catégorisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 Processus de classification . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.1 Collection de documents . . . . . . . . . . . . . . . . . . . . . 10
2.3.2 Prétraitrement des documents . . . . . . . . . . . . . . . . . . 10
2.3.3 Feature selection (FS) . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Les approches de classification . . . . . . . . . . . . . . . . . . . . . . 13
2.4.1 Classification supervisée . . . . . . . . . . . . . . . . . . . . . 13
2.4.2 Vector space model . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4.3 Classification non supervisé (Clustering) . . . . . . . . . . . . 17
2.5 Mesure d’évaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.5.1 Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.5.2 Recall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.5.3 Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.5.4 F Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

xii
TABLE DES MATIÈRES xiii

2.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3 Ontologies 21
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2 Définition d’une ontologie . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.1 Définition philosophique . . . . . . . . . . . . . . . . . . . . . 21
3.2.2 Définition informatique . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Les types d’ontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3.1 Ontologie de haut niveau(Top ontology) . . . . . . . . . . . . 22
3.3.2 Ontologie du domaine . . . . . . . . . . . . . . . . . . . . . . 22
3.3.3 Ontologie de taches (Task Ontology) . . . . . . . . . . . . . . 23
3.3.4 Ontologie d’application . . . . . . . . . . . . . . . . . . . . . . 23
3.4 Les composants d’une ontologie . . . . . . . . . . . . . . . . . . . . . 23
3.5 Construction d’ontologie . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.5.1 Construire une ontologie manuellement . . . . . . . . . . . . . 24
3.6 Les langages d’ontologies . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.6.1 RDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.6.2 RDFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6.3 DAML + OIL . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6.4 OWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.7 Les approches de l’ontologie . . . . . . . . . . . . . . . . . . . . . . . 28
3.7.1 Alignement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.7.2 Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.7.3 Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.7.4 Intégration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

III État de l’art 33


4 État de l’art 35
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2 Les approches proposées . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.1 Système de classification de pages web basée sur une ontologie
à l’aide de classificateurs améliorés C4.5 et Naive Bayesian . . 35
4.2.2 Classification des documents médicaux basée sur l’ontologie
de domaine MESH (Medical Subject Headings) . . . . . . . . 37
4.2.3 Classification associative améliorée des documents XML pris
en charge par les concepts sémantique . . . . . . . . . . . . . 40
4.2.4 Classification de texte basée sur une ontologie dans des sujets
définis d’une manière dynamique . . . . . . . . . . . . . . . . 43
4.2.5 Amélioration de la classification de texte à base d’ontologies :
une application pour la santé et la sécurité au travail . . . . . 46
xiv TABLE DES MATIÈRES

4.2.6 Une nouvelle approche pour la réduction de la dimensionnalité


basée sur l’ontologie pour la classification de documents texte
web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.3 Tableau comparatif . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3.1 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

IV Étude de l’existant 53
5 Étude de l’existant 55
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.2 Présentation de l’organisme . . . . . . . . . . . . . . . . . . . . . . . 55
5.2.1 Activités et Missions . . . . . . . . . . . . . . . . . . . . . . . 56
5.2.2 Les logiciels existant . . . . . . . . . . . . . . . . . . . . . . . 58
5.2.3 Étude des documents . . . . . . . . . . . . . . . . . . . . . . . 59
5.2.4 Procédure actuel suivi dans la classification des documents . . 59
5.2.5 Anomalies et suggestions . . . . . . . . . . . . . . . . . . . . . 59
5.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

V Identification de Besoins d’Analyse 61


6 Étude analytique 63
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.2 Méthodologie de travail . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.2.1 Modèle V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.3 Analyse des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.3.1 Les besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . 64
6.3.2 Les besoins non-fonctionnels . . . . . . . . . . . . . . . . . . . 69
6.4 Les obstacles du système . . . . . . . . . . . . . . . . . . . . . . . . . 69
6.5 Objectif du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

VI Étude Conceptuelle 71
7 Étude conceptuelle 73
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
7.2 Architecture globale du système . . . . . . . . . . . . . . . . . . . . . 73
7.2.1 Collection des documents : . . . . . . . . . . . . . . . . . . . . 74
7.2.2 Extraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
7.2.3 Pré-traitement . . . . . . . . . . . . . . . . . . . . . . . . . . 75
TABLE DES MATIÈRES xv

7.2.4 Feature selection . . . . . . . . . . . . . . . . . . . . . . . . 76


7.2.5 Construction d’un vocabulaire contrôlé . . . . . . . . . . . . . 76
7.2.6 Construction d’ontologie . . . . . . . . . . . . . . . . . . . . . 76
7.2.7 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
7.3 diagramme de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
7.4 diagramme d’activité . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
7.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

VII Implémentation et mise en œuvre technique 83


8 Introduction 85
8.1 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . 85
8.1.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . 85
8.1.2 Système d’exploitation . . . . . . . . . . . . . . . . . . . . . . 85
8.2 outils de développent . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
8.2.1 Outils de modélisation . . . . . . . . . . . . . . . . . . . . . . 86
8.2.2 Serveur de base de données . . . . . . . . . . . . . . . . . . . 86
8.2.3 Outil de construction de l’ontologie . . . . . . . . . . . . . . . 86
8.3 Environnement de développement . . . . . . . . . . . . . . . . . . . . 87
8.3.1 IDEA utilisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
8.3.2 Plateforme de développement ”Java EE” . . . . . . . . . . . . 87
8.3.3 Framework de développement ”Spring Boot” . . . . . . . . . . 88
8.3.4 Framework web ”Apache Jena” . . . . . . . . . . . . . . . . . 88
8.3.5 Toolkit Apache Tika . . . . . . . . . . . . . . . . . . . . . . . 89
8.4 ICU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
8.4.1 Front-end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
8.4.2 Outil de contrôle et gestion de code . . . . . . . . . . . . . . . 91
8.4.3 Outil de collaboration du projet . . . . . . . . . . . . . . . . . 91
8.5 Développement de l’application . . . . . . . . . . . . . . . . . . . . . 91
8.5.1 Authentification . . . . . . . . . . . . . . . . . . . . . . . . . . 91
8.5.2 Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
8.5.3 Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
8.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

9 Expérimentation et analyse des résultats 99


9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.2 Corpus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.3 Expérimentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.3.1 Mesure d’évaluation . . . . . . . . . . . . . . . . . . . . . . . 100
9.3.2 Analyse des résultats . . . . . . . . . . . . . . . . . . . . . . . 101
9.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
xvi TABLE DES MATIÈRES

VIII Conclusion générale et perspective 103


10 Conclusion et perspective 105
10.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
10.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Table des figures

2.1 Le processus de classification . . . . . . . . . . . . . . . . . . . . . . . 10


2.2 Phase d’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 Phase de reconnaissance . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4 Hyper-plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5 Ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.6 Construction d’un hyper-plan . . . . . . . . . . . . . . . . . . . . . . 14
2.7 Classification à base de Knn
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.8 Réseau de neurone . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.9 Dendrogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.1 Les types d’ontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . 22


3.2 Triplets RDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 Le schéma RDFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4 Exemple d’alignement
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5 Le mapping des ontologies . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6 Le principe de la fusion d’ontologies . . . . . . . . . . . . . . . . . . . 31

4.1 Architecture du système proposé . . . . . . . . . . . . . . . . . . . . 36


4.2 Une représentation conceptuelle pour l’approche proposé . . . . . . . 38
4.3 Architecture du système proposé . . . . . . . . . . . . . . . . . . . . 41
4.4 diagramme de processus de flux . . . . . . . . . . . . . . . . . . . . . 47
4.5 Le schéma fonctionnel du système proposé. . . . . . . . . . . . . . . 49

6.1 Processus du modèle V . . . . . . . . . . . . . . . . . . . . . . . . . . 64


6.2 Phase d’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.3 Phase d’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . 68
6.4 Phase d’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . 69

7.1 Architecture du système . . . . . . . . . . . . . . . . . . . . . . . . . 74


7.2 OntoGraf de l’ontologie construite . . . . . . . . . . . . . . . . . . . . 78

8.1 Authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
8.2 Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

xvii
xviii TABLE DES FIGURES

8.3 Sélection et upload des documents . . . . . . . . . . . . . . . . . . . . 93


8.4 Extraction des documents . . . . . . . . . . . . . . . . . . . . . . . . 93
8.5 Pré-traitement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
8.6 Stemming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
8.7 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
8.8 Document classés par filiale . . . . . . . . . . . . . . . . . . . . . . . 95
8.9 Document classés par Année . . . . . . . . . . . . . . . . . . . . . . . 95
8.10 Document classés par Direction . . . . . . . . . . . . . . . . . . . . . 96
8.11 Les documents classés . . . . . . . . . . . . . . . . . . . . . . . . . . 96
8.12 Gestion des filiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
8.13 Visualisation graphique des documents . . . . . . . . . . . . . . . . . 97
Liste des tableaux

2.1 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.1 F Measure pour les concepts et stems . . . . . . . . . . . . . . . . . . 40


4.2 Comparaison de performance : Wikipedia . . . . . . . . . . . . . . . . 43
4.3 Mesures de performance de classification générées par les trois algo-
rithmes comparé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.4 Mesure d’évaluation en utilisant 4 differents classificateur . . . . . . . 50

6.1 Fiche de description : ”Charger les documents” . . . . . . . . . . . . . 65


6.2 Fiche de description : ”Pré-traitement des données” . . . . . . . . . . 66
6.3 Fiche de description : ”gestion des filiales” . . . . . . . . . . . . . . . 66
6.4 Fiche de description : ”gestion des directions” . . . . . . . . . . . . . 67
6.5 Fiche de description : ”Classification et évaluation” . . . . . . . . . . 67

9.1 Caractéristiques du dataset . . . . . . . . . . . . . . . . . . . . . . . 100


9.2 Résultats de la classification pour les directives : Filiale , Direction . . 100
9.3 Temps pris par chaque phase en (ms) . . . . . . . . . . . . . . . . . . 101

xix
xx LISTE DES TABLEAUX
Première partie

Introduction générale

1
Chapitre 1

Introduction générale

De nos jours, La quantité d’informations disponibles dans les entreprises sous


forme imprimée et électronique a considérablement augmenté d’où pour une en-
treprise ayant une gestion d’archivage à conduire, il est capital pour elle de bien
savoir quelle place occuperont les documents d’archives. Cette question se pose dès
la création des archives afin que l’entreprise puisse être en mesure de prendre les
bonnes décisions.
De plus , en utilisant la classification manuelle une masse énorme de documents
rédigés en langue naturelle et stockés sous forme numérique sera fasse aux utilisa-
teurs ce qui est coûteux en temps de travail, peu générique, et relativement peu
efficace. Cela a conduit au développement de systèmes automatisés de classification
de textes et de documents capables de les classer automatiquement.
La catégorisation des documents est le processus de classification des documents
dans un ensemble prédéfini de catégories en fonction de leur contenu. Un document
doit passer par les étapes de pré-traitement, y compris la conversion du document en
texte brut, la suppression des mots vides, etc.. . . .,ensuite le document est transmis
au système de classification.
En outre, la plupart de ces méthodes sont basées sur des mots clés sans fonctionna-
lités suffisantes. Ils ne considèrent pas les relations sémantiques entre les mots, ce
qui donne des résultats inexacts et une précision limitée.
Dans diverses applications, les systèmes intelligents de classification de texte ap-
pliquent le modèle de connaissance informatique, tel que l’ontologie ,pour améliorer
les algorithmes de classification.

1.1 Contexte
le Groupe des Sociétés HASNAOUI (GSH) est une organisation algérienne Créée
en 1974, elle est présentée dans les secteurs de la construction et de l’agriculture.
GSH rassemble plus de 17 entreprises opérant dans trois principaux pôles : Construc-
tion, agriculture et services. II emploie aujourd’hui plus de 3000 collaborateurs

3
4 CHAPITRE 1. INTRODUCTION GÉNÉRALE

répartis à travers le pays, depuis sa création elle dispose d’un entrepôt de docu-
ment d’archive de plus de 40 ans , Un entrepôt contenant plus de 10M documents
représentant un capital de savoir-faire inestimable
Au cours de ces dernières années l’utilisation d’un système de classification de docu-
ment au niveau de l’entreprise est devenu une nécessité indispensable. Cependant,
la gestion de nombreux documents manuellement est devenue une tâche ardue. De
ce fait, les dirigeants des systèmes d’information de l’entreprise sont mené a adopté
une solution informatique, permettant de faciliter la tâche de la classification afin
de garantir une bonne classification de documents.

1.2 Problématique
Actuellement ,le manque d’un système de classification au niveau du centre d’ar-
chivage pose un grand problème , la gestion des documents est purement manuelle
et les documents à archiver s’entasse de plus en plus d’où les utilisateurs feront fasse
d’une grande quantité des documents textuelle qui s’avèrent très couteux en temps
et en personnel et qui rend la tâche plus ardue et difficile .
D’ou l’utilisation d’un système informatique intelligent s’avère nécessaire afin de
faciliter la tache aux utilisateurs en terme de temps et de travail .

1.3 Objectif
Notre contribution au niveau du GSH consiste à mettre en place une solution
dédiée au classement de ces documents de nature hétérogènes par apprentissage
et permettre leurs publications selon les directives de classement : Filiale, année ,
directions.
Pour ce faire, les responsables des systèmes d’information du GSH ont exprimé les
objectifs suivants :
— Étudier la nature et le type des documents d’archives ;
— Identifier les solutions algorithmique d’apprentissage pour déterminer les règles
sémantiques à appliquer au classement et indexation des documents d’ar-
chives .
— Développement du schéma conceptuel du logiciel dédié à l’alimentation des
directives de classement par mot clé et de la base sémantique.
— Développement d’un moteur de traitement et classement des documents à
base d’ontologie .

1.4 Plan de travail


Notre mémoire est organisée selon les chapitres suivants :
1.4. PLAN DE TRAVAIL 5

— Dans le premier chapitre , nous avons introduit la classification des documents


en donnant les définition , les caractéristiques et tout ce qui qui relève de ce
domaine .
— Le deuxième chapitre , se focalise sur l’ontologie, les types utilisés et les
notions.
— Le troisième chapitre , un état de l’art sur les solutions proposées par les
différentes équipes de recherche travaillant sur ce sujet .
— Le quatrième chapitre , une étude de l’existant sur la procédure appliqué dans
l’entreprise
— Le cinquième chapitre est consacré à l’étude analytique de notre système
dont l’identification des besoin du client , les fonctionnalités et l’objectif du
système
— le sixième chapitre est pour la présentation de la conception globale de notre
système .
— Le septième chapitre présente les différents ressources matériels et logiciels ,
les technologies et techniques utilisées pour élaborer le produit final.Ainsi la
présentation des étapes suivi pour la création de l’application et la description
des différentes fonctionnalités de notre système.
— Et le huitième chapitre qui est consacré pour l’expérimentation et l’évaluation
de notre système.
— Finalement , nous concluons notre travail concernant la mise en œuvre du
système de classification au niveau du GSH , ainsi nos futurs perspectives
afin d’améliorer notre système.
6 CHAPITRE 1. INTRODUCTION GÉNÉRALE
Deuxième partie

Background

7
Chapitre 2

Classification des documents

2.1 Introduction
Avec la croissance explosive des informations textuelles issues des documents
électroniques et du World Wide Web, l’accessibilité des documents texte et de l’infor-
mation électronique a augmenté. Récemment, de nombreuses activités de recherche
ont été menées dans le domaine de la classification des documents, notamment dans
les domaines du filtrage anti-spam, de la catégorisation des e-mails, de la classifi-
cation des sites Web et de la cartographie ontologique. Cependant, il est fastidieux
pour un humain de relire et de catégoriser correctement un article manuellement.
Afin d’arriver à répertorier un sujet approprié pour chaque document, un processus
a été inventé celui de la catégorisation des textes qui correspond à la procédure
d’affectation d’une ou de plusieurs catégories ou classes prédéfinies à un texte, elle
correspond à la classification supervisée pour apprentissage automatique. Toutefois
quand l’ensemble de catégories n’est pas donné au départ et qu’il s’agit de le créer
en regroupant les textes en classes qui possèdent un certain degré de cohérence in-
terne, on est dans un contexte de classification non supervisée pour l’apprentissage
automatique, c’est ce qu’on désigne par le clustering qui consiste à diviser les objets
en groupes sans connaitre à priori leurs classes d’apprentissage.

2.2 La catégorisation
La classification des documents vise à classer les documents textuels automati-
quement. Cette tache consiste à assigner un document à une ou plusieurs classes
ou catégories. Cela peut être fait manuellement ce qui consomme du temps et re-
quiert une grande précision ou en utilisant un des algorithme d’appretissage automa-
tique(Machine Learning) qui rend le processus de classification plus rapide et plus
efficace. Les documents à être classifié peut être du texte, des images ; etc (D.Kalita,
2015)

9
10 CHAPITRE 2. CLASSIFICATION DES DOCUMENTS

2.3 Processus de classification


Le processus est illustré dans la figure 2.1 :

Figure 2.1 – Le processus de classification

2.3.1 Collection de documents


La première étape du processus de classification consiste à collecter différents
types (format) de documents tels que .html,. pdf, .doc, etc.

2.3.2 Prétraitrement des documents


Les données du monde réel sont souvent incohérentes et incomplètes et manquent
de certains comportements et sont susceptibles de contenir de nombreuses erreurs,
elles doivent donc être prétraitées.
Pour cela les données passent par une série d’étapes :

1. Tokenization

La tokenization est la procédure qui consiste à diviser un texte en mots, en


phrases ou en d’autres parties significatives, à savoir tokens.
En d’autres termes, la tokenization est une forme de segmentation de texte.
En règle générale, la segmentation est effectuée en tenant compte uniquement
des caractères alphabétiques ou alphanumériques délimités par des caractères
non alphanumériques (par exemple, des ponctuations,les espaces).(Uysal and
Gunal, 2014).
2.3. PROCESSUS DE CLASSIFICATION 11

2. Supperssion des stop-words

Stop-words sont les mots les plus courants rencontrés dans toutes les langues
naturelles et ne comportent que peu ou pas de contexte sémantique signifi-
catif dans une phrase. Cela a juste une importance syntaxique qui aide à la
construction de la phrase. En tant que pré-traitement, ils doivent être suppri-
mer pour accélérer la tâche principale du traitement de texte.(K.Jaideepsinh
and S.Jatinderkumar, 2016).

3. Stemming

la phase de stemming est utilisée pour extraire la sous-partie nommée racine


d’un mot donné. Une fois que l’ensemble des symboles, et des stop-words
ont été supprimés, les documents texte sont prêts à passer à cette phase.
La recherche de racine(Stemming) est utilisée pour regrouper des mots en
fonction de la similarité sémantique. Il existe plusieurs types d’algorithmes
de Stemming. Les algorithmes de suppression d’affixes (à savoir, les suffixes
ou les préfixes)sont les plus courants.

2.3.3 Feature selection (FS)


Dans la représentation textuelle, les termes sont des mots, des phrases ou toute
autre unité d’indexation utilisée pour reconnaı̂tre le contenu d’un texte. chaque
terme d’un vecteur de document doit être associé à une valeur appelée poids, qui
mesure l’importance de ce terme et indique dans quelle mesure ce terme contribue
à la tâche de catégorisation du document.
L’idée principale de FS est de sélectionner un sous-ensemble de descripteurs dans
les documents d’origine. elle est réalisée en conservant les mots avec le score le
plus élevé en fonction d’une mesure prédéterminée de l’importance du mot.(Fox and
d. S. Torres, 2014) (Zhang et al., 2014)
Les algorithmes de base de FS sont les suivants :

1. Fréquence du terme de document inverse (TF-IDF)

C’est une technique couramment utilisée pour pondérer les termes dans le
domaine de la classification du texte. Il détermine la fréquence relative des
termes dans un document spécifique via une proportion inverse du terme sur
l’ensemble du corpus de documents. (Antoniou et al., 2012)

f reqi ,j
T f (fi , dj ) =
(maxi )(f reqk ,j )
12 CHAPITRE 2. CLASSIFICATION DES DOCUMENTS

N
Idf (t) = log( )
n

n = docs contenant terme(t)

N = docs dans le corpus

2. Information mutuelle (MI)

La technique MI mesure la dépendance mutuelle entre un mot tk et une


catégorie ci.(Yang and Pedersen, 1997)

CM I(C|S) = H(C) − H(C|S1 , S2 ......Sn )

3. Test du Chi-Carre (χ2)

Le Chi-carré est une méthode de sélection de caractéristiques statistiques.


Elle est utilisé pour mesurer l’association entre un terme et une catégorie
dans la catégorisation du texte.(Yang and Pedersen, 1997)

n
X (N pbj − N pj )2
T =
i=1 N pj
N
(
1 X 1 si yi = j
pbj = [yi = j] avec [yi = j] =
N i=1 0 sinon

4. Gain d’information (IG)

Le gain d’information nous indique l’importance d’un attribut donné des


vecteurs caractéristiques. La méthode de sélection des caractéristiques IG
sélectionne les termes ayant les scores de gain d’information les plus élevés.(P
Kumbhar and M.Mali, 2016)

K
X K
X
IG(W ) = P(Cj ) log P(Cj ) + P(W ) P(Cj |W ) log P(Cj |W )
j=1 j=1
K
X
+ P(W ) P(Cj |W ) log P(Cj |W )
j=1

= H(samples) − H(samples |W )
2.4. LES APPROCHES DE CLASSIFICATION 13

2.4 Les approches de classification


2.4.1 Classification supervisée
Les Méthodes d’apprentissage supervisées sont des techniques d’apprentissage
automatique relatives à la déduction d’une fonction ou apprendre un classificateur
à partir des données d’apprentissage afin d’effectuer des prédictions sur des données
non-définis .(Allahyari et al., 2017)
Processus d’apprentissage supervisé 1 :

Figure 2.2 – Phase d’apprentissage

Figure 2.3 – Phase de reconnaissance

Plusieurs algorithmes de classification supervisée ont été développés et


utilisé pour classer les documents, y compris Naı̈ve Bayes, Support Vector
Machine, Arbres de décision, K le plus proches voisins et les réseaux de
neurones.

1. Classificateur Naive-Bayes

C’est un classificateur probabiliste simple basé sur l’application de théorème


de Bayes. Son idée de base est de calculer la probabilité que le document D
appartient à une classe C.

P(C) P(C|F1 , ....Fn )


P(C|F1 , ....Fn ) =
P(F1 , ....Fn )
1. https ://slideplayer.fr/slide/3156840/
14 CHAPITRE 2. CLASSIFICATION DES DOCUMENTS

2. Machine à vecteurs de support (SVM)

C’est l’une des plus précises méthodes discriminatoires utilisées dans la clas-
sification.(Bilski and Adrian, 2011)
Le fonctionnement de l’algorithme SVM a besoin d’un ensemble d’entraı̂nement
positif et négatif, ce qui est rare dans d’autres méthodes de classification. Ces
ensembles d’entraı̂nement positifs et négatifs sont nécessaires à la SVM pour
rechercher la surface de décision qui sépare le mieux les données positives des
données négatives dans le n espace dimensionnel, appelé hyper-plan.(V.Korde
and C.M.Namrata, 2012)
On trouves deux façons pour représenter le jeux de données c’est :
Soit par une ligne comme illustre la figure 2.5, sinon par un hyper-plan comme
dans la figure 2.4 . Mais il est généralement plus facile de travailler avec
un hyper-plan pour bien séparé les données comme représente la figure 2.6.
(M.Sanjeevi, 2017)

Figure 2.4 – Hyper-plan Figure 2.5 – Ligne

Figure 2.6 – Construction d’un hyper-plan


2.4. LES APPROCHES DE CLASSIFICATION 15

3. Arbre de décision

Un arbre de décision est une structure arborescente de type organigramme,où


chaque nœud interne (non en feuille) désigne un test sur un attribut, chaque
branche représente un résultat du test, et chaque nœud feuille (ou nœud
terminal) contient une étiquette de classe. Le nœud le plus haut dans un
arbre est le nœud racine.(J.Han et al., 2012)
En d’autres termes il partitionne le jeu de données d’apprentissage de manière
récursive en sous-divisions plus petites en fonction d’un ensemble de tests
définis sur chaque nœud ou branche.(V.Korde and C.M.Namrata, 2012)
Les algorithmes d’arbre de décision les plus connus sont ID3 et ses successeurs
C4.5 et C5, CART, MARS, etc.

m
fi2
X
IG (f ) = 1 −
i=1

m
X
IE (f ) = − fi log2 fi
i=1

(
fi = f ractions des elements de l0 ensemble
ou .
i = l0 etiquette dans l0 ensemble

4. K-Voisin le plus proche (KNN)

C’est une méthode non paramétrique.


Il se base sur une notion de distance telle que l’hypothèse est que les points
proches les uns des autres sont similaires.
Le meilleur choix de k dépend des données , généralement les valeurs plus
grandes de k réduit l’effet du bruit sur la classification, mais rend moins
claires les frontières entre les classes.(V.Korde and C.M.Namrata, 2012)

La figure 2.7 illustre l’algorithme sur un exemple ou l’échantillon de test


(cercle vert) pourrait être classé soit dans la première classe de carré bleu ou
la seconde classe de triangles rouges. Si k = 3 (cercle en ligne pleine) il est af-
fecté à la seconde classe car il y a deux triangles et seulement un carré dans le
cercle considéré. Si k = 5 (cercle en ligne pointillée) il est assigné à la première
classe (3 carrés face à deux triangles dans le cercleexterne).(T.Srivastava,
2018)
16 CHAPITRE 2. CLASSIFICATION DES DOCUMENTS

Figure 2.7 – Classification à base de Knn

5. Réseaux de neurones artificiels

Les réseaux de neurones artificiels (ANN) sont des représentations mathématiques


basées sur la compréhension de la structure et du mécanisme du cerveau hu-
main .(T.Liao and E.Triantaphyllou, 2008)
L’unité de calcul de base dans un réseau de neurone artificiel est le neurone.
L’architecture la plus basique du réseau de neurones est un Perceptron, qui
contient un ensemble de nœuds d’entrée et un nœud de sortie. (Charu and
C.Aggarwal, 2014)
La figure 2.8 (A.Dertat, 2017) illustre bien cette architecture :

Figure 2.8 – Réseau de neurone

6. 2.4.2 Vector space model


Un modèle vectoriel (parfois nommé sémantique vectorielle) est une méthode
algébrique de représentation d’un document visant à rendre compte de sémantique
2.4. LES APPROCHES DE CLASSIFICATION 17

.
Elle est utilisée en recherche d’information, notamment pour la recherche
documentaire, la classification ou le filtrage de données. Ce modèle concer-
nait originellement les documents textuels et a été étendu depuis à d’autres
types de contenus. Le premier exemple d’emploi de ce modèle est le système
SMART. (G.Salton, 1975)

2.4.3 Classification non supervisé (Clustering)

C’est le processus de partitionnement d’un ensemble d’objets de données (ou


observations) en sous-ensembles. Chaque sous-ensemble est un cluster, tel que les
objets d’un cluster sont similaires les uns aux autres mais diffèrent des objets des
autres groupes.(J.Han et al., 2012)
De nombreux algorithmes utilisés dans le contexte de données textuelles. Le docu-
ment texte peut être représenté comme un vecteur binaire, c’est-à-dire en considérant
la présence ou l’absence de mot dans le document.
Dans ce contexte, on peut classer différents algorithmes en catégories suivantes :
— Les algorithmes de clustering hiérarchique
— Les algorithmes de partitionnement

1. Les algorithmes de clustering hiérarchique

Les algorithmes de clustering produisent une hiérarchie de cluster appelée


dendrogramme qui peut être construite de haut en bas (appelée division)
qui commence par tous les objets du même cluster , ou ascendante (ap-
pelée agglomérative) qui commence par chaque objet formant un groupe
séparé.(J.Han et al., 2012)
Un dendrogramme est un arbre dont les feuilles sont les points d’un jeu de
données. Chaque nœud de l’arbre représente un cluster (les feuilles sont des
clusters contenant un point chacun). Les clusters qui ont le même parent sont
agglomérés pour former ce cluster parent.
La figure 2.9 montre un exemple en coupant au niveau de la ligne horizontale
orange et on obtient 3 clusters. 2

2. https ://openclassrooms.com/fr/courses/4379436-explorez-vos-donnees-avec-des-
algorithmes-non-supervises/4379561-partitionnez-vos-donnees-avec-un-algorithme-de-clustering-
hierarchique
18 CHAPITRE 2. CLASSIFICATION DES DOCUMENTS

Figure 2.9 – Dendrogramme

2. Les algorithmes de clustering partitionnel

Les méthodes de partitionnement effectuent un partitionnement à un niveau


sur des ensembles de données. (J.Han et al., 2012)
Le principale caractéristique de ces techniques est qu’elles sont basées sur la
distance et sur l’idée de construire K partitions des données, à partir d’un
ensemble de n objets, ou chaque partition représente un cluster.
L’un des algorithmes le plus populaire et le plus utilisé est l’algorithme de
K-Means.

— Clustering K-Means
Selon l’algorithme de classification K-Means , les clusters dépendent entièrement
de la sélection des centroı̈des des clusters initiales. K éléments de données
sont sélectionnés comme centres initiaux puis les distances de tous les
éléments de données sont calculées par la formule de distance euclidienne.
Les éléments de données ayant une distance inférieure aux centroı̈des sont
déplacés vers le groupe de couleurs approprié. Le processus se poursuit
jusqu’à ce qu’il n’y ait plus de changements dans les clusters [k-1].(Raval
and Jani, 2016)

2.5 Mesure d’évaluation


Une fois les phases de pré-traitement des documents, la sélection et la clas-
sification des documents terminent, une question importante dans la classi-
fication est celle de l’évaluation des algorithmes de classification. Comment
peut-on savoir si un algorithme de classification fonctionne ? Nous trouvons
2.5. MESURE D’ÉVALUATION 19

la réponse sur cette question dans cette étape qui consiste à déterminer l’ef-
ficacité des classificateurs.
En règle générale, les mesures d’évaluation dans les problèmes de classification
sont définies à partir d’une matrice nommé la matrice de confusion avec le
nombre d’exemples correctement et incorrectement classé pour chaque classe
comme illustre le tableau 2.1 . (Oprea, 2014)

Classe prédite
True Class False class
True
Classe True positive False positive
Class
actuelle
False
True négative False négative
Class

Table 2.1 – Matrice de confusion

Les concepts de PF, FN, TP et TN peuvent être décrits comme suit :

— Faux positifs (FP) : exemples prédits positifs, qui sont de la classe négative.
— Faux négatifs (FN) : exemples prédits comme négatifs, dont la vraie classe
est positive.
— Vrais positifs (TP) : exemples correctement prédits comme se rapportant
à la classe positive.
— Vrai négatifs (TN) : exemples correctement prédits comme appartenant à
la classe négative.

Dans ce stade-là, De nombreuses mesures de performances ont été utilisé,


comme : Accuracy, precision, recall et F-measure.(Oprea, 2014)

2.5.1 Accuracy
Il évalue l’efficacité du classificateur par son pourcentage de prédictions cor-
rectes.

|T N | + |T P |
Acc =
|F N | + |F P | + |T N | + |T P |

2.5.2 Recall
Évalue l’efficacité d’un classificateur pour chaque classe du problème binaire.
|T P |
R=
|F N | + |T P |
20 CHAPITRE 2. CLASSIFICATION DES DOCUMENTS

2.5.3 Precision
C’est une mesure qui estime la probabilité qu’une prédiction positive est
correcte.

|T P |
P =
|F P | + |T P |

2.5.4 F Measure
La précision et le rappel peuvent être combinés pour produire une seule
métrique appelée mesure-F, qui est la moyenne harmonique pondérée de
précision et de rappel.
2 ∗ T P Rate ∗ P recision
F M easure =
T P Rate + P recision

2.6 Conclusion
Dans ce chapitre nous avons présenté une vue détaillée des principaux ap-
proches de catégorisation des textes qui existent, ainsi leurs avantages et leurs
inconvénients.
On remarque pour les raisons des avantages qu’on a mentionné qu’on peut
dire que les approches supervisées sont très utilisées, néanmoins , il reste
certain cas qui nécessite les approches non supervisées pour les exemples
d’auto-apprentissage ( cela veut dire appliquer l’apprentissage sans aucune
connaissance préalable).
Chapitre 3

Ontologies

3.1 Introduction
Pour supporter l’interopérabilité, le partage et la réutilisation des connaissances
formellement représentées parmi les différents systèmes, il est utile de définir un
vocabulaire commun dans lequel les connaissances partagées seront représentées.
La spécification de ce vocabulaire de représentation est appelée Ontologie.
Le concept ” ontologie ” est un terme empreinte de la philosophie. Il est utilisé dans
des domaines variés tels que le web sémantique, le traitement de la langue naturelle,
la recherche d’information, l’intégration des données, les services web.
Une ontologie permet de représenter explicitement la sémantique des données en
réduisant les hétérogénéités qui peuvent apparaitre lors de l’intégration. Ainsi, elles
offrent un moyen pour décrire de manière formelle les connaissances d’un domaine
particulier, en définissant des concepts et des relations entre ces derniers .

3.2 Définition d’une ontologie


3.2.1 Définition philosophique
Selon Aristote l’ontologie est la philosophie première (l’étude de l’existence).

3.2.2 Définition informatique


D’après Gruber  une ontologie est une spécification explicite et formelle d’une
conceptualisation partagée .(Rani et al., 2017)

— Le terme conceptualisation signifie un modèle abstrait d’un phénomène


basé sur l’identification de concepts significatifs.
— Le terme explicite signifie que l’ensemble des concepts utilisés et leurs contraintes
d’utilisation sont définis d’une façon explicite.

21
22 CHAPITRE 3. ONTOLOGIES

— Le terme formelle précise que l’ontologie construite doit être lisible par un
ordinateur.
— le terme partagée montre qu’une ontologie fournit un vocabulaire conceptuel
commun et une compréhension partagée par la communauté visée. (Karima,
2015)

3.3 Les types d’ontologies


Les ontologies peuvent exister à plusieurs niveaux d’abstraction. Nous les regrou-
pons en quatre grande catégories comme illustre la figure 3.1. (N.Guarino, 1998)

Figure 3.1 – Les types d’ontologies

3.3.1 Ontologie de haut niveau(Top ontology)


La définition de l’ontologie de haut niveau (également appelée top-level ontologie,
ou ontologie de fondation) est une tentative de créer une ontologie décrivant des
concepts très généraux identiques dans tous les domaines. Le but est d’avoir un
grand nombre d’ontologies accessibles sous cette ontologie supérieure .(Mascardi
et al., 2007)
Ils existent plusieurs exemples sur les ontologies de haut niveau :
Cyc, SUO ,SUMO,WordnNet, etc.. l’un des exemples le plus utilisé est le WordNet.

3.3.2 Ontologie du domaine


Une ontologie de domaine spécifie des concepts propres à un domaine d’intérêt et
représente ces concepts et leurs relations dans une perspective de domaine spécifique.
Même si le même concept peut exister dans plusieurs domaines, les représentations
3.4. LES COMPOSANTS D’UNE ONTOLOGIE 23

peuvent varient considérablement en raison des contextes et des hypothèses de do-


maine différents.(Poli et al., 2010)

3.3.3 Ontologie de taches (Task Ontology)


Ce type d’ontologies est utilisé pour conceptualiser des tâches spécifiques dans
les systèmes, telles que les tâches de diagnostic, de planification, de conception,
de configuration. Soit tout ce qui concerne la résolution de problèmes. Ce type
d’ontologies décrit le vocabulaire concernant une tâche générique (ex. : enseigner,
diagnostiquer. . . ), notamment en spécialisant les concepts d’une ontologie de haut
niveau. Certains auteurs utilisent le nom  ontologie du domaine de la tâche  pour
faire référence à ce type d’ontologie.(N.Hernandez, 2005)

3.3.4 Ontologie d’application


C’est l’ontologie la plus spécifique, elle contient des concepts dépendants d’un do-
maine et d’une tache particulière, elle est spécifique et non réutilisable. Ces concepts
correspondent souvent aux rôles joués par les entités du domaine lors de l’exécution
d’une certaine activité. (N.Guarino, 1998)
Il s’agit donc ici de mettre en relation les concepts liés à une tache particulière de
manière à en décrire l’exécution.

3.4 Les composants d’une ontologie


— Concepts : sont des classes, ensembles, collections ou types d’objets.
— Relations : relations et interactions entre les concepts.
— Axiomes : sont utilisés pour décrire les assertions de l’ontologie qui seront
considérés après comme vrais, pour but de définir les significations des com-
posants d’ontologie.
— Fonctions : cas particuliers de relation, dans laquelle un élément de la re-
lation, par exemple le nième élément est défini en fonction des n-1 éléments
précédents.
— Instances : C’est une définition extensionnelle de l’ontologie, par exemple les
individus  Sarah  et  Souad  sont des instances du concept personne. 1

3.5 Construction d’ontologie


La construction d’une ontologie est une procédure très délicate. La difficulté
dépend de la taille de l’ontologie à construire et les problèmes de modélisation des
1. https ://fr.slideshare.net/benrich1991/ontologie-concept-applications
24 CHAPITRE 3. ONTOLOGIES

connaissances ontologique c’est-à-dire décider quels sont les concepts, les relations,
et quelle est leur notion.

3.5.1 Construire une ontologie manuellement


Selon (Cristani and Cuel, 2005) nous pouvons distinguer les principales étapes
suivantes du processus de développement d’une ontologie :

— Déterminer la portée.
— Envisager la réutilisation.
— Énumérer les termes.
— Définir la taxonomie.
— Définir les propriétés
— Définir les facettes.
— Définir les instances.
Comme tout processus de développement .Ces étapes devront être itéré, et il peut
être nécessaire de revenir aux étapes précédentes à tout moment du processus.

1. Déterminer la portée

Définir quelle ontologie sera utilisée et dans quel domaine et qui utilisera et
maintiendra l’ontologie.

2. Envisager la réutilisation

Avec le déploiement croissant du Web sémantique, de nombreuses ontologies,


en particulier des domaines communs (réseaux sociaux, médecine, géographie),
sont disponibles tels que :WordnNet, MeSH...

3. Énumérer les termes

Rédiger une liste de tous les termes utilisés dans l’ontologie, et décrire leurs
significations et leurs propriétés.

4. Définir la taxonomie

Il existe plusieurs approches possibles pour développer une hiérarchie de


classe :
— Le processus de développement descendant(Top-down) commence avec
la définition des concepts les plus généraux du domaine et spécialisation
ultérieure des concepts ;
— Le processus de développement ascendant(bottom-up) va à l’opposé di-
rection ;
3.6. LES LANGAGES D’ONTOLOGIES 25

— Un processus de développement de combinaison est une combinaison des


approches top-down et bottom-up.

5. Définir les Propriétés

Définir toutes les propriétés et informations nécessaires.

6. Définir les facettes

Il existe différentes facettes décrivant le type de valeur,les valeurs autorisées,


le nombre de valeurs et autres caractéristiques des valeurs : cardinalité,type,
valeur.

7. Définir les instances

Créer des instances de classes dans la hiérarchie, ce qui signifie choisir une
classe, créer une instance de cette classe.

3.6 Les langages d’ontologies


Différents langages de niveau de complexité croissante sont proposés afin de
mieux exploiter, combiner et raisonner sur les contenus des ressources d’informations
et de services.
Nous définissons quelques langages de représentation des ontologies les plus connues
et les plus utilisées.

3.6.1 RDF
RDF est un modèle de données simple pour décrire de manière sémantique les
ressources sur le Web. Les propriétés binaires relient des termes formant un graphe
dirigé. Ces termes ainsi que les propriétés sont décrits à l’aide d’URI. Puisqu’une
propriété peut être un URI, elle peut à nouveau être utilisée comme terme lié à une
autre propriété.
Les graphes RDF sont construits à partir de triples RDF (Figure 3.2 ). Les triples
RDF décrivent et connectent des objets via la combinaison de ressources, propriétés
et valeurs de propriétés. (Domingue et al., 2011)
26 CHAPITRE 3. ONTOLOGIES

Figure 3.2 – Triplets RDF

3.6.2 RDFS

Utilise des instructions RDF de base et définit un langage d’ontologie simple.


Spécifiquement, il définit des entités telles que rdfs : class, rdfs :subClassOf , rdfs :
subProperty , rdfs : domain et rdfs : range, permettant ainsi de modéliser des classes,
des propriétés avec des restrictions de domaine et de plage, et des hiérarchies de
classes et de propriétés. (Domingue et al., 2011)
La Figure 3.3 illustre bien les primitives de RDF(S). Les concepts et les relations sont
déclarés dans un document RDF(S) comme instances de  Classe  et de  propriété
.
2

2. https ://www.w3.org/People/EM/talks/www7/tutorial/part2/sld063.htm
3.6. LES LANGAGES D’ONTOLOGIES 27

Figure 3.3 – Le schéma RDFS

3.6.3 DAML + OIL


DAML + OIL est un langage de balisage sémantique pour les ressources Web.
Il s’appuie sur les normes antérieures du W3C telles que RDF et RDFSchema, et
étend ces langages avec des primitives de modélisation plus riches. La langue a une
sémantique propre et bien définie. Une ontologie DAML + OIL est composée de
plusieurs composants, dont certains sont facultatifs et d’autres peuvent être répétés.
les constructions DAML + OIL sont présentées dans un format structuré, et non
comme des triplets RDF . Ce format RDF structuré est plus naturel à lire. 3

3.6.4 OWL
L’expressivité des RDFschémas et RDF est délibérément très limitée : RDF est
(grossièrement) limité aux prédicats de sol binaires, et RDF Schema est (encore
grossièrement) limité à une hiérarchie de sous-classes et à une hiérarchie de pro-
priétés, avec le domaine et les définitions de gamme de ces propriétés.
Cependant, le groupe de travail sur les ontologies Web du W3C a identifié un
certain nombre de cas d’utilisation caractéristiques des ontologies sur le Web qui
3. https ://www.w3.org/TR/daml+oil-reference
28 CHAPITRE 3. ONTOLOGIES

nécessiteraient beaucoup plus d’expressivité que RDF et le schéma RDF. Il a en-


suite défini OWL, le langage qui est censé être le langage ontologique normalisé et
largement accepté du Web sémantique.
OWL est développé comme une extension du vocabulaire de RDF et il est dérivé du
langage d’ontologies DAML + OIL . (Staab and Studer, 2009)
OWL à trois langages de plus en plus expressifs :
1. OWL Full
2. OWL DL
3. OWL Lite

3.7 Les approches de l’ontologie


3.7.1 Alignement
L’alignement d’ontologies est le processus de découverte de similitudes entre deux
ontologies sources. Le résultat d’une opération d’appariement est une spécification de
similitudes entre deux ontologies. L’alignement de l’ontologie est généralement décrit
comme l’application de ce qu’on appelle l’opérateur de correspondance (E.Rahm and
PA.Bernstein, 2001).
L’entrée de l’opérateur est un certain nombre d’ontologies et le résultat est une
spécification des correspondances entre les ontologies Figure 3.4.(Elasri et al., 2014)

Figure 3.4 – Exemple d’alignement


3.7. LES APPROCHES DE L’ONTOLOGIE 29

1. Les algorithmes d’alignement (Martinez-Gil et al., 2012)

(a) Les algorithmes d’alignement basés sur les éléments


Sont des méthodes qui prennent en compte uniquement les informations
textuelles sur les entités. Ces informations textuelles peuvent être ex-
ploitées de nombreuses manières : en comparant les identifiants des en-
tités, leurs commentaires associés, les identifiants de leurs enfants, leurs
associés, et ainsi de suite.
Parmi ces méthodes on trouve :

— Méthodes de similarité de texte .


— Algorithmes d’extraction de mots clés.
— Algorithmes basés sur la langue.
— Identification des relations de mots.

(b) Les algorithmes d’alignement basés sur la structure

— Analyse d’héritage de classe (is-a).


— Analyse structurelle / Structure taxonomique.
— Interprétation des données et analyse des propriétés clés.
— Cartographie de graphes .

(c) Les algorithmes de correspondance sémantique


Selon Euzenat et Shvaiko , l’appariement sémantique des algorithmes
traitent l’entrée en fonction de son interprétation sémantique.

3.7.2 Mapping

Le mapping d’ontologies est un processus qui spécifie une convergence sémantique


entre différentes ontologies afin d’en extraire les correspondances entre certaines en-
tités.(Natalya, 2004)
Ces correspondances sont exprimées en introduisant des axiomes formulés dans un
langage spécifique.
Trois phases principales peuvent être distinguées dans ce processus (voir la figure
3.5) (N.MELLAL, 2007)
30 CHAPITRE 3. ONTOLOGIES

Figure 3.5 – Le mapping des ontologies

1. Methodes du mapping

Le processus actuel consiste à cartographier et à déployer un hôte de différentes


méthodes, provenant de régions très différentes. Nous distinguons les méthodes
(Antoniou et al., 2012) :

(a) Les méthodes linguistiques


(b) Les méthodes statistiques
(c) Les méthodes structurales
(d) Les méthodes logiques

3.7.3 Fusion
La fusion d’ontologies représente la création d’une nouvelle ontologie à partir de
deux ontologies ou plus.(J.Davies et al., 2006)
L’ontologie résultante unifie et remplace les ontologies d’origine (voir la figure 3.6 )
(N.MELLAL, 2007).
3.7. LES APPROCHES DE L’ONTOLOGIE 31

Figure 3.6 – Le principe de la fusion d’ontologies

1. Les approches de fusion (N.MELLAL, 2007)

Plusieurs approches mettant en œuvre la fusion d’ontologies ont été proposées


telles que :
— Prompt.
— OntoMerge.

3.7.4 Intégration
L’intégration d’ontologies peut être définie comme le processus d’intégration de
deux ou plusieurs ontologies sources pour créer une nouvelle ontologie (intégrée)
.(J.E.L.Vergara et al., 2003)
Au cours du processus d’intégration, il peut être nécessaire d’affiner les ontologies
sources avant de les intégrer.

1. Méthodes d’intégration

Il existe trois méthodes différentes impliquant l’intégration d’ontologies : (Ka-


rima, 2015)
32 CHAPITRE 3. ONTOLOGIES

— Le développement d’une nouvelle ontologie réutilisant d’autres ontologies.


— La fusion de différentes ontologies qui traitent du même sujet, résultant
en une ontologie unique les unifiant.
— Intégration d’ontologies dans des applications.

3.8 Conclusion
Au long de ce chapitre, nous avons essayé d’éclaircir la notion d’ontologie en
présentant certaines définitions.Nous avons montré aussi leurs avantages, les notions
de base liées aux ontologies, les types des ontologies, les langages de description des
ontologies.
Par conséquent , l’utilisation des ontologies en tant que clés permettant d’améliorer
la classification dans cet environnement mais reste un problème ouvert. Les défis
et les limitations, tels que la taille et l’hétérogénéité des documents, la rareté des
connaissances sémantiques, les contraintes d’utilisation, ou l’absence de critères
d’évaluation formels, peuvent être soulignés comme l’une des principales raisons
de la lenteur de l’application de l’extraction sémantique.
Troisième partie

État de l’art

33
Chapitre 4

État de l’art

4.1 Introduction
Les systèmes de classification de documents sont basés sur des méthodes qui
permettent aux utilisateurs de récupérer l’information souhaitée en vue de classifier
leurs documents.
Les premières techniques de classification de documents ne sont pas généralement
basées sur la sémantique.
Dans ce chapitre, nous allons faire un tour d’horizon de différents travaux qui ont
été menés dans le contexte de classification de documents à base d’ontologie dont
les travaux du domaine ont approuvé une efficacité remarquable par l’utilisation de
cette dernière .

4.2 Les approches proposées

4.2.1 Système de classification de pages web basée sur une


ontologie à l’aide de classificateurs améliorés C4.5 et
Naive Bayesian

Hnin Pwint Myu Wai et al (Pwint Myu Wai et al., 2018) ont proposé un
système de classification de pages Web basé sur l’ontologie en utilisant un arbre
de décision C4.5 amélioré et des classificateurs Naı̈ve Bayésien. Leurs objectif est
de classer le contenu web d’une manière organisée en classant les pages web en
catégories pertinentes afin d’aider les moteurs de recherche à fournir des résultats
plus rapides et meilleurs. Ce système est testé en utilisant des documents HTML
dans le domaine informatique.

35
36 CHAPITRE 4. ÉTAT DE L’ART

Architecture

Figure 4.1 – Architecture du système proposé

Principe
Ce système comporte trois parties principales qui se résument dans :
1. Un processus de pré-traitement qui consiste à la tokenization,la suppression
des mots vides (Stop words) et extraire les descripteurs de ces pages web.
4.2. LES APPROCHES PROPOSÉES 37

2. Dans la partie extraction sémantique, ce système recherche le sens pertinent


pour les descripteurs extraits en utilisant une ontologie.
3. Ensuite, ce système exécute le processus de classification en utilisant l’algo-
rithme C4.5 amélioré pour produire l’arbre de décision afin de générer les
règles de décision de classification, en considérant la sémantique ensuite choi-
sissant l’attribut ayant le résultat de rapport de gain d’information normalisé
le plus élevé en tant que nœud racine. Rapport de gain :

Parfois, ce système peut faire face au problème dans le processus de production de


l’arbre de décision. Ce problème est que les algorithmes C4.5 et C4.5 amélioré ne
peuvent parfois pas produire les derniers nœuds feuilles. Dans cette situation, ce
système utilise classificateur Naı̈ve Bayésien pour résoudre ce problème.
Enfin, ce système attribue la catégorie relative à la page Web saisie par l’utilisateur
en fonction des règles de décision.
Ce système est testé à l’aide de 150 pages Web et de 200 pages Web pour mesurer
l’exactitude du système de classification des pages Web par l’ontologie proposée.Pour
les tests, ce système a utilisé les règles de décision de la classification de page Web.
Sur les 150 pages Web testées, ce système correspond à un taux correct de 92% et
à un taux d’erreur de 8%. Et puis, le taux correct et le taux d’erreur de 200 pages
Web sont respectivement de 92,5% et 7,5%.

4.2.2 Classification des documents médicaux basée sur l’on-


tologie de domaine MESH (Medical Subject Headings)
Zakaria Elberrichi et al (Elberrichi et al., 2012) ont présenté une approche
de classification de document web qui est basée sur une ontologie de domaine MESH
38 CHAPITRE 4. ÉTAT DE L’ART

.Leurs objectif étaient de fournir une de fournir un méthode pour améliorer la clas-
sification de documents médicaux en exploitant cette dernière, ce qui leur a permis
de générer une nouvelle représentation basée sur des concepts.

Architecture

Figure 4.2 – Une représentation conceptuelle pour l’approche proposé

Principe
Le problème principal dans la classification est la représentation de documents
textes .La représentation la plus largement utilisée dans ce domaine est le sac de
mots (Bag of words).Dans cette approche ils ont proposés une méthode afin de
réduire les limites de cette représentation, cette méthode est basée sur les concepts,
ce qui permettra, tout en enrichissant le vecteur de représentation, de réduire sa
dimension.
— Tout d’abord, mapper les termes en concepts, en choisissant une stratégie
d’appariement et d’homonymie pour enrichir le vecteur de représentation.
— Ensuite, un deuxième enrichissement en ajoutant des hyperonymes au vecteur
de représentation.
Cette approche est répartie en 6 étapes principales : :
4.2. LES APPROCHES PROPOSÉES 39

1. Prétraitement : dans lequel en supprimant les mots les plus fréquemment


rencontrés(Stopwords) et le processus de racinisation (Stemming) qui se base
sur l’algorithme Porter.
2. Mapping des termes en concepts : Les mots sont mappés dans leurs
concepts associés en utilisant l’ontologie. Par exemple, les deux mots l’ap-
pendicite et l’appendice sont mappés dans le l’appendicite concept et les
fréquences de terme de ces deux mots sont ajoutés dans la fréquence du
concept.
3. Les stratégies de la désambiguı̈sation : problème de la désambiguı̈sation
des sens WSD (problem of sense disambiguation) se produit quand un mot
a plusieurs significations et donc peut être mappé dans plusieurs concepts.
Deux simples stratégies ont été proposées afin de résoudre ce problème :
— Tous les concepts : Cette stratégie considère tous les concepts comme
des concepts appropriés pour augmenter la représentation textuelle, mais
la dimensionnalité sera augmenter.
— Premier concept : cette stratégie considère uniquement les plus souvent
utilisé sens du mot comme le plus approprié concept.
Cette stratégie repose sur l’hypothèse que l’ontologie utilisée renvoie une
liste ordonnée de concepts dans lesquels des significations plus communes
sont énumérés avant les moins communs. C’est le cas pour la plupart des
ontologies. Dans ce cas, les fréquences de concept sont calculées comme
suit :

n o
cf (d.c) = tf d, t ∈ T | premier(ref, (t)) = c
4. Utilisation d’hyperonymes : l’utilisation de la relation d’hyperonymes
entre concepts en ajoutant à la notion de fréquence de chaque concept dans
un texte la fréquence d’affichage de leurs hyponymes. Puis les fréquences de
la partie vecteur sont mises à jour de la manière suivante :
cf 0 (d.c) =
X
cf (d.b)
b∈H( c)

Où H (c) donne pour un concept donné c ses hyponymes.


5. Sélection et réduction des descripteurs : chaque document dans le cor-
pus sera représenté par un vecteur dont les descripteurs sont les concepts de
l’ontologie. Chaque concept est associé avec la fréquence d’apparition dans le
corpus de la catégorie. Cette sélection consiste à choisir pour chaque catégorie
les descripteurs qui le caractérisent le mieux. La pondération TF-IDF est uti-
lisée pour représenter l’importance de terme dans une catégorie. Et pour la
technique de sélection qui est nécessaire pour la réduction de dimensionna-
lité, ils ont utilisés la statistique du chi carré, qui consiste à mesurer le degré
d’association entre un terme et une catégorie.
40 CHAPITRE 4. ÉTAT DE L’ART

6. La classification : une fois, le pré-traitement est terminé et la représentation


des concepts est effectuée, un modèle est construit en utilisant la matrice
formé par les vecteurs de concept, et deux algorithmes d’apprentissage auto-
matique les plus populaires : C4.5 et KNN.Comme illustre la figure 4.2
7. Évaluation Afin de démontrer l’utilité de l’utilisation de l’ontologie MESH
un test sur le système a été fait en utilisant la collection Ohsumed(proposé
dans le framework Task-filtering , dans laquelle un document composé de 6
champs :
titre(.T), résumé(.W), MeSH idexed concepts(.M),auteur (.A),source(.S),publication(.P)
) en appliquant F-measure qui est la moyenne harmonique de précision et de
rappel, et l’ontologie MESH. Le tableau 4.1 montre les résultats obtenus com-
parant avec les stems :

Concepts +
Descriptors Concepts Stems
Hypernonym
Algorithms KNN C4.5 KNN C4.5 KNN C4.5
C1 0.962 0.959 0.961 0.936 0.450 0.511
C2 0.953 0.919 0.957 0.928 0.667 0.623
C3 0.927 0.705 0.938 0.936 0.581 0.629
C4 0.926 0.936 0.95 0.887 0.629 0.5
C5 0.933 0.954 0.82 0.951 0.69 0.421
C6 0.942 0.935 0.958 0.939 0.545 0.427
C7 0.954 0.943 0.959 0.949 0.5 0.468
C8 0.598 0.672 0.627 0.497 0.606 0.487
AvG 0.919 0.89 0.923 0.908 0.601 0.531

Table 4.1 – F Measure pour les concepts et stems

Les résultats expérimentaux montre que la représentation basée sur l’ontolo-


gie fournit une amélioration significative de 30% de performances , de plus
L’enrichissement du vecteur de représentation par des hyperonymes en plus
des concepts connexes est une bonne idée, car le gain de performance est
encore meilleur.

4.2.3 Classification associative améliorée des documents XML


pris en charge par les concepts sémantique
Thasleena N.T et al (Thasleena and Varghese, 2015) ont proposé une nouvelle
approche basée sur la classification supervisée, pour classer une collection donnée de
documents XML basée sur un classificateur en utilisant des règles et en incorporant
des informations sémantiques sur la structure et les informations de contenu extraites
du document XML. Cette méthode applique un algorithme de FP-GROWTH pour
4.2. LES APPROCHES PROPOSÉES 41

générer des règles d’association et Wordnet pour trouver des concepts sémantiques
sur.
Le but de cette approche est de mapper les balises et les termes dans un espace de
concepts ontologique qui permet d’avoir plus de fonctionnalités expressives pour la
classification automatique.

Architecture

Figure 4.3 – Architecture du système proposé

Principe
Le système proposé est composé de deux phases principales, la phase d’appren-
tissage suivie par la phase de prédiction.
— Phase d’apprentissage construit un classificateur C à partir d’une base de
données d’arbres XML étiquetée.
— La phase de test exploite le classificateur C pour prédire la classe des arbres
XML non étiquetés.
La première phase est constituée des étapes suivantes :
42 CHAPITRE 4. ÉTAT DE L’ART

1. Extraction des descripteurs :


Les descripteurs structurelles sont extraites en traçant le chemin de la balise
racine à la balise feuille dans chaque arbre XML.
Dans XCCS1, des termes individuels sont ajoutés au chemin de la balise pour
générer la structure finale. Les descripteurs extraits à partir des données XML
basées sur XCCS sont : [‘article/bodyv̂ideo game’].

Dans la méthode proposée à la place des termes, les phrases nominales sont
ajoutées au chemin des balises, en créant NP-chunker, commençant par définir
une grammaire, composée de règles . À l’aide de cette grammaire, en créant
un analyseur de contenu XML. Basé sur cette méthode, les données XML
seront [‘article/bodyv̂ideo game’].

2. Sélection des descripteurs : La méthode du chi carré est utilisée pour la


sélection des descripteurs qui ont des valeurs les plus élevées.

3. Sémantisation des descripteurs : Consiste à mapper les termes dans un


espace de concept ontologique, en enrichissant la structure et le contenu par
des informations sémantiques issues de Wordnet.

4. Extraction de règles en utilisant FP-GROWTH : Le processus d’ap-


prentissage reçoit quatre paramètres d’entrée : un jeu de données D d’arbres
XML, F les descripteurs sémantiques, L les étiquettes de classes dans D et un
seuil t. Premièrement il crée une représentation transactionnelle de chaque
arbre d’un XML. Ensuite, il applique l’algorithme FP-GROWTH sur les des-
cripteurs sémantiques afin de générer des éléments fréquents(FI) en fonction
de la valeur de seuil minimale, l’étape suivante consiste à construire la classe
règle d’association (CAR) de l’élément fréquent. CAR associe l’occurrence
d’une certaine combinaison de caractéristiques dans une représentation tran-
sactionnelle d’arborescence XML à une classe particulière. Puis, la règle finale
est la règle dont la valeur de confiance est supérieure au seuil minimal. En-
fin, Utiliser la méthode ”Pruning” pour associer l’ensemble de règles R au
classificateur C.
4.2. LES APPROCHES PROPOSÉES 43

5. Purning : Appliquant cette méthode afin de résoudre le problème des prévisions


contrastées dû au grand nombre de règles d’association générés.
6. Phase de test : Les documents XML de l’ensemble de tests doivent être
classés par le classificateur associatif final .Ces documents sont soumis à une
étape d’extraction des descripteurs comme à une phase d’apprentissage. Un
ensemble de sémantiquement enrichi fonction sera obtenue à partir de chaque
document XML de test. Ces descripteurs de test sont comparés à chaque
antécédent de règles du classificateur associatif. Le document de test sera
classé dans la classe dont les règles sont satisfaites au maximum par les fonc-
tionnalités des documents XML. -les performances de la méthodologie pro-
posée pour la classification des documents XML sont établies en exploitant
les ensembles de données de Wikipédia qui est un corpus XML proposé dans
le concours INEX 20078.
Le tableau 4.2 résume l’efficacité de la méthode proposée choisie et de XCCS
dans les ensembles de données Wikipedia

Method Dataset Precision Recall F Measure


Wikipedia 0.88 0.83 0.84
Proposed System
XCCS Wikipedia 0.77 0.78 0.78

Table 4.2 – Comparaison de performance : Wikipedia

4.2.4 Classification de texte basée sur une ontologie dans


des sujets définis d’une manière dynamique
Mehdi Allahyari et al (Allahyari et al., 2014)proposent une approche pour la
classification automatique des documents texte qui repose uniquement sur une on-
44 CHAPITRE 4. ÉTAT DE L’ART

tologie de domaine et un ensemble de sujets de classification définis par l’utilisateur.


Contrairement aux méthodes traditionnelles de classification de texte, qui reposent
sur un corpus pré-classé dans un nombre de catégories fixes.
(Allahyari et al., 2014) proposent d’utiliser une ontologie et contextes ontolo-
giques définis dynamiquement comme classification catégories. La nouveauté de leur
méthode de catégorisation est qu’elle ne nécessite pas un ensemble de corpus répartis
dans un ensemble fixe de catégories et repose exclusivement sur la connaissance
représentée dans l’ontologie c’est-‘a-dire les entités nommées, relations entre eux,
la classification des entités et la hiérarchie de classes et des contextes d’ontologie
définissables de manière dynamique, représentant les sujets d’intérêt (catégories de
classification).

Principe
Ils ont converti Wikipédia en une Ontologie RDF en utilisant un outil DBpedia
modifié. Leur algorithme de catégorisation se base sur trois étapes principales :
— La première est la construction du graphe sémantique qui est construit à
partir des entités identifiées dans le document. Ils ont supposé que chaque
entité dans l’ontologie a une ou plusieurs propriétés littérales associées avec
lui.
— Ensuite une sélection et une analyse du graphe thématique, cette étape basé
sur l’hypothèse que les entités liées à une même catégorie sont étroitement
associées dans l’ontologie, tandis que les entités de différents catégories sont
très éloignées, ou même pas du tout connectées.
— Pour finir une classification dans des contextes ontologiques définis qui est
basé sur le calcul d’une similarité de la graphique du document dans chacun
des contextes définis.
— Et dernièrement ils ont calculés le Score d’associativité sémantique de la
catégorie informatique. Pour calculer l’associativité sémantique d’un docu-
ment à un contexte de catégorisation, ils ont calculé d’abord le score d’adhésion
et le score de couverture.
Compte tenu de Wikipédia en tant que graphe orienté G = W, V, E et un
concept Wikipédia wi et catégorie vj, le score d’adhésion mScore (wi, vj) du
concept wi à la catégorie vj est définie comme suit :

mScore(wi, vj) = m(ek)

Où m (ek) est le poids des liens d’appartenance (liens de catégorie), ek, du
nœud vi (ou wi) à la catégorie v V, n est le nombre de liens d’appartenance,
et El = e1, e2,. . . , em représente un ensemble de tous liens d’appartenance
formant le chemin le plus court p du concept wi à la catégorie vj.
Le score de couverture cScore (c, e) d’une entité e par un Wikipedia la
catégorie c est calculée à l’aide de la formule suivante :
4.2. LES APPROCHES PROPOSÉES 45

Le score d’associativité sémantique entre une catégorie et un ensemble des


entités est défini comme suit :

Score de catégorisation des documents en contexte ontologique : pour trouver


le score de catégorisation d’un document dans un contexte ontologique (su-
jet), nous commençons par mesurer la relation sémantique entre les entités
de Wikipédia (concepts).

— Afin de tester la performance de leurs système , ils ont mené trois expériences
sur le corpus de Reuters .
1. Lors de la première expérience, ils ont évaluer la catégorisation de base
de leurs système en créant des contextes de catégorisation constitués de
catégories Wikipedia de haut niveau les contextes définis incluaient des
catégories Wikipedia avec des noms correspondant directement aux noms
de catégories de Reuters.
La précision micro en moyenne (MAP) donne une moyenne de 93.8%.
2. Dans la seconde expérience, ils ont évaluer l’efficacité de la catégorisation
en sujets composés d’unions de contextes ils ont non seulement identifié les
sujets de haut niveau des documents, mais également leurs sous-thèmes
spécifiques.
La précision micro en moyenne (MAP) donne une moyenne de 87.6%.
3. Lors de la troisième expérience, ils ont évaluer la capacité de leurs système
à catégoriser les documents en sujets traités comme des compositions de
contexte plus complexes.
La précision micro en moyenne (MAP) donne une moyenne de 89.3%.
Les résultats expérimentaux ont montré que leurs méthode de catégorisation
basée sur des ontologies a donné de très bons résultats .Ces résultats sont
46 CHAPITRE 4. ÉTAT DE L’ART

particulièrement prometteurs compte tenu du fait que leurs méthode ne s’ap-


puyait pas sur une formation de classificateur et qu’elle pouvait facilement
s’appliquer à tout autre ensemble de sujets définis en tant que contextes de
classification ou leurs compositions.

4.2.5 Amélioration de la classification de texte à base d’on-


tologies : une application pour la santé et la sécurité
au travail

Nayat Sanchez-Pi et al (Sanchez-Pi et al., 2016) ont proposé deux nouvelles


méthodes de classification de texte basées sur l’exploitation des connaissances exis-
tantes représentées dans une ontologie de domaine, ils se sont concentrés sur un
problème réel de la plus haute-pertinence : les problèmes de santé, de sécurité et
d’environnement dans l’industrie pétrolière et gazière. La nouveauté de leurs ap-
proches est qu’elles ne dépendent pas de l’existence d’un ensemble d’apprentissage,
car elles reposent uniquement sur les entités ontologiques, leurs relations et la taxo-
nomie des catégories qu’elles représentent.
4.2. LES APPROCHES PROPOSÉES 47

Architecture

Figure 4.4 – diagramme de processus de flux

Principe
La première méthode utilisé est appelée classificateur d’ontologies qui est com-
posée par un ensemble de modules :
— Une lemmatisation, un stem et un stop-word enlevant le prétraitement pour
ce travail ils ont appliqués les fonctionnalités fournies par le cadre Apache
Lucene et un module de recherche infinitif de verbe portugais spécialement
développé pour ce dernier.
— Ils ont intégré aussi un thésaurus pour surmonter le domaine de classification
étroit possible imposé par l’ensemble limité de termes présents dans l’onto-
logie pour ce dernier ils ont utilisé une version personnalisée du thésaurus
OpenOffice brésilien portugais.
La deuxième méthode est appelé le classificateur d’ontologie de la pertinence à terme
qui consiste à l’amélioration de la première méthode .
Elle ajoute l’utilisation d’une liste de synonymes techniques attachée à des éléments
48 CHAPITRE 4. ÉTAT DE L’ART

d’ontologie Ces listes sont générées de manière semi-automatique en utilisant un


algorithme d’extraction de n-grammes qui est une sous-séquence de n éléments
construite à partir d’une séquence donnée.
Ce classifieur incorpore un nouveau critère de similarité qui établit un équilibre entre
le niveau de similarité utilisé dans le cas précédent et la pertinence du terme de re-
cherche donné par rapport au texte en général.
Le test a été fait sur un jeu de données d’expérimentation contenant les champs
descriptifs de 500 anomalies et qui ont étiqueté à la main en utilisant les termes
d’ontologie existants et appliqué les deux algorithmes précédents pour vérifier le
degré d’étiquetage correct du texte. Les résultats expérimentaux ont montré que
les méthodes basées sur des ontologies surpassent l’approche purement machine-
Learning et qui ont donné de meilleures performances par rapport à une approche
d’apprentissage automatique . De même, ils ont également montré les améliorations
substantielles de performance obtenues avec la modification proposée par la deuxième
approche.
Le tableau 4.3 résume la performance de classification obtenu selon les 3 méthodes
testées.

SVM Ontology Term Relevance


Classifier Classifier OC
Accuracy 0.542 0.6543 0.9432
Precision 0.6401 0.6396 0.9620
Recall 0.614 0.6735 0.9643
F score 0.614 0.6735 0.9643
Specificity 0.7673 0.8643 0.9524

Table 4.3 – Mesures de performance de classification générées par les trois algo-
rithmes comparé

4.2.6 Une nouvelle approche pour la réduction de la dimen-


sionnalité basée sur l’ontologie pour la classification
de documents texte web
Mohamed K. Elhadad et al (Elhadad et al., 2017) ont proposé une ap-
proche pour l’amélioration de processus de classification des documents texte web en
réduisant la dimensionnalité de la taille du vecteur de caractéristiques utilisé dans
les taches d’extraction.

Architecture
4.2. LES APPROCHES PROPOSÉES 49

Figure 4.5 – Le schéma fonctionnel du système proposé.

Principe
Pour la représentation du document texte ils ont utilisé dans leur approche une
méthode dans laquelle ils ont appliqué deux phases principales :
— La première phase est la phase d’extraction de descripteurs qui vise à pré-
traiter les documents d’entrée pour cette dernière ils ont utilisé Analyseur
de langage naturel (NLP) afin de détecter les phrases les tokens en séparant
les mots pour l’analyse, stop words pour la suppression des mots inutiles,
nettoyage de données, stemming en remplaçant chaque mots extraits par sa
racine morphologique.
— La deuxième phase est la phase de la sélection des descripteurs basée sur
l’ontologie qui vise à réduire la dimensionnalité du fichier sac de mot extrait
en se basant sur la hiérarchie de l’ontologie WordNet afin d’éliminer les
mots qui n’ont aucune relation avec aucune catégorie lexicale WordNet, sans
perdre d’informations sur le texte pour cela ils ont appliqué la mesure de
similarité WuPalmer comme l’une des mesures basées sur la longueur du
chemin.
Pour la classification ils se sont basés sur deux phases principales :
— La première génère un vecteur de caractéristiques pondéré pour chacun des
documents, en utilisant la technique de Tf-IDf .
— La deuxième phase concerne la construction d’un modèle de classification par
50 CHAPITRE 4. ÉTAT DE L’ART

l’application d’un algorithme de classification, en utilisant les classificateurs


bien connus tels que Naive-Bayes, J48, JRip et SVM.
Le test à été effectué sur un jeu de données Reuters-21578 qui consistent en 21578
collections de nouvelles histoires classées par thèmes et en comparant la technique
de réduction de dimensionnalité basée sur une ontologie proposée à la PCA en tant
que méthode de réduction de dimensionnalité classique correspondante .
Les résultat expérimentaux ont montré l’efficacité de l’approche proposé et sa supériorité
par rapport à l’approche PCA en utilisant les 4 classificateurs dont J48 à donné une
précision de 49.54% pour l’approche PCA et le SVM à donné une précision de 85.13%
pour l’approche basé sur l’ontologie.
le tableau 4.4 montre le résultat obtenu.

Performance PCA-based Ontology-based


Category
measure feature reduction feature reduction
Accuracy (%) 27.9279 75.2252
F-Measure 0.284 0.759
Naive-Bayes
Recall 0.279 0.798
Precision 0.406 75.6767
Accuracy(%) 46.3964 75.6767
F-Measure 0.458 0.762
JRip
Recall 0.464 0.757
Precision 0.529 0.795
Accuracy(%) 49.5495 81.0811
F-Measure 0.498 0.814
J48
Recall 0.495 0.811
Precision 0.539 0.843
Accuracy(%) 32.4324 85.1251
F-Measure 0.323 0.85
SVM
Recall 0.324 0.851
Precision 0.607 0.876

Table 4.4 – Mesure d’évaluation en utilisant 4 differents classificateur

4.3 Tableau comparatif


Nous avons essayer dans le tableau 4.3 de présenter les principales différences
entre les approches citées précédemment, en s’appuyons sur les critères de compa-
raison suivants : Dataset utilisé , les techniques utilisées pour chaque approche tel
que ls algorithmes d’apprentissage et l’utilisation des concepts sémantique , le degré
de performance des résultats retournés par le système , mesure d’évaluation utilisé .
4.3. TABLEAU COMPARATIF 51

Auteurs Dataset Algorithmes sémantique Performances Mesure d’évaluation


d’apprentissage

350 pages web .


2 test effectué : - 92% pour
C4.5 amélioré 150 pages.
(Pwint Myu Wai et al., 2018) Utilise une ontologie Précision
1er sur 150 pages + Naive - Bayes - 95.5% pour
web . 200 pages
2eme sur 200 pages
web.

Testé sur - C4.5 Thesaurus C4.5 = 0.908


F Measure
(Elberrichi et al., 2012) 8 catégories du - KNN MESH KNN = 0.923
corpus Ohsumed

Corpus XML Précision =0.88 - Precision


FP Growth -Wordnet
proposé dans Recall = 0.83 - Recall
(Thasleena and Varghese, 2015) + Methode prume -Lesk
le concours INEX F Measure = 0.84 - F Measure
2007

- 93.8% pour
les sujets
de haut niveau
des documents
wikepdia
- 87.6 % pour
Flux RSS
les sujets
de Reuters Ontologie basée
/ de haut niveau MAP
(Allahyari et al., 2014) (2013-10-24 sur wikipedia
des documents
- 2014-01-30).
wikepdia
et leurs
sous-thèmes
spécifiques
- 89.3% Pour les
contextes
composés
Méthode 1 : Classificateur d’ontologie
Jeux de
données de 500
(Sanchez-Pi et al., 2016) / Thesaurus 0.8643 Specificity
anomalies
openOffice
Méthode 2 : Classificateur d’ontologie de la pertinence à terme

n-gramme Thesaurus OpenOffice 0.9524 Specificity


+ liste de synonymes
Méthode 3 : Méthode d’apprentissage classique
SVM / 0.7673 Specificity
Méthode 1 : Ontologie basée sur la réduction de dimentionnalité
741 documents
(Elhadad et al., 2017) - 558 pour -SVM ,J48, JRip ,Naive-Bayes Wordnet - Naive-Bayes = 0.798 - JRip = 0.795 - J48 = 0.843 - SVM = 0.876 Specificity
l’entrainement WuPalmes
-183 pour Méthode 2 : PCA basé sur la réduction de dimentionnalité
le test -SVM ,J48, JRip ,Naive-Bayes / - Naive-Bayes = 0.406 - JRip = 0.529 - J48 = 0.539 - SVM = 0.607 Specificity

4.3.1 Synthèse
D’après l’analyse du tableau, on constate que les méthodes basées sur les on-
tologies ont amélioré considérablement les performances des systèmes en comparai-
son avec les travaux qui leurs précèdent qui s’appuient sur les méthodes purement
machine-Learning et donnent de meilleures performances par rapport aux méthodes
d’apprentissage automatique avec une évaluation remarquable.
D’un autre coté ces approches unifient sur un même objectif qui est la classifica-
tion des documents en se basant sur la sémantique.
On constate également que :
— Certaines approches qui se focalisent sur un domaine ou une langue spécifique
rendent impossible une évaluation directe des algorithmes comme l’approche
d’amélioration de classification de texte à base d’ontologie qui se focalise
seulement sur le domaine de sécurité et santé et sur le thésaurus OpenOffice
portugais et l’approche de classification de documents médicaux qui se base
sur l’ontologie du domaine MESH.
— Dans le cas de mesure d’évaluation on remarque que la précision à prouvé
son efficacité en comparaison avec les autres mesure d’évaluation.
— On remarque aussi que la combinaison de plusieurs algorithmes d’apprentis-
sage améliore la performances .
52 CHAPITRE 4. ÉTAT DE L’ART

4.4 Conclusion
Dans ce chapitre, nous avons présenté les différentes études et approches dans la
classification de documents à base d’ontologie. Les problématiques et les solutions
présentées par les chercheurs, diffèrent l’une de l’autre en fonction du domaine d’ap-
plication, techniques utilisées , que nous avons illustré dans le tableau comparatif.
Nous avons remarqués que la voie prometteuse dans ce domaine est l’approche qui
utilise la réduction de dimensionnalité basée sur l’ontologie pour la classification
de documents texte web car d’après l’analyse du tableau comparatif, elle permet
d’améliorer le processus de classification des documents en fonction des mesures
d’évaluation de base : précision, rappel et F-mesure.
Quatrième partie

Étude de l’existant

53
Chapitre 5

Étude de l’existant

5.1 Introduction
Afin de pouvoir proposer des solutions et identifier les problèmes et les faiblesse
auquel les utilisateurs sont affrontés une étude de l’existant est nécessaire pour avoir
une vue détaillé de la situation actuelle.

5.2 Présentation de l’organisme

le Groupe des Sociétés HASNA0UI (GSH) est une organisation algérienne Créée
en 1974, elle est présente dans les secteurs de la construction et de l’agriculture. GSH
rassemble plus de 17 entreprises opérant dans trois principaux pôles : Construction,
agriculture et services. II emploie aujourd’hui plus de 3000 collaborateurs répartis à
travers le pays.

55
56 CHAPITRE 5. ÉTUDE DE L’EXISTANT

5.2.1 Activités et Missions


Le GSH compte 17 filiales sont réparties en 3 pôles (Construction, Agriculture,
Service) :
Dans le Pôle de Construction (12 filiales) :
1. SPI (Société de Promotion Immobilière Hasnaoui) : crée en 2016
et reprenant l’activité de la promotion immobilière de la BTPH HASNAOUI
SPA. Répondant toujours aux besoins croissant du logement avec un nouveau
souffle qui vise à améliore le bien -être et le mieux vivre ensemble.
2. BTPH (Société de bâtiments, travaux public et hydraulique) : Société
de Bâtiment Travaux Publics et Hydrauliques, hautement qualifiée dans la
réalisation du bâtiment et du génie civil, elle déploie une capacité de réalisation
de 1500 logements par an. Elle est chargée de la réalisation des différents pro-
grammes de constructions civiles et industrielles.
3. SECH (Société d’Exploitation des Carrières HASNAOUI) : s’appuie
sur deux sites d’exploitation pour la production des différents agrégats en-
trant dans la construction de bâtiments et tous les autres types d’ouvrages.
Plusieurs stations de concassage sont mises en œuvre sur le site des carrières
pour produire du gravier de diverses granulométries et du sable de carrière.
La géologie particulière des sites d’exploitation permet d’obtenir des roches
massives d’excellente qualité
4. TEKNA CHEM : TEKNACHEM ALGÉRIE est le fruit d’un partenariat
entre le GSH et TEKNACHEM ITALIE, spécialisée dans la chimie de la
construction, avec un staff technico-commercial hautement qualifié.
5. Grupopuma : GRUPOPUMA ALGÉRIE dispose de deux usines, l’une est
implantée à Sidi-Bel-Abbès et l’autre à Constantine. Avec un savoir-faire de
plus de 25 ans et une technologie de pointe, GRUPOPUMAL développe des
produits de qualité supérieure, répondant ainsi aux demandes d’un marché
de plus en plus exigeant.
6. MDM HASNADUI : est spécialisée dans la production de portes, armoires
et revêtements en bois, en s’appuyant sur la longue expérience de nos parte-
naires internationaux et des installations et machines high-tech.
7. ALUMIX : est une société algéro-espagnole installée dans la localité de
Tilmouni. à Sidi-Bel-Abbès. Elle est dotée d’ateliers pour la menuiserie et le
vitrage, elle utilise des chaı̂nes de production et de montage automatisées.
Grâce à une expertise de plus de 35 ans dans le secteur des façades vitrées.
8. HTF (HASNAOUI TRANSFORMATION DU FER) : est une société
spécialisée dans la coupe et le façonnage de l’acier. Avec une capacité de pro-
duction de plus de 3000 tonnes/mois, HTF peut effectuer tout type d’arma-
tures pour structures en béton armé de façon automatisée, avec de l’acier
en bobine ou en barres dans le but d’optimiser le temps de réalisation en
5.2. PRÉSENTATION DE L’ORGANISME 57

éliminant toute forme de gaspillage, en garantissant ainsi un service global


dans toute l’Algérie.
9. GRANITTAM : Créée en 2016, GRANITTAM Spa est une société 100%
algérienne avec des installations d’exploitation des carrières au Sud et de
transformation et de traitement de la pierre respectivement au Sud et au Nord
du pays. Capitalisant le savoir-faire du Groupe des Sociétés HASNAOUI dans
l’exploitation des carrières.
10. STRUGAL : STRUGAL ALGÉRIE est le fruit d’un partenariat entre STRU-
GAL ALUMINIUM (Espagne) et le GSH. L’usine d’extrusion et les installa-
tions de production de STRUGAL ALGÉRIE offrent à ses clients une gamme
de profilés aluminium haut standing, aux normes européennes avec plusieurs
types de finition. Le fruit de plus de 30 années de savoir-faire et d’innovation
au service du bâtiment et de l’industrie. Nous offrons un service intégral au
client en contrôlant toutes les phases du processus de fabrication jusqu’au
moment de la livraison. STRUGAL comprend l’extrusion d’aluminium.
11. HASNAOUI-FCM : est une entreprise algéro-portugaise, regroupant des
cadres techniques algériens et portugais qui exercent leur activité sur la zone
d’Oran-Ouest et concourt à la réalisation de chantiers de travaux publics,
aussi bien dans le secteur public que dans le secteur privé, en particulier dans
les domaines suivants : Santé, éducation, construction industrielle, hôtellerie
et logements haut standing.
12. ALPOSTONE : Créée en 2015 dans la commune de Sidi Ali Ben Youb, à
Sidi-Bel-Abbès. ALPOSTONE est une société spécialisée dans le travail de la
pierre naturelle à des fins décoratives pour les professionnels et les particuliers.
Dans le Pôle de Agriculture 1 filiale :
13. SODEA Spa : est une société spécialisée dans le développement agricole,
outre son domaine d’activité principale dans les travaux hydrauliques et d’en-
vironnement, elle dispose d’une grande expérience dans la fourniture et l’as-
sistance lors de la pose de géotextile benthonique. Dans le Pôle de service 4
filiales :
14. HTA (HASNAOUI TÉLÉCOM ALGÉRIE) : a été créée en 2012,
afin de répondre à un besoin vital en communication digitale et en qua-
lité de réception, fortement exigées par le citoyen. Elle répond aussi à la
stratégie des pouvoirs publics, soucieuse de tracer et de concrétiser un pro-
gramme numérique national. HTA vise à compléter les sociétés du Groupe,
en se constituant comme le porte-étendard du troisième pôle du Groupe des
Sociétés HASNAOUI, elle vient également renforcer la logique du Groupe en
matière d’indépendance, d’offre globale et d’intégration.
15. PHARE : Le centre de formation LE PHARE est né de la rencontre heu-
reuse d’une vision à long terme et de compétences avérées dans les divers
58 CHAPITRE 5. ÉTUDE DE L’EXISTANT

domaines de la réalisation et de la gestion. Le Groupe des Sociétés HAS-


NAOUI, accorde un intérêt particulier à la formation de son personnel, outre
les multiples sessions de formation Réalisées en partenariat avec les centres de
formation professionnelle, la préoccupation de se doter d’un personnel formé
s’est traduite par l’ouverture d’un centre de formation agréé par l’Etat propre
au Groupe en 2005, en vue d’assurer la mise à niveau des jeunes ingénieurs
et leur perfectionnement continu.
16. Hasnaoui Logistique : Partant de l’affirmation que  Tout immeuble réalisé
est un immeuble transporté , le Groupe s’est doté d’un puissant instru-
ment chargé de transporter les équipes et d’approvisionner en temps voulu
les différents chantiers.
17. GAMA SECURITY : Créée en 2018, Gamma Security est une société
de droit algérien, de gardiennage et de sécurité basée à Sidi-Bel-Abbès. Elle
concoure à la protection des biens mobiliers, immobiliers et toute personne qui
leurs est liée. Pour notre activité nous déployons des moyens actifs (personnes
physiques) ainsi que des moyens passifs (caméras de vidéo surveillance . . . ).

5.2.2 Les logiciels existant


— Plateforme SharePoint 2016 : est une série de logiciels pour applications
web, développée par Microsoft, les fonctionnalités des produits SharePoint
est la gestion de contenu, les moteurs de recherche, la gestion électronique
des documents.
— Gestion électronique des documents (GED) : le logiciel GED apporte
à l’entreprise une incontestable fluidité dans la gestion et la diffusion des
documents.
— Gestion libre de parc informatique (GLPI) : GLPI est une application
web qui aide les entreprises a géré leur système d’information. Cette solution
est capable de construire un inventaire de toutes les ressources des sociétés
et de réaliser la gestion des tâches administratives et financières.
— WAVESOFT : L’ERP modulaire WaveSoft se compose de 10 modules qui
couvrent l’ensembles des besoins d’une entreprise : CRM, gestion, commer-
ciale comptabilité, point de vente, décisionnel, immobilisations, production,
automate de transferts, liaisons bancaires et états financiers A l’aide de ce
système unifie, les utilisateurs de GSH peuvent se connecte à la base de
données de chaque filiale, et selon leur privilège (administrateur, Consulteur,
Gestionnaire, Comptable) peuvent voir les listes des (dépôt, achat, vente,
stock. . . ). La partie achat est la plus importante dans le GSH : contient les
listes des produits qui ont des propriétés comme : suivi en stock, autorisé à la
vente, suivi en statistique. Aussi, noter que Les responsables de maintenance
ont été utilisées wavesoft pour génère les documents relie a la maintenance
précédemment.
5.2. PRÉSENTATION DE L’ORGANISME 59

5.2.3 Étude des documents


L’étude des documents existants permet de vérifier que toutes les informations
actuelles sont prises en compte pour l’analyse.
Parmi les caractéristiques qu’on peut citer c’est que les documents sont tous scanné
en format pdf , et avec différent types que ce soit alphabétique , numérique , alpha-
numérique et date .
Après avoir fait l’analyse des documents obtenus du centre d’archivage plusieurs
remarques on était conclu tel que les documents sont remplis parfois manuellement,
causant un risque d’erreurs et une illisibilité et un mal archivage , des erreurs sur
les dates ( un date de 1912 par exemple) , plusieurs documents sont intégré en un
seul document qui peut être par la suite attribué à une fausse catégorie .

5.2.4 Procédure actuel suivi dans la classification des docu-


ments
Une fois que les documents sont mise en place dans le centre d’archivage les
employé commencent la procédure de scan afin de les mettre sur un ordinateur
ensuite ils commencent à filtrer les dossier manuellement pour pouvoir présumer la
catégorie afin de les classer dans les 3 directives successivement : Filiale , Année
,Direction .

5.2.5 Anomalies et suggestions


Les informations recueillies durant l’étude de l’existant permettront d’identi-
fier un certain nombre d’anomalies de la procédure de classification existante en
précisant les causes et les conséquences de chaque anomalie, et ainsi proposer des
pistes d’amélioration en vue d’aboutir à la mise en place d’un système automatisé .

Anomalie :
— Causes :
— Absence d’un système de classification.
— Le traitement est purement manuelle .
— Conséquences
— Classification non pertinente.
— Redondance des informations.
— Perte de temps.
— Suggestion
— Mettre en place un système automatisé de classification.
60 CHAPITRE 5. ÉTUDE DE L’EXISTANT

5.3 Conclusion
Dans ce chapitre nous avons cité l’organisation du travail adoptée ainsi que l’en-
vironnement de travail et la procédure employé pour la classification des documents
pour faire une analyse globale sur ce qui existe actuellement au niveau du centre
d’archivage afin de pouvoir comprendre par la suite les besoins du client qui nous
aidera à mettre en place une solution dédié aux problèmes existant .
Cinquième partie

Identification de Besoins
d’Analyse

61
Chapitre 6

Étude analytique

6.1 Introduction
Dans le cadre de la réalisation du projet qui consiste a la mise en oeuvre d’un
système de classification de documents à base d’ontologie au niveau du groupe
HASSNAOUI, nous commençons par identifier les besoins du client que nous tente-
rons de satisfaire afin d’identifier les points essentiels et les grandes fonctionnalités
de notre système.

6.2 Méthodologie de travail


6.2.1 Modèle V
Le V-Model est une méthodologie de développement linéaire unique utilisée lors
d’un cycle de développement du logiciel. Le V-Model se concentre sur une méthode
typiquement en cascade qui suit des phases strictes étape par étape. Alors que les
étapes initiales sont des phases de conception générales, les étapes progressent de
façon de plus en plus granulaires, menant à la mise en œuvre et au codage, et
finalement, à travers toutes les étapes de test avant la fin du projet 1 .

Le processus du modèle V

Le modèle V spécifie une série d’étapes linéaires qui devraient se produire tout
au long du cycle de vie, une à la fois, jusqu’à ce que le projet soit terminé.

1. https ://www.supinfo.com/articles/single/5322-v-model-qu-est-ce-que-c-est-comment-
utiliser

63
64 CHAPITRE 6. ÉTUDE ANALYTIQUE

Figure 6.1 – Processus du modèle V

6.3 Analyse des besoins


Il est impératif de définir toutes les fonctionnalités que va fournir le système et
dans quel but et ce en définissant les besoins du projet, Ces besoins sont un ensemble
d’éléments que doit comprendre la solution que nous fournissons. Les spécifications
sont l’expression formelle des besoins.
Notre contribution au niveau du GSH consiste à implémenter une solution permet-
tant de classifier les documents d’archivage.

6.3.1 Les besoins fonctionnels


1. Diagramme de cas d’utilisation

Dans cette partie nous présentons les principaux cas d’utilisation du système.
L’objectif de l’élaboration des cas d’utilisation est de donner une vision fonc-
tionnelle du système à concevoir.
Nous présentons dans le diagramme suivant les CU que nous jugeons impor-
tants :
6.3. ANALYSE DES BESOINS 65

Figure 6.2 – Phase d’apprentissage

Cas d’utilisation
Objectif Collecter les documents
- Lancer le système
Pré-condition
Description - S’authentifier
- Parcourir la collection de documents à classifier
Scénario
- Chargement des documents
Post-condition /

Table 6.1 – Fiche de description : ”Charger les documents”


66 CHAPITRE 6. ÉTUDE ANALYTIQUE

Cas d’utilisation
Objectif nettoyage des documents
- Lancer le système
Pré-condition
Description - Collecter et charger les documents
- Extraction des documents en texte
- Segmentation du texte en phrase
- Segmentation des phrases en mots

- Nomalisation de la casse

- Reconnaissance du type de token (date ,


Scénario
stopwords, abbrèviation, chiffres, url...)
- Suppression des mots vides (stopwords)
- Suppression des chiffres
- Suppression des ponctuations

- Suppression des espaces et symboles

- Racinisation des mots (Stemming)


Post-condition - Renvoyer une version nettoyé

Table 6.2 – Fiche de description : ”Pré-traitement des données”

Cas d’utilisation
Objectif Mise à jour des filiales
- Lancer le système
Pré-condition
Description - Charger les documents
- Ajouter une filiale
Scénario
- Supprimer une filiale
Post-condition /

Table 6.3 – Fiche de description : ”gestion des filiales”


6.3. ANALYSE DES BESOINS 67

Cas d’utilisation
Objectif Mise à jour des filiales
- Lancer le système
Pré-condition
Description - Charger les documents
Scénario - Ajouter une direction
Post-condition /

Table 6.4 – Fiche de description : ”gestion des directions”

Cas d’utilisation
Classification et organisation des documents
Objectif
dans des répertoire
Pré-condition - Prétraitement des documents
Description - Classifier les documents
Scénario
- Evaluer la pertinence de la classification
- Les documents sont classifiés et organisés dans des
Post-condition
répertoires selon les 3 critères : filiale , année , direction

Table 6.5 – Fiche de description : ”Classification et évaluation”

2. Diagramme de séquence

Le diagramme de séquence suivant représente les communications avec le


système, et entre les composants au sein du système. Il expose en détail la
façon dont les opérations sont effectuées en fonction du temps. Il offre une
meilleure visualisation des interactions entre objets en présentant les mes-
sages échangés entre eux.
Nous présentons dans le diagramme suivant les taches effectuées que nous
jugeons importants :
68 CHAPITRE 6. ÉTUDE ANALYTIQUE

Figure 6.3 – Phase d’apprentissage


6.4. LES OBSTACLES DU SYSTÈME 69

Figure 6.4 – Phase d’apprentissage

6.3.2 Les besoins non-fonctionnels


Les système, les outils et les logiciels utilisé doivent respecter la politique interne
de l’organisme. Les besoins non-fonctionnels représente les besoins implicites qu’on
doit les respecter afin d’éviter les conflits techniques. dans notre cas les besoins
non-fonctionnels sont comme suit :
— Les outils utiliser dans le système doivent être des logiciels open source pour
qu’elle soit en adéquation avec la politique Open Source du GSH.
— L’accès au système doit être effectuer par l’authentification des utilisateurs.
— Le système doit être implémenter dans une version web.

6.4 Les obstacles du système


Lors de la collecte et l’identification des besoins nous avons rencontrés plusieurs
difficultés :
70 CHAPITRE 6. ÉTUDE ANALYTIQUE

— Certaines documents et sources d’informations sont confidentiels.


— L’illisibilité du texte dans certains documents obtenus .
— La collections des mots clés associés à chaque directions .

6.5 Objectif du système


En se basant sur les besoins recensés dans la phase d’identification de besoin, le
système a comme objectif principal d’offrir une classification pertinente des docu-
ments du centre d’archivage du GSH, afin de faciliter la tache aux utilisateurs en
terme de temps et de travail.
Le système doit assurer la classification selon trois critères consécutifs :
1. Filiale ;
2. Année ;
3. Direction ;

6.6 Conclusion
Dans ce chapitre, nous avons identifié et précisé les différents besoins du client
que nous tenterons de satisfaire dans la phase de développement qui est une partie
trés important dans la réalisation du projet , en fait c’est à partir de la fin de cette
étape qu’on a prévenu à la solution préconisée au contexte du projet et la plus
adéquate pour la résolution des différents problèmes détectées auparavant .
Pour cela nous avons utilisé les diagrammes de cas d’utilisation et de séquence pour
exprimer les fonctionnalités souhaitées par le client.
Sixième partie

Étude Conceptuelle

71
Chapitre 7

Étude conceptuelle

7.1 Introduction

Dans ce chapitre nous allons discuter la conception globale du système dont la


présentation de l’architecture globale du système, ainsi que le diagramme de classe
qui va nous permettre d’identifier les différentes entités intervenant dans le système
et le diagramme d’activité afin d’avoir une vision des enchaı̂nements des activités
propre à une opération.

7.2 Architecture globale du système

L’architecture globale désigne la structure générale inhérente du système, l’or-


ganisation des différents éléments de ce dernier.
La classification des documents du centre d’archivages du GSH nécessite l’implémentation
de plusieurs étapes :
— La construction d’une partie d’ontologie .
— La collecte des documents d’archivages .
— L’extraction des documents.
— Un pré-traitement de ces données .
— Feature sélection .
— la classification de ces documents en utilisant l’apprentissage automatique et
l’ontologie construite
La figure 7.1 représente l’architecture générale de notre système :

73
74 CHAPITRE 7. ÉTUDE CONCEPTUELLE

Figure 7.1 – Architecture du système

Nous décrirons dans la partie suivante les principales tâches de chaque étape :

7.2.1 Collection des documents :


Nous avons constitué un corpus de documents dont les sources représentent 46
filiales ainsi que 7 directions du GSH .

7.2.2 Extraction
Le document sont extrait avec une très grande précision afin de pouvoir lire des
informations utiles du document.
7.2. ARCHITECTURE GLOBALE DU SYSTÈME 75

7.2.3 Pré-traitement
Une fois les documents sont extraits , ils doivent passer par la phase de nettoyage.
Les étapes de la phase de pré-traitement sont illustrées comme suit :

1. Tokenization

Dans cette phase le document est traité comme une chaı̂ne, puis partitionné
en un vecteur de jetons (mots).

2. Supression des chiffres

Supprimer tous les nombres qui n’ont aucune importance dans le document.

3. supprimer les espaces supplémentaires

Supprime les espaces supplémentaires d’une chaı̂ne .

4. Supprimer les ponctuations

Supprimer tout les ponctuations .

5. Supperssion des mots- vides( Stop-words)

Sont les mots les plus courants rencontrés et ne comportent que peu ou pas
de contexte sémantique significatif dans une phrase tel que  a   ou   la
  le   sont . . . . . . .

6. Normalisation de la casse

Il est nécessaire de réduire les mots à la forme minuscule de toutes ses lettres
latines, quelle que soit leur position. En conséquence, les mots ”Compte” et
”compte” sont réduits à la même instance, ce qui réduit considérablement la
taille du vecteur .

7. Stemming

L’application de l’algorithme de dérivation qui convertit une forme de mot


différente en une forme canonique similaire. Cette étape est le processus
consistant à associer des jetons à leur forme racine .
76 CHAPITRE 7. ÉTUDE CONCEPTUELLE

7.2.4 Feature selection


Afin d’amélioré l’évolutivité, l’efficacité et la précision du classifieur de texte on
a construit un espace vectoriel l’idée principale est de sélectionner un sous-ensemble
de fonctionnalités à partir des documents d’origine . La FS est réalisée en conservant
les mots avec le score le plus élevé conformément à une mesure prédéterminée de
l’importance du mot.
Pour cela on a utilisé Tf-Idf :
f reqi ,j
T f (fi , dj ) =
(maxi )(f reqk ,j )

N
Idf (t) = log( )
n
n = docs contenant terme(t)

N = docs dans le corpus

7.2.5 Construction d’un vocabulaire contrôlé


Afin de pouvoir passer à la phase de classification il nous a été demandé de
mettre en place une base sémantique .
Pour notre cas 3 critères ont été spécifié : Filiale , Année , Direction .
Pour le critère filiale il n’était pas nécessaire de créer une ontologie , on s’est basé
sur 46 catégories qui décrit chacune une filiale , et des mots clés qui se limitent en
1 à 2 pour chacune .
Pour cela on a construit un dictionnaire contenant un champs de chaque filiale ainsi
que leurs mots clés .
Pour le critère année on a essayer de déterminer les dates existant dans les docu-
ments sur différent format pour cela on a utilisé regex pattern afin de générer les
expressions régulières pour valider les dates et les convertir en String pour ne pas
être considérer comme nombre .
Pour le critère direction on a mis en place une partie d’ontologie valide à ce do-
maine qui contient 7 concepts décrivant ce domaine .
La section suivante décrit les démarches utilisé afin de construire l’ontologie .

7.2.6 Construction d’ontologie


Nous avons utilisé une approche descendante pour construire une partie d’onto-
logie du domaine .
La plupart des concepts abstraits sont d’abord identifiés, puis spécialisés dans des
concepts plus spécifiques pour construire une partie d’ontologie.
Nous avons essayé de développer le contenu de l’ontologie manuellement à partir
7.2. ARCHITECTURE GLOBALE DU SYSTÈME 77

d’un certain nombre de documents collectés et implémentée avec l’outil Protégé au


format OWL.

Comme nous l’avons déjà illustré dans la construction de l’ontologie dans le cha-
pitre 3 ,le développement manuel de l’ontologie comprend les étapes suivantes :

1. Déterminez le domaine et la portée de l’ontologie

Pour déterminer le domaine et la portée de l’ontologie, nous devons savoir quel


domaine sera couvert par l’ontologie, son objectif et qui utilisera l’ontologie.
En répondant à ces questions, nous pouvons dire que le domaine de l’ontologie
couvrira le domaine DIRECTIONS du GSH.

2. Pensez à réutiliser les ontologies existantes

Cette étape consiste à vérifier s’il existe une ontologie déjà développée dans
le même domaine. Si une telle ontologie existe, il est plus facile de modifier
l’ontologie existante pour répondre à ses besoins que pour en créer une nou-
velle. Et parce que nous n’avons pas trouvé d’ontologie créée sur ce secteur,
nous avons omis cette étape.

3. Énumérer les termes importants dans l’ontologie

Dans cette étape nous avons annoté les termes important que nous souhaitons
utiliser dans l’ontologie . nous avons profité des documents obtenus du centre
d’archivage pour lister les termes.

4. Définissez les classes et la hiérarchie des classes

Cette étape définit les classes (concepts) utilisées dans notre domaine d’on-
tologie. Nous définissons des classes et des sous-classes liées à notre domaine.
DFC ,DMC,GRH,DAG,DCE,DCG,DGR sont des concepts généraux du ni-
veau supérieur (Top level ).
Les autres sont les classes les plus spécifiques (ou les classes de niveau inférieur).

Les figures suivantes décrit une partie de l’ontologie :


78 CHAPITRE 7. ÉTUDE CONCEPTUELLE

Figure 7.2 – OntoGraf de l’ontologie construite

5. Définir les propriétés des classes (slots)

Définissez les propriétés des objets (relations) entre les classes, rôle qui relie
les concepts de l’ontologie.
En raison de la nature de l’ontologie, qui a été utilisée à des fins de classifi-
cation, il existe rarement des relations entre les concepts ontologiques.

6. Définir les facettes des slots

Les slots (parfois appelés rôles ou propriétés) ont différentes facettes (par-
fois appelées restrictions de rôle) qui décrivent le type de valeur, les valeurs
autorisées, le nombre de valeurs (cardinalité) et d’autres caractéristiques des
valeurs que peut prendre le logement.
Dans notre cas, la plupart des valeurs de slot sont des chaı̂nes

7. Créer des instances

Vu la nature des documents qui sont la majorité sous forme de tableau les
mots clés extraient n’ont absolument pas d’instances.
7.3. DIAGRAMME DE CLASSE 79

7.2.7 Classification
La dernière phase consiste à classer des documents pour cela on a utilisé Modèle
d’espace vectoriel pour la méthode de classification de texte

7.3 diagramme de classe


Le diagramme de classes suivant présente les classes de conception du système. La
classification automatique des documents regroupent plusieurs classes, nous présentons
dans le diagramme suivant les classes que nous jugeons importantes :
80 CHAPITRE 7. ÉTUDE CONCEPTUELLE
7.4. DIAGRAMME D’ACTIVITÉ 81

7.4 diagramme d’activité


Le diagramme d’activité suivant donne une vision des enchaı̂nements des acti-
vités propre à une opération ou à un cas d’utilisation.
Le diagramme d’activité est attaché à une catégorie de classes et décrit le déroulement
des activités de cette catégorie. Il indique la part prise par chaque objet dans
l’exécution d’un travail. Il sera enrichi par les conditions de séquence. Le diagramme
d’activité nous permet de voir les comportements internes du système.

7.5 Conclusion
Dans ce chapitre, nous avons Nous avons modélisé les données du système à tra-
vers un diagramme de classe et l’aspect métier à travers un diagramme d’activité.
A ce stade , après avoir analysé les besoins , avoir établi la conception du système ,
on bascule maintenant vers l’implémentation technique et la réalisation de l’appli-
82 CHAPITRE 7. ÉTUDE CONCEPTUELLE

cation souhaité .
Septième partie

Implémentation et mise en œuvre


technique

83
Chapitre 8

Introduction

Dans ce chapitre nous allons parler de la mise en œuvre de notre application,


dont l’environnent de travail, les outils, les logiciels et les langages de programmation
utilités.
Ensuite on va détaillés les différents fonctions et scénarios de l’application afin de
faciliter la tache aux utilisateurs.

8.1 Environnement de travail


8.1.1 Environnement matériel

Le développement du projet a été réalisé sur une machine : DELL Inspiron avec
8 GO de RAM et un Processeur Intel Core(TM) i5-7200U CPU @ 2.50 GHZ 2.70
GHZ .

8.1.2 Système d’exploitation

85
86 CHAPITRE 8. INTRODUCTION

Windows 10 est un système d’exploitation de la famille Windows NT développé


par la société américaine Microsoft.
Le systeme d’exploitation utilisé est windows 10 Professionnel @2018 Microsoft

8.2 outils de développent


8.2.1 Outils de modélisation

Comme outil de modélisation nous avons utilisé Star Uml , c’est un logiciel de
modélisation UML (Unified Modeling Language) open source compatible avec UML
2.x standard et supporte totalement 11 types de diagrammes UML : classe, objet, cas
d’utilisation, composant, déploiement, structure composée, séquences, communica-
tion, états de transition, Activité et diagramme de profil. Étant simple d’utilisation,
nécessitant peu de ressources système, supportant UML 2, ce logiciel constitue une
excellente option pour une familiarisation à la modélisation. 1

8.2.2 Serveur de base de données

MySQL est un Système de Gestion de Base de Données (SGBD) parmi les plus
populaires au monde. Il est distribué sous double licence, un licence publique générale
GNU et une propriétaire selon l’utilisation qui en est faites .Il permet ainsi de répartir
la charge sur plusieurs machines, d’optimiser les performances ou d’effectuer facile-
ment des sauvegardes des données. 2

1. http ://staruml.io
2. https ://sql.sh/sgbd/mysql
8.3. ENVIRONNEMENT DE DÉVELOPPEMENT 87

8.2.3 Outil de construction de l’ontologie

Pour la construction de notre ontologie on a utilisé protégé , il a été développé


par le Centre de recherche en informatique biomédicale de Stanford à la faculté
de médecine de l’Université de Stanford.C’est un éditeur d’ontologies open source
qui offre tous les artefacts nécessaires pour l’édition des différents éléments d’une
ontologie OWL (concepts, propriétés, instances), avec la possibilité de spécifier des
contraintes et d’utiliser des moteurs d’inférence externes pour vérifier la consistance
de l’ontologie et d’inférer de nouvelles connaissances. 3

8.3 Environnement de développement


8.3.1 IDEA utilisé

Pour le développement de l’application nous avons utilisé comme IDE Intellij


IDEA qui est un environnement de d’développement intégré pour le développement
de logiciels.Développé par JetBrains. Chaque aspect d’Intellij IDEA est spécifiquement
conçu pour optimiser la productivité des développeurs en particulier dans le développement
entreprise.La puissance analyse de code statique et la conception ergonomique rendent
le développement non seulement productif, mais également agréable.
Intellij IDEA supporte plusieurs langages tels que Java , Scala, Kotlin , Groovy.Pour
le développement web Javascript, HTML/CSS, AngularJs, React ,NodeJs. Il sup-
porte également les frameworks entreprise tel que Java EE, Spring ,Jboss et d’autres :
Maven , Gradle , Git.... 4

3. https ://www.dataone.org/software-tools/protege
4. https ://www.jetbrains.com/idea/
88 CHAPITRE 8. INTRODUCTION

8.3.2 Plateforme de développement ”Java EE”

Cette plateforme représente un ensemble de technologies et d’APIs pour la pla-


teforme Java conçus pour soutenir les applications d’entreprises .Chaque version
intègre de nouvelles fonctionnalités qui répondent aux besoins du secteur, améliore
la portabilité des applications et augmente la productivité des développeurs. 5

8.3.3 Framework de développement ”Spring Boot”

L’application a été développer sur la base du framework Spring Boot qui est un
framework d’application et une inversion du conteneur de contrôle pour la plate-
forme JavaEE. Les principales fonctionnalités du framework peuvent être utilisées
par n’importe quelle application Java. Il permet de :
— Faciliter le développement d’application complexes.
— Faciliter à l’extrême l’injection des dépendances .
— Réduire à l’extreme les fichier de configuration.
— Faciliter la gestion des dépendances Maven.
— Auto Configuration : la plupart des beans sont créés si le ou les jar(s) adéquats
sont dans le classpath.
— Fournir un conteneur de servlet embarqué (Tomcat, Jetty) .
— Créer une application autonome (jar ou war). 6

8.3.4 Framework web ”Apache Jena”

5. https ://www.oracle.com/java/technologies/java-ee-glance.html
6. https ://spring.io/projects/spring-boot
8.4. ICU 89

Apache Jena (ou Jena en abrégé) est un framework Java gratuit et à code source
ouvert pour la construction d’applications Web sémantique et d’applications liées de
données. La structure est composée de différentes API qui interagissent pour traiter
les données RDF. 7

8.3.5 Toolkit Apache Tika

Apache Tika est une boı̂te à outils permettant d’extraire du contenu et des
métadonnées à partir de divers types de documents, tels que Word, Excel et PDF,
voire de fichiers multimédias tels que JPEG et MP4. Tous les fichiers texte et mul-
timédia peuvent être analysés à l’aide d’une interface commune, faisant de Tika une
bibliothèque puissante et polyvalente pour l’analyse de contenu. 8

8.4 ICU
ICU est un ensemble mature et largement utilisé de bibliothèques C / C ++
et Java fournissant un support Unicode et Globalization pour les applications logi-
cielles. ICU est largement portable et donne aux applications les mêmes résultats
sur toutes les plateformes et entre les logiciels C / C ++ et Java.
Voici quelques points saillants des services fournis par ICU : 9
— Conversion de page de code : convertissez des données texte en Unicode ou
à partir de tout autre jeu de caractères ou codage.
— Collation : comparez les chaı̂nes en fonction des conventions et des normes
d’une langue, d’une région ou d’un pays particulier.
— Formatage : Formatez les nombres, les dates, les heures et les montants en
devise selon les conventions du lieu choisi.
— Calculs de temps : Plusieurs types de calendriers sont fournis au-delà du
calendrier grégorien traditionnel.
— Prise en charge Unicode : ICU suit de près le standard Unicode, offrant un
accès facile à toutes les nombreuses propriétés de caractère Unicode.
— Expression régulière : les expressions régulières d’ICU prennent entièrement
en charge Unicode tout en offrant des performances très compétitives.
— Expression régulière : les expressions régulières d’ICU prennent entièrement
en charge Unicode tout en offrant des performances très compétitives.
7. https ://jena.apache.org/tutorials/index.html
8. https ://www.baeldung.com/apache-tika
9. http ://site.icu-project.org/
90 CHAPITRE 8. INTRODUCTION

— Bidi : prise en charge du traitement de texte contenant un mélange de données


de gauche à droite (anglais) et de droite à gauche (arabe ou hébreu).
— Limites de texte : localisez les positions des mots, des phrases, des para-
graphes dans une plage de texte ou identifiez les emplacements appropriés
pour le retour à la ligne lors de l’affichage du texte.

8.4.1 Front-end
Thymleaf

Thymeleaf est un moteur de template Java moderne côté serveur pour les envi-
ronnements Web et autonomes.
Avec des modules pour Spring Framework, une multitude d’intégrations avec vos
outils favoris et la possibilité d’intégrer vos propres fonctionnalités, Thymeleaf est
idéal pour le développement Web JVM HTML5 moderne - bien qu’il puisse faire
beaucoup plus. 10

Bootstrap
Bootstrap est une collection d’outils utiles à la création du design de sites et
d’applications web. C’est un ensemble qui contient des codes HTML et CSS, des
formulaires, boutons, outils de navigation et autres éléments interactifs, ainsi que
des extensions JavaScript en option. 11

JavaScript
JavaScript (qui est souvent abrégé en  JS ) est un langage de script léger,
orienté objet, principalement connu comme le langage de script des pages web. Mais
il est aussi utilisé dans de nombreux environnements extérieurs aux navigateurs web
tels que Node.js, Apache CouchDB voire Adobe Acrobat. 12

Jquery
jQuery est une bibliothèque JavaScript rapide, petite et riche en fonctionnalités.
Il simplifie considérablement la navigation et la manipulation de documents HTML,
10. https ://www.thymeleaf.org/
11. https ://getbootstrap.com/
12. https ://developer.mozilla.org/fr/docs/Web/JavaScript
8.5. DÉVELOPPEMENT DE L’APPLICATION 91

la gestion d’événements, l’animation et Ajax grâce à une API simple à utiliser qui
fonctionne sur une multitude de navigateurs. 13

8.4.2 Outil de contrôle et gestion de code

Pour contrôler et gérer l’historique de notre code source on a utilisé Git qui est un
outil de contrôle de version distribué que le développeur l’installe localement sur son
ordinateur afin de gérer l’historique du code source d’un projet de développement .

8.4.3 Outil de collaboration du projet

Pour collaborer le travail du projet entre nous on s’est réfugié à GitHub qui
est une plate-forme basée sur le cloud qui stocke le code qui lui est transmis à
partir d’ordinateur exécutant l’outil Git et permettre de collaborer entre plusieurs
développeurs sur un projet.

8.5 Développement de l’application


Dans cette section on va présenter le prototype de l’application qui s’agit d’un
système automatisé de classification de document à base d’ontologie afin de montrer
son fonctionnement .

8.5.1 Authentification
Afin d’utiliser les différents fonctionnalité du système , il faut d’abord d’authen-
tifier en entrant l’email et le mot de passe voir la figure 8.2

13. https ://jquery.com/


92 CHAPITRE 8. INTRODUCTION

Figure 8.1 – Authentification

8.5.2 Contact
Afin de retrouver l’ensemble des coordonnées : adresse postale, téléphone , Email
voir la figure :

Figure 8.2 – Contact

8.5.3 Services
Le service contient les étapes suivantes :
8.5. DÉVELOPPEMENT DE L’APPLICATION 93

Classification

Afin de pouvoir classifier les documents une suites d’étapes est nécessaire à faire
dans le service classification :
— Sélection et upload des documents cette phase consiste à sélectionner
les documents et les charger afin de passer à la phase suivant voir la figure
8.3 :

Figure 8.3 – Sélection et upload des documents

— Extraction Dans cette phase les documents sont extraits en format texte
afin de pouvoir les traiter voir la figure 8.4 :

Figure 8.4 – Extraction des documents

— Tokenization et reconnaissance Cette étape est la phase de pré-traitement :


94 CHAPITRE 8. INTRODUCTION

Figure 8.5 – Pré-traitement

— Stemming Afin de passer à la dernière phase de classification il est obligé


de passer par la phase de racinisation voir la figure 8.6

Figure 8.6 – Stemming

— Classification Enfin la dernière étape est l’étape de classification afin de


générer les dossier attribué pour chaque document :
8.5. DÉVELOPPEMENT DE L’APPLICATION 95

Figure 8.7 – Classification

— Output Les résultat sont stockés dans un répertoire créer automatiquement


nommé archivage sur le disque local ” :C” voir les exemples suivantes

Figure 8.8 – Document classés par filiale

Figure 8.9 – Document classés par Année


96 CHAPITRE 8. INTRODUCTION

Figure 8.10 – Document classés par Direction

Figure 8.11 – Les documents classés

Gestion des filiale

Cette étape consiste à mettre à ajour les filiales voir la figure 8.12 :

Figure 8.12 – Gestion des filiales


8.6. CONCLUSION 97

Évaluation
En plus de la classification des documents , nous avons ajouté une visua-
lisation graphique pour l’utilisateur afin de pouvoir voir le pourcentage de
classification par rapport à chaque filiale en utilisant un diagramme à barre
voir la figure 8.13 :

Figure 8.13 – Visualisation graphique des documents

8.6 Conclusion
Dans ce chapitre nous avons décrit la mise en œuvre technique et l’implémentation
du système, nous avons également cité les outils et technologies utilisées y compris
l’environnement du développement pour la réalisation de ce projet.
Afin de tester la performance de notre système , il était nécessaire de passer par une
étape d’expérimentation qui va être détailler dans le chapitre suivant.
98 CHAPITRE 8. INTRODUCTION
Chapitre 9

Expérimentation et analyse des


résultats

9.1 Introduction
Ce chapitre montre le corpus utilisé ainsi que l’expérimentation et l’analyse des
résultats obtenus.

9.2 Corpus
Afin de pouvoir testé la performance de notre système nous avons constitué un
Dataset contenant 210 documents issu du centre d’archivage du GSH .
Les sources sont des documents PDF représentant les filiales et les directions du
GSH daté de 1974 .

9.3 Expérimentation
Cette expérimentation a été réaliser en passant par plusieurs étapes :
1. Extraction : Nous avons opté pour le toolkit Apache Tika afin d’extraire
les documents obtenus sous forme .txt .
2. Pré-traitement : qui consiste à décomposer le texte en une séquence de
mots ou de jetons ensuite passant à la reconnaissance des type de tokens(mot
, date , chiffre....), supression des : chiffres, ponctuations,stopWords .
3. Stemming : Consiste à remplacer le mot par sa racine pour cela on a utilisé :
snwoball Franch Stemmer qui est un langage de traitement de petites chaı̂nes
conçu pour la création d’algorithmes de création de liens à utiliser dans la
récupération d’informations. Ce site décrit Snowball et présente plusieurs
stemmers utiles qui ont été implémentés pour l’utiliser.

99
100 CHAPITRE 9. EXPÉRIMENTATION ET ANALYSE DES RÉSULTATS

4. Classification :Pour la dernière phase on a utilisé l’algorithme VSM ( vec-


tor space model) pour la classification des textes qui comporte les étapes
suivantes :
— La première étape consiste à l’indexation des termes nettoyé dans un
vecteur .
— La deuxième étape consiste à crée une matrice de document à partir des
vecteurs de termes normalisés.
— Ensuite la normalisation de la matrice à l’aide de TF-IDF, qui consiste
à pondérer pour chaque terme du vecteur un poids qui représente son
importance dans le document afin d’améliorer le processus et la pertinence
de la classification.
— Les similarités sont ensuite calculées pour cette matrice de document par
rapport à la base créer que ce soit pour l’ontologie pour le critère direction
ainsi le que le dictionnaire pour le critère Filiale en utilisant la similarité
du Cosinus qui est une métrique utilisée pour mesurer le degré de simi-
larité des documents, quelle que soit leur taille. Mathématiquement, il
mesure le cosinus de l’angle entre deux vecteurs projetés dans un espace
multidimensionnel , la catégorie présentant la similarité la plus élevée est
affectée au document.
Pour créer par la suite un répertoire contenant 3 répertoire successive-
ment représentant les 3 catégories affecté selon la classification par filiale
, année , direction ainsi que le document affecté à ces 3 directives .

9.3.1 Mesure d’évaluation


Afin de tester la performance de notre système on a utilisé le modèle d’évaluation :
Accuracy qui s’agit de la proportion des données bien classées par rapport à l’en-
semble total des données. Le tableau 9.1 illustre les caractéristiques des documents
étudié :
Dataset etudié Capacité (Mo) Nombres de pages
210 519,26 2410
100 227,23 1205

Table 9.1 – Caractéristiques du dataset

Le tableau 9.2 illustre les résultat obtenu de l’accuracy pour les directives filiales
et directions du dataset :
Critéres Filiale Direction
Accuracy sur (100 doc) 0.88 0.85
Accuracy sur (210 doc) 0.93 0.90

Table 9.2 – Résultats de la classification pour les directives : Filiale , Direction


9.4. CONCLUSION 101

9.3.2 Analyse des résultats


Les résultats présentés dans le tableau 9.2 montre que le classifieur VSM a bien
réussi à prédire les catégories on remarque aussi que les résultats obtenues sont de
très bonne performance ainsi une très bonne amélioration après avoir augmenter la
tailler du corpus de 110 documents de plus .

Temps de Temps Temps de Temps de Temps de


Dataset Total
chargement d’extraction pré-traitement racinisation classification
des documents (ms)
(ms) (ms) (ms) (ms) (ms)
100 29098 60014 234000 1049 28012 298163
210 60738 61529 340000 3001 36005 501273

Table 9.3 – Temps pris par chaque phase en (ms)

Les résultats présentés dans le tableau 9.3 montre que la taille du corpus influe
sur le temps d’exécution (plus la taille est grande plus le temps est long) , le tableau
montre aussi que les phases qui prends du temps sont la phase de chargement et du
pré-traitement.

9.4 Conclusion
On a présenter dans ce chapitre les étapes traitées lors de l’expérimentation ainsi
que les résultats obtenus .
Nous avons remarqué d’après les résultat qu’en augmentant l’ensembles de donnée les
résultats sont de plus en plus meilleur , mais qui influe aussi sur le temps d’exécution
en l’augmentant , ainsi on conclut que le classifieur VSM prend sa place dans la
classification automatique d’après les résultat obtenu de l’Accracy .
102 CHAPITRE 9. EXPÉRIMENTATION ET ANALYSE DES RÉSULTATS
Huitième partie

Conclusion générale et perspective

103
Chapitre 10

Conclusion et perspective

10.1 Conclusion
Le systèmes de classification de documents est devenu une nécessité et un instru-
ment primordial dans les entreprises . Ce dynamisme est dû à la demande importante
des utilisateurs pour cette technologie. Il devient de plus en plus indispensable dans
de nombreuses situations où la quantité de documents textuels électroniques rend
impossible tout traitement manuel.
Afin de renforcer la tache de classification au niveau du Groupe de société hasnaoui
, GSI la filiale du groupe a initié ce projet pour répondre au différents besoin des
utilisateurs pour leurs faciliter le travail qui se faisait en général manuellement .
Dans ce cadre, il nous a été demandé de concevoir et réaliser un système de classi-
fication des documents approfondis à base d’ontologie .
Cette thèse de mémoire est structuré de sorte à donner au lecteur une vision sur le
cheminement de notre travail, ayant permis d’aboutir à la phase de réalisation du
système. Pour ce faire, le travail a commencé par une collecte progressive de connais-
sances théoriques et pratiques dans le domaine de classification de textes basé sur
les ontologies.
Ensuite on s’est prolongé dans l’aspect métier afin de collecter et identifier les
différents besoins analytiques et techniques.
Une fois les besoins ont été fixés, la conception de notre processus a été aborder
ainsi que l’ontologie dédié à la classification pour mettre en place par la suite une
application web en utilisant le framework Spring Boot.
Nous avons présenté notre Solution qui reflète notre contribution au niveau du
GSHasnaoui et qui facilitera la tache aux utilisateurs sur une grande échelle où
il va permettre de faire une classification automatique avec une grande précision
tout en diminuant l’excès de travail ainsi que le temps .
Comme cela notre travail a atteint les objectifs tracés et attendus par l’organisme.
En espérant dans un temps future de l’enrichir afin d’atteindre les perceptives sou-
haitées.

105
106 CHAPITRE 10. CONCLUSION ET PERSPECTIVE

10.2 Perspectives
A notre contribution dans ce travail, plusieurs perspectives peuvent être envi-
sagées afin de rendre son utilisation plus fiable et plus professionnelle. Nous pouvons
citer à titre d’exemple les perspectives suivantes à réaliser pour notre système dans
un temps futur :
— Tester l’approche sur d’autre corpus de taille plus grande et de langues
différentes.
— Rendre l’application dynamique .
— Utiliser d’autres approches d’apprentissage automatique .
— Enrichir l’ontologie et la rendre universel pas seulement un domaine.
BIBLIOGRAPHIE 107

Bibliographie
A.Dertat (2017). Part 4 : Convolutional neural networks, Applied Deep Learning .
URL: https ://towardsdatascience.com/applied-deep-learning-part-1-artificial-
neural-networks-d7834f67a4f6 16

Allahyari, M., J. Kochut, K. and Janik, M. (2014). Ontology-based text classification


into dynamically defined topics, 2014 IEEE International Conference on Semantic
Computing, pp. 273–278. 43, 44, 51

Allahyari, M., Pouriyeh, S. A., Assefi, M., Safaei, S., Trippe, E. D., Gutierrez, J. B.
and Kochut, K. (2017). A brief survey of text mining : Classification, clustering
and extraction techniques, Journal of CoRR abs/1707.02919.
URL: http ://arxiv.org/abs/1707.02919 13

Antoniou, G., Groth, P., Harmelen, F. v. v. and Hoekstra, R. (2012). A Semantic


Web Primer Book, thrid edition edn, The MIT Press. 11, 30

Bilski and Adrian (2011). A review of artificial intelligence algorithms in docu-


ment classification, International Journal of Electronics and Telecommunications
57 : 263–270. 14

Charu and C.Aggarwal (2014). Data Classification : Algorithms and Applications


book, Chapman and Hall/CRC Data Mining and Knowledge Discovery Series, first
edition edn. 16

Cristani, M. and Cuel, R. (2005). A survey on ontology creation methodologies,


Journal of Int. J. Semantic Web Inf. Syst. 1 : 49–69. 24

D.Kalita (2015). Supervised and unsupervised document classification-a survey, In-


ternational Journal of Computer Science and Information Technologies (IJCSIT)
6 : 1971–1974.
URL: www.ijcsit.com 9

Domingue, J., Fensel, D. and Hendler, J. A. (2011). Handbook of Semantic Web


Technologies, 1st edn, Springer Publishing Company, Incorporated. 25, 26

Elasri, H., Sekkaki, A., Hajjam, A., Benmimoune, L., Talha, S. and Andrès, E.
(2014). Ontologies et intégration des connaissances pour un suivi polypatholo-
gique., journa Medecine Therapeutique 20 : 67–78. 28

Elberrichi, Z., Belaggoun, A. and Taibi, M. (2012). Medical documents classification


based on the domain ontology mesh, International Arab Journal of e-Technology
pp. 210–215. 37, 51
108 CHAPITRE 10. CONCLUSION ET PERSPECTIVE

Elhadad, M. K., Badran, K. and Salama, G. I. (2017). A novel approach for


ontology-based dimensionality reduction for web text document classification,
2017 IEEE/ACIS 16th International Conference on Computer and Information
Science (ICIS), pp. 373–378. 48, 51

E.Rahm and PA.Bernstein (2001). A survey of approaches to automatic schema


matching, VLDB Journal : Very Large Data Bases 4 : 334 – 350. 28

Fox, E. A. and d. S. Torres, R. (2014). Digital Library Technologies : Complex


Objects, Annotation, Ontologies, Classification, Extraction, and Security, Morgan
& Claypool.
URL: https ://ieeexplore.ieee.org/document/6813166 11

G.Salton, A.Wrong, C. (1975). A vector space model for automatic indexing,


pp. 613–620. 17

J.Davies, P.Warren and R.Studer (2006). Semantic Web Technologies : trends and
research in ontology-based systems, book. 30

J.E.L.Vergara, V.A.Villagrá, J.Berrocal, J.I.Asensiot and R.Pignaton (2003). Se-


mantic management : Application of ontologies for the integration of management
information model, IFIP/IEEE Eighth International Symposium on Integrated
Network Management, 2003. 118 : 131–134. 31

J.Han, M.Kamber and J.Pei (2012). 3 - data preprocessing, in J. Han, M. Kamber


and J. Pei (eds), Data Mining Book (Third Edition), third edition edn, The
Morgan Kaufmann Series in Data Management Systems, Morgan Kaufmann,
Boston, pp. 83 – 124.
URL: http ://www.sciencedirect.com/science/article/pii/B9780123814791000034
15, 17, 18

Karima, A.-A. (2015). Les Ontologies : Représentation de Connaissances et


Problème d’héterogéneité. 22, 31

K.Jaideepsinh and S.Jatinderkumar (2016). Stop-word removal algorithm and its


implementation for sanskrit language, International Journal of Computer Appli-
cations 150 : 15–17. 11

Martinez-Gil, J., Navas Delgado, I. and Aldana Montes, J. (2012). Maf : An ontology
matching framework, Journal of Universal Computer Science 18 : 194–217. 29

Mascardi, V., Cordı̀, V. and Rosso, P. (2007). A comparison of upper ontologies.,


Conference : WOA 2007 : Dagli Oggetti agli Agenti pp. 55–64. 22

M.Sanjeevi (2017). Support vector machine with math, Deep Math Machine lear-
ning.ai .
BIBLIOGRAPHIE 109

URL: https ://medium.com/deep-math-machine-learning-ai/chapter-3-support-


vector-machine-with-math-47d6193c82be 14
Natalya, N. N. (2004). Semantic integration : a survey of ontology-based approaches,
SIGMOD Record Journal 33 : 65–70. 29
N.Guarino (1998). Formal ontology and information systems, Formal Ontology in
Information Systems.IOS Press pp. 3–15. 22, 23
N.Hernandez (2005). Ontologies de domaine pour la modélisation du contexte en
Recherche d’information, PhD thesis. 23
N.MELLAL (2007). Réalisation de l’interopérabilitésémantique des systèmes,
baséesur les ontologies et les fluxd’information, Thése, PhD thesis. 29, 30, 31
Oprea, C. (2014). Performance evaluation of the data mining classification methods,
Annals - Economy Series Constantin Brancusi University, Faculty of Economics
0 : 249–253. 19
P Kumbhar and M.Mali (2016). A survey on feature selection techniques and classi-
fication algorithms for efficient text classification, International Journal of Science
and Research (IJSR) 5 : 1267–1275. 12
Poli, R., Healy, M. and Kameas, A. (2010). Book of theory and applications of
ontology : Computer applications, p. 595.
URL: www.springer.com 23
Pwint Myu Wai, H., Phyu Tar, P. and Thwe, P. (2018). Ontology based web
page classification system by using enhanced c4.5 and naı̈ve bayesian classi-
fiers, International Conference on Intelligent Informatics and Biomedical Sciences
(ICIIBMS) pp. 286–291. 35, 51
Rani, M., Dhar, A. K. and Vyas, O. (2017). Semi-automatic terminology ontology
learning based on topic modeling, Engineering Applications of Artificial Intelli-
gence Journal 63 : 108 – 125.
URL: http ://www.sciencedirect.com/science/article/pii/S0952197617300891 21
Raval, U. R. and Jani, C. (2016). Implementing and improvisation of k-means cluste-
ring algorithm, International Journal of Computer Science and Mobile Computing
5 : 191–203.
URL: www.ijcsmc.com 18
Sanchez-Pi, N., Martı́, L. and Garcia, A. C. B. (2016). Improving ontology-based
text classification : An occupational health and security application, Journal of
Applied Logic 17 : 48 – 58. SOCO13.
URL: http ://www.sciencedirect.com/science/article/pii/S1570868315000774
46, 51
110 CHAPITRE 10. CONCLUSION ET PERSPECTIVE

Staab, S. and Studer, R. (2009). Handbook on Ontologies, 2nd edn, Springer Publi-
shing Company, Incorporated. 28

Thasleena, N. and Varghese, S. (2015). Enhanced associative classification of xml


documents supported by semantic concepts, Procedia Computer Science Journal
46 : 194 – 201. Proceedings of the International Conference on Information
and Communication Technologies, ICICT 2014, 3-5 December 2014 at Bolgatty
Palace and Island Resort, Kochi, India.
URL: http ://www.sciencedirect.com/science/article/pii/S1877050915000757
40, 51

T.Liao and E.Triantaphyllou (2008). Recent Advances in Data Mining of Enter-


prise Data : Algorithms and Applications book, Vol. 6 of Series on Computers and
Operations Research. 16

T.Srivastava (2018). Introduction to k-nearest neighbors : A powerful machine


learning algorithm(with implementation in python).
URL: https ://www.analyticsvidhya.com/blog/2018/03/introduction-k-
neighbours-algorithm-clustering/ 15

Uysal, A. K. and Gunal, S. (2014). The impact of preprocessing on text classification,


Journal of Information Processing and Management 50(1) : 104 – 112.
URL: http ://www.sciencedirect.com/science/article/pii/S0306457313000964 10

V.Korde and C.M.Namrata (2012). Text classification and classifiers : A survey,


International Journal of Artificial Intelligence And Applications (IJAIA) 3 : 85–
99. 14, 15

Yang, Y. and Pedersen, J. O. (1997). A comparative study on feature selection


in text categorization, Proceedings of the Fourteenth International Conference on
Machine Learning, ICML ’97, Morgan Kaufmann Publishers Inc., San Francisco,
CA, USA, pp. 412–420.
URL: http ://dl.acm.org/citation.cfm ?id=645526.657137 12

Zhang, Q., Bin Wu and Juan Yang (2014). Parallelization of ontology construction
and fusion based on mapreduce, pp. 439–443. 11

Vous aimerez peut-être aussi