Vous êtes sur la page 1sur 84

République Algérienne Démocratique et Populaire

Ministère de l’enseignement supérieur et de la recherche scientifique

Université Dr. TAHAR MOULAY SAIDA


FACULTÉ : TECHNOLOGIE
DÉPARTEMENT : INFORMATIQUE

MEMOIRE DE MASTER
option :
Micr

Thème

L’ANALYSE DU SENTIMENT UTILISANT LE DEEP


LEARNING

Encadré par :
Présenté par :
Dr. Yahlali Mebarka
Medjdoubi Abdelkader
Dr. Boudia Mohamed Amine

Promotion :Juin 2019


Remerciement

"Au début, nous remercions Allah qui nous a aidés à accomplir ce travail, et qui a été avec
nous à tous les moments de notre chemin d’étude. A mes chers parent ma mère et mon père
pour leur Patience, leur amour, leur soutien et leur Encouragement. Nos sincères
remerciements à tous les membres du jury qui nous ont fait l’honneur de réviser ce travail.
Un remerciement spécial au Dr .Mebarka YAHLALI et au Dr. Mohamed Amine
BOUDIA pour leur patience, leur aide et leurs conseils pour élaborer ce travail.
Une personne que je dois mentionner pour son aide et sa patience dans l’élaboration de ce
travail est Mlle Abdelli Wafa, un grand merci pour son soutien."

1
Résumé

L ’analyse des sentiments, une tâche de traitement du langage naturel, est un sujet d’intérêt
dans le passé et dans les années actuelles pour la communauté des chercheurs. Ce problème a
beaucoup de solutions proposées avec différentes techniques de classification de l’apprentissage
machine. L’une des techniques les plus récentes est l’apprentissage profond que nous trouvons
beaucoup de contributions l’ont utilisé comme une solution à ce type de tâche et montre aussi
de bons résultats.

Mots clés : Analyse du sentiment, opinion mining, traitement automatique de la langue,


deep learning, machine learning.

2
Abstract

T he Sentiment Analysis a type of natural language processing tasks a topic of interest


in the past and in the present years in the research community. This problem has a lot of
proposed solutions with various machine learning classification techniques. One of the newest
techniques is deep learning that we find a lot of contributions did use it as a solution to this
type of task and shows a good result.

Key words : Sentiment analysis, opinion mining, natural language processing, deep lear-
ning, machine learning.

3
Table des matières

Table des figures 8

Liste des tableaux 10

Acronyme 11

Introduction générale 12
0.1 Médias sociaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
0.2 Objectif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
0.3 La description des chapitres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1 L’analyse du Sentiment 15
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2 Les niveaux d’analyse du sentiment . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.1 Le niveau du document . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.2 Le niveau de la phrase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.3 Le niveau d’aspect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3 Les applications de l’analyse du sentiment . . . . . . . . . . . . . . . . . . . . . 19
1.4 Les approches d’analyse du sentiment . . . . . . . . . . . . . . . . . . . . . . . 20
1.4.1 L’approche d’apprentissage automatique . . . . . . . . . . . . . . . . . . 21

4
TABLE DES MATIÈRES 5

1.4.2 L’approche lexicale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23


1.4.3 Les travaux connexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.5 Les problèmes d’analyse du sentiment . . . . . . . . . . . . . . . . . . . . . . . . 27

2 Deep Learning 30
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2 Les applications du Deep Learning . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.3 Le réseau neuronal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.4 L’apprentissage en Deep Learning . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.4.2 Les variantes de la descente de gradient . . . . . . . . . . . . . . . . . . . 48
2.4.3 Les Algorithmes d’optimisation de la descente de gradient . . . . . . . . 49
2.5 L’analyse du sentiment et le Deep Learning . . . . . . . . . . . . . . . . . . . . 49

3 Contribution 52
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2 Twitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2.1 La structure de Tweet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2.2 Architecture de notre système . . . . . . . . . . . . . . . . . . . . . . . . 54
3.3 Dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3.1 Sentiment140 Dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3.2 Twitter US Airline Sentiment Dataset . . . . . . . . . . . . . . . . . . . 56
3.4 Présentation des outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4.1 Le software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4.2 Le hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.5 Implémentation et Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.5.1 Le prétraitement des données . . . . . . . . . . . . . . . . . . . . . . . . 59
3.5.2 L’Architecture de notre réseau . . . . . . . . . . . . . . . . . . . . . . . 60
3.5.3 Résultats obtenus et discussions . . . . . . . . . . . . . . . . . . . . . . 65
3.5.4 Les résultats finaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.5.5 Comparaison entre nos résultats et ceux du projet Sentiment140 : . . . . 73
3.6 L’interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
TABLE DES MATIÈRES 6

Conclusion générale 76

Bibliographie 77
Table des figures

1.1 Résumé des approches d’analyse du sentiment[22] [26] . . . . . . . . . . . . . . . 20

2.1 Les progrès de l’Intelligence Artificielle[41] . . . . . . . . . . . . . . . . . . . . . 32


2.2 La relation entre les 3 concepts [42] . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.3 Un neurone réel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.4 Un neurone artificiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.5 Représentation graphique de la fonction Sigmoïde [65] . . . . . . . . . . . . . . . 40
2.6 Représentation graphique de la fonction Relu [65] . . . . . . . . . . . . . . . . . 41
2.7 Un réseau entièrement connecté[39]. . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.8 Les types de séquences d’entrée pour un réseau récurrent[39]. . . . . . . . . . . . 43
2.9 Un exemple d’un réseau récurrent qui se déroule[39]. . . . . . . . . . . . . . . . 44
2.10 Une chaîne de cellules LSTM [69] . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.11 Un résumé des types d’architectures de réseaux de neurones[73]. . . . . . . . . . 47
2.12 Une illustration du processus de recherche de l’optimum[64]. . . . . . . . . . . . 48

3.1 Exemple d’un Tweet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54


3.2 Architecture du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3 Extrait du data set Sentiment140 [48]. . . . . . . . . . . . . . . . . . . . . . . . 56
3.4 Le nombre de tweet de l’ensemble de données de Sentiment140 [48]. . . . . . . . 56

7
TABLE DES FIGURES 8

3.5 Extrait du data set de Twitter US.Airline Sentiment [49]. . . . . . . . . . . . . . 57


3.6 Le nombre de tweet l’ensemble de données de Twitter US.Airline Sentiment [49]. 57
3.7 Illustration du fonctionnement du Dropout [40]. . . . . . . . . . . . . . . . . . . 61
3.8 L’architecture du modèle LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.9 L’architecture du modèle CNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.10 Illustration du rôle de la couche Flatten . . . . . . . . . . . . . . . . . . . . . . . 65
3.11 La robustesse et l’erreur du modèle LSTM sur le jeu de données Sentiment140 . 66
3.12 La précision et le rappelle du modèle LSTM sur le jeu de données Sentiment140 . 67
3.13 La fmesure du modèle LSTM sur le jeu de données Sentiment140 . . . . . . . . . 67
3.14 La robustesse et l’erreur du modèle LSTM sur le jeu de données Twitter
US.Airline Sentiment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.15 La précision et le rappelle du modèle LSTM sur le jeu de données Twitter
US.Airline Sentiment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.16 La fmesure du modèle LSTM sur le jeu de données Twitter US.Airline Sentiment. 68
3.17 La robustesse et l’erreur du modèle CNN sur le jeu de données Sentiment140. . . 70
3.18 La précision et le rappelle du modèle CNN sur le jeu de données Sentiment140. . 70
3.19 La fmesure du modèle CNN sur le jeu de données Sentiment140. . . . . . . . . . 70
3.20 La robustesse et l’erreur du modèle CNN sur le jeu de données Twitter US.Airline
Sentiment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.21 La précision et le rappelle du modèle CNN sur le jeu de données Twitter
US.Airline Sentiment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.22 La fmesure du modèle CNN sur le jeu de données Twitter US.Airline Sentiment. 71
3.23 Interface graphique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Liste des tableaux

1.1 Résumé des avantages et des inconvénients des techniques mentionnées[21]. . . . 23


1.2 Résumé des avantages et des limites des deux approches précédentes basées sur
différents niveaux d’analyse du sentiment[26] [27] [28]. . . . . . . . . . . . . . . . 25
1.3 Résumé des résultats des trois méthodes d’apprentissage automatique appliquées
[18]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.1 Le résumé de l’histoire de deep learning [68]. . . . . . . . . . . . . . . . . . . . . 34


2.2 Résumé des résultats obtenus avec la robustesse comme une métrique d’évalua-
tion [79]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3 Résumé des résultats basant sur la robustesse comme une métrique d’évaluation
[87]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

3.1 configuration du colab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59


3.2 Le nombre de tweet dans les deux ensembles de données. . . . . . . . . . . . . . 66
3.3 Les résultats d’entrainement et de validation du modèle LSTM sur les deux jeux
de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.4 Les résultats d’entrainement et de validation du modèle CNN sur les deux jeux
de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.5 Le nombre de tweets pour la phase de test. . . . . . . . . . . . . . . . . . . . . . 72

9
LISTE DES TABLEAUX 10

3.6 Les résultats finaux des deux modèles dans les deux ensembles de données. . . . 73
3.7 les résultats obtenus du projet Sentiment140 et de notre deux modèles proposés.. 74
Acronyme

IA : Intelligence Artificielle.

TAL : Traitement Automatique de Langage.

DL : Deep Learning.

LSTM : Long Short Term Memory.

CNN : Convolutional Neural Network..

ML : Machine Learning.

RNN : Recurrent Neural Network..

SVM : Support Vector Machine.

KNN : K Nearest Neighbor.

NB : Naïve Bayes.

GA : Algorithme Génétique.

ANN : Artificial Neural Network.

11
Introduction générale

0.1 Médias sociaux


e nos jours, Internet est devenu plus que jamais un outil essentiel et puissant pour
D l’échange d’informations dans le monde entier. Elle nous offre une quantité considérable
de données et ses services s’adaptent de plus en plus aux besoins des internautes. Ils peuvent
utiliser Internet pour acheter des produits, trouver des lieux et des informations, partager leurs
sentiments et leurs opinions, envoyer des e-mails, lire des journaux en ligne, etc.
Au cours des dernières années, Internet est devenu encore plus universel en raison du déve-
loppement des médias sociaux qui sont accessibles à toute personne et en tout lieu. Les médias
sociaux facilitent la publication, le partage et l’obtention d’informations par rapport aux mé-
dias traditionnels tels que les journaux, la télévision et la radio parce qu’ils sont bon marché et
gratuits et offrent diverses possibilités telles que l’envoi de messages et de fichiers, la réalisation
des vidéos, le téléchargement de documents, de livres, etc.
Les médias sociaux qui ont récemment connu une croissance remarquable sont les réseaux
sociaux tels que Facebook et Twitter. Les réseaux sociaux mentionnés sont des sites Web
qui rassemblent des individus, des entreprises et des organisations avec la possibilité d’échanger
des informations par des interactions. Grâce à leur facilité d’utilisation et leur libre accès, ils
connaissent un succès grandissant jour après jour et gagnent la confiance du public.

12
Introduction générale 13

La popularité des médias sociaux est liée à la demande d’information qui est devenue plus
importante dans notre société, car nous savons que ce genre de sites rendent l’information circule
très rapidement et disponible partout dans le monde, donc l’accès à tout type de données et
l’absence d’information ne sont plus un problème, et c’est pourquoi les gens utilisent de plus en
plus les réseaux sociaux chaque jour. En général, nous constatons que les gens aiment consulter
les interactions et les réactions des autres, comme les opinions par exemple, avant de prendre
une décision ou d’exprimer leur propre opinion, même s’ils connaissent ces personnes ou non.
De ce fait, l’information est devenue plus précieuse que jamais, de nombreux domaines sont de
plus en plus dominés par la circulation de l’information sur Internet et plus particulièrement
sur les réseaux sociaux comme l’économie, la politique, le sport, etc.
En particulier le cas de l’extraction des opinions des gens et de leur façon de penser sur n’im-
porte quel sujet de leur vie. Le mot extraction fait référence à la tâche liée à l’échange d’infor-
mations et d’opinions qui permettre l’apparition de certains types d’applications informatiques
de façon croissante. Ces applications ont été conçues pour analyser, détecter et récupérer les
émotions et les expressions des gens sur Internet, ce qui est présenté dans la littérature comme
analyse d’opinion (Opinion Mining en Anglais) ou analyse du sentiment (Sentiment Analysis
en Anglais). Parmi de nombreuses autres tâches, l’analyse du sentiment est un outil pour dé-
terminer l’opinion des gens sur les sites Web et les réseaux sociaux, dans le but de faire diverses
choses comme extraire le comportement des personnes, recommander des produits ou montrer
et expliquer des résultats dans les élections par exemple. Il consiste à rechercher des données
textuelles à caractère évaluatif sur Internet, telles que les revues, les tweets, les commentaires,
etc.
Automatiquement ou manuellement, le processus vise à une meilleure compréhension de
l’opinion publique. De nombreuses études ont montré que l’analyse du sentiment est très in-
téressante pour les personnes qui se concentrent sur l’opinion publique, pour de nombreuses
raisons personnelles, commerciales ou politiques. Ainsi, de nombreuses applications et systèmes
ont déjà été développés pour cette tâche, ils sont généralement formés sur des données tex-
tuelles évaluatives traditionnelles comme sur des textes non-traditionnels comme les messages
et les tweets de réseaux sociaux qui deviennent une ressource très importante et précieuse pour
les internautes concernant leurs opinions et leurs orientations. Par conséquent, il est devenu
important de concevoir des systèmes et des applications automatiques capables d’analyser, de
détecter et d’extraire les sentiments et les opinions des individus qui sont exprimés sur les
Introduction générale 14

réseaux sociaux.

0.2 Objectif
Dans ce projet, notre objectif est d’explorer le domaine de l’analyse du sentiment, de don-
ner un aperçu de ce qu’est ce problème et de représenter les différentes techniques et approches
proposées et leurs résultats. Nous avons également l’intention de présenter l’approche Deep
Learning, de ses applications et de développer notre propre modèle en tant qu’une contribution
à la problématique de l’analyse du sentiment

0.3 La description des chapitres


Chapitre 1 : Le premier chapitre présente le problème de l’analyse du sentiment, ses différents
niveaux, ses approches et ses travaux connexes.

Chapitre 2 : Le second chapitre sera une description de l’apprentissage approfondi, de ses


applications et de ses fondements.

Chapitre 3 : Le troisième chapitre sera une description de nos modèles proposés, les outils
utilisés et les résultats obtenus.
CHAPITRE 1

L’analyse du Sentiment

15
L’analyse du Sentiment 16

1.1 Introduction

A ujourd’hui, avec l’augmentation de la quantité de données qui circulent sur le web, les utili-
sateurs partagent leurs sentiments, leurs opinions ou leurs points de vue sur l’Internet presque
partout, sous forme de commentaires, questions ou tout autre forme d’expression. Nous vivons
dans une époque où l’information est disponible en grande quantité et sous diverses formes,
la forme textuelle représente 80% de cette masse d’information, mais le volume massif de ces
données n’a aucune utilité si nous ne les explorons pas d’une manière spécifique en utilisant des
méthodes visant à extraire une information significative[1].
L’analyse du sentiment, aussi appelée opinion mining, est un sujet qui se concentre sur
la réalisation de ce type de tâches. Il existe de nombreux autres noms apparentés se référant
légèrement à différentes tâches telles que l’extraction d’opinion, le sentiment mining, l’analyse
de subjectivité, l’analyse d’affect, l’analyse d’émotion, les avis mining, etc. Cependant, ils font
maintenant tous partie de l’analyse des sentiments ou de l’opinion mining. Dans l’industrie, le
terme d’analyse du sentiment est couramment le plus utilisé, mais dans le milieu universitaire,
on utilise fréquemment à la fois l’analyse du sentiment et l’opinion mining [1]. Ce sujet suscite
beaucoup d’intérêt parmi des nombreux chercheurs qui ont apporté des contributions à l’aide
de diverses techniques.
Nous trouvons de nombreux travaux qui ont commencé plus tôt en 1997 un travail visant
à prédire l’orientation sémantique des adjectifs[2], en 2000 un travail proposé également axé
sur l’orientation adjectifs et leurs effets sur les phrases[3], en 2001 on trouve deux travaux, le
premier est un modèle d’un système opérationnel pour détecter et suivre les opinions[6], le
deuxième est un modèle suggéré pour obtenir les opinions des gens à partir des messages[5],
en 2004 un projet qui représente un modèle d’extraction de sentiments[4], etc. Parce qu’elle se
concentre sur les données textuelles, l’analyse du sentiment est largement utilisée dans d’autres
domaines que le traitement automatique du langue (TAL) comme le data mining, le texte
mining et la recherche d’information.

Définition [90] : Le traitement automatique de la langue naturelle (TALN) ou des langues


(TAL) est une discipline à la frontière de la linguistique, de l’informatique et de l’intelligence
artificielle. Elle concerne la conception de systèmes et techniques informatiques permettant de
manipuler le langage humain dans tous ses aspects.
L’analyse du Sentiment 17

Avant d’arriver à ce qu’est l’analyse du sentiment, nous devons définir les deux termes
sentiment et opinion, car dans la littérature et dans le domaine actif de la recherche, il existe
une confusion entre ces deux mots.
Dans le dictionnaire Oxford[88], le sentiment est défini comme un point de vue ou une opinion
qui est détenu ou exprimé et comme une émotion. Pour le mot opinion, il s’agit d’une croyance
ou d’un jugement formé sur quelque chose, qui n’est pas nécessairement fondé sur des faits ou
des connaissances, mais sur les croyances ou les opinions d’un groupe ou de la majorité des gens.
La distinction entre les deux est assez compliquée parce que les deux termes comprennent des
parties l’un de l’autre. On peut dire que le terme sentiment est plus l’émotion d’une personne à
propos quelque chose, où le terme opinion représente ou montre le point de vue d’une personne.
La tâche d’analyse du sentiment porte plusieurs autres noms tels que l’extraction d’opinion,
la détection d’émotions, etc. C’est une tâche qui tente de classifier les données textuelles avec
diverses méthodes, nous pouvons dire classifie parce que c’est un type de NLP. Selon Bing
Liu[1] :

"L’analyse du sentiment, aussi appelée opinion mining, est le domaine d’étude


qui analyse les opinions, les sentiments, les évaluations, les attitudes et les
émotions des gens envers les entités et leurs attributs exprimés dans un texte
écrit."

En d’autres termes, l’analyse du sentiment concerne le traitement d’un texte d’opinion pour
extraire et catégoriser les opinions d’un certain document. La polarité des sentiments généra-
lement exprimée en termes d’opinion positive ou négative (classification binaire). Cependant,
il peut s’agir d’une classification multiple, où le sentiment peut avoir une étiquette neutre ou
même une étiquette différente comme très positive, positive, neutre, négative, très négative, les
étiquettes peuvent aussi être associées à des émotions comme la tristesse, la colère, le bonheur,
etc. Ce sujet est un domaine en développement qui suscite l’intérêt des recherches et a pris
beaucoup d’intérêt ces 20 dernières années ce qui pousse à suggérer plusieurs contributions
avec diverses méthodes utilisant des approches multiples.

1.2 Les niveaux d’analyse du sentiment


La recherche sur l’analyse du sentiment a été principalement effectuée à trois niveaux d’ana-
lyse différents [1] : au niveau du document, au niveau de la phrase et au niveau de l’aspect.
L’analyse du Sentiment 18

1.2.1 Le niveau du document

La tâche à ce niveau, connue sous le nom de classification des sentiments du document,


vise à déterminer si une opinion entière du document présente un sentiment positif ou négatif.
Par exemple, lorsqu’un film ou un produit fait l’objet d’une critique, le système décide si la
critique exprimée est une opinion positive ou négative. Ce niveau est la forme la plus simple de
classification [35]. Le contenu du document est considéré comme l’unité centrale de l’information
que nous utilisons pour extraire le sentiment. A ce niveau, nous supposons que le document n’a
qu’une opinion sur un seul objet (sport, politique, guerre, etc.). Cette approche ne convient pas
dans le cas d’un document qui parle de différentes entités et contient des opinions sur différents
objets comme dans les forums et les blogs.

1.2.2 Le niveau de la phrase

À ce niveau, nous traitons des phrases. Chacun d’entre eux est considéré comme une unité
d’information qui porte une opinion. La tâche à ce niveau consiste à classer chaque phrase
selon l’opinion qu’elle s’exprime un opinion positive, négative ou neutre. Ce niveau d’analyse
est considéré comme une classification de la subjectivité ou il y a la distinction entre les phrases
objectives et les phrases subjectives. Néanmoins, la subjectivité n’est pas l’équivalent d’un senti-
ment ou d’une opinion, car de nombreuses phrases objectives peuvent impliquer des sentiments
ou des opinions [1], par exemple, "We bought the car last month and the windshield wi-
per has fallen off."D’un autre côté, beaucoup de phrases subjectives peuvent ne représenter
aucune opinion ou sentiment, par exemple, "He goes to work."

1.2.3 Le niveau d’aspect

Le niveau d’aspect, également appelé le niveau de caractéristique, effectue une analyse plus
poussée et de meilleure qualité, car il examine directement l’opinion elle-même. Ni l’analyse
de document ni l’analyse de la phrase, découvrent ce que les gens aiment et n’aiment pas
exactement [1]. L’étape de base de ce niveau consiste à identifier et à extraire les entités cibles.
Par exemple :

"This Neighborhood is a great place to live ."

Dans cette phrase, le mot textit ’Neighborhood’ est la cible et ’great place’ est l’opinion
ou l’expression du sentiment (adjectif). Le but de ce niveau d’analyse est de découvrir des
L’analyse du Sentiment 19

sentiments sur des entités et/ou leurs aspects [1].

1.3 Les applications de l’analyse du sentiment


L’utilisation de l’analyse du sentiment peut être trouvée dans de multiples domaines et a été
utilisée par plusieurs petites ou grandes entreprises qui ont l’extraction d’opinion et l’analyse du
sentiment comme un élément de leurs systèmes. L’utilisation peut être trouvée sous multiples
formes [7] :

1. En tant que sous-partie des systèmes : Les systèmes d’analyse du sentiment et d’ana-
lyse de l’opinion jouent un rôle important en tant qu’amélioration par rapport à d’autres
systèmes comme les systèmes de recommandation, où l’on ne recommande pas des élé-
ments qui reçoivent beaucoup de commentaires négatifs [8]. De même, en ce qui concerne
les systèmes d’extraction de l’information, il a été démontré que nous pouvons les amélio-
rer et les rendre plus performants en coupant l’information dans des phrases subjectives
[9]. Les systèmes de réponse aux questions sont un autre domaine où l’analyse du senti-
ment peut être bénéfique [10] [11]. Le résumé du document peut faire mieux et donner
des bons résultats dans le cas où nous avons intérêt à prendre en compte plusieurs points
de vue, comme indiqué dans [12].

2. L’utilisation par les industries et les gouvernements : L’analyse des sentiments


peut être très utile pour des domaines spécifiques, par les gouvernements, où nous
trouvons que certains d’entre eux essaient de comprendre l’opinion du public sur les
décisions ou quelque chose de particulier comme les élections par exemple. En 2016,
l’élection présidentielle américaine. Donald Trump a dit [13] : "Je doute que je serais ici
sans les médias sociaux, pour être honnête avec vous." L’utilité des médias sociaux, en
particulier Twitter, il a été très utile de communiquer avec le public et de comprendre
leurs opinions et de se concentrer sur la façon dont les électeurs pensent. De même,
lorsqu’il s’agit d’industries où l’analyse du sentiment fait partie de leurs stratégies de
planification pour la prise de décision, elles ont construit ou sont en train de construire
leurs propres systèmes d’analyse du sentiment, des entreprises comme Google, Microsoft,
Hewlett-Packard, Amazon, Oracle, Adobe et Bloomberg. Ce sujet peut être utilisé dans
le marketing par exemple lorsqu’il aide à comprendre le succès ou l’échec du lancement
de nouveaux produits ou services, ou encore à déterminer quelle version d’un produit
L’analyse du Sentiment 20

est la plus appréciée dans quelle partie du monde. Les grandes entreprises peuvent
identifier leurs stratégies futures à partir des données relatives aux services ou produits
déjà analysés.

3. Autres domaines d’application : Les applications d’analyse du sentiment se sont éten-


dues à presque tous les domaines possibles, des produits de consommation, des soins de
santé, du tourisme, de l’hôtellerie, des services financiers et des événements sociaux. En
plus des intérêts commerciaux, de multiples projets réels tentent d’implémenter des mo-
dèles d’analyse du sentiment comme les restaurants, les hôtels, les cosmétiques, les films,
l’automobile, les compagnies de téléphonie mobile, etc.[1]

1.4 Les approches d’analyse du sentiment


Le thème de l’opinion mining a beaucoup d’importance dans le domaine de la recherche.
De nombreux travaux récents ont proposé différentes approches. Nous résumons certaines de
ces méthodes dans la figure suivante :

Figure 1.1 – Résumé des approches d’analyse du sentiment[22] [26]

Nous trouvons une autre nouvelle approche qui est nouvelle dans le domaine de l’appren-
tissage machine et qui a été utilisée comme une solution proposée au problème de l’Opinion
Mining, c’est l’approche d’apprentissage profond, dont nous parlerons en détail au chapitre 2.
L’analyse du Sentiment 21

1.4.1 L’approche d’apprentissage automatique

L’apprentissage machine (ML : Machine Learning) est un sous-domaine de l’intelligence


artificielle, qui donne à un système une capacité de compréhension grâce à ses algorithmes.
Il est basé sur l’idée de faire apprendre des algorithmes à partir de données et de faire des
prédictions avec ces données et par cela les ordinateurs apprennent à résoudre des tâches spé-
cifiques, sans avoir besoin de les programmer. Il existe 3 types ou catégories de l’apprentissage
machine. Le premier s’appelle l’apprentissage supervisé où, après avoir présenté les données
et les résultats souhaités aux ordinateurs, ils auront la capacité de faire des prédictions pour
de nouvelles données d’entrée. Le second est l’apprentissage non supervisé où l’on ne donne
à l’ordinateur que les données et où il doit trouver une structure avec un sens par lui-même
sans l’intervention d’une supervision extérieure. Elle dépend principalement du clustering. Le
processus d’apprentissage se fait par l’observation et non par l’exemple [14]. Le troisième est
l’apprentissage par renforcement où la machine se comporte comme un agent qui apprend de
son environnement d’une manière interactive jusqu’à ce qu’il découvert les comportements qui
produisent des récompenses.
Il existe différents classificateurs dans les méthodes d’apprentissage supervisé qui sont uti-
liser pour l’analyse du sentiment, certains d’entre eux sont les suivants :

1.4.1.1 Support Vector Machine (SVM) classificateur : SVM est une méthode dont
l’objectif principal est de trouver des séparateurs linéaires qui se séparent entre diffé-
rentes classes. Le SVM trouve un hyperplan avec la plus grande marge possible [15]. Le
SVM prend en entrée un grand nombre d’exemples et les affecte à différentes classes. Les
données formées qui sont des exemples considérés comme des points dans l’espace. Le
point que nous avons obtenu appartient à l’une des classes qui sont pré-séparées et la
distance obtenue est appelée hyperplan. Quand nous avons une nouvelle donnée d’entrée,
nous la mettons dans le SVM, elle sera assignée à l’une des classes après une séparation
par la marge. Plus la marge est grande, plus l’erreur de généralisation du classificateur
est faible [16].

1.4.1.2 Naïve Bayes classificateur : La classificateur Naïve Bayes est une technique d’ap-
prentissage probabiliste supervisé qui est régulièrement utilisée à des fins de classification.
Il est basé sur le théorème de Bayes où la probabilité conditionnelle qu’un événement X
se produise, pour un indice Y, est déterminée par la règle de Bayes :
L’analyse du Sentiment 22

P(X/Y) = P(X) P(Y/X) / P(Y)

Ainsi, pour trouver le sentiment d’une phrase d’entrée, elle sera transformée en ce qui
suit [17] :

P(Sentiment/Phrase) = P(Sentiment)P(Phrase/Sentiment) /P(Phrase)

Qui est formulé par ce qui suit :


Nombre du token dans la classe + 1 / (Nombre de tous les tokens de cette classe+ Nombre de
tous les tokens)

Le 1 supplémentaire et le nombre de tous les tokens s’appelle « l’ajout d’un » ou lissage de


Laplace.

1.4.1.3 K-plus proche voisin (KNN) classificateur : Le KNN classificateur est un


exemple typique qui ne construit pas une représentation explicite et déclarative de la
catégorie x mais se base sur les étiquettes (labels) de catégorie attachées aux documents
d’entraînements similaires au document du test [18]. La distance est le facteur qui relie
les données connues et inconnues, il n’y a pas d’hypothèse préalable sur la distribution
des données qui ont été prélevées dans un ensemble d’échantillons.

Lorsque nous avons un nouvel exemple en entrée, il sera classé en fonction de la distance
qu’est le signe pour faire la classification.
Pour la technique d’apprentissage non supervisé, on parle principalement de clustering où il
s’agit de découvrir des groupes et de présenter une vue d’ensemble des classes dans une collection
de documents. L’algorithme le plus largement utilisé est l’algorithme de base k-means [19]. Il
ne nécessite pas de processus d’entraînement ou de données pré-étiquetées. Ce processus de
clustering a été appliqué comme une solution potentielle au problème de l’extraction d’opinion,
un travail similaire proposé dans [20] qui a prédit l’orientation sémantique des adjectifs.
Comme toutes les techniques, celles mentionnées ci-dessus ont leurs avantages et leurs in-
convénients. Nous les résumons dans le tableau suivant :
L’analyse du Sentiment 23

Technique L’Apprentissage Avantages Inconvénients


-Très haute robus-
-Incapable de la clas-
tesse
sification multiclass
SVM Supervisé -Moins de surap-
-Coûteux en calcul
prentissage
Performance lente.
-Robuste au bruit.
-Rapide dans la
tâche d’entraine- -Suppose l’indépen-
ment et de classifi- dance de la caracté-
Naïve
Supervisé cation. ristique.
Bayes
-Pas sensible aux -Moins précis que
caractéristiques non SVM.
pertinentes.
-Biaisée par la valeur
-Entraînement très
de K.
rapide.
-Haute complexité
-Simple et facile à
de calcul.
K-NN Supervisé comprendre.
-Se laisse facile-
-Gère bien les
ment tromper par
grands ensembles de
des attributs non
données.
pertinents.
-Plus rapide que les -Moins précis que
méthodes d’appren- l’apprentissage su-
K-Means Unsupervisé tissage supervisé. pervisé.
-Facile à mettre en -Difficile de prédire
œvre. la valeur de K.

Table 1.1 – Résumé des avantages et des inconvénients des techniques mentionnées[21].

1.4.2 L’approche lexicale

L’approche basée sur le lexique dépend des lexiques de sentiment utilisés pour l’analyse
d’un texte d’entrée donné. Un lexique des sentiments est un ensemble de terminologies et
L’analyse du Sentiment 24

d’expressions d’opinion connues et précompilées. Cette approche se divise généralement en


deux grandes catégories : l’approche par dictionnaire et l’approche par corpus.

1.4.2.1 L’approche fondée sur le dictionnaire : Il s’appuie sur l’extraction de l’opinion


puis l’utilisation du dictionnaire des synonymes et des antonymes. Cette technique basée
sur l’orientation sémantique des mots, pour cela elle utilise un dictionnaire pré-construit
tel que SentiWordNet qui est l’un des dictionnaires standards les plus utilisés de nos jours
[22] [23] [24].

1.4.2.2 L’approche par Corpus : Les approches basées sur des corpus reposent sur l’orien-
tation contextuelle des mots d’opinion [25]. Dans cette technique, un corpus de mots
d’opinion d’un domaine spécifique est créé à partir d’un groupe de mots-clés de base.
La taille augmente en ajoutant d’autres terminologies d’opinion à l’aide de différentes
techniques statistiques ou sémantiques.

Le tableau suivant montre les avantages et les limites de l’approche basée sur ML et de l’ap-
proche basée sur un lexique : :
L’analyse du Sentiment 25

L’apprentissage automa- Approche basée sur un


Approche
tique lexique
-Il pourrait être trans-
formé en ce que le
domaine demande pour -Ne demande aucune
mieux travailler. données d’entrainement
-Un dictionnaire n’est ou des données étiquetées
Avantages
pas nécessaire. et ceci permet d’intro-
-Donne de meilleurs duire moins d’opérations
résultats en terme de de calcul.
haute précision de
classification.
-Elle peut être affec-
tée par les variations de
-Moins de capacité de
classes et aussi par l’effet
classification en fonction
des changements linguis-
du contexte ou du do-
tiques.
maine.
Désavantages -Les classificateurs qui se
-Exigeait l’existence de
sont entrainé sur un do-
ressources linguistiques
maine spécifique, dans
puissantes qui ne sont
la plupart des cas ne
pas toujours disponibles.
fonctionnent pas avec un
autre.

Table 1.2 – Résumé des avantages et des limites des deux approches précédentes basées sur
différents niveaux d’analyse du sentiment[26] [27] [28].

1.4.3 Les travaux connexes

Divers travaux d’apprentissage automatique anciens et récents ont été proposés comme
un solution à ce sujet de l’analyse du sentiment. Dans ce qui suit, nous en avons mentionné
quelques-unes :
Dans [18], ils avaient représenté l’utilisation de cinq méthodes d’apprentissage, entre les-
L’analyse du Sentiment 26

quels nous trouvons les trois types de classificateurs mentionnés ci-dessus, à savoir K-NN, NB
et SVM pour la classification du sentiment d’un corpus de sentiments chinois d’une taille de
1021 documents. Comme une méthodologie, les auteurs suivent trois étapes. Premièrement, ils
ont fait le POSAGE (Part-Of-Speech tagging) des textes chinois en utilisant l’outil ICTCLAS
pour analyser et marquer les documents de révision en chinois. Deuxièmement, lors de la sé-
lection des caractéristiques, ils ont essayé quatre méthodes de sélection qui sont (l’information
mutuelle (MI), le gain d’information (IG), les mesures statistiques CHI (CHI) et la fréquence du
document (DF)). Ils sont utilisés pour choisir des termes discriminants pour l’entrainement et
la classification. Enfin, la classification en utilisant les méthodes d’apprentissage automatique.
Les résultats obtenus sont résumés dans le tableau suivant :

Naive
K-NN Robustesse
Bayes
MI 0.7943 0.8012 0.8257
IG 0.8756 0.8883 0.9060
CHI 0.8433 0.8913 0.8903
DF 0.8511 0.8717 0.8521
Moyenne 0.8548 0.8411 0.8631

Table 1.3 – Résumé des résultats des trois méthodes d’apprentissage automatique appliquées
[18].

Le travail [29] a montré la création de deux classificateurs SVM, l’un pour détecter le
sentiment des messages tels que les tweets (tâche au niveau du message) et l’autre pour détecter
le sentiment d’un terme dans un message (tâche au niveau du terme). Les résultats obtenus
ont été très bons. Selon les auteurs Parmi les soumissions de 44 équipes participant à une
compétition, l’approche proposée était la première dans les deux tâches sur les tweets avec un
F-score de 69,02% dans la tâche au niveau du message et de 88,93% dans la tâche au niveau
du terme.
Dans [30], une approche hybride associant une approche lexicale et des techniques
d’apprentissage automatique incluant les classificateurs NB et SVM a été explorée. Ce travail
proposé prend en charge la détection des changements émotionnels, la découverte des émotions
et la classification des utilisateurs en fonction de leurs messages. Les résultats obtenus ont
L’analyse du Sentiment 27

montré une robustesse élevée de 83,27%.


Dans [31], ils ont proposé une méthode d’hybridation entre le NB classificateur et l’algo-
rithme génétique (AG). Les auteurs effectuent une classification des sentiments sur les données
de critiques des films. Les résultats obtenus portaient sur trois aspects : les résultats du classifi-
cateur NB avec une robustesse de 91,15%, les résultats de l’AG avec une robustesse de 91,25%
et le résultat le plus élevé était obtenu avec la technique hybride (NB AG) avec une robustesse
de 93,80%.
Dans [32] représentait une classification de sentiment avec deux méthodes, KNN et le
NB sur des critiques de films et des évaluations d’hôtels. Les résultats de ces deux techniques
comparées par les auteurs reposaient sur la robustesse, la précision et la valeur du rappel.
Avec la base des critiques de films, le NB a donné de bien meilleurs résultats que KNN avec
une robustesse de 84,09% et 68,14% respectivement avec 4500 critiques. En utilisant le même
nombre d’avis d’hôtels, ces algorithmes ont donné moins, avec 54,09% pour le NB et 48,21%
pour le KNN.
Dans [32] représentait une classification de sentiment avec deux méthodes, K-plus proche
voisin (K-NN) et le Naïve Bayes (NB) sur des critiques de films et des évaluations d’hôtels.
Les résultats de ces deux techniques comparées par les auteurs reposaient sur la robustesse,
la précision et la valeur du rappel. Avec la base des critiques de films, le NB a donné de bien
meilleurs résultats que K-NN avec une robustesse de 84,09% et 68,14% respectivement avec
4500 critiques. En utilisant le même nombre d’avis d’hôtels, ces algorithmes ont donné moins,
avec 54,09% pour le NB et 48,21% pour le K-NN.

1.5 Les problèmes d’analyse du sentiment


L’analyse du sentiment est une tâche très complexe qui comporte de nombreux problèmes
non résolus. Voici quelques-uns de ces défis qui existent lorsque l’on travaille sur ce sujet :

1.5.1 Le traitement des comparaisons et le traitement de la négation : Des mots


comme "non", "not" et "never"sont difficiles à manipuler correctement parce que
mentionner le mot "not" dans une phrase avant le mot "good", par exemple, conduira
à un sentiment totalement différent par rapport à une autre phrase qui ne contient que
le mot "good". Pour le cas de comparaison, nous sommes confrontés à un problème
lorsque nous disons par exemple " Real Madrid is better than Liverpool ?, cette
L’analyse du Sentiment 28

phrase sera considérée comme positive à la fois pour le terme "Real Madrid" et aussi
pour le terme "Liverpool" en utilisant la représentation du sac du mot.

1.5.2 La détection des fausses opinions : Avec l’augmentation massive des médias so-
ciaux, il arrive que des fausses critiques et de fausses opinions prennent une place. Une
fausse opinion se réfère à un avis qui trompe les utilisateurs avec un opinion négative
ou positive fabriquée sur une entité spécifique dans le but de sous-estimer la réputation
de cette entité. Ces spams font des opinions sans but dans de nombreuses applications
différentes.

1.5.3 Le problème de la langue : Dans l’analyse du sentiment, la langue la plus utilisée est
la langue Anglaise, ce qui incite les chercheurs à travailler sur d’autres langues comme
l’Arabe, le Chinois, l’Allemand, etc. Le défi consiste à développer des ressources comme
des lexiques, des dictionnaires et des corpus pour ces langues.

1.5.4 Le problème du sujet (Aboutness en anglais) : C’est un problème spécifique au-


quel nous pourrait être confrontés lorsque nous parlons d’une entité dans un contexte et
que nous utilisons la même entité mais dans un contexte totalement différent mais que le
classificateur considère les deux situations comme une seule, par exemple [33] :

• Le contexte concerne le terme "Google" : " I love Google."

• Le contexte ne concerne pas le terme "Google" : " You should Google that."

1.5.5 Les Phrases ironiques (La détection de sarcasme) : Les expressions sous forme
des blagues peuvent conduire à une mauvaise compréhension du sens. Ces phrases avec ce
genre d’expressions humoristiques peuvent détruire la valeur de l’ensemble du document.
Nous prenons comme exemple l’expression de quelque chose qui utilise des mots positifs,
mais le sentiment est négatif :

" Nice play, you should singe with Real Madrid."

L’expression ne comprend que des mots positifs, mais elle révèle en réalité un sentiment négatif.

1.5.6 Construire un classificateur pour les tweets subjectifs vs. Objectifs : Les tra-
vaux en cours se concentrent principalement sur la classification correcte du positif et
du négatif. Il est nécessaire d’examiner la classification des tweets avec ou sans sentiment
[33].
L’analyse du Sentiment 29

1.5.7 L’identification des parties subjectives du texte : Les éléments subjectifs repré-
sentent des contenus porteurs des sentiments. Le même mot peut être considéré comme
subjectif dans un cas, et objectif dans un autre. Il est donc difficile de traiter ce cas et
d’identifier les éléments subjectifs mentionnés dans un texte donné. Par exemple [34] :

"The language of Mr. Dennis was very crude."


"Crude oil is obtained by extraction from the sea beds."

Le terme "Crude" est utilisé dans le premier exemple sous forme d’opinion, alors qu’il
est tout à fait objectif dans le second.

Conclusion :
Dans ce chapitre, nous avons présenté ce qu’est l’analyse du sentiment, avec ses trois diffé-
rents niveaux, et nous parlons aussi de ses applications. Nous avons mentionné les différentes
approches qui existent avec les différents algorithmes et nous avons cité certains des travaux
connexes avec les résultats obtenus, et nous avons aussi parlé des problèmes qui existaient dans
ce type de tache.
CHAPITRE 2

Deep Learning

30
Deep Learning 31

2.1 Introduction

A vant d’arriver à ce qu’est l’apprentissage profond (DL : Deep Learning), nous devons introduire
deux concepts principaux : le premier est le ML que nous introduisons dans le dernier chapitre,
et le second est le concept d’intelligence artificielle.
L’Intelligence Artificielle (IA) est un vaste domaine, où nous essayons d’imiter le compor-
tement humain dans le but de rendre les machines si puissantes pour accomplir de nombreux
types de tâches telles que la résolution de problèmes, la représentation des connaissances, la
reconnaissance vocale, et autres. L’idée de base est de mettre les connaissances dans la machine.
Grâce à ces deux domaines., il existe des systèmes sophistiqués capable de changer leur compor-
tement sans qu’il soit nécessaire d’apporter des modifications à leur code, mais uniquement sur
leurs données d’entraînement. Ainsi, avec cette vague de techniques avancées d’apprentissage
machine qui donne à l’IA un pas en avant, où est la place de DL ou qu’est-ce que le DL apporte
dans ce domaine.
De nos jours, DL est au centre de l’attention puisque sa réalisation est beaucoup plus
importante que tout autre algorithme d’apprentissage machine dans des tâches aussi complexes,
par exemple, nous marquons ce qui suit :

• Le traitement d’images et la reconnaissance d’objets dans [36] qui nous montrent un


progrès en utilisant des réseaux convolutifs profonds pour la reconnaissance d’objets, et
l’adoption de l’apprentissage profond par la communauté de computer vision.

• La reconnaissance vocale et le traitement du signal dans [37] qui nous présentent les
résultats obtenus dans la classification phonétique pour la reconnaissance automatique de
la parole comme la première application industrielle de l’apprentissage profond.

DL est l’une des raisons qui ont conduit les récents mouvements et progrès de l’IA, et
c’est la principale cause qui fait penser que finalement, il existe une possibilité pour l’IA de
devenir plus réaliste. Alors, qu’est-ce que DL ?
Selon les fondateurs Yann LeCun, Yoshua Bengio Geoffrey Hinton dans [38] :

"L’apprentissage profond permet aux modèles informatiques composés de


plusieurs couches de traitement d’apprendre des représentations de données avec
plusieurs niveaux d’abstraction."
Deep Learning 32

Autre définition par les auteurs dans [40] :


"L’apprentissage profond est une classe de techniques d’apprentissage machine, où
l’information est traitée en couches hiérarchiques pour comprendre les représen-
tations et les caractéristiques des données dans des niveaux de complexité crois-
sante."
En d’autres termes, DL est un sous-ensemble des méthodologies et techniques de ML qui
utilisent le réseau neuronal artificiel (ANN). C’est l’adaptation des réseaux neuronaux qui imite
la structure du cerveau humain. La force de DL réside dans le fait que la machine peut extraire
des caractéristiques et apprendre toute seule, indépendamment de l’intervention d’un expert.
Il a été appliqué dans de nombreux domaines différents (traitement des images, textes, paroles
et vidéos). Le succès de DL appartient à la disponibilité de plus de données d’entrainement.
Google, Facebook et Amazon a déjà commencé à l’utiliser pour faire l’analyse de leurs énormes
quantités de données [91] [92].
La figure suivante représente un résumé des progrès de l’IA depuis ses débuts jusqu’à
l’apparition de DL :

Figure 2.1 – Les progrès de l’Intelligence Artificielle[41]


Deep Learning 33

Dans [68], un article représente un aperçu du contexte historique de DL, il présente les
étapes majeures qui mènent à ce que nous avons maintenant. Ces étapes sont résumées dans le
tableau suivant :

L’année Contributeur Contribution


-Introduction de l’associationnisme,
300 AC Aristotle début de l’histoire des humains qui es-
sayent de comprendre le cerveau
-Introduction du Neural Groupings
1873 Alexander Bain comme les premiers modèles
de réseaux de neurones
-Introduction du McCulloch Pitts (MCP)
McCulloch et modèle considérer comme
1943
Pitts L’ancêtre des réseaux de neurones artifi-
cielles
-Considérer comme le père des réseaux de
neurones, il introduit la règle d’appren-
1949 Donald Hebb
tissage de Hebb qui servira de fondation
pour les réseaux de neurones modernes.
Frank Rosen-
1958 -Introduction du premier perceptron
blatt
1974 Paul Werbos -Introduction de la retro propagation
-Introduction des cartes auto organisa-
1980 Teuvo Kohonen
trices
-Introduction du Neocognitron,
Kunihiko Fuku-
1980 qui a inspiré les réseaux de neurones
shima
convolutif
1982 John Hopfield -Introduction des réseaux de Hopfield
Hilton et Sej-
1985 -Introduction des machines de Boltzmann
nowski
Deep Learning 34

-Introduction de Harmonium,
1986 Paul Smolensky qui sera connu plus tard comme
machines de Boltzmann restreintes
Michael I. Jor- -Définition et introduction des
1986
dan réseaux de neurones récurrent
-Introduction de LeNet et montra
1990 Yann LeCun la capacités des réseaux de neurones
profond
Schuster et Pali- -Introduction des réseaux de neu-
1997
wal rones récurrent bidirectionnelles
-Introduction de LSTM, qui ont ré-
Hochreiter et solu le problème du vanishing gra-
1997
Schmidhuber dient dans les réseaux de neurones
récurrent
-Introduction des Deep Belief Net-
2006 Geoffrey Hinton
work
Salakhutdinov -Introduction des Deep Boltzmann
2009
et Hinton Machines
-Introduction de AlexNet qui rem-
2012 Geoffrey Hinton
porta le challenge ImageNet

Table 2.1 – Le résumé de l’histoire de deep learning [68].

La relation entre les trois concepts IA, ML et DL est résumée par les auteurs dans la figure
suivante :
Deep Learning 35

Figure 2.2 – La relation entre les 3 concepts [42]

2.2 Les applications du Deep Learning


1. La reconnaissance faciale : Les yeux, le nez, la bouche, tout autant de caractéristiques
qu’un algorithme de DL va apprendre à détecter sur une photo. Il va s’agir en premier
lieu de donner un certain nombre d’images à l’algorithme, puis à force d’entraînement,
l’algorithme va être en mesure de détecter un visage sur une image.

2. Le traitement automatique de langage naturel : Le traitement automatique de


langage naturel est une autre application du DL. Son but étant d’extraire le sens des
mots, voire des phrases pour faire de l’analyse de sentiments. L’algorithme va par
exemple comprendre ce qui est dit dans un avis Google, ou va communiquer avec des
personnes via des chatbots. La lecture et l’analyse automatique de textes est aussi un
des champs d’application du DL avec le Topic Modeling : tel texte aborde tel sujet.

3. Voitures autonomes : Les entreprises qui construisent de tels types de services d’aide à
la conduite, ainsi que des voitures autonomes telles que Google, doivent apprendre à un
ordinateur à maîtriser certaines parties essentielles de la conduite à l’aide de systèmes
de capteurs numériques au lieu de l’esprit humain. Pour ce faire, les entreprises
commencent généralement par entraîner des algorithmes utilisant une grande quantité
de données. Vous pouvez imaginer comment un enfant apprend grâce à des expériences
constantes et à la réplication. Ces nouveaux services pourraient fournir des modèles
commerciaux inattendus aux entreprises.
Deep Learning 36

4. Recherche vocale et assistants à commande vocale : L’un des domaines


d’utilisation les plus populaires de DL est la recherche vocale et les assistants intelligents
à commande vocale. Avec les grands géants de la technologie ont déjà fait d’importants
investissements dans ce domaine, des assistants à commande vocale peuvent être trouvés
sur presque tous les smartphones. Le Siri d’Apple est sur le marché depuis octobre 2011.
Google aujourd’hui, l’assistant à commande vocale pour Androïde, a été lancé moins
d’une année après Siri. Le plus récent des assistants intelligents à commande vocale est
Microsoft Cortana.

5. Ajout automatique de sons à des films muets : Dans cette tâche, le système doit
synthétiser des sons pour correspondre à une vidéo silencieuse. Le système est formé à
l’aide de 1 000 exemples de vidéos avec le son d’une baguette frappant différentes
surfaces et créant différents sons. Un modèle DL associe les images vidéo à une base de
données de sons pré-enregistrés afin de sélectionner le son à reproduire qui correspond le
mieux à ce qui se passe dans la scène.
Le système a ensuite été évalué à l’aide d’un test de contrôle, comme une configuration
dans laquelle les humains devaient déterminer quelle vidéo comportait le son réel ou le
son factice (synthétisé). ). Ceci utilise à la fois les réseaux de neurones convolutionnels
et les réseaux de neurones récurrents à mémoire à court terme.

6. traduction automatique : Il s’agit d’une tâche dans laquelle des mots, expressions ou
phrases donnés dans une langue sont automatiquement traduits dans une autre langue.
La traduction automatique existe depuis longtemps, mais DL permet d’obtenir les
meilleurs résultats dans deux domaines spécifiques :

• Traduction automatique de texte

• Traduction automatique d’images

La traduction de texte peut être effectuée sans aucun traitement préalable de la


séquence, ce qui permet à l’algorithme d’apprendre les dépendances entre les mots et
leur correspondance avec une nouvelle langue.

7. Génération automatique de texte : C’est une tâche intéressante, où un corpus de


texte est appris et à partir de ce modèle, un nouveau texte est généré, mot par mot ou
caractère par caractère. Le modèle est capable d’apprendre comment épeler, ponctuer,
Deep Learning 37

former des phrases et même capturer le style du texte dans le corpus. Les grands
réseaux de neurones récurrents sont utilisés pour apprendre la relation entre les éléments
dans les séquences de chaînes d’entrée, puis pour générer du texte.

8. Reconnaissance d’image : Un autre domaine populaire en matière de DL est la


reconnaissance d’image. Son objectif est de reconnaître et d’identifier les personnes et
les objets dans les images, ainsi que de comprendre le contenu et le contexte. La
reconnaissance d’image est déjà utilisée dans plusieurs secteurs tels que les jeux, les
médias sociaux, la vente au détail, le tourisme, etc. Cette tâche nécessite la classification
des objets d’une photo parmi un ensemble d’objets connus auparavant. Une variante plus
complexe de cette tâche, appelée détection d’objet, consiste à identifier spécifiquement
un ou plusieurs objets dans la scène de la photo et à dessiner un cadre autour d’eux.

9. la description automatique d’image : Le sous-titrage automatique des images est la


tâche pour laquelle le système doit générer une légende décrivant le contenu de l’image.
Une fois que vous pouvez détecter des objets sur des photographies et générer des
étiquettes pour ces objets, vous pouvez voir que l’étape suivante consiste à transformer
ces étiquettes en description de phrase cohérente. Généralement, les systèmes impliquent
l’utilisation de très grands réseaux de neurones convolutifs pour la détection d’objets sur
les photographies, puis d’un réseau de neurones récurrent comme une mémoire à court
terme à long terme pour transformer les étiquettes en une phrase cohérente..

10. Colorisation automatique : La colorisation de l’image pose le problème de l’ajout de


couleurs aux photographies noir et blanc. Le DL peut être utilisé pour utiliser les objets
et leur contexte dans la photographie pour colorer l’image, un peu comme un opérateur
humain pourrait aborder le problème. Cette capacité tire parti des réseaux de neurones
de convolution de grande qualité et de très grande taille formés pour ImageNet et
cooptés pour le problème de la colorisation de l’image. Généralement, l’approche
implique l’utilisation de très grands réseaux de neurones convolutifs et de couches
supervisées qui recréent l’image avec l’ajout de couleurs.

11. la détection du cancer du cerveau : Une équipe de chercheurs français a noté qu’il
était difficile de détecter les cellules cancéreuses du cerveau invasives au cours d’une
intervention chirurgicale, en partie à cause des effets de l’éclairage dans les salles
Deep Learning 38

d’opération. Ils ont découvert que l’utilisation de réseaux de neurones conjointement


avec la spectroscopie Raman pendant les opérations leur permettait de détecter les
cellules cancéreuses plus facilement et de réduire le cancer résiduel après l’opération.

12. Analyse des sentiments du texte : De nombreuses applications ont des commentaires
ou des systèmes de révision basés sur des commentaires intégrés à leurs applications. La
recherche sur le traitement du langage naturel et les réseaux de neurones récurrents ont
parcouru un long chemin et il est maintenant tout à fait possible de déployer ces
modèles sur le texte de votre application pour extraire des informations de niveau
supérieur. Cela peut être très utile pour évaluer la polarité sentimentale dans les
sections de commentaires ou pour extraire des sujets significatifs à l’aide de modèles de
reconnaissance d’entités nommées.

13. Recherche en marketing : En plus de rechercher de nouvelles fonctionnalités


susceptibles d’améliorer votre application, DL peut également être utile en arrière-plan.
La segmentation du marché, l’analyse des campagnes marketing et bien d’autres
peuvent être améliorés à l’aide de modèles de régression et de classification DL. Cela
vous aidera vraiment beaucoup si vous avez une grande quantité de données. Sinon,
vous ferez probablement mieux d’utiliser des algorithmes traditionnels d’apprentissage
automatique pour ces tâches plutôt que DL . [93]

2.3 Le réseau neuronal


La pratique, de tous les algorithmes de DL sont des réseaux neuronaux [40]. Les réseaux
neuronaux, aussi appelés ANN, sont des modèles de traitement de l’information qui simulent
le fonctionnement d’un système nerveux biologique. C’est similaire à la façon dont le cerveau
manipule l’information au niveau du fonctionnement. Tous les réseaux neuronaux sont
constitués de neurones inter connectés qui sont organisés en couches [40].

2.3.1 Le neurone : Ce qui forme les réseaux de neurones, ce sont les neurones artificiels
inspirés du vrai neurone qui existe dans notre cerveau. Les 2 figures suivantes montrent
une représentation d’un neurone réel et d’un neurone artificiel :
Deep Learning 39

Figure 2.3 – Un neurone réel

Figure 2.4 – Un neurone artificiel

Les Xi sont des valeurs numériques qui représentent soit les données d’entrée, soit les valeurs
sorties d’autres neurones. Les poids Wi sont des valeurs numériques qui représentent soit la
valeur de puissance des entrées, soit la valeur de puissance des connexions entre les neurones.
Il existe des opérations qui se passent au niveau du neurone artificiel. Le neurone artificiel fera
un produit entre le poids (w) et la valeur d’entrée (x), puis ajouter un biais (b), le résultat est
transmis à une fonction d’activation (f) qui ajoutera une certaine non-linéarité.

2.3.2 Les fonctions d’activation : Après que le neurone a effectué le produit entre ses
entrées et ses poids, il applique également une non-linéarité sur ce résultat. Cette
fonction non linéaire s’appelle la fonction d’activation.
La fonction d’activation est une composante essentielle du réseau neuronal. Ce que cette
fonction a décidé est si le neurone est activé ou non. Il calcule la somme pondérée des
entrées et ajoute le biais. C’est une transformation non linéaire de la valeur d’entrée.
Deep Learning 40

Après la transformation, cette sortie est envoyée à la couche suivante. La non-linéarité


est si importante dans les réseaux de neurones, sans la fonction d’activation, un réseau
de neurones est devenu simplement un modèle linéaire. Il existe de nombreux types de
ces fonctions, parmi lesquelles nous trouvons [65] [66] :

2.3.2.1 La fonction Sigmoïde : Cette fonction est l’une des plus couramment utilisées. Il
est borné entre 0 et 1, et il peut être interprété stochastique-ment comme la probabilité
que le neurone s’active, et il est généralement appelé la fonction logistique ou le
sigmoïde logistique.

Figure 2.5 – Représentation graphique de la fonction Sigmoïde [65] .

2.3.2.2 La fonction ReLu : La fonction RELU est probablement la plus proche de sa


correspondante biologique [66]. Cette fonction est récemment devenue le choix de
nombreuses tâches (notamment en computer vision) [65]. Comme dans la formule
ci-dessus, cette fonction renvoie 0 si l’entrée z est inférieure à 0 et retourne z lui-même si
il est plus grande que 0.

2.3.2.3 La fonction Softmax : Régression Softmax (synonymes : Logistique multinomiale,


Classificateur d’entropie maximale, ou simplement Régression logistique multi-classe)
est une généralisation de la régression logistique que nous pouvons utiliser pour la
classification multi-classes [67]. Contrairement à d’autres types de fonctions, la sortie
d’un neurone d’une couche utilisant la fonction softamx dépend des sorties de tous les
autres neurones de sa couche. Cela s’explique par le fait qu’il nécessite que la somme de
toutes les sorties soit égale à 1. Dans [65], nous avons un exemple de reconnaissance de
Deep Learning 41

Figure 2.6 – Représentation graphique de la fonction Relu [65] .

chiffres manuscrits. Dans cette tâche, chaque étiquette est comprise entre 0 et 9. Nous
devons être confiants dans notre prédiction et cela peut être fait en utilisant une
distribution de probabilité. Pour la tâche mentionnée, le vecteur de sortie souhaité est
de la forme ci-dessous :

[p0 p1 p1 p2 p3 . . . p9]
Où :
P9
i=0 pi = 1

2.3.3 Les architectures des réseaux de neurones : La plupart des architectures


profondes sont réalisées en combinant et recombinant un ensemble limité de primitives
architecturales (des couches de réseaux neuronaux) [39]. Selon Hinton, dans [42], nous
disons que notre réseau de neurones est profond lorsque le nombre des couches cachées
est supérieur à 1. Dans cette section, nous présenterons un bref aperçu des structures
communes que l’on retrouve dans de nombreux réseaux profonds.

2.3.3.1 Les réseaux entièrement connectés : Un réseau entièrement connecté (Fully


Connected en Anglais) permet de transformer une liste d’entrées en une liste de sorties.
La transformation est appelée totalement connectée car toute valeur d’entrée peut
affecter toute valeur de sortie. Ces couches auront de nombreux paramètres apprenables,
même pour des entrées relativement petites [39], mais elles ont le grand avantage de
n’assumer aucune structure dans les entrées. Les calculs sont une série de
transformations qui changer les similarités entre les cas. Dans ce type de réseaux, les
Deep Learning 42

activités des neurones de chaque couche sont une fonction non-linéaire des activités de
la couche inférieure [43].

Figure 2.7 – Un réseau entièrement connecté[39].

2.3.3.2 Les réseaux convolutionnels : Un réseau convolutionnel (CNN : Convolutional


Neural Networks) suppose une structure spatiale particulière dans son entrée. En
particulier, il suppose que les entrées qui sont proches les unes des autres dans l’entrée
originale sont sémantiquement liées [39]. CNN est une séquence de couches, et chaque
couche transforme un volume d’activations en un autre par une fonction différentiable
[70]. Les trois principaux types de couches pour construire ce type de réseau sont :
couche convolutive, couche de pooling et couche entièrement connectée [70].

-La couche convolutive : C’est la couche la plus importante et le cœur des éléments
constitutifs du réseau convolutif, et c’est aussi elle qui effectue le plus de calculs lourd.

-La couche de pooling : Il est courant d’insérer périodiquement une couche Pooling dans
ce type d’architecture. Sa fonction est de réduire progressivement la taille spatiale de la
représentation pour réduire le nombre de paramètres et de calculs dans le réseau, et
donc de contrôler également le overfitting.
Deep Learning 43

-La couche entièrement connectée : Comme nous l’avons mentionné précédemment, les
neurones d’une couche entièrement connectée ont des connexions complètes à toutes les
activations de la couche précédente.

2.3.3.3 Les réseaux neuronaux récurrents et LSTM : Les couches de réseaux neuro-
naux récurrentes (RNN : Recurrent Neural Networks) sont des entités primitives qui permettent
aux réseaux neuronaux d’apprendre à partir de séquences d’entrées [39].La figure représente les
types de séquences d’entrée que le réseau traite :

Figure 2.8 – Les types de séquences d’entrée pour un réseau récurrent[39].


Deep Learning 44

Si la séquence que nous traitons est une phrase de 3 termes par exemple, le réseau va être
déroulé en un réseau neuronal à 3 couches, une couche pour chaque mot, la figure suivante [39]
représente cette idée :

Figure 2.9 – Un exemple d’un réseau récurrent qui se déroule[39].

Les formules qui dirigent le calcul sont les suivantes :

• xt est l’entrée au temps t

• st est l’état caché à l’instant t

st est calculé en fonction de l’état caché précédent et de l’entrée à l’étape courante avec :
xt = f (uxt + wst−1 )

• La fonction f est la fonction d’activation

• Ot à l’instant . Par exemple, si nous souhaitons prédire le mot suivant dans une phrase,
ce serait un vecteur de probabilités à travers notre vocabulaire [72], nous utiliserons alors
la fonction d’activation softmax avec : ot = sof tmax(vst ) .

Long Short-Term Memory (LSTM) : Les réseaux de mémoire à long terme à court terme
généralement appelés simplement (LSTM : Long Short Term Memory) sont un type spécial
de RNN. Ils ont été introduits par Hochreiter Schmidhuber (1997). Les Réseaux neuronaux
récurrents présentés dans la section précédente sont capables d’apprendre des règles de mise
à jour de séquence arbitraire en théorie. Dans la pratique, cependant, ces modèles oublient
généralement rapidement le passé [39]. C’est ce qu’on appelle le problème de la disparition de
gradient [44] et c’est pourquoi ils ont inventé le LSTM. La cellule LSTM est une adaptation de
la couche récurrente qui permet aux signaux plus anciens des couches profondes de se déplacer
Deep Learning 45

vers la cellule du présent [39]. La figure suivante représente une chaîne de trois cellules LSTM :

Figure 2.10 – Une chaîne de cellules LSTM [69]

Les calculs se déroule comme suit [69] :

Avec :
ht−1 : La sortie a l’instant t-1
xt : L’entrée courant a l’instant t
b : C’est le bais
w : C’est le poids
σ : C’est la fonction sigmoïde

Avec :
Deep Learning 46

tanh : C’est la fonction d’activation tangente hyperbolique


ct : Une valeur candidate

Avec
ct : État interne

Avec
ht : La sortie

Les réseaux neuronaux mentionnés, ne sont pas tous les réseaux qui existent, une excellente
ressource qui résume peut-être toute les architectures est en [73]. La figure suivante montre
une représentation de ce travail :
Deep Learning 47

Figure 2.11 – Un résumé des types d’architectures de réseaux de neurones[73].


Deep Learning 48

2.4 L’apprentissage en Deep Learning

2.4.1 Introduction

Le processus d’apprentissage dans le DL revient à l’entraînement du réseau neuronal en


utilisant des optimiseurs itératifs, , qui ne font que conduire la fonction de coût à une très
faible valeur [64]. Nous pouvons utiliser différents algorithmes pour effectuer l’apprentissage
[40], mais l’algorithme le plus utilisé est l’algorithme itératif d’optimisation par la descente de
gradient qu’est la méthode la plus utilisée presque sur tous les réseaux neuronaux avec ses
différents modèles [64]. Le processus d’apprentissage revient au problème d’optimisation où il
s’agit de minimiser ou de maximiser une fonction f(x). Cette fonction est appelée la fonction
objective, les auteurs dans [64] l’ont appelée aussi la fonction de coût, la fonction de perte et
la fonction d’erreur. Pendant l’entrainement, l’algorithme tente d’identifier le minimum global
sans tomber dans le piège du minimum local. Le schéma suivant réalisé par les auteurs en [64]
est une illustration de ce concept :

Figure 2.12 – Une illustration du processus de recherche de l’optimum[64].

2.4.2 Les variantes de la descente de gradient

Il existe trois principaux types de variantes de l’algorithme de descente de gradient. La


principale différence entre eux est la quantité de données que nous utilisons lorsque nous
calculons le gradient pour chaque étape d’apprentissage [40] [64] [65]. Les algorithmes
d’optimisation qui utilisent tout l’ensemble de l’apprentissage sont appelés les méthodes de
Deep Learning 49

gradients déterministes ou batch descente de gradient, car ce sont des méthodes où tous les
exemples d’apprentissage sont traités simultanément dans un grand batch, tandis que le terme
"batch" pour décrire un groupe d’exemples.
Les algorithmes d’optimisation qui n’utilisent qu’un seul exemple à la fois sont parfois
appelés méthodes stochastiques ou en online descente de gradient.
La plupart des algorithmes utilisés pour l’apprentissage profond se situent quelque part
entre les deux, utilisant plus d’un mais moins que tous les exemples d’entrainement. Ils sont
appelés les méthodes stochastiques de minibatch ou de minibatch descente de gradient.

2.4.3 Les Algorithmes d’optimisation de la descente de gradient

Adam : Adam est un algorithme d’optimisation présenté en 2015 [80]. Le nom de cet
algorithme est dérivé de Adaptive Moment Estimation. Lors de l’introduction de cet
algorithme, les auteurs ont présenté les avantages de l’utilisation d’Adam sur des problèmes
d’optimisation non convexes, comme suit :

• Simplicité de mise en œuvre.

• Efficacité du calcul.

• Peu de mémoire requise.

• Bien adapté aux problèmes volumineux en termes de données et/ou de paramètres.

• Les hyper-paramètres nécessitent généralement peu de réglages.

Il existe d’autres optimiseurs avec différents mécanismes de fonctionnement, comme :

• Adagrad

• RMSProp

• Adadelta

2.5 L’analyse du sentiment et le Deep Learning


Le DL a prouvé son efficacité dans de nombreux problèmes complexes avec l’utilisation de
réseaux de neurones artificiels pour apprendre et extraire des modèles et des informations
significatives depuis les données. Par conséquent, nous trouvons de nombreuses contributions
qui tentent d’adapter cette approche comme une solution au problème de l’analyse du
Deep Learning 50

sentiment. Récemment, de nombreux articles ont été publiés dans lesquels nous trouvons
l’utilisation des différentes architectures de réseaux de neurones mentionnées précédemment :
Dans [77] qui explorait l’application des CNN profonds sur les tweets. Les résultats ont été
très bons selon les auteurs et les résultats obtenues ont été classées dans les deux premières en
terme de robustesse dans le Semeval-2015 [74].
Dans [78] ils ont proposé un réseau CNN dynamique (appelé DCNN) pour la modélisation
sémantique des phrases. Le modèle a réussi à capturer les relations entre les mots. Les
expériences ont été faites sur les tweets data set qui ont une robustesse de 87,4 % et sur les
revues de films data set qui ont une robustesse de 86,8 %.
Dans [79], ils ont introduit un modèle de classification des sentiments au niveau du
document. Les auteurs construisent un modèle qui utilise d’abord un réseau de neurones
convolutif pour apprendre la représentation des phrases, puis la sémantique des phrases.
Les relations entre les phrases sont codées d’une manière adaptative dans la représentation
de documents avec un réseau de neurones récurrent. Les résultats obtenus ont été les
meilleurs, comme l’affirment les auteurs utilisant quatre data sets de l’IMDB [76] et de Yelp
[75]. Le tableau ci-dessous résume ces résultats :

Yelp 2013 Yelp 2014 Yelp 2015 IMDB


LSTM-GRNN 65.1 % 67.1 % 67.6 % 45.3 %

Table 2.2 – Résumé des résultats obtenus avec la robustesse comme une métrique d’évaluation
[79].
Deep Learning 51

Dans [87] un travail qui présentait une comparaison empirique entre le SVM et les réseaux
neuronaux artificiels (ANN) concernant l’analyse du sentiment au niveau du document. Pour
tester leurs travaux, les auteurs ont expérimenté les modèles sur quatre data sets différents.
Le ANN a dépassé SVM d’une manière significative en terme robustesse, comme le montre le
tableau ci-dessous :

ANN SVM
Movies dataset 86% 85.2%
GPS dataset 87.3% 84.5%
Books dataset 81.8% 80.9%
Cameras dataset 90.3% 89.6%

Table 2.3 – Résumé des résultats basant sur la robustesse comme une métrique d’évaluation
[87].
CHAPITRE 3

Contribution

52
Contribution 53

3.1 Introduction
Dans le cadre de notre recherche, nous avons traité les textes anglais pour l’analyse du
sentiment. Ce traitement permet d’extraire la polarité des opinions qui s’exprime en négatif et
positif dans le cas d’une classification binaire et en négatif, neutre et positif dans le cas d’une
classification multiple. Les données d’entrée que nous avons utilisées sont des tweets, extraits
de deux datasets pour entraîner et tester notre modèle de DL et aussi nous testons le modèle
proposé en temps réel sur des tweets extraits du Twitter lui-même. Ces tweets représentent les
statuts postés sur ce réseau social.

3.2 Twitter
En mars 2006, Twitter a été créé par le développeur Jack Dorsey pour rester en contact
avec sa famille et ses amis. Twitter est un service Web qui permet aux utilisateurs d’envoyer,
de consulter et de lire des messages courts. Twitter est un réseau social qui permet aux
utilisateurs de poster des messages en temps réel, appelés tweets. Les tweets sont des messages
courts, limités à 280 caractères [45]. En raison de la qualité de ce service, les gens utilisent des
abréviations, font des fautes d’orthographe, utilisent des émoticônes et autres caractéristiques
qui expriment des significations particulières. Ce réseau social est actuellement l’une des
plateformes les plus populaires. Plusieurs célébrités utilisent Twitter, dont des chefs d’État.

3.2.1 La structure de Tweet

Un tweet est associé à diverses informations [46] :

• L’id du tweet.

• La date et le temps du tweet.

• Le nom de l’utilisateur qui a posté le tweet.

• Le texte du tweet.

• D’émojis .

• La photo du profil.

• L’emplacement de l’utilisation.
Contribution 54

La figure suivante représente un tweet qui illustre l’ensemble les différents éléments
mentionnés :

Figure 3.1 – Exemple d’un Tweet

3.2.2 Architecture de notre système

Notre projet de recherche porte sur la tâche d’analyse du sentiment sur les données de
Twitter. Pour attendre cette objectif et pour obtenir la meilleure performance possible, nous
proposons le système suivant :
Contribution 55

Figure 3.2 – Architecture du système

3.3 Dataset

3.3.1 Sentiment140 Dataset

Sentiment140 Dataset fait partie du projet Sentiment140 [48] à l’Université de Stanford.


Selon les auteurs, la construction de cette collection de données a été faite automatiquement.
La collecte de données a été faite par l’API Twitter [57]. La figure suivante représente un
extrait de cet ensemble de données :
Contribution 56

Figure 3.3 – Extrait du data set Sentiment140 [48].

Il s’agit d’un grand ensemble de données, plus d’un million de tweets avec deux classes de
tweets négatifs et positifs, avec 800.000 pour chacun. Les auteurs ont représenté la classe
positive avec le numéro 4 et l’autre classe avec le numéro 0. Le schéma suivant les représente :

Figure 3.4 – Le nombre de tweet de l’ensemble de données de Sentiment140 [48].

3.3.2 Twitter US Airline Sentiment Dataset

Le jeu de données de Twitter US.Airline de Kaggle[49] a été pris à l’origine de [60]. Selon les
auteurs de Kaggle, les données fournies sont reformatées à partir de la version originale en
utilisant des méthodes de pré-traitement qui ont fait des transformations [61]. La figure
suivante représente une partie de cet ensemble de données :
Contribution 57

Figure 3.5 – Extrait du data set de Twitter US.Airline Sentiment [49].

Cet ensemble de données contient 14.600 Tweets avec trois classes positives, négatif et
neutre. Le schéma suivant les représente :

Figure 3.6 – Le nombre de tweet l’ensemble de données de Twitter US.Airline Sentiment [49].

3.4 Présentation des outils

3.4.1 Le software

3.4.1.1 TensorFlow (51) : est un framework de programmation pour le calcul numérique


créé par Google et devenu un framework Open Source en novembre 2015. Depuis, TensorFlow
a continué à gagner une grand importance et popularité et rapidement devenu l’un des
frameworks le plus utilisés pour le Deep Learning. Son nom s’inspire notamment du fait que
les opérations actuelles des réseaux de neurones s’effectuent principalement via une table
multidimensionnelle de données, appelée Tenseurs (Tensor) qui est l’équivalent d’une matrice.
Aujourd’hui, ce framework est utilisé par les grandes entreprises [51] comme Intel, Twitter,
Contribution 58

Lenovo, Nvidia, etc.

3.4.1.2 Keras : Keras [50] est un framework open source d’apprentissage profond pour le
Python, capable de s’exécuter sur TensorFlow. Il est écrit par Francis Chollet, membre de
l’équipe Google. Keras est utilisé dans un grand nombre de startups, de laboratoires de
recherche [62] (dont le CERN, Microsoft Research et la NASA) et de grandes entreprises telles
que Netflix, Yelp, Square, Uber, Google, etc. Il a été développé dans le cadre de l’effort de
recherche du projet ONEIROS (Open-ended Neuro Electronic Intelligent Robot Operating
System). En 2017, l’équipe TensorFlow de Google a pris la décision de fournir un support
pour Keras et de l’intégrer dans la bibliothèque principale de TensorFlow. Il présente un
ensemble d’abstractions de plus haut niveau et plus intuitives qui facilitent la configuration
des réseaux neuronaux [50].

Autres frameworks :

• Pytorch [52]

• Deeplearning4j [54] : Il supporte le langage java

• Theano [53]

• CNTK de Microsoft [63]

3.4.2 Le hardware

Colaboratory [55] est un outil de recherche open source pour l’enseignement et la recherche
en apprentissage machine. Il s’agit d’un environnement pour ordinateur portable Jupyter qui
ne nécessite aucune installation ou bien une configuration pour être utilisé, il s’exécute
entièrement dans le cloud. Cet environnement supporte Python 2.0 et ses versions supérieures.
Il nous permet d’écrire et d’exécuter du code, de sauvegarder et partager, et d’accéder à de
puissantes ressources informatiques depuis notre navigateur.
Les expériences ont été réalisées sur une machine virtuelle dans l’environnement Google
Colab qui offre une bonne performance dont les caractéristiques sont les suivantes :
Contribution 59

CPU Intel Xeon CPU 2.30GHz


GPU NVIDIA Tesla T4
RAM 12 GB

Table 3.1 – configuration du colab.

3.5 Implémentation et Mise en oeuvre

3.5.1 Le prétraitement des données

Le pré-traitement des données est une étape importante dans l’analyse du sentiment, bien que
le pré-traitement des données est un outil puissant pour traiter les données textuelles en
général. La fonction de pré-traitement que nous créons et utilisons, a fait un certain nombre
d’étapes spécifiques donnant une importance à la sémantique des tweets. Les étapes sont les
suivantes :

1. Éliminer les URLs et les mots avec hashtag : Le sentiment exprimé par un
utilisateur est formé par les mots qu’il utilise, dans certains cas nous trouvons des éléments
dans le tweet sans valeur de sentiment comme les URLs et les mots avec hashtags ”#”. Par
exemple :

" A great tools # webdev from wordpress wordpress.org/themes/"


ce sera : "a great tool from wordpress"

2. Éliminer l’identifiant de l’utilisateur : Parce que nous sommes intéressés par le


sentiment exprimé dans le tweet lui-même et non pas par l’utilisateur qui l’a exprimé, alors
nous décidons de supprimer l’identifiant utilisateur. Qu’est un nom précédé d’une arobase "
@" et est un lien direct vers un compte Tweeter.

3 . La négation : Dans l’analyse du sentiment, le cas de la négation reste un problème non


résolu [48]. C’est un cas important dans ce type de tâches qui peut changer complètement le
sentiment d’un tweet. En raison de son importance, nous décidons d’éliminer une autre étape
majeure qui est la suppression des mots vides. La ressource du mot vides que nous avons
vérifié est le Corpus NLTK [81] pour l’anglais. Il contient 179 mots vides et parmi eux nous
trouvons certains termes de négation (not, no, nor ?), donc si nous appliquions cette étape,
nous risquions de supprimer les formes de négation dans nos données. La décision était
Contribution 60

d’éviter cette étape entièrement pour la raison mentionnée et pour la nécessité d’expertise
linguistique et au besoin de ressources lexicales pour couvrir toutes les situations et toutes les
termes qui expriment les formes de la négation. Comme une solution dans notre travail, nous
extrayons les formes de négation les plus utilisées du dictionnaire de Cambridge [56] et
essayons de les convertir en leur forme réelle, pour un exemple :

"Dont" et "Don’t" sera "Do Not",


"Couldn’t" sera "Could Not".

4 .Éliminer les caractères non alphabétiques : Les caractères non alphabétiques tels
que les chiffres, la ponctuation et les caractères spéciaux n’ont aucune utilité pour exprimer
un sentiment. Par exemple, c’est le même cas si nous disions :

"I love home" et "I love home 10 times"

Ils expriment tous les deux un sentiment positif.

5 .Lemming : La lemmatisation est l’étape qui fait référence à l’analyse lexicale qui permet
de regrouper des mots d’une même famille qui partagent le même suffixe lexical. Chacun des
mots du texte est ainsi réduit à une entité appelée "Lemme". Ce lemme fait référence à la
forme canonique des mots. La lemmatisation regroupe les différentes formes que peut prendre
un mot. Par exemple, un nom pluriel sera réduit au singulier, un verbe à son infinitif, etc.
Parce que nous avons une tâche où la sémantique a une grande importance, nous choisissons
lemming plutôt que le stemming en raison de l’application de la première va introduire des
termes réels contrairement à la seconde qui peut résulter des mots non existants.

6 .Éliminer les termes répétés : La répétition des termes n’a pas d’importance et
n’ajoute rien au sentiment de tweet, elle augmente seulement le volume des données, donc
nous éliminons tous les termes répétés dans chaque tweet.

3.5.2 L’Architecture de notre réseau

3.5.2.1 .Word Embeddings : Word embeddings est le mappage de mots à des vecteurs de
nombres réels dans un espace dimensionnel réduit [82]. Avec cette méthode, il est capable de
capturer le contexte d’un mot dans un document, la similarité sémantique, la et la relation
entre les mots, etc. il y a trois méthodes pour obtenir Embeddings [83] : :

• Modèles descendants des "Modèles du langage neuronal" :Word2vec, GloVE


Contribution 61

• Décomposition de valeur singulière

• Le clustering Brown

Dans notre travail, nous utilisons le GloVe pour le word Embdding de l’université de
Standford [85]. Il s’agit d’un projet open source. GloVe est un algorithme d’apprentissage non
supervisé permettant d’obtenir des représentations vectorielles de mot. Nous avons utilisé le
Twitter GloVe pour les représentations vectorielles de mots, qui contient 2 milliards de tweets
et 1,2 million de mots avec des vecteurs de dimension égale à 200 [84].

3.5.2.2 .Le Dropout pour La régularisation : La régularisation est toute modification


que nous apportons à un algorithme d’apprentissage dans le but de réduire son erreur de
généralisation mais pas son erreur d’apprentissage [64]. Il s’agit des techniques pour éviter le
overfitting, l’une de ses techniques est le Dropout.
Dropout est une technique, qui peut être appliquée à la sortie de certaines des couches du
réseau. Il enlèvera aléatoirement et périodiquement certains des neurones (ainsi que leurs
connexions d’entrée et de sortie) du réseau [40].
La figure suivante illustre l’application du dropout après une couche complètement connectée :

Figure 3.7 – Illustration du fonctionnement du Dropout [40].

Lorsque les neurones sont supprimés au hasard du réseau au cours de l’apprentissage, les
autres neurones sont obligés de répondre et de contrôler la représentation requise pour faire
des prédictions pour les neurones manquants. Cette méthode améliore la généralisation car
elle oblige les couches à apprendre le même "concept" avec des neurones différents.
Contribution 62

3.5.2.3 Les modèles : Au cours de nos expériences, nous avons créé deux modèles avec des
architectures différentes, où le premier était un modèle LSTM ( Long Short Term Memory) et
le second était un modèle CNN (Convolutional Neural Networks).

Dans ce qui suit, nous présentons l’architecture de ces deux :


1- Le modèle LSTM :
La figure suivante représente les différentes couches que contient notre modèle :
Contribution 63

Figure 3.8 – L’architecture du modèle LSTM .

• La couche Embedding : pour convertir les tokens dans nos données en embedding de taille
spécifique égale à 200, basé sur le modèle GloVe pour Twitter.

• La couche LSTM : nous ajoutons 3 couches de LSTM avec 200 unités cachées pour chaque
couche.

• La couche Dropout : nous avons appliqué deux couches Dropout pour la régularisation.
Contribution 64

• La couche entièrement connectée : nous ajoutons 3 couches entièrement connectées avec 200
unités cachées au modèle qui mappe la sortie de LSTM à la taille de sortie désirée qui est
égale à 5 et prévue par la fonction d’activation softmax.

2. Le modèle CNN :
La figure suivante représente les différentes couches que contient notre modèle : :

Figure 3.9 – L’architecture du modèle CNN .


Contribution 65

• La couche Embedding : de la même façon pour le modèle LSTM, nous avons appliqué le
modèle GloVe pour Twitter et choisi une dimenssion égale à 200.

• Les Couches Conv1D et MaxPooling1D : nous utilisons trois couches convolutives d’une
dimmenssion suivie de trois couches de max pooling.

• La couche Flatten : nous ajoutons une couche flatten dans le but de préparer le résultat de la
couche maxpooling à la couche entièrement connecté, la figure suivante [86] illustre l’idée :

Figure 3.10 – Illustration du rôle de la couche Flatten .

• La couche Dropout : nous avons appliqué une seul couche Dropout pour la régularisation.

• La couche entièrement connectée : comme dans le modèle LSTM, nous avons utilisé trois
couches entièrement connectées avec 200 neurones cachés et utilisé la fonction softmax pour
prédire la sortie.

3.5.3 Résultats obtenus et discussions

Chaque modèle a été appliqué sur les deux ensembles de données mentionnés précédemment,
que nous pouvons résumer dans le tableau suivant :
Contribution 66

Tweet Positive Tweet Négative Tweet Neutre Totale


Sentiment140
800.00 800.000 0 1.600.000
Dataset
Twitter
US.Airline
2.363 9.178 3.099 14.640
Sentiment Data-
set

Table 3.2 – Le nombre de tweet dans les deux ensembles de données.

L’évaluation de nos deux modèles s’est faite en terme de 5 métriques qui sont l’erreur, la
robustesse, la précision, le rappelle et la F-mesure. Tous les résultats obtenus sont résumés
sous forme de graphes.
3.5.3.1 Les résultats obtenus pour le modèle LSTM :
Sentiment140 Dataset :

Figure 3.11 – La robustesse et l’erreur du modèle LSTM sur le jeu de données Sentiment140 .
Contribution 67

Figure 3.12 – La précision et le rappelle du modèle LSTM sur le jeu de données Sentiment140
.

Figure 3.13 – La fmesure du modèle LSTM sur le jeu de données Sentiment140 .

- Twitter US.Airline Sentiment Dataset :

Figure 3.14 – La robustesse et l’erreur du modèle LSTM sur le jeu de données Twitter
US.Airline Sentiment.
Contribution 68

Figure 3.15 – La précision et le rappelle du modèle LSTM sur le jeu de données Twitter
US.Airline Sentiment.

Figure 3.16 – La fmesure du modèle LSTM sur le jeu de données Twitter US.Airline Sentiment.

Dans le tableau suivant, nous résumons le résultat obtenu pour le modèle LSTM avec les deux
datasets :
Contribution 69

Train- Validation-
Train set :Senti- Validation-set :
Data set Set :US.Airline Set :US.Airline
ment140 Sentiment140
Sentiment Sentiment
Nombre de tweet 1.152.000 tweets 288.000 tweets 10.540 tweets 2636 tweets
Erreur 0.16 0.16 0.15 0.19
Robustesse 0.92 0.93 0.93 0.92
Précision 0.80 0.81 0.85 0.82
Rappelle 0.80 0.81 0.82 0.80
F-mesure 0.80 0.81 0.83 0.80

Table 3.3 – Les résultats d’entrainement et de validation du modèle LSTM sur les deux jeux
de données .

Les figures 11,12,13,14,15 et 16 montrent que la performance du modèle LSTM sur le


Sentiment140 est la même en termes de la robustesse, du rappel, de la précision et de la
f-mesure, il y a une croissance pendant les epochs mais leurs valeurs sont différentes et pour
l’erreur il se stabilise à peu près après l’époque numéro 20. Pour l’ensemble de données
US.Airline, nous n’avons effectué l’entrainement qu’en 20 époques parce que nous obtenons les
meilleurs résultats à ce point-ci, si on ajoute plus d’époques le modèle se tombe dans le
sur-apprentissage. Le tableau 3 résume les résultats du processus d’entrainement, qui montrent
de meilleurs résultats lorsque nous avons plus de données dans l’étape d’entrainement, et ce
sera le cas pour Sentiment140 qui a beaucoup plus de données que l’autre dataset.
3.5.3.2 Les résultats obtenus pour le modèle CNN :
Sentiment140 Dataset :
Contribution 70

Figure 3.17 – La robustesse et l’erreur du modèle CNN sur le jeu de données Sentiment140.

Figure 3.18 – La précision et le rappelle du modèle CNN sur le jeu de données Sentiment140.

Figure 3.19 – La fmesure du modèle CNN sur le jeu de données Sentiment140.


Contribution 71

Twitter US.Airline Sentiment Dataset :

Figure 3.20 – La robustesse et l’erreur du modèle CNN sur le jeu de données Twitter US.Airline
Sentiment.

Figure 3.21 – La précision et le rappelle du modèle CNN sur le jeu de données Twitter
US.Airline Sentiment.

Figure 3.22 – La fmesure du modèle CNN sur le jeu de données Twitter US.Airline Sentiment.
Contribution 72

Dans le tableau suivant, nous résumons le résultat obtenu pour le modèle CNN avec les deux
datasets :

Train- Validation-
Train set :Senti- Validation-set :
Data set Set :US.Airline Set :US.Airline
ment140 Sentiment140
Sentiment Sentiment
Nombre de tweet 1.152.000 tweets 288.000 tweets 10.540 tweets 2636 tweets
Erreur 0.14 0.17 0.03 0.40
Robustesse 0.93 0.92 0.98 0.90
Précision 0.83 0.80 0.97 0.76
Rappelle 0.83 0.80 0.94 0.73
F-mesure 0.83 0.80 0.95 0.75

Table 3.4 – Les résultats d’entrainement et de validation du modèle CNN sur les deux jeux
de données .

Les figures 17, 18, 19, 20, 21 et 22 nous observons l’influence du volume des données après
l’entraînement du modèle CNN pendant 50 époques pour les deux ensembles de données. Il
donne un résultat plus faible en US.Airline en terme de l’erreur de la validation qu’est égale à
0.40 alors qu’il est égal à 0.17 pour le Sentiment140. Aussi il est évident dans les valeurs des
autres métriques en terme de validation, où il ne dépasse pas 0.78 dans la précision, le rappel
et la fmeasure tandis que dans Sentiment140 les métriques mentionnées sont égales à 0.80.

3.5.4 Les résultats finaux

Les résultats finaux ont été obtenus après l’évaluation des deux modèles sur le test-set des
deux data sets qui contient comme suit :
Test set :

Sentiment140 Dataset 160.000 tweets


Twitter US.Airline Sentiment Dataset 1.464 tweets

Table 3.5 – Le nombre de tweets pour la phase de test.


Contribution 73

Nous récapitulons les résultats dans le tableau ci-dessous :

Modèle Data set Erreur Robustesse Précision Rappelle F-Mesure


LSTM Sentiment140 0.16 0.93 0.81 0.81 0.81
LSTM US.Airline 0.19 0.92 0.82 0.80 0.81
CNN Sentiment140 0.17 0.92 0.80 0.80 0.80
CNN US.Airline 0.41 0.90 0.77 0.72 0.75

Table 3.6 – Les résultats finaux des deux modèles dans les deux ensembles de données.

Notre décision de choisir différents ensembles de données en fonction de leur taille a été de
voir comment un modèle de DL fonctionne dans deux situations où nous avons un grand et un
petit volume de données.
Pour les tests finaux sur les deux ensembles de données, nous avons entrainé les deux modèles
à 200 époques pour le Sentiment140 et pour le US.Airline, nous avons entrainé le CNN pour
50 époques et le LSTM pour seulement 20 époques.
En tant que résultat final, nous constatons que le modèle LSTM surpasse le modèle CNN,
surtout si nous avons un faible volume de données. Comme nous pouvons l’observer dans le
tableau 6, dans le cas de US.Airline, le LSTM donne le meilleur résultat d’erreur que le
modèle CNN et avec seulement 50% d’épochs, et cela est également évident dans les valeurs
de la précision, du rappel et de la fmeasure. Pour le Sentiment140 où nous disposons d’un
grand volume de données, les deux modèles donnent à peu près les mêmes bons résultats,
mais le LSTM fait mieux en termes de toutes les mesures. Avec cette quantité de données,
nous avons observé qu’autant nous ajoutons d’époques, plus nous obtenons de résultats.
A partir de ce que nous avons comme résultats, les modèles de DL le LSTM et le CNN
donnent de bonnes performances si nous les utilisons pour le problème de l’analyse du
sentiment où la quantité des données de l’apprentissage joue un rôle important et peut
affecter les résultats surtout si nous avons entrainé le CNN en faible quantité.

3.5.5 Comparaison entre nos résultats et ceux du projet


Sentiment140 :

Comme nous l’avons mentionné précédemment, l’ensemble de données Sentiment140 fait


partie d’un projet de classification automatique des sentiments sur Twitter [94]. Dans ce
Contribution 74

projet, ils ont effectué une classification binaire (positive et négative) en utilisant trois
algorithmes différents de ML qui sont NB, SVM et Maximum Entropy.
Dans le tableau suivant nous résumons tous les résultats obtenus de ce projet et les résultats
de nos deux modèles en terme de la robustesse :

Robustesse
NB 0.82
Maximum Entropy 0.83
SVM 0.82
Notre modele LSTM 0.93
Notre modele CNN 0.92

Table 3.7 – les résultats obtenus du projet Sentiment140 et de notre deux modèles proposés..

Comme nous l’observons dans le tableau 7, les modèles LSTM et CNN surpassent les trois
algorithmes avec un degré élevé, cela nous montre l’avantage de l’application d’une approche
DL dans ce type de tâches d’analyse de sentiment et la bonne performance que nous
obtiennons en cas dune masse de données élevée au lieu d’utiliser des algorithmes ML
traditionnels.

3.6 L’interface
Nous avons créé une interface graphique qui nous permet de communiquer avec nos modèles
qui est représenté dans la figure suivante :
Contribution 75

Figure 3.23 – Interface graphique.

Cette interface a été créée en utilisant le langage Java. Il contient des boutons qui nous
permettent d’exécuter diverses fonctions, qui nous permettent :

• De lancer le modèle LSTM ou le modèle CNN pour la phase d’entrainement.

• D’afficher tous les étapes d’entrainement pour les deux modèles.

• D’afficher les résultats des deux modèles.

• De télécharger des tweets d’un domaine spécifique et faire la prédiction.

• De faire la prédiction de notre propre tweet.

3.7 Conclusion
Dans ce chapitre, nous avons vu notre part de contribution au problème de l’analyse du
sentiment, représentant les outils et les jeux de données utilise, ainsi que les étapes que nous
avons suivies pour obtenir les résultats que nous montrons également pour deux différents
modèles dont le but de faire la comparaison pour deux différents benchmarks.
Conclusion générale

Dans ce travail, nous avons exploré le domaine de l’analyse des sentiments qui, comme tous
les autres domaines du traitement du langage naturel, a connu une évolution majeure depuis
les années 2000 et a réalisé une évolution majeure et un grand intérêt depuis la naissance de
l’apprentissage profond.
Afin d’atteindre ces résultats, nous avons passé beaucoup de temps à lire et réviser des
publications, des articles et des livres pour voir et comprendre les concepts et comment
appliquer un modèle de deep learning à notre problème.
Enfin, avant de passer aux perspectives, ce travail nous a permis de mettre en pratique
notre connaissances des réseaux de neurones et de les enrichir, et le plus important est que
nous fassions le premier pas vers l’apprentissage profond, un des champs les plus importants
de l’intelligence artificielle.
Comme perspectives nous pouvons citer :

• Tester notre modèle sur d’autres ensembles de données.

• Développer le modèle pour être plus précis dans la détection de la négation.

• Développer le modèle pour traiter le problème du sarcasme.

• Nous ne nous concentrons que sur les phrases en anglais, Il devrait être possible d’utiliser
notre approche pour classer les sentiments dans d’autres langues.

76
Bibliographie

[1] Sentiment analysis : mining opinions sentiments, and emotions. Bing Liu. First edition
USA 2015.

[2] Predicting the Semantic Orientation of Adjectives. Vasileios Hatzivassiloglou and


Kathleen R. McKeown. 1997.

[3] Effects of Adjective Orientation and Gradability on Sentence Subjectivity. Vasileios


Hatzivassiloglou, Janyce M.Wiebe

[4] Yahoo ! for Amazon :Sentiment Extraction from Small Talk on the Web. Sanjiv Das,
Mike Chen. 2004.

[5] Yahoo ! for Amazon : Extracting Market Sentiment from Stock Message Boards Sanjiv
Das, Mike Chen. In Proceedings of APFA. 2001.

[6] An Operational System for Detecting and Tracking Opinions in on-Line Discussion. Tong,
Richard M. In Proceedings of SIGIR Workshop on Operational Text Classification. 2001.

[7] Opinion Mining and Sentiment Analysis. Bo Pang and Lillian Lee. 2008.

[8] PHOAKS : A system for sharing recommendations. L. Terveen, W. Hill, B. Amento, D.


McDonald, and J. Creter. Communications of the Association for Computing Machinery
(CACM). 1997.

77
78

[9] Exploiting subjectivity classification to improve information extraction. E. Riloff, J.


Wiebe, and W. Phillips. in Proceedings of AAAI. 2005.

[10] Multi-perspective question answering using the OpQA corpus, ? in Proceedings of the
Human Language Technology Conference and the Conference on Empirical Methods in
Natural Language Processing (HLT/EMNLP). 2005.

[11] Qualitative dimensions in question answering : Extending the definitional QA task. L.V.
Lita, A.H. Schlaikjer, W. Hong, and E. Nyberg. 2005.

[12] Multi-document summarization with subjectivity analysis. Y. Seki, K. Eguchi, N. Kando,


and M. Aono. In Proceedings of the Document Understanding Conference (DUC), 2005.

[13] Baynes, C. Trump says he would not be President without Twitter. Retrieved from
https ://www.independent.co.uk/news/world/americas/us-politics/donald-trump-tweets-
twitter-social-mediafacebook-instagram-fox-business-network-would-not-be-
a8013491.html . 2019, Mars
27.

[14] A survey on Sentiment Analysis Algorithms for opinion mining . Pradhan, V. Pradhan,
Vala, Balani. International Journal of Computer Applications.2016.

[15] SCENE CLASSIFICATION USING SUPPORT VECTOR MACHINES WITH LDA. N.


VEERANJANEYULU, AKKINENI RAGHUNATH, B. JYOSTNA DEVI , VENKATA
NARESH MANDHALA. Journal of Theoretical and Applied Information Technology.
2014.

[16] Classification of Sentimental Reviews Using Machine Learning Techniques. Abinash


Tripathy, Ankit Agrawal, Santanu Kumar Rath. 3rd International Conference on Recent
Trends in Computing 2015.

[17] Sentiment Analysis of Micro blogs using Opinion Mining Classification Algorithm. A.
Tamilselvi1, M. ParveenTaj. International Journal of Science and Research (IJSR). 2014.

[18] An empirical study of sentiment analysis for chinese documents. Songbo Tan, Jin Zhang.
Expert Systems with Applications. 2008.

[19] A Clustering-based Approach on Sentiment Analysis. Gang Li Fei Liu. 2010.

[20] Predicting the Semantic Orientation of Adjectives . V. Hatzivassiloglou and KR.


McKeown. 1997.
79

[21] Comparative Analysis of Sentiment Analysis Techniques Chetan Kaushik, AtulMishra.


2014.

[22] The Application and Comparison of Web Services for Sentiment Analysis in Tourism.
Shanshan Gao1, Jinxing Hao2, Yu Fu.2015.

[23] Sentiment Analysis and Dataset Collection : A Comparitive Study Sruthi Kalarikkal
Remya P. C. International Advance Computing Conference. 2015.

[24] Feature Extraction and Opinion Mining in Online Product Reviews. Siddharth
Aravindan, Asif Ekbal. 13th International Conference on Information Technology. 2014.

[25] Comparative Study of Sentiment Analysis Techniques in Web, Sasikala P, L.Mary


Immaculate Sheela. International Journal of Scientific Engineering Research. May-2017.

[26] NLP Based Sentiment Analysis on Twitter Data Using Ensemble Classifiers. Monisha
Kanakaraj and Ram Mohana Reddy Guddeti. 3rd International Conference on Signal
Processing, Communication and Networking (ICSCN) .2015.

[27] Knowledge Based approaches to concept - level sentiment analysis, Erik Cambria, Bjorn
Schuller, Yunqing Xia, Catherine Havasi. 2013.

[28] Sentiment Analysis :A Comparative Study On Different Approaches Devika M D,


Sunitha C, Amal Ganesh. Fourth International Conference on Recent Trends in
Computer Science Engineering. 2016.

[29] NRC-Canada : Building the State-of-the-Art in Sentiment Analysis of Tweets Saif M.


Mohammad, Svetlana Kiritchenko, and Xiaodan Zhu. 2013.

[30] Sentiment analysis in Facebook and its application to e-learning Alvaro Ortigosa , José
M. Martín, Rosa M. Carro. 2013.

[31] Sentiment Analysis of Movie Reviews using Hybrid Method of Naive Bayes and Genetic
Algorithm M.Govindarajan. International Journal of Advanced Computer Research. 2013.

[32] Sentiment Analysis of Review Datasets using Naïve Bayes ? and K-NN Classifier
Lopamudra Dey Sanjay Chakraborty. 2014

[33] http ://help.sentiment140.com/for-students

[34] Sentiment Analysis of Twitter Data : A Survey of Techniques.Vishal A. Kharde, S.S.


Sonawane. International Journal of Computer Applications. 2016.
80

[35] Study of Different Levels for Sentiment Analysis. Seema Kolkur, Gayatri Dantal and
Reena Mahe. International Journal of Current Engineering and Technology. 2015

[36] ImageNet classification with deep convolutional neural networks. Krizhevsky,


A.Sutskever, I. Hinton. Advances in Neural Information Processing Systems. 2012.

[37] Deep Neural Networks for Acoustic Modeling in Speech Recognition. Geoffrey Hinton, Li
Deng, Dong Yu, George Dahl, Abdel-rahman Mohamed, Navdeep Jaitly, Andrew Senior,
Vincent Vanhoucke, Patrick Nguyen, Tara Sainath, and Brian Kingsbury.

[38] Deep Learning Yann LeCun, Yoshua Bengio Geoffrey Hinton. 2015

[39] TensorFlow for Deep Learning. Reza Bosagh Zadeh, Bharath Ramsundar. 2017

[40] Python Deep Learning. Ivan Vasilev, Daniel Slater, Gianmario Spacagna, Peter Roelants,
Valentino Zocca. 2019

[41] Java Deep Learning Essentials. Yusuke Sugomori. 2016

[42] Deep Learning with Keras. Antonio Gulli, Sujit Pal. 2017

[43] https ://www.cs.toronto.edu/tijmen/csc321/slides/lecture slides lec2.pdf . 2014

[44] THE VANISHING GRADIENT PROBLEM DURING LEARNING RECURRENT


NEURAL NETS AND PROBLEM SOLUTIONS. Sepp Hochreiter. International Journal
of Uncertainty, Fuzziness and Knowledge-Based Systems

[45] https ://blog.twitter.com/official/enus/topics/product/2017/Giving-you-more-


characters-to-express-yourself.html.12-05-2019

[46] Une approche Deep Learning pour l’analyse des Sentiments Sur Twitter. BEGHDAD
Abdelkrim ,OUSERIR Amina. Mémoire de Master. Université de Djilali BOUNAAMA
Khemis Miliana. 2018

[47] https ://emojipedia.org/twitter/

[48] http ://cs.stanford.edu/people/alecmgo/trainingandtestdata.zip

[49] https ://www.kaggle.com/crowdflower/twitter-airline-sentiment

[50] http ://KERAS.io

[51] https ://www.tensorflow.org/

[52] https ://pytorch.org/


81

[53] deeplearning.net/software/theano/

[54] https ://deeplearning4j.org/ 4 Mars 2019.

[55] https ://colab.research.google.com/ 5 Mars 2019.

[56] https ://dictionary.cambridge.org/grammar/british-grammar/questions-and-negative-


sentences/negation.
12-05-2019

[57] https ://developer.twitter.com/en/docs/tweets/search/overview 5 Mars 2019.

[58] http ://sewm.pku.edu.cn/QA/reference/ICTCLAS/FreeICTCLAS/ 09 Mai 2019.


English

[59] http ://ontotext.fbk.eu/sentiwn.html 09 Mai 2019.

[60] https ://www.figure-eight.com/data-for-everyone/ 10 Mars 2019.

[61] https ://github.com/benhamner/crowdflower-airline-twitter-sentiment 12 Mars 2019.

[62] https ://www.linkedin.com/in/fchollet 12 Mars 2019.

[63] https ://docs.microsoft.com/en-us/cognitive-toolkit/ 14 Mars 2019.

[64] Deep Learning. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press. 2016

[65] Fundamentals of Deep Learning Designing Next-Generation Machine Intelligence


Algorithms. Nikhil Buduma. 2017

[66] Python Deep Learning. Valentino Zocca, Gianmario Spacagna, Daniel Slater, Peter
Roelants. 2017.

[67] https ://sebastianraschka.com/faq/docs/softmax regression.html, 20 Mars 2019.

[68] On the Origin of Deep Learning. Haohan Wang, Bhiksha Raj. 2017.

[69] https ://colah.github.io/posts/2015-08-Understanding-LSTMs/

[70] http ://cs231n.github.io/convolutional-networks/overview 25 Mars 2019.

[71] http ://cs231n.stanford.edu/slides/2017/cs231n 2017 lecture10.pdf

[72] http ://www.wildml.com/2015/09/recurrent-neural-networks-tutorial


-part-1-introduction-to-rnns/

[73] http ://www.asimovinstitute.org/neural-network-zoo/ 18 Mai 2019.

[74] http ://alt.qcri.org/semeval2015/


82

[75] https ://www.yelp.com/dataset/challenge 19 Mai 2019.

[76] https ://www.imdb.com/interfaces/ 20 Mai 2019.

[77] Twitter Sentiment Analysis with Deep Convolutional Neural Networks. Aliaksei Severyn,
Alessandro Moschitt. 2015

[78] Convolutional Neural Networks for Sentence Classification. Yoon Kim. Proceedings of the
2014 Conference on Empirical Methods in Natural Language Processing (EMNLP). 2014.

[79] Document Modeling with Gated Recurrent Neural Network for Sentiment Classification.
Duyu Tang, Bing Qin, Ting Liu. Proceedings of the 2015 Conference on Empirical
Methods in Natural Language Processing. 2015

[80] ADAM : A METHOD FOR STOCHASTIC OPTIMIZATION. Diederik P. Kingma,


Jimmy Lei Ba. 2017

[81] https ://www.nltk.org/nltk data, 20 Mars 2019.

[82] Learning Semantic Relations from Text, Preslav Nakov,Diarmuid Ó Séaghdha, Vivi
Nastase Stan Szpakowicz, Empirical Methods in Natural Language Processing (EMNLP),
2015.

[83] https ://web.stanford.edu/class/cs124/lec/lexsem19.pdf , 19 Mars 2019.

[84] https ://nlp.stanford.edu/projects/glove, 20 Avril 2019.

[85] GloVe : Global Vectors for Word Representation, Jeffrey Pennington, Richard Socher,
Christopher D. Manning. 2014

[86] https ://www.superdatascience.com/blogs/convolutional-neural-networks-cnn-step-3-


flattening , 2019 Mai
02.

[87] Document-level sentiment classification : An empirical comparison between SVM and


ANN. Rodrigo Moraes, João Francisco Valiati, Wilson P. Gavião Neto. Expert Systems
with Applications, 2012.

[88] https ://en.oxforddictionaries.com/definition/sentiment, 25 Avril 2019.

[89] Optimisation, intégration des données et découverte de connaissances à partir des


données du Web. Mohamed Amine BOUDIA. Thèse de doctorat. 2017.

[90] http ://lalic.paris-sorbonne.fr/PAGESPERSO/atanassova/ lfa/ Cours10.pdf


83

[91] https ://ai.google, 20 Avril 2019

[92] https ://ai.facebook.com/tools, 22 Avril 2019

[93] Top 15 Deep Learning applications that will rule the world in 2018 and beyond, Vartul
Mittal, 3 Oct 2017

[94] Twitter Sentiment Classification using Distant Supervision. Alec Go, Richa Bhayani, Lei
Huang. Stanford University.

Vous aimerez peut-être aussi