Rapport de Projet de Fin d’Etudes
Encadrants:
Catherine Faron-
Zuker
Christophe Désclaux
Elena Cabrio
Catégorisation
automatique de news à
l’aide de techniques
d’apprentissage supervisé
Ameni Bouaziz
M2 IFI/KIS
Catégorisation automatique de news à l’aide de techniques d’apprentissage supervisé
1
Table de Matières
1. Introduction .................................................................................................................................... 2
2. Etat de l’art ...................................................................................................................................... 2
2.1. Définition de la classification .................................................................................................... 2
2.2. Applications de la classification ................................................................................................ 3
2.3. Etapes de la classification ......................................................................................................... 3
2.3.1. Préprocessing ................................................................................................................... 3
2.3.2. Classification .................................................................................................................... 4
2.4. Les Techniques de classification automatique .......................................................................... 5
2.4.1. Apprentissage non supervisé ............................................................................................ 5
2.4.2. Apprentissage supervisé ................................................................................................... 6
3. Travail réalisé .................................................................................................................................. 9
3.1. Implémentation SVM choisie ................................................................................................. 10
3.2. Preprocessing ........................................................................................................................ 10
3.2.1. Elimination de stop words .............................................................................................. 12
3.2.2. Tokonization et Lemmatisation ....................................................................................... 12
3.2.3. Calcul des poids et préparation du vecteur caractéristique ............................................. 14
3.2.4. Exemple de preprocessing .............................................................................................. 14
3.3. Apprentissage ........................................................................................................................ 17
3.4. Classification .......................................................................................................................... 17
3.5. Intégration dans ZONE ........................................................................................................... 18
4. Expérimentation et Résultats ......................................................................................................... 18
4.1. Corpus de test ........................................................................................................................ 18
4.1.1. Anglais............................................................................................................................ 18
4.1.2. Français .......................................................................................................................... 19
4.2. Métriques d’évaluation .......................................................................................................... 19
4.3. Résultats et interprétation ..................................................................................................... 20
4.3.1. Anglais............................................................................................................................ 20
4.3.2. Français .......................................................................................................................... 22
5. Conclusion ..................................................................................................................................... 23
6. Références bibliographiques .......................................................................................................... 24
Catégorisation automatique de news à l’aide de techniques d’apprentissage supervisé
2
1. Introduction
Aujourd’hui avec le développement d’internet nous sommes en présence d’une quantité énorme
d’information électronique. Le coût de plus en plus faible du stockage fait en sorte que cette quantité
augmente continuellement. Parallèlement à cela, les sources de données ne cessent de se diversifier,
aujourd’hui pour accéder à une information on peut avoir recours à des journaux électroniques, à des
sites spécialisés, à des réseaux sociaux… Pour pouvoir gérer cette quantité grandissante de données et
en tirer le plus d’information possible il devient nécessaire de l’organiser et de la catégoriser. C’est dans
ce cadre que s’inscrit le projet ZONE, c’est un projet qui a pour but de développer un serveur
d’annotation sémantique de news afin de les classer en différentes catégories, Ainsi un client intéressé
par un type particulier d’information pourra trouver facilement toutes les news qui le concernent
quelles que soient leurs provenances. Le principe de l’application est le suivant : grâce à un serveur
abonné à différents flux RSS, on extrait et annote les textes des news, chaque texte se voit donc
attribuer une ou plusieurs catégories selon son contenu, les clients n’ont donc qu’à soumettre des
requêtes SPARQL pour récupérer et filtrer les flux RSS de news.
Dans le but d’optimiser la catégorisation dans le serveur d’annotations de ZONE, les résultats de
plusieurs méthodes sont combinés (Wiki Meta, Open Calais, …), notre projet consiste à implémenter une
nouvelle méthode de classification basée sur la fouille de données et utilisant le principe
d’apprentissage supervisé et particulièrement SVM.
Ce rapport décrit le travail réalisé au cours de ce projet, la première partie présente un état de l’art de la
question de classification de documents, la partie suivante explique les différentes étapes de
l’algorithme implémenté, et la dernière partie décrit les expériences réalisées ainsi que les résultats
obtenus et leurs analyses.
2. Etat de l’art
2.1. Définition de la classification
La classification automatique de documents est un problème connu en informatique, il s’agit
d’assigner un document a une plusieurs catégories ou classes. Le problème est différent selon la nature
des documents en question, en effet la classification de textes diffère de la classification de documents
images, vidéo ou encore son. On peut aussi imaginer des classifications selon des paramètres associés
aux documents tels que par exemple l’auteur, la date de parution… Dans le cadre de ce projet et dans la
suite de rapport nous nous baserons sur la classification de documents de type texte selon leur contenu.
Toute référence ultérieure à la classification renvoie donc à cette notion.
Catégorisation automatique de news à l’aide de techniques d’apprentissage supervisé
3
2.2. Applications de la classification
La classification automatique est une technique utilisée dans plusieurs domaines. Sa capacité
prédictive la rend rapide et efficace. Parmi les applications où la classification est utilisée, nous trouvons
le filtrage de spam, en effet il s’agit de traiter les messages électroniques textuels, identifier leurs
caractéristiques et les classer en deux groupes messages désirés ou non désirés. [1]
Une autre application est la détermination automatique du sujet d’un texte pour le classer
automatiquement afin de notifier des personnes intéressées par ce sujet de la présence d’un nouveau
texte…
2.3. Etapes de la classification
La classification automatique de documents doit être obligatoirement précédée par une phase de
préparation de données appelée « préprocessing ».
2.3.1. Préprocessing
2.3.1.1. Extraction de données
L’extraction de données est une tâche qui s’est développée dans le domaine de Traitement
Automatique des Langues (TAL). Elle consiste à identifier et extraire d’un texte les éléments pertinents
contenant des informations dont la nature est spécifiée à l’avance. Elle vise donc à transformer un texte
de son format initial (une suite de chaines de caractères) à une représentation structurée et donc un
format qui soit compréhensible par l’ordinateur. Elle se fait en reconnaissant dans le texte des unités
lexicales particulières.
Il existe plusieurs techniques d’extraction de données telles que :
Les outils terminologiques : nous nous intéressons aux termes présents dans un texte, ces
outils peuvent être linguistiques, statistiques ou mixtes, les méthodes linguistiques se basent
sur des patrons lexicaux-syntaxiques et sur le découpage des textes en unités syntaxiques. Les
méthodes statistiques font des calculs sur les fréquences et les distributions des mots dans les
textes.
Les méthodes d’extraction de relation terminologique : ici nous nous intéressons plutôt à la
relation entre les différents termes et structures des textes. Là aussi plusieurs approches
peuvent être utilisées, on distingue les méthodes structurelles, contextuelles et
distributionnelles
Les méthodes structurelles se basent sur la structure syntaxique interne des termes.
Dans le cas de méthodes contextuelles c’est plutôt le contexte dans lequel apparait le terme qui
est pris en compte.
Pour les méthodes distributionnelles, il s’agit de trouver des relations sémantiques entre les
termes d’un texte à partir des statistiques de leur apparition et leur distribution.
La reconnaissance des entités nommées : le plus souvent il s’agit de noms de personnes, de
lieux, de noms d’organisations, etc. Selon le domaine traité par le texte d’autres entités peuvent
Catégorisation automatique de news à l’aide de techniques d’apprentissage supervisé
4
être ajoutées à la liste précédente, par exemple dans un texte médical il est important de
reconnaître les noms de maladies ou de symptômes.
Plusieurs études sont faites sur les entités nommées, sur la façon de les identifier et de les
reconnaitre dans un texte. Pour identifier un terme comme étant une entité nommée, on peut
soit s’intéresser au terme lui-même (par exemple s’il commence par une lettre majuscule alors il
y a une forte chance qu’il représente une entité nommée) soit à son entourage (par exemple s’il
est précédé ou suivi d’un mot qui lui donne une qualification). [2]
Les applications de cette tâche ne se limitent pas à la classification de documents, en effet nous la
retrouvons dans la veille technologique, dans les interfaces Homme machines, etc…
2.3.1.2. Calcul de poids
Les données collectées du texte n’ont pas toutes la même valeur informative, Certaines données
sont plus importantes que d’autres pour la classification car elles apparaissent de façon répétée dans le
texte, d’autres le sont moins à cause de leur caractère commun dans la langue. Pour permettre une
meilleure classification, il faut refléter ce degré d’importance dans l’algorithme. C’est ainsi que nous
attribuons à chaque mot un poids.
IL existe plusieurs méthodes de calcul de poids, en voici deux des plus connues :
TF (Term Frequency) : C’est la fréquence d’apparition d’un mot dans le texte, elle est égale aux
nombre d’occurrences de ce mot divisé par le nombre total de mots du texte.
TF IDF (term frequency, inverse document frequency): C’est une mesure statistique qui
permet d’évaluer l’importance d’un mot dans un texte relativement à tout un corpus. Le poids
ne dépend pas seulement de la fréquence du mot dans le texte en question mais aussi de la
fréquence du mot dans tout le corpus. Ainsi un mot qui se répète dans tous les documents
devient inutile pour la classification.
TF_IDF = TF × IDF
Où IDF = log (
   
     
)
2.3.2. Classification
C’est à cette étape que se fait l’assignation du document à la classe à laquelle il appartient. La
détermination de la classe se fait grâce à des algorithmes de classification qui exploitent les données
extraites dans l’étape précédente et qui donnent en sortie la classe correspondante. Ces algorithmes se
basent sur leur expérience passée où ils ont appris comment classer les textes, c’est de là que vient leur
nom « Algorithmes d’apprentissage ». Il existe deux types de ces algorithmes :
Les algorithmes d’apprentissage supervisé
Les algorithmes d’apprentissage non supervisé.
Ces deux types seront détaillés dans la section suivante.
1 / 25 100%