WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Youtaqa : système de questions-réponses intelligent basé sur le deep learning et la recherche d’information


par Rayane Younes & Asma AGABI & TIDAFI
Université d'Alger 1 Benyoucef BENKHEDDA - Master  2020
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Soutenu le 11/11/2020

Tyb`Kt TyVtrqm§dt T§rtz~t T§Cwhm~t

·ml`t b ·A`t oeyl`ttCtE

People's Democratic Republic of Algeria
Ministry of Higher Education and Scientific Research
University of Algiers 1 Benyoucef BENKHEDDA

Facultédes Sciences
Département de Mathématiques et Informatique
Mémoire de fin d'étude pour l'obtention du diplôme de Master en informatique
Spécialité: Ingénierie des Systèmes Informatiques Intelligents
Présentépar:
M. AGABI Rayane Younes
Melle. TIDAFI Asma

Thème

YouTaQA : Système de Questions-Réponses Intelligent basésur le Deep Learning et la Recherche d'Information

Devant le jury composéde :

Mme. HALFAOUI Pr. UniversitéAlger 1 Président

Mme. AIT AOUDIA Professeur. UniversitéAlger 1 Examinateur

Dr. ZIANI Amel MCB. UniversitéAlger 1 Encadrant

Dr. BOUADJENEK Mohamed Reda Pr. Deakin University Co-Encadrant

ii

Remerciements

Nous remercions tout d'abord le tout puissant ALLAH qui nous a toujours comblés de ses bienfaits et à qui nous adressons nos remerciements pour sa grâce infinie pour nous avoir éclairés et aidés dans la préparation et la réalisation de cette thèse.

En second lieu, nos reconnaissances et nos vifs remerciements vont particulièrement à nos encadrants M. Mohamed reda Bouadjenek et Mme. Amel Ziani qui ont bien voulu accepter de diriger et d'encadrer ce travail, également pour leur patience, leurs sacrifices, leurs conseils et l'aide qu'ils nous ont fournis tout au long de notre stage qui nous a étéd'une grande utilité.

Nous remercions l'universitéde Deakin pour nous avoir donnél'opportunitéd'effectuer un stage au cours de notre dernière année Master, ainsi que tout le personnel qui nous ont apportéaide et assistance et donnétoutes les informations dont nous avions besoin pour la réalisation de cette thèse.

Nous présentons notre gratitude aux membres du jury qui ont bien voulu examiner et évaluer notre travail et qui nous font l'honneur de participer à la soutenance.

Nos remerciements s'adressent aussi à tous les enseignants de l'universitéd'Alger 1 Ben Youcef Ben Khedda qui nous ont formédurant ces cinq dernières années.

Dédicaces

Ce travail est dédiéà ma très chère maman et au meilleur des pères. Grâce à leurs tendres encouragements et leurs grands sacrifices, ils ont pu créer le climat affectueux et propice à la poursuite de mes études. Aucune dédicace ne pourrait exprimer mon respect, ma considération et mes profonds sentiments envers eux. Je prie le bon Dieu de les bénir, de veiller sur eux, en espérant qu'ils seront toujours fiers de moi.

A mes soeurs et mes frères qui m'ont soutenu durant tout mon cursus.

A mon encadrant Dr.BOUADJENEK Mohamed Reda qui a toujours étéprésent et m'a donnée les meilleurs conseils pour pouvoir compléter le travail comme je l'ai toujours souhaité, je le remercie pour sa patience, son aide et la confiance qu'il nous a témoignée.

iii

TIDAFI Asma.

Dédicaces

A ma chère maman, qui a oeuvrépour ma réussite, par son amour, son soutien, ses précieux conseils; je ne pourrai jamais la remercier assez pour toute sa présence dans ma vie. Reçois à travers ce travail aussi modeste soit-il, l'expression de mes sentiments et de mon éternelle gratitude, je t'aime ma meilleure.

À mon cher père, qui n'a jamais cesséde m'encourager ni de me guider tout au long de mes études; je le remercie infiniment pour ses sacrifices consentis et pour les valeurs nobles qu'il m'a apprises, l'éducation et le soutient permanent venant de sa part, je t'aime mon meilleur.

À ma grande soeur Asmaa, tu as étéà mes côtés pendant toutes les étapes de ce travail, je t'en suis très reconnaissant. Je te dédie ce travail en témoignage de ma profonde affection en souvenirs de notre indéfectible union qui s'est tissée au fil des jours.

À ma petite soeur Maroua, une soeur comme on ne peut trouver nulle part ailleurs, puisse Allah te protéger, garder et renforcer notre fraternité. Je te souhaite tout le bonheur du monde.

À ma tante Djamila, celle qui a toujours jouéle rôle d'une deuxième maman pour moi, et qui m'a toujours soutenu, ainsi que mes tantes Noria, Dehbia et Radia et à mon oncle Mohamed.

Votre soutien, votre gentillesse sans égal, vos profonds attachements, vos conseils et encouragements m'ont motivédans les moments les plus difficiles. À mon cher oncle Karim AGABI et Tata Evelyne.

À mon cousin Iheb Tekkour qui est un grand frère pour moi, ma tante Nassira , papa Ahmed, Saliha, Soumia et Islem Boulacheb que j'aime beaucoup ainsi que toute ma grande famille que j'aime.

À mes professeurs du primaire, CEM, Lycée et de l'universitéparticulièrement Mme. Bassai, Mme. Aoudia, M. Krouri, M. Guernah, Mme. Louati, Mme. Touil, Mme. Taibouni, M. Zemali, M. Derias, M. Abbas, M. Tali et M.Boutaleb, je vous remercie d'avoir enrichi mes connaissances et de m'avoir guidédurant tout mon parcours estudiantin.

La passion pour votre travail est contagieuse! C'est avec un réel plaisir que j'ai travailléavec vous et que je vous ai eu comme encadrant. Ce travail est dediéà Bouadjenek Mohamed Reda.

iv

À mon binôme TIDAFI Asma et à toute sa famille pour tout ce qu'on a partagédurant notre stage.

À tous mes amis : Mehdi Belhoucine, Akram Arar, Mounir Grar, Yazid AitAlala, Fares Aliliche, Oussama Hamada, Rayane Krimi, farid belmareg, Khaled Chenouf, Islem Krim, Chakib Kessai, Rami Naidji, Amine Yahouni, Anis Amirouche, Abdelfetah fetouhi ainsi que tous mes amis que je n'ai pas pu citer, je vous remercie d'avoir toujours étélàpour moi.

À la toute première promo MI de la fac centrale 2015/2016, elle a étésans aucun doute la meilleure promo, pleine d'énergie et de collaboration, je vous souhaite du bonheur et de la réussite dans vos vies.

v

AGABI Rayane Younes.

vi

Résumé

Le besoin des utilisateurs du confort et la demande d'avoir des réponses exactes à leurs questions sont présents de nos jours, ce qui a donnéun nouvel objectif à l'intelligence artificielle. Les moteurs de recherches les plus connus comme Google tendent à offrir une brève réponse aux questions dites «factoid~. Cette tâche est considérée difficile en terme de complexitédes requêtes voire leurs réponses qui peuvent être la combinaison de plusieurs passages.

Pour ceci, dans cette thèse, notre objectif repose sur la conception et la réalisation d'un système de questions-réponses pouvant surpasser les difficultés citées et qui est apte à répondre aux questions dans plusieurs domaines d'une façon exacte et précise en utilisant la base de connaissances de Wikipédia. Le système réalisédurant ce travail nomméYouTAQA commence par la collecte des passages qui peuvent répondre à la requête entrée par l'utilisateur et termine par faire l'extraction du début et la fin de la réponse exacte en utilisant l'apprentissage approfondi (Deep Learning). Ceci dit, notre système représente un pipeline complet, à partir de la collecte des passages pertinents, jusqu'àl'extraction de la réponse finale en prenant la question comme entrée. Les modules d'apprentissage approfondi du système proposéont étéimplémentés en utilisant le modèle pré-entrainéBERT qui a étéconçu pour réaliser différentes tâches de traitement du langage naturel (Natural Language Processing).

Les expérimentations sur l'ensemble de données proposédémontrent l'efficacitéde la méthode proposée, et les résultats de la comparaison montrent que l'architecture du système donne un plus au domaine du Question-Answering.

Mots clés : Recherche d'Information, Apprentissage Approfondi, Traitement de langage naturel, Bidirectional Encoder Representations from Transformers, Apprentissage par transfert.

vii

Table des matières

Introduction générale 1

Contexte générale 1

Problématique et motivation 2

Contribution 3

Plan du mémoire 4

1 Les Systèmes de Questions-Réponses 5

1.1 Introduction 5

1.2 Les systèmes de Questions-Réponses 5

1.3 État de l'art des systèmes de Questions-Réponses 5

1.3.1 Classification par domaine d'application 6

1.3.2 Classification par source de données 8

1.3.3 Classification par type de questions 8

1.4 Les jeux de données disponibles 10

1.5 Conclusion 11

2 Généralités 12

2.1 Recherche d'information 12

2.1.1 Les modèles RI 14

2.1.2 Les métriques d'évaluation 15

2.1.3 Outil de développement 18

2.2 Deep Learning en Traitement du Langage Naturel 18

2.2.1 Le mécanisme d'attention 19

2.2.2 Les Transformateurs 19

2.2.3 BERT (Bidirectional Encoder Representations from Transformers) 22

TABLE DES MATIÈRES

2.2.4 Keras 23

2.2.5 Les métriques d'évaluation 23

2.3 Conclusion 24

3 Conception et implémentation de YouTaQA 25

3.1 Introduction 25

3.2 Architecture globale du système YouTaQA 25

3.3 Le choix des jeux de données 26

3.3.1 SQUAD 26

3.3.2 Wikipedia 27

3.4 Moteur de recherche MRI 27

3.4.1 Pré-traitement de la base Wikipédia 28

3.4.2 Indexation des articles 29

3.4.3 Méthodes de recherche adoptées 30

3.5 Module de classification MC 31

3.6 Module d'extraction de réponses MER 32

3.7 Déploiement du système YouTaQA 34

3.8 Conclusion 34

4 Analyse et discussion des résultats 35

4.1 Introduction 35

4.2 Prétraitement et fractionnement des données 35

4.3 Résultats du module de recherche d'information MRI 35

4.3.1 Méthodes de recherche employées 36

4.3.2 Discussion des performances des méthodes de recherche 36

4.4 Résultats du module de classification MC 39

4.5 Résultats du module d'extraction des réponses MER 40

4.6 Déploiement et test du système 42

4.7 Conclusion 42

Conclusion Générale 43

Perspectives 44

viii

Bibliographie 45

ix

Table des figures

0.1

Schéma global du systeme YouTaQA

3

1.1

La taxonomie de l'état de l'art des QAS

7

2.1

Processus de recherche d'information [Baeza-Yates and Ribeiro-Neto, 2011].

13

2.2

Architecture de base des transformateurs [Tra, 2018]

20

2.3

Architecture de l'encodeur du transformateur [Tra, 2018].

21

2.4

Principe de self-attention [Sel, 2020].

21

2.5

Représentation des entrées et sorties du modèle BERT [Devlin et al., 2018].

22

3.1

Schéma global du systeme YouTaQA

26

3.2

Structure XML d'un article Wikipédia

28

3.3

Arborescence des fichiers XML.

29

 

3.4

Schéma représentatif des sections d'un article Wikipédia

30

3.5

La phase de tokenisation des entrées

31

3.6

La classification du texte avec BERT.

32

 

3.7

Extraction du début et fin de la réponse avec BERT

33

3.8

Capture d'écran de l'application web YouTaQA

34

4.1

Histogrammes d'évaluation du Module de Recherche d'Information

37

4.2

Graphes d'évaluation du Module de Recherche d'Information.

38

4.3

Graphes d'évaluation du Module de Classification.

39

4.3

Matrices de confusion du MC.

40

 

4.4

Graphes d'évaluation du Module d'Extraction de Réponse (Start).

40

4.5

Graphes d'évaluation du Module d'Extraction de Réponse (End).

41

4.6

Exemple d'utilisation du système YouTaQA

42

x

Liste des tableaux

1.1 Classification des QAS selon plusieurs axes 9

1.2 Les différents jeux de données disponibles. 10

2.1 Matrice de confusion 16

xi

Liste des abréviations

API Application Programming Interface.

BERT Bidirectional Encoder Representations from Transformers.

BOW Bag Of Words.

CDQAS Closed-Domain Question-Answering Systems.

DL Deep Learning.

EM Exact Match.

GPT Generative Pre-trained Transformer.

IR Information Retrieval.

KB Knowledge Bases.

LSTM Long Short-Term Memory.

MAP Mean Average Precision.

MC Module de Classification.

MER Module d'Extraction des Réponses.

MRI Module de Recherche d'Informations.

MRR Mean Reciprocal Rank.

NLIDB Natural Language Interface to DataBases.

NLP Natural Language processing.

ODQAS Open-Domain Question-Answering Systems.

QAS Question-Answering System.

QNLI Question Natural Language Inference.

RI Recherche d'Information.

RNN Recurrent Neural Network.

SPA Single Page Application.

SQAS Social Question-Answering Systems.

SQuAD Stanford Question Answering Dataset.

TF-IDF Term Frequency - Inverse Document Frequency.

TREC Text REtrieval Conference.

UI User Interface.

VSM Vector Space Model.

XML eXtensible Markup Language.

1

Introduction générale

Contexte générale

L'un des principaux défis de l'informatique est de construire des systèmes plus intelligents et capables de comprendre les êtres humains sans qu'on leur dise explicitement ce qu'ils doivent faire. Depuis les années 60, une percée majeure dans ce domaine se présente sous la forme de systèmes Questions-Réponses (Question-Answering Systems ou QAS). Un QAS est, comme son nom l'indique, un système qui peut répondre à des questions au lieu d'encombrer l'utilisateur avec des documents ou même des passages correspondants, comme le fait la plupart des systèmes de recherche d'information basiques [Ojokoh and Adebisi, 2019].

Dès leur début, les majeurs défis des QAS sont la précision, l'habiletéà répondre à toutes les questions complexes correctement avec une performance semblable à celle des humains. Pour avoir une vision plus claire sur les systèmes questions-réponses actuels, prenons d'abord un moment pour comprendre la structure du problème et pourquoi les solutions existantes ne sont pas tout à fait suffisantes pour répondre à des questions complexes. Les QAS sont généralement classés en deux grandes catégories : les QAS pour le domaine ouvert ODQAS et les QAS pour le domaine ferméCDQAS (voir la Section 1.3).

En ce qui concerne la source de connaissances 1 des QAS et la façon avec laquelle ces derniers s'en servent, plusieurs approches ont vu le jour durant l'évolution des techniques et des sources de données. Parmi ces approches, nous trouvons les QAS basés sur le texte, les faits, le Web et la recherche d'information (Information Retrieval ou IR) [Mervin, 2013]. Pour notre modèle, nous allons opter pour l'approche de la recherche d'informations dans une collection de données basée sur les articles de Wikipedia2 seulement. La recherche d'information, contrairement aux autres approches, utilise des sources de données qui ne sont pas forcément structurées ce qui permet une meilleure flexibilitédans le cas d'ajout et d'extension des sources de recherche.

1. Source de connaissances (»Knowledge source» en anglais) : C'est la source dans laquelle les QAS fouinent à la

recherche d'une réponse à une question donnée

2. https://www.wikipedia.org/

2

INTRODUCTION GÉNÉRALE

Problématique et motivation

De nos jours, suite à l'utilisation croissante des appareils mobiles, tels que les smartphones, pour accéder àl'information et recevoir des réponses directes à des questions pour laquelle les requêtes traditionnelles consis-

tant à spécifier des mots-clés ne sont pas très conviviales; la tâche de réponse aux questions de manière précise est devenue l'une des fonctions les plus désirables pour les consommateurs d'information.

La majoritédes connaissances humaines qui représentent les besoins d'informations détaillées d'un utilisateur sont uniquement représentées par le langage naturel. Ils sont accessibles aux humains, qui peuvent comprendre les textes en langage naturel et répondre à des questions relatives à leur contenu, mais ne sont pas accessibles et compréhensibles par les machines. Ces dernières ne peuvent donc pas comprendre et interpréter les énoncés des requêtes en langage naturel.

La tâche de l'extraction automatisée d'informations spécifiques à partir d'une source de connaissances, en tant que réponse à une question en langage naturel, n'est pas simple, même pour des ressources d'informa-tions relativement réduites. La question doit être représentée comme une requête et la réponse doit être courte et précise. Nous pouvons extraire des informations factuelles explicites à partir d'un texte, mais l'extraction d'informations conceptuelles qui nécessitent également une compréhension du discours reste un objectif complexe. Pour obtenir des réponses précises, il faut formuler le besoin d'informations d'une manière exacte et bien exprimée [Kolomiyets and Moens, 2011a], au-delàd'un petit ensemble de termes vagues, comme c'est généralement le cas pour la recherche de documents. Cette dernière fait d'une part la réduction des requêtes en langage naturel à des recherches basées sur des mots-clés. D'autre part, les bases de connaissances sont interrogées avec des requêtes claires obtenues à partir des questions en langage naturel, et les réponses sont obtenues par raisonnement.

Le langage naturel est ambigu (une phrase peut avoir un ou plusieurs sens) et syntaxiquement riche car un seul et même sens peut être véhiculépar de nombreuses expressions du langage naturel. La tàache de trouver une réponse à une question, lorsque les deux sont en langage naturel repose d'abord sur l'utilisation des techniques de recherche d'information pour sélectionner les passages pertinents. Ensuite extraire des passages courts (contextes) suite à une classification par rapport à la probabilitéde leur pertinence et de l'existence de l'information recherchée. Le système doit retourner uniquement les informations qui ont étéspécifiquement demandées. Or, les demandes peuvent être complexes et narratives, ce qui signifie qu'il sera plus difficile pour le QAS d'y répondre avec précision. De plus, les passages peuvent provenir de différents documents, nous devons donc les combiner pour fournir des réponses pertinentes, il se peut alors que nous ayons besoin d'un raisonnement complexe. Il sera donc difficile de formuler des réponses en langage naturel.

3

INTRODUCTION GÉNÉRALE

Contribution

Nous contribuons par ce projet proposépar l'universitéde Deakin3 (Située à Victoria, Australie) à la mise en place d'un système QAS automatique complet en commençant par un moteur de recherche, en passant par un classifieur de documents jusqu'àl'extraction des réponses. Ce pipeline a pour but d'offrir un service de questions-réponses exhaustif nomméYouTaQA (figure 0.1).

FIGURE 0.1: Schéma global du systeme YouTaQA

Il existe des systèmes questions-réponses qui ont le même but global, mais qui se contentent d'offrir la partie extraction des données à leurs utilisateurs en les obligeant à fournir les documents nécessaires ce qui n'est pas vraiment pratique, notre système sera donc une version améliorée de ce qui existe, en permettant aux utilisateurs d'avoir des réponses exactes à leurs questions uniquement en se basant sur le moteur de recherche. Ceci épargnera à l'utilisateur de fournir autre chose que la question, et éventuellement leur facilitera la tâche.

Durant ce travail, nous nous sommes concentrés sur les interactions entre l'extraction des réponses à l'aide de l'apprentissage approfondi (Deep Learning ou DL), le traitement du langage naturel (Natural Language Processing ou NLP) et la recherche d'information (Information Retrieval ou IR). Plus précisément, notre but est de mettre en oeuvre une architecture générale d'un QAS en utilisant des collections et des ensembles de données de référence sur lesquels nous comptons baser les réponses du système.

3. https://www.deakin.edu.au/

4

INTRODUCTION GÉNÉRALE

Plan du mémoire

Ce présent manuscrit de thèse de Master est composéde quatre chapitres principaux qui sont:

Chapitre 1 : Ce premier chapitre dresse un état de l'art des systèmes de questions-réponses existants. Le chapitre se terminera par une étude bibliographique et une comparaison de ces systèmes selon plusieurs axes dans un tableau général.

Chapitre 2 : Ce chapitre est diviséen deux parties, dans la première nous introduisons la recherche d'in-formation. Nous décrivons dans la deuxième partie l'aspect théorique du Deep Learning et du traitement du langage naturel ainsi que l'architecture du modèle utiliséBERT.

Chapitre 3 : Le troisième chapitre est consacréà notre contribution et la conception de la solution proposée. Nous décrivons les différentes opérations de prétraitements effectuées sur l'ensemble de données de Wikipédia, nous présentons aussi la structure de notre index. De plus, nous détaillons dans ce chapitre l'architecture et les paramètres utilisés pour notre classifieur des passages et de notre module d'extraction des réponses.

Chapitre 4 : Le dernier chapitre présente les résultats expérimentaux, leurs interprétations et enfin une discussion de ces derniers.

Enfin, le manuscrit se termine par nos conclusions sur le travail effectué. Tout travail de recherche introductif étant imparfait, cette section présente spécifiquement les améliorations possibles et offre donc des perspectives de poursuite de ce travail.

5

Chapitre1

Les Systèmes de Questions-Réponses

1.1 Introduction

Le Question-Answering est un domaine de recherche qui a connu un intérêt remarquable durant ces dernières années, ce qui a permis une avancée majeure par les chercheurs de ce domaine. Ce chapitre résume l'étude bibliographique effectuée. Il porte sur la qualitédes systèmes existants en général et les multiples dimensions qui permettent de les caractériser, les évaluer et de les classifier afin de connaître l'état de l'art de ce domaine. Nous avons aussi présentéles ensembles de données les plus utilisés pour leur développement.

1.2 Les systèmes de Questions-Réponses

Les systèmes de réponse aux questions est une forme sophistiquée de Recherche d'Information caractérisée par des besoins d'information qui sont au moins partiellement exprimés sous forme d'énoncés ou de questions en langage naturel, et constituent l'une des formes les plus naturelles d'interaction entre l'homme et l'ordinateur. Leur défi consiste à fournir une réponse concise à une question en langage naturel, étant donnéla grande quantitéde documents textuels. La réponse à une question est une tâche de Recherche d'Information limitée par l'expression de tout ou partie du besoin d'informations sous la forme d'un ensemble de questions ou d'énoncés en langage naturel [Kolomiyets and Moens, 2011a]. L'utilisateur est intéressépar une réponse concise, compréhensible et correcte par exemple: »Who is the inventor of the telephone?» la réponse sera: »Alexander Graham Bell».

1.3 État de l'art des systèmes de Questions-Réponses

Dans le domaine des QAS, nous faisons souvent référence à leur classification selon leur domaine d'appli-cation, c-à-dire le domaine dans lequel ils opèrent et répondent aux questions. Comme le montre la taxonomie

6

CHAPITRE 1. LES SYSTÈMES DE QUESTIONS-RÉPONSES

illustrée dans la Figure 1.1, il existe principalement deux classes qui sont: Closed-domain QAS et Open-domain QAS.

Dans notre étude bibliographique, nous avons constatéque les systèmes QA peuvent aussi être catégorisés selon les sources de connaissances sur lesquelles ils se basent pour extraire les informations afin de répondre aux questions. Nous avons également remarquéque les systèmes peuvent répondre à différentes formes de questions, ce qui nous a incitéà aussi les catégoriser par type de questions. Dans ce qui suit, nous allons présenter une vue globale puis détaillée de différentes catégories de classification des systèmes QA.

1.3.1 Classification par domaine d'application

1- Open-domain QAS

Les QAS du domaine ouvert (START, QuALIM, DeepQA, FALCON, Lasso, DrQA, YodaQA, AskMSR) ne sont pas limités à un domaine spécifique et fournissent une réponse courte à une question, traitée en langage naturel. En outre, les questions peuvent être sur quasiment n'importe quel sujet [ElKafrawy et al., 2018]. Ces systèmes recherchent généralement des réponses au sein d'une vaste collection de documents. Il existe un grand nombre de questions qui peuvent être posées par des utilisateurs occasionnels dans les systèmes questions-réponses du domaine ouvert, et afin de répondre à ces questions, ce type de systèmes exploit l'onto-logie générale et la connaissance du monde dans leurs méthodologies pour générer des réponses. En général, la qualitédes réponses fournies par ces systèmes n'est pas aussi précise que les systèmes questions-réponses du domaine fermé. Les QAS du domaine ouvert ne nécessitent pas de vocabulaire spécifique au domaine. Ils recherchent des réponses dans des grandes collections de documents [Reddy and Madhavi, 2017]. En contrepartie, ils permettent aux utilisateurs la possibilitéde poser des questions sans connaître les mots clés du domaine spécifique pour formuler des questions. Ceci favorise l'utilisation des QAS du domaine ouvert par tous les utilisateurs de différents niveaux d'instruction et de différents domaines de spécialisation. De plus, Ces systèmes ne nécessitent pas le dictionnaire d'un domaine spécifique, ce qui veut dire que Wikipédia peut être utilisée comme une source d'information.

2- Closed domain QAS

Les systèmes QAS du domaine fermé(BASEBALL, LUNAR, MedQA, MYCIN, HONqa, EAGLi, as-kHERMES, KAAS, WEBCOOP) permettent de répondre aux questions relatives à un domaine particulier (médecine, cinématographie, aquariophilie, etc) en se basant sur les connaissances spécifiques aux domaines souvent formalisés dans des ontologies. Par ailleurs, des types limités de questions sont acceptés dans ces systèmes [ElKafrawy et al., 2018]. Ce domaine nécessite une disposition linguistique pour comprendre le texte en langue naturelle afin d'apporter une réponse précise aux requêtes [Ojokoh and Adebisi, 2019].

CHAPITRE 1. LES SYSTÈMES DE QUESTIONS-RÉPONSES

7

 

FIGURE 1.1: La taxonomie de l'état de l'art des QAS.

8

CHAPITRE 1. LES SYSTÈMES DE QUESTIONS-RÉPONSES

Malgréla précision que ces systèmes ont atteint puisqu'ils sont spécialisés dans des domaines précis, leur restriction les rend moins utiles au moment de vouloir avoir des réponses à des questions dans de divers spécialités. Les QAS du domaine fermépeuvent être combinés pour créer des QAS du domaine ouvert afin de fournir des réponses dans plusieurs domaines avec une meilleure précision [Ojokoh and Adebisi, 2019].

1.3.2 Classification par source de données

Les QAS peuvent être classés selon leur source de données. Tous les QAS ont besoin d'une source de connaissances (Knowledge source) dans laquelle ils fouinent à la recherche des passages. Pour répondre à ce besoin, quelques systèmes utilisent une base fermée, e.g., Wikipedia pour (START, QuALIM, Lasso, DrQA, BASEBALL, LUNAR, MedQA, MYCIN, HONqa, EAGLi, askHERMES, KAAS, WEBCOOP). D'autres systèmes utilisent le web (QuALIM, DeepQA, YodaQA, AskMSR). Tandis que d'autres répondent aux questions en mettant en relation les utilisateurs et interroger leur réseau social [Bouadjenek et al., 2016]. Cette méthode diff`ere des moteurs de recherche traditionnels afin de faire la collecte du contenu nécessaire pour répondre aux questions. Les systèmes se basant sur cette technique sont appelés »Social QAS» (Aardvark, Yahoo! Answers, StackOverflow).

1.3.3 Classification par type de questions

Il existe plusieurs types de questions sur lesquelles les systèmes QA peuvent répondre. Nous citons 6 types dans cette Section : (i) Factuelles : Commencent généralement par un mot interrogépar Wh- (What, When, Where, Who) et requièrent comme réponse un fait exprimédans le corps du texte (START, QuA-LIM, DeepQA, FALCON, Lasso, DrQA, YodaQA, AskMSR, BASEBALL, LUNAR, HONqa, askHERMES, KAAS, MYCIN). (ii) Causales : Nécessitent une explication d'un événement ou d'un artefact, comme Pourquoi (DrQA, askHERMES, WEBCOOP). (iii) De confirmation : Requièrent un Oui ou un Non comme réponse à un événement exprimédans la question (BASEBALL, askHERMES, WEBCOOP, START, DrQA). (iv) De liste : Requièrent comme réponse une liste d'entités ou de faits (START, DrQA, LUNAR, askHERMES). (v) De définition : Nécessitent de trouver la définition du terme dans la question et commencent normalement par »Qu'est-ce que» (LUNAR, MedQA, HONqa, EAGLi, askHERMES, WEBCOOP, START, DrQA). (vi) De procédure : Requièrent comme réponse une liste d'instructions pour l'accomplissement de la tâche mentionnée dans la question (DrQA, HONqa, askHERMES).

Nous illustrons dans le tableau 1.1 un récapitulatif de la classification des QAS selon les critères cités ci-dessus : Le domaine d'application du système qui peut être un domaine de type ouvert ou de type fermé, le type de questions prises en charge et enfin la source des données.

9

CHAPITRE 1. LES SYSTÈMES DE QUESTIONS-RÉPONSES

Source

de données

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Type

de question

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Domaine

d'application

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Système

BASEBALL [Green et al., 1961]

LUNAR [Woods, 1973]

MedQA [Lee et al., 2006]

MYCIN [Shortliffe, 1977]

HONqa [Olvera-Lobo and Gutiérrez-Artacho, 2011]

EAGLi [Cao et al., 2011]

askHERMES [Cao et al., 2011]

KAAS [Diekema et al., 2004]

WEBCOOP [Benamara and Saint-Dizier, 2003]

START [Olvera-Lobo and Gutiérrez-Artacho, 2011]

QuALIM [Kaisser, 2005]

Aardvark a

DeepQA [Ferrucci et al., 2010]

FALCON [Harabagiu et al., 2001]

Lasso [Katz et al., 2002]

DrQA [Chen et al., 2017]

YodaQA [Baudis, 2015]

AskMSR [Banko et al., 2002]

Yahoo! Answers b

TABLE 1.1: Classification des QAS selon plusieurs axes

a. https://en.wikipedia.org/wiki/Aardvark(searchengine)

b. https://answers.yahoo.com/

10

CHAPITRE 1. LES SYSTÈMES DE QUESTIONS-RÉPONSES

Nous remarquons que les systèmes du domaine fermése basant sur une source de données sociales permettent de fournir un moyen pour répondre à plusieurs types de questions (Aardvark, Yahoo! Answers). Nous remarquons aussi qu'aucun des systèmes de domaine fermécités ne se base sur le web pour la recherche des réponses, et ceci pour que l'information soit correcte, exacte et venant d'une source de données fiable.

1.4 Les jeux de données disponibles

Nombreux sont les jeux de données destinés au développement des systèmes QA. Par conséquent, dans le tableau 1.2 nous présentons ceux fréquemment utilisés pour le développement et l'évaluation des QAS.

Nom du Dataset

Source des questions

Taille du dataset

SQuAD

[Rajpurkar et al., 2016]

Production participative1
(crowdsourced)

100.000 questions avec réponses
+ 50.000 questions sans réponses

CNN/DailyMail
[Chen et al., 2016]

Génération automatique
des questions (Query logs)

879.000 questions

WikiQA

[Yang et al., 2015]

Historique des requêtes des
utilisateurs

3047 questions

TREC-QA

[Voorhees and Tice, 2000]

Historique des requêtes
des utilisateurs (Query logs)

1479 questions

MCTest

[Richardson et al., 2013]

Production participative

2640 questions

TABLE 1.2: Les différents jeux de données disponibles.

Les performances de la lecture automatique, en particulier, ont étéconsidérablement améliorées ces dernières années avec l'introduction des ensembles de données de compréhension de la lecture à grande échelle tels que CNN / DailyMail et SQuAD. Les systèmes utilisant ces ensembles de données se concentrent uniquement sur l'étape d'extraction des réponses, en supposant en fait que le passage pertinent du texte est déjàconnu. WikiQA a étéintroduit comme un ensemble de données qui utilise les journaux de requêtes Bing comme source de questions. Il est utiliséprincipalement dans les systèmes qui répondent aux questions factuelles. Les réponses candidates ont étéextraites à partir de la section de résumédes articles de Wikipédia. TREC est un ensemble de données pour la classification des questions consistant en des questions ouvertes, basées sur des faits et divisées en grandes catégories sémantiques. MCTest est un ensemble d'histoires et de questions associées librement disponibles destinées à la recherche sur la compréhension automatique des textes. Cet ensemble de données exige des machines qu'elles répondent à des questions à choix multiples sur la compréhension de la lecture d'histoires fictives, s'attaquant ainsi directement à l'objectif de haut niveau de la compréhension machine en domaine ouvert.

11

CHAPITRE 1. LES SYSTÈMES DE QUESTIONS-RÉPONSES

Dans cette thèse nous allons concevoir et réaliser une architecture de QAS de domaine ouvert utilisant la base de connaissances fermée Wikipedia et entraînésur l'ensemble de données SQuAD.

1.5 Conclusion

L'objectif de ce chapitre était de donner un aperçu global sur les systèmes réalisés jusqu'àprésent dans le domaine du QA. De plus, nous avons fait une classification de ces systèmes selon différents axes : Domaine d'application, type de questions et source de données. Nous avons également présentéun comparatif entre les ensemble de données utilisés pour l'entraàýnement des QAS.

12

Chapitre2

Généralités

2.1 Recherche d'information

La recherche d'information est un processus qui consiste à récupérer des informations stockées dans de grands ensembles de données pour répondre aux besoins d'information des utilisateurs. Baeza et ses collègues [Baeza-Yates and Ribeiro-Neto, 2011] ont défini la recherche d'information comme suit:

Définition: La Recherche d'Information (RI) est la science qui traite la représentation, le stockage, l'orga-nisation et de l'accès aux éléments d'information afin de satisfaire les besoins des utilisateurs concernant ces informations.

Bien que la caractérisation des besoins de l'utilisateur ne soit pas une tâche simple, les utilisateurs précisent généralement leurs exigences sous la forme de requêtes que le système de RI doit traiter pour déterminer et présenter les documents qui correspondent à leurs besoins. Google, Bing et Yahoo! sont certainement les systèmes RI les plus connus. Dans ces systèmes, les utilisateurs expriment leurs besoins sous forme de mots-clés, qui sont généralement considérés comme un résumédes besoins d'information de l'utilisateur. En réponse à une requête, le système de RI tente, en suivant un ensemble de processus, de récupérer des informations qui peuvent être pertinentes pour les utilisateurs.

Un système de RI est évaluéen fonction de sa précision et de sa capacitéà récupérer des informations et des documents de haute qualité, qui maximisent la satisfaction des utilisateurs, c'est-à-dire que plus le les réponses correspondent aux attentes des utilisateurs, plus le système est performant.

D'un point de vue architectural, le processus de RI se compose principalement de deux sous-processus complémentaires suivants :

-- Un processus hors ligne illustrédans la partie droite de la Figure 2.1. La collection de documents est

explorée et parcourue afin de retrouver tous les documents grâce aux liens potentiels qui relient ces

CHAPITRE 2. GÉNÉRALITÉS

documents entre eux. Pour chaque document récupéré, un traitement est appliquéconsistant principalement à réduire son ensemble de mots à un ensemble de termes d'index.

-- Un processus en ligne illustrédans la partie gauche de la Figure 2.1 qui prend en charge la requête de l'utilisateur. La requête est envoyée généralement sous forme de mots clés et est réduite par le moteur de traitement des requêtes suivant la même stratégie que celle du traitement et l'indexation des documents. L'ensemble des termes de la requête utilisateur qui en résulte est souvent affinépar la suppression de certains termes [Kumaran and Carvalho, 2009]. Ensuite, la requête est traitée pour obtenir un ensemble de documents en utilisant la structure d'index précédemment construite. Cette liste est composée de documents qui sont liés aux termes de la requête. Après cela, les documents récupérés sont classés selon leur pertinence par rapport à la requête et par l'utilisateur, du plus pertinent au moins pertinent. Il s'agit de l'étape la plus critique car la qualitédes résultats, telle que perçue par les utilisateurs, dépend fondamentalement du classement. Enfin, les documents les mieux classés sont ensuite formatés pour être présentés à l'utilisateur.

13

FIGURE 2.1: Processus de recherche d'information [Baeza-Yates and Ribeiro-Neto, 2011].

14

CHAPITRE 2. GÉNÉRALITÉS

2.1.1 Les modèles RI

La modélisation en RI consiste à définir un modèle conceptuel pour la représentation des documents et des requêtes. De nombreux modèles de RI ont étéproposés parmi lesquels : le modèle booléen, le modèle vectoriel spatial (VSM) et le modèle BM25. Ces modèles de RI sont bien décrits par la suite. Dans cette thèse, nous nous appuyons principalement sur le modèle BM25 pour son large usage et ses hautes performances [Baeza-Yates and Ribeiro-Neto, 2011].

- Modèle vectoriel VSM (Pondération TF-IDF) : Nous avons choisi d'utiliser la mesure TF - IDF pour calculer ce poids et la similaritéen cosinus pour calculer la similaritéentre ces vecteurs. TF - IDF est égale à la multiplication des deux mesures TFt,d.IDFt tel que TFt,d ou la Fréquence du Terme représente le nombre d'occurrences d'un terme t dans le document d. Tandis que IDFt ou la Fréquence Inverse de Document mesure l'importance du terme t dans l'ensemble des documents D.

TFt,d · IDFt =>

{ TFt,d = log(1+ ft,d) IDF = log ( ||D||)

Où:

t : Le terme t.

d : Le document d.

ft,d : Le nombre d'occurrences du terme t dans le document d.

||D|| : Le nombre total de documents.

||Dt|| : Le nombre de documents contenant le terme t.

Où:

q : La requête q.

dj : Le document j.

sim(q,~dj) =

44 (2.1)

||4||·||~dj||

En notant que la similaritécosinus est particulièrement utilisée dans l'espace positif, oùle résultat est clairement délimitédans [0, 1]. Ainsi, si deux vecteurs ont la même orientation et sont égaux, nous avons une similaritéen cosinus de 1, mais si les deux vecteurs sont diamétralement opposés, nous avons une similaritéde 0 [Baeza-Yates and Ribeiro-Neto, 2011].

- BM-25 : BM25 est une fonction de recherche de mots qui peut classer un groupe de documents en fonction des termes de recherche qui apparaissent dans chaque document, quelle que soit leur proximitéavec le docu-

15

CHAPITRE 2. GÉNÉRALITÉS

ment [Robertson and Zaragoza, 2009]. Le score BM-25 est calculécomme suit:

ScoreBM-25(d,Q) =

||Q||

?

i=1

IDFqi

TFqi,d (k1 + 1)

( ) (2.2)

TFqi,d + k1 1 - b + b ||d||

avgdl

Où:

-- Q : La requête Q.

-- ||Q|| : La taille de la requête Q.

-- qi : Le mot qi ? Q.

-- d : Le document d.

-- ||d|| : Le nombre total de mots du document d.

-- avgdl : La longueur moyenne des documents dans la collection considérée.

-- k1 et b : Des paramètres libres pouvant être optimisés selon les cas d'usage (ils sont généralement fixés

àk1 ? [1.2,2.0] et b = 0.75).

2.1.2 Les métriques d'évaluation

Cette section est en partie un résumédu chapitre 4 du livre Modern Information Retrieval [Baeza-Yates and Ribeiro-Neto, 2011]. Une définition correcte est donnée concernant l'évaluation des algorithmes et des systèmes de recherche d'information.

Définition : L'évaluation de la recherche est un processus qui consiste à associer systématiquement une mesure quantitative aux résultats produits par un système de IR en réponse à un ensemble de demandes de l'utilisateur. Cette mesure doit être directement associée à la pertinence des résultats pour l'utilisateur. Une approche commune pour calculer une telle mesure consiste à comparer les résultats produits par le système avec les résultats suggérés par les humains pour ce même ensemble de requêtes. Notez que l'évaluation de l'extraction signifie ici l'évaluation de la qualitédes résultats, et non des performances du système en termes de vitesse de traitement des requêtes.

De nombreuses mesures différentes ont étéproposées pour évaluer la qualitéde l'extraction des systèmes et des algorithmes de IR, c'est-à-dire la qualitédes résultats. Ces mesures nécessitent un ensemble de documents et de requêtes. Toutes les mesures courantes décrites ici reposent sur une notion de pertinence: chaque document est connu pour être pertinent ou non pertinent par rapport à une requête particulière. En pratique, les requêtes peuvent être mal posées et il peut y avoir différentes nuances de pertinence. Dans ce qui suit, nous définissons six métriques d'évaluation qui seront utilisées tout au long de cette thèse.

16

CHAPITRE 2. GÉNÉRALITÉS

- Matrice de confusion: Il s'agit d'une matrice décrivant les performances globales du modèle. Supposons que nous avons un problème de classification binaire. Nous avons quelques échantillons qui se répartissent en deux catégories : oui ou non.

 

Predicted Negative

Predicted Positive

Actual Negative

True Negative

False Positive

Actual Positive

False Negative

True Positive

TABLE 2.1: Matrice de confusion.

La matrice de confusion permet d'extraire et de lire quatre informations importantes qui sont:

-- TP : Nombre d'échantillons correctement prédit appartenant à la catégorie «Positive».

-- FP : Nombre d'échantillons dans la catégorie »Positive» qui n'ont pas étécorrectement prédits. -- TN : Nombre d'échantillons de la catégorie «Négative» correctement prédits.

-- FN : Nombre d'échantillons de la catégorie «Négative» qui n'ont pas étécorrectement prédits.

- Précision et Rappel: La précision est la proportion d'instances pertinentes dans les instances récupérées, le rappel est la proportion du nombre total d'instances pertinentes qui sont réellement récupérées. Par conséquent, la précision et le rappel reposent sur la compréhension et la mesure de la pertinence [Ting, 2010]. En d'autres termes, la précision représente le pourcentage de documents prédits correctement par rapport au nombre de documents erronés retournés, le rappel quant à lui, donne le pourcentage des documents corrects qui sont donnés sans se préoccuper du nombre de documents erronés retournés.

TP

Précision = (2.3)
TP+FP

TP

Rappel = (2.4)
TP+FN

- R-précision: La R-précision représente le nombre de documents qui sont pertinents pour une requête qi donnée [Craswell, 2009b]. En d'autres termes, s'il y a R documents pertinents parmi les documents les plus recherchés, alors la R-précision pour qi examine les r premiers documents renvoyés, compte le nombre de documents pertinents et transforme ce nombre en fraction de pertinence:

R - precision =

r (2.5)

R

- Mean Average Precision: MAP (Mean Average Precision) est une mesure populaire utilisée pour calculer la performance des modèles de recherche d'information. L'idée principale de cette métrique est de générer

CHAPITRE 2. GÉNÉRALITÉS

un résumédu classement en une seule valeur en faisant la moyenne des valeurs de précisions obtenues après l'observation de chaque nouveau document pertinent [Beitzel et al., 2009]. La précision moyenne APi pour la requête qi est définie comme suit:

(P(k) rel(k)) (2.6)

Ri

APi =

1 n

?

k=1

Où:

-- Ri : Le nombre total de documents pertinents pour la requête qi.

-- n : Nombre de documents retrouvés.

-- P(k) : La précision du document k.

-- rel(k) : Fonction d'indication de pertinence du document k; 1 si le document k est pertinent, 0 sinon.

la MAP sur un ensemble de requêtes est alors définie comme suit:

MAP=

1

||Q||

?

i=1

APi(qi) (2.7)

||Q||

Où:

-- ||Q||: Le nombre total de requêtes.

-- qi : La requête i de l'ensemble de requêtes Q.

- Mean Reciprocal Rank: Le Rang moyen de réciprocité(MRR ou Mean Reciprocal Rank en anglais) est une mesure permettant d'évaluer les systèmes qui renvoient une liste classée de réponses aux requêtes [Craswell, 2009a]. Cette métrique est calculée sur la base de la formule suivante:

MRR =

1

||Q||

?

i=1

1 (2.8)

ranki

||Q||

17

Où:

-- ranki : La position du premier document pertinent pour la requête i. -- ||Q||: Le nombre total de requêtes.

Afin de calculer les métriques décrites précédemment, plusieurs outils sont disponibles. Parmi eux, nous citons TREC Eval1 et que nous avons utilisétout au long de cette thèse.

TREC Eval est un programme conçu comme une série d'ateliers dans le domaine de la recherche d'information. Il a débutéen 1992 dans le cadre du projet TIPSTER. Son but est d'encourager les travaux dans le domaine de la recherche d'information en fournissant l'infrastructure nécessaire à une évaluation objective à grande échelle des méthodologies de recherche textuelle [Teufel, 2007]. TREC Eval fournit une évaluation complète et exhaustive d'un moteur de recherche en offrant des dizaines de métriques qui permettent de juger un système RI.

1. TREC Eval : https://github.com/usnistgov/trec eval

18

CHAPITRE 2. GÉNÉRALITÉS

2.1.3 Outil de développement

Pour élaborer un système de recherche d'information, plusieurs bibliothèques sont disponibles dans plusieurs langages de développement (Apache Solr, Apache Lucene, Sphinx, Xapian, Whoosh, etc). Dans ce qui suit, nous allons présenter l'un des outils de développement les plus utilisés dans le monde de la recherche d'information qui est Apache Lucene.

Apache Lucene2 est une bibliothèque qui sert à développer des moteurs de recherche textuelle très performants et complets, entièrement écrite en Java. Elle est capable d'effectuer des recherches plein texte dans des documents, c'est donc une technologie qui convient à toute application nécessitant cette fonctionnalité, surtout si elle est multi-plateforme. Apache fournit aussi une interface python de Lucene nommée PyLucene que nous allons utiliser durant cet oeuvre.

2.2 Deep Learning en Traitement du Langage Naturel

L'apprentissage profond (DL ou Deep Learning en Anglais) est un sous-domaine de l'apprentissage machine qui concerne les algorithmes inspirés par la structure et le fonctionnement du cerveau appelés réseaux neuronaux artificiels.

Le traitement du langage naturel ( NLP ou Natural language processing en anglais) est le processus de compréhension automatique du langage humain. Dans l'intelligence artificielle, le NLP permet aux machines et aux applications de comprendre le sens du langage humain, puis de générer des réponses appropriées pour former un flux de conversation naturel [Jain et al., 2018].

Il existe plusieurs techniques de traitement de langage naturel telles que les réseaux de neurones récurrents (RNN). Un RNN est un modèle d'apprentissage approfondi très populaire qui est utilisépour effectuer un certain nombre de tâches de DL comme le traitement de langage naturel, le traitement d'images, etc [Sak et al., 2014]. Les RNN traitent les entrées d'une expression en langage naturel de manière séquentielle, c-à-dire les informations des jetons passent par tout le chemin pour se retrouver en fin de séquence. Mais d'un point de vue pratique, ce mécanisme reste imparfait et inefficient, dûau risque de «Gradient vanishing and exploding problems» ou perte d'informations lors de la mise à jour des poids du réseau, ce qui empêchera le poids de modifier sa valeur voire empêcher le réseau de poursuivre son entrainement et de perdre l'information pertinente [Hochreiter, 1998].

2. Apache Lucene : https://lucene.apache.org/

19

CHAPITRE 2. GÉNÉRALITÉS

À ce stade, le mécanisme d'attention est apparu pour permettre d'examiner la phrase en tenant compte de tous les états précédents. Ces derniers sont ensuite pondérés en fonction d'une mesure apprise de la pertinence du jeton actuel, fournissant ainsi des informations plus précises sur les jetons pertinents lointains.

2.2.1 Le mécanisme d'attention

Dans le domaine de traitement du langage naturel, les éléments qui composent le texte source se caractérisent par le fait qu'ils ont chacun une pertinence différente par rapport à la tâche à accomplir. Par exemple, dans l'analyse des sentiments basée sur les aspects, les mots clés tels que »bon» ou »mauvais» peuvent être pertinents pour certains aspects à l'étude, mais pas pour d'autres. Dans la traduction automatique, certains mots du texte source pourraient ne pas être pertinents pour la traduction du mot suivant [Vaswani et al., 2017]. Par exemple, la traduction anglais-français, le premier mot de la sortie française dépend probablement beaucoup du début de l'entrée anglaise. Cependant, afin de produire le premier mot de la sortie française, le modèle ne reçoit que le vecteur d'état du dernier mot anglais. Théoriquement, ce vecteur peut coder des informations sur l'ensemble de la phrase à traduire, mais en pratique ces informations ne sont souvent pas bien préservées. Pour cela, il est important de prendre en compte la notion de pertinence, de manière à concentrer les ressources de calcul sur un ensemble restreint d'éléments importants. Le mécanisme d'attention est une approche de plus en plus populaire qui consiste à apprendre par machine la pertinence des éléments d'entrée. De cette façon, les architectures neurales pourraient automatiquement évaluer la pertinence de n'importe quelle région de l'entrée, et considérer ce poids lors de l'exécution de la tâche principale [Bahdanau et al., 2015]. Lorsque ce mécanisme est ajoutéaux RNN, le modèle peut apprendre à tenir en compte l'état des premiers mots anglais lorsqu'il produit le début de la phrase française et donc des gains de performance importants [Vaswani et al., 2017].

L'introduction du transformateur a mis en lumière le fait que les mécanismes d'attention étaient puissants en eux-mêmes, et que le traitement séquentiel récurrent des données n'était pas nécessaire pour obtenir les gains de performance des RNN avec attention.

2.2.2 Les Transformateurs

Le Transformateur est un modèle de DL utiliséprincipalement dans le domaine du NLP. Comme les RNNs, les transformateurs sont conçus pour traiter des données séquentielles, comme le langage naturel, pour des tâches telles que la traduction et la classification de textes [Vaswani et al., 2017].

Ils utilisent un mécanisme d'attention sans être un RNN, en traitant tous les jetons en même temps et en calculant les poids d'attention entre eux. Le fait que les transformateurs ne reposent pas sur un traitement séquentiel et se prêtent très facilement à la parallélisation permet de les former plus efficacement sur des ensembles de données plus importants. Ils ont remplacéles anciens modèles de RNN tels que les LSTM [Greff et al., 2016].

20

CHAPITRE 2. GÉNÉRALITÉS

«Les transformateurs» est une architecture qui utilise l'attention pour augmenter la vitesse à laquelle ces modèles peuvent être formés. Le plus grand avantage, cependant, vient de la façon dont le transformateur se prête à la parallélisation. Ils reposent sur une architecture encoder-decoder (Figure 2.2). Le composant d'en-codage et de décodage sont des piles du même nombre.

FIGURE 2.2: Architecture de base des transformateurs [Tra, 2018].

-- L'encodeur est composéde 6 couches identiques. Chaque couche a deux sous-couches. La première est celle de «Multi-head Self-Attention» [Voita et al., 2019] qui permet au modèle de s'occuper des informations provenant de différentes positions. La seconde est un simple réseau «feed-forward» [Chen et al., 2001] entièrement connectéen fonction de la position.

-- Le décodeur à son tour, composéde 6 couches identiques, contient également deux sous-couches similaires à celles de l'encodeur, mais entre elles se trouve une troisième sous-couche qui réalise une «Multi-head attention» sur l'output de l'encodeur. Cette couche aide le décodeur à se concentrer sur les parties pertinentes de la phrase d'entrée.

En phase d'encodage, comme le montre la Figure 2.3 :

1. L'entrée est l'encapsulation des mots pour la première couche. Pour les couches suivantes, ce sera la sortie de la couche précédente.

2. À l'intérieur de chaque couche, la Multi-head self-attention est calculée en utilisant les entrées de la couche comme vecteurs de clés, requêtes et valeurs; puis le résultat est envoyéà la couche feed-forward.

21

CHAPITRE 2. GÉNÉRALITÉS

FIGURE 2.3: Architecture de l'encodeur du transformateur [Tra, 2018].

Le principe de «Self Attention» repose sur l'idée que tous les mots seront comparés les uns aux autres afin d'avoir le sens exact de l'input (Figure 2.4).

FIGURE 2.4: Principe de self-attention [Sel, 2020].

Et donc, contrairement aux RNN, les transformateurs n'exigent pas que les données séquentielles soient traitées dans l'ordre. Grâce à cette caractéristique, le Transformateur permet une parallélisation beaucoup plus importante que les RNN et donc des temps de formation réduits.

Les transformateurs sont devenus le modèle de choix pour résoudre de nombreux problèmes en NLP. Cela a conduit au développement de systèmes pré-entrainés tels que BERT (Bidirectional Encoder Representations

CHAPITRE 2. GÉNÉRALITÉS

from Transformers) [Devlin et al., 2018] et GPT (Generative Pre-trained Transformer) [Radford et al., 2018], qui ont étéformés avec d'énormes ensembles de données en langage général et peuvent être adaptés à des tâches linguistiques spécifiques.

2.2.3 BERT (Bidirectional Encoder Representations from Transformers)

Les transformateurs est une architecture d'encodeur-décodeur, c-à-dire ils prennent une entrée et produisent une sortie. BERT [Devlin et al., 2018] est une architecture qui n'utilise que la partie d'encodeur des transformateurs pour réaliser de multiples tâches. Ce processus est nomméle Transfer Learning [Pan and Yang, 2010] qui est une méthode d'apprentissage automatique dans laquelle un modèle développépour une tâche est réutilisécomme point de départ pour un modèle sur une deuxième tâche. Cette approche est utilisée en Deep Learning avec les modèles pre-trained comme BERT. Ils sont conçus pour réaliser une des tâches spécifiques (de traitement d'images, traitement de langage naturel...) avec changement de l'input suivant la tâche à réaliser. Il existe deux modèle de BERT, Base et Large:

-- BERT Base (Cased et Uncased) : contient 12 couches, hidden size=768 et 12 self-attention heads.

-- BERT Large (Cased et Uncased) : contient 24 couches, hidden size=1024 et 16 self-attention heads. «Uncased» réalise une mise en minuscules avant la tokenisation (eq. John Smith devient john smith) et supprime également tout marqueur d'accent. «Cased» signifie que la casse et les accents sont conservés. En général, le modèle «Uncased» est préférable sauf si la casse est importante.

22

FIGURE 2.5: Représentation des entrées et sorties du modèle BERT [Devlin et al., 2018].

23

CHAPITRE 2. GÉNÉRALITÉS

BERT est un modèle de compréhension linguistique à usage général sur un grand corpus de textes (comme Wikipédia) utilisédans les tâches NLP. BERT surpasse les méthodes précédentes parce qu'il s'agit du premier système de préformation en NLP non superviséet profondément bidirectionnel.

La représentation d'entrée utilisée par BERT est capable de représenter une ou plusieurs phrases dans une seule séquence de jetons ( Figure 2.5). Le token [CLS] désigne le début de la séquence. Chaque phrase est représentée sous forme de tokens. Les différentes phrases de la séquence sont séparées par le token [SEP].

Le vocabulaire de BERT contient 30,522 tokens. Afin de traiter les mots inconnus, BERT utilise la décomposition en sous-mots.

2.2.4 Keras

Pour le développement de nos modèles de DL nous avons utiliséla librairie de python appelée Keras [Chol-let et al., 2015]. C'est une API open-source de Deep Learning écrite, fonctionnant sur la plate-forme d'appren-tissage automatique TensorFlow. Elle a étédéveloppée dans le but de permettre un apprentissage rapide.

2.2.5 Les métriques d'évaluation

Tout comme les systèmes de recherche d'information, les modèles réalisés en Deep Learning doivent être évalués afin de mesurer leur efficacitéet leur performance ainsi que pour la sélection des bons hyper-paramètres. Dans cette section, nous présentons les principales métriques utilisées pour l'évaluation des modèles intelligents composants le système YouTaQA.

- Accuracy : Représente le nombre d'enregistrements correctement prédits parmi tous les points de l'en-semble de données N. Plus formellement, elle est définie comme suit:

Accuracy =

TP+TN

(2.9)

N

- Loss: Désigne la moyenne des différences au carréentre les valeurs prédites et les valeurs réelles. Représente le taux d'erreur que le modèle a commis lors de la prédictions des résultats.

- F1 score : Le score F, également appeléscore F1, est une mesure de la précision d'un test. Il est défini comme la moyenne harmonique pondérée de la précision et du rappel. Cette métrique est nécessaire pour trouver un équilibre entre la précision et le rappel.

Précision · Rappel

F1 = 2 · (2.10)
Précision + Rappel

24

CHAPITRE 2. GÉNÉRALITÉS

- Exact Match EM : La métrique de correspondance exacte est une valeur binaire qui prend la valeur 1 si la réponse prédite et la réponse vraie sont exactement égales sans compter la ponctuation et les articles, zéro sinon. Cette métrique étant inconnue pour le grand public, elle est utilisée spécifiquement dans le domaine des QAS [Rajpurkar et al., 2016].

2.3 Conclusion

Dans ce chapitre, nous avons abordéla théorie de base du domaine de recherche d'information telle que le processus d'indexation et requêtage d'informations suivie des techniques d'évaluation des moteurs de recherche. De plus, nous avons procédéà une explication claire du traitement du langage naturel et du Deep Learning afin d'introduire le lecteur pour le prochain chapitre qui présentera la conception et l'implémentation du système YouTaQA.

25

Chapitre3

Conception et implémentation de YouTaQA

3.1 Introduction

Dans ce présent chapitre, nous allons présenter la conception de la solution proposée. Nous décrivons les différentes opérations de prétraitement effectuées sur l'ensemble de données de Wikipédia, nous présentons aussi la structure de notre index. De plus, nous détaillons dans ce chapitre l'architecture et les paramètres utilisés pour notre classifieur des passages et de notre module d'extraction des réponses.

3.2 Architecture globale du système YouTaQA

Notre système est basésur le Deep Learning et de la recherche d'information. Son but principal est de permettre aux utilisateurs d'avoir des réponses exactes à leurs questions uniquement en se basant sur un moteur de recherche qui dispenserait l'utilisateur de fournir des documents ou autre chose mis à part la question. Afin d'atteindre l'objectif de notre système, comme illustrédans la Figure 3.1, nous avons conçu une architecture composée de trois modules de base et une interface pour interagir avec l'utilisateur:

(i) Un Moteur de Recherche d'Information (MRI) qui sert à fournir les 5 passages les plus pertinents à une question donnée.

(ii) Un module de classification (MC) des passages basésur le Deep Learning pour choisir et identifier parmi les 5 résultats du moteur de recherche le meilleur passage susceptible de contenir la bonne réponse à la question.

(iii) Un module d'extraction des réponses (MER) basésur le Deep Learning qui permet d'extraire la réponse exacte à partir du passage choisi par le classifieur dans l'étape précédente.

26

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

FIGURE 3.1: Schéma global du systeme YouTaQA

3.3 Le choix des jeux de données

Il existe plusieurs jeux de données utilisés pour l'apprentissage des QAS (Section 1.4). Durant notre projet, pour l'entraînement du système proposé, nous allons utiliser SQuAD (Stanford Question Answering Dataset).

3.3.1 SQUAD

SQUAD a étéproposépar l'universitéde Stanford. Il contient un nombre impressionnant de questions (100.000 questions posées par des gens sur plus de 500 articles de différents domaines sur Wikipedia). Les passages dans SQuAD ont étéextraits des articles de Wikipédia et couvrent un large éventail de sujets dans des domaines variés, allant des célébrités de la musique aux concepts abstraits. De plus, les questions sans réponses étaient le talon d'achille des jeux de données des systèmes questions-réponses, làencore, SQuAD fournit 50.000 questions sans réponses posées aléatoirement par la foule qui ont pour but de ressembler à des questions qui n'ont pas de réponses.

Un passage est un paragraphe d'un article d'une longueur variable. Chaque passage de SQuAD est accompagnéde plusieurs questions. Ces questions sont basées sur le contenu du passage et qui peuvent avoir des réponses en

lisant le passage. Enfin, pour chaque question, il existe une ou plusieurs réponses. Etant donnéque les réponses sont des segments des passages, cela permettra au système d'apprendre d'une manière optimale la façon dont

27

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

il doit extraire les réponses de ces passages. De plus, dans SQuAD, les mots des questions sont souvent des synonymes de mots dans le passage, il s'agit d'une variation lexicale en raison de la synonymie.

Pour avoir une vision plus claire sur la structure de SQuAD, nous présentons ci-dessous un exemple d'une question extraite du jeu de données:

»question»: »When did Beyonce start becoming popular?»,

»id» : »56be85543aeaaa14008c9063»,

»answer»: »in the late 1990s»,

»answer start»: 269,

»is impossible» : false,

»context»: »Beyonce Giselle Knowles-Carter is an American singer, songwriter, record producer

and actress. Born and raised in Houston, Texas, she performed in various singing and dancing com-

petitions as a child, and rose to fame in the late 1990s».

L'exemple ci-dessus est un exemple d'une question sur SQuAD à partir d'un passage «context» d'un article de Wikipédia. Comme nous pouvons le voir, chaque question est identifiée par un «id». De plus, nous avons une variable booléenne «is impossible» qui permet de préciser si le passage contient une réponse à la question ou non. Dans le cas oùle passage contient une réponse à la question, la variable «answer start» indique l'index du début de la réponse dans le champs «context».

3.3.2 Wikipedia

Puisque les questions proposées dans le jeu de données SQUAD sont basées sur des articles de Wikipedia, en vue d'établir un moteur de recherche, nous avons utiliséWikipédia comme base de documents. Cette dernière offre l'intégralitéde ses articles en plusieurs langues, parmi elles l'anglais. Wikipedia est disponible en ligne gratuitement en format XML1 et comprend plus de 6.1 millions d'articles [Wik, 2020].

Comme nous pouvons le voir dans la Figure 3.2, notre base de documents a une structure XML qui permet de pourvoir des informations telles que le titre de l'article, la date de création, l'identifiant unique de l'article et le plus important qui est le contenu de l'article fractionnéen sections.

3.4 Moteur de recherche MRI

Un moteur de recherche est un programme basésur la recherche d'information et qui collecte et organise un ensemble de documents afin de faciliter la quête d'un ou plusieurs documents. De base, les utilisateurs saisissent une requête sur ce qu'elles aimeraient trouver et le moteur fournit le contenu qui correspond à ce

1. https://dumps.wikimedia.org/enwiki/latest/

28

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

FIGURE 3.2: Structure XML d'un article Wikipédia

qu'elles veulent. Pour notre moteur de recherche, nous avons suivi la même philosophie. Nous nous sommes basés sur la collection exhaustive d'articles fournie par Wikipédia.

3.4.1 Pré-traitement de la base Wikipédia

Fractionnement des articles

Après avoir choisi la base de wikipédia, et afin de simplifier la manipulation de la grande quantitédes données de notre base de données, nous avons procédéà une répartition des articles de wikipédia sur trois niveaux d'arborescence de dossiers. Pour cela, chaque article sera répertoriésuivant son id unique (eg. L'article avec l'id = 00020201 sera placédans le répertoire 00/02/02/ sous le nom 00020201.xml) comme le montre la Figure 3.3.

Interprétation de la syntaxe de Wikipédia

Dans ses articles, Wikipédia utilise souvent une syntaxe spéciale nommée «WikiText»2 qui sert à maquiller ses articles (par exemple, appliquer du gras sur le mot «Bonjour» revient à écrire «»'Bonjour»'» dans ses articles en format brut), ce qui nous a causés une certaine difficulté. Afin de remédier à ce problème, nous avons

2. WikiText : Langage de balisage qui permet la mise en forme du contenu des articles de Wikipédia.

29

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

FIGURE 3.3: Arborescence des fichiers XML.

appliquéun formatage du texte en utilisant le script WikiExtractor3 qui nous a permis de nous débarrasser de la mise en page appliquée par Wikipédia.

3.4.2 Indexation des articles

Après avoir traitéles articles de Wikipédia, nous avons indexéces articles en utilisant la bibliothèque Py-Lucene. Dans cette étape, nous avons procédéà l'implémentation d'un analyseur personnalisépour notre index inversé4. Cet analyseur sert à appliquer les transformations du texte telles que la suppression des mots vides, la tokenisation, la normalisation et le stemming5 des mots de chaque article.

Pour but de faciliter la tâche de notre future module d'extraction des réponses, et afin de booster les performances de notre système en terme de temps d'exécution, au lieu de considérer les articles en eux-mêmes comme des documents, nous avons eu l'idée de considérer les sections des articles comme documents afin de peaufiner la recherche suite à une requête donnée. Pour éclaircir tout cela, nous avons illustrédans la Figure 3.4 l'exemple d'une page Wikipédia et comment l'index va considérer cet article en divisant le même article en trois documents.

3. WikiExtractor : Un script Python qui permet de convertir la mise en page appliquépar wikipédia en un text pure

sans syntaxe.

4. Index inversé: C'est une structure de données qui stocke la correspondance entre le contenu, tel que des mots ou

des chiffres, et ses emplacements dans un document ou un ensemble de documents.

5. https://en.wikipedia.org/wiki/Stemming

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

FIGURE 3.4: Schéma représentatif des sections d'un article Wikipédia

30

Notre index est constituéde 5 champs essentiels:

-- L'identifiant de l'article qui est unique à chaque article (Champs de type LongPoint).

-- Le titre de l'article (Champs de type StringField).

-- L'identifiant de la section (Champs de type LongPoint).

-- Le titre de la section (Champs de type StringField).

-- Le contenu de la section, c'est le contenu principal de chaque document (Champs de type TextField).

3.4.3 Méthodes de recherche adoptées

Pour le processus de recherche, nous avons optépour deux méthodes de recherche différentes applicables sur notre index.

1. Méthode de recherche SimpleFieldSearch : La première méthode de recherche, qui est la plus basique, sera en fait une méthode de recherche qui, après avoir extrait les mots clés d'une requête, permet de rechercher les mots clés dans le contenu des documents seulement.

31

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

2. Méthode de recherche MultifieldsSearch : Cette méthode consiste à faire une recherche sur à la fois le contenu et le titre.

3.5 Module de classification MC

Comme décrit dans la Section 2.2.3, BERT est un modèle pré-entraînébasésur le »Transfer Learning» capable de réaliser plusieurs tâches NLP. Parmi ces tâches, nous retrouvons la classification de texte. Pour notre cas, nous avons utiliséBERT Base Uncased dans le but de réduire le temps d'exécution durant les expérimentations.

FIGURE 3.5: La phase de tokenisation des entrées.

Pour ajouter une tâche de classification de texte à BERT, nous intégrons à la fois la question et le passage dans la saisie. Comme première étape, nous commençons par la tokenisation de notre jeu de données afin de le coder suivant le même format. La fonction de tokenisation parcourt les données et concatène chaque paire de Question-Passage comme illustrédans la Figure 3.5.

Chaque séquence (paire) commence par le token de classification spécial [CLS] en plus d'un autre token spécial [SEP] qui sépare les deux parties de l'entrée et permet ainsi à BERT de différencier la question et le passage. Afin que tous les tokens soient de la même taille, nous avons défini une taille maximale aux séquences d'entrée égale à 300, complétée avec un remplissage (padding) avec le mot clé[PAD] dans le cas oùla taille du passage concaténéà la question est inférieure à la taille de l'entrée fixée. BERT utilise «Segment Embeddings» afin de différencier la question du passage. Dans la Figure 3.5, A et B représentent les «Segment Embeddings» ajoutés aux tokens codés avant de les passer comme paramètres d'entrée.

32

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

FIGURE 3.6: La classification du texte avec BERT.

Le premier token de chaque séquence d'entrée de BERT est toujours un token de classification [CLS] c-à-dire qu'il est utilisépour les tâches de classification NLP de BERT [Devlin et al., 2018]. Le MC prend comme entrée la question et le passage, les passe sur les 12 couches de BERT Base et produit comme sortie une prédiction que le passage contient la réponse recherchée (Figure 3.6). La valeur de sortie est ensuite normalisée avec la fonction Sigmoid6 pour enfin avoir une classification binaire c-à-dire 1 si le passage contient la réponse et 0 sinon.

3.6 Module d'extraction de réponses MER

En ce qui concerne le module d'extraction de la réponse, nous avons mis en oeuvre un modèle qui, étant donnéune question et un passage reçu par le MC, BERT doit retourner la partie du texte correspondante à la bonne réponse. En d'autres termes, le modèle prédit le début et la fin de la réponse exacte à partir du passage donnéqui est le plus susceptible de répondre à la question. Pour ce faire, notre modèle doit passer par l'étape d'entraînement en utilisant un ensemble de données destinéà ce cas de figure. Dans ce cas, nous allons utiliser SQuAD.

Après avoir sélectionnéle passage le plus pertinent parmi ceux retournés par le MRI, le module d'extraction le prend comme entrée, accompagnépar la question posée. Comme c'était le cas pour le MC, le MER prend comme entrée la paire Question - Passage candidat tokenisée et produit en sortie la réponse jugée exacte à

6. https://fr.wikipedia.org/wiki/Sigmo·ýde (mathématiques)

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

la question donnée et qui est extraite à partir du passage. Le MER proposéa étéentraînéavec BERT Base

Uncased.

33

(a) Extraction du début de la réponse (b) Extraction de la fin de la réponse

FIGURE 3.7: Extraction du début et fin de la réponse avec BERT.

Pour chaque token dans le passage choisi, nous l'introduisons dans le classificateur de token de début/fin. L'extracteur de début/fin passe l'entrée sur les 12 couches de BERT Base et produit un vecteur de sortie (les rectangles oranges produits par la dernière couche dans la Figure 3.7) oùchaque case représente la sortie d'un mot du texte. Ce vecteur est ensuite multipliépar une matrice de début/fin (représentée dans la Figure 3.7 par des rectangles bleus/rouges). La taille de cette matrice est 768*N tel que N représente la taille du passage d'entrée. Le produit est donc un vecteur de taille N sur lequel la fonction Softmax7 est appliquée pour avoir un

nouveau vecteur de probabilités (dont la somme est égale à 1). Chaque casei du vecteur représente la probabilitéque le moti tel que i ? N représente le début/la fin de la réponse.

BERT englobe les deux modèles d'extraction de début et de fin qui s'entraàýnent séparément. Il comporte une dernière couche qui s'occupe de les fusionner pour délimiter à la fin la réponse à la question posée. Dans l'exemple illustrédans la Figure 3.7, le MER choisi le token 340 comme début de réponse et M comme fin de réponses suivant leurs probabilités.

7. https://fr.wikipedia.org/wiki/Fonction softmax

34

CHAPITRE 3. CONCEPTION ET IMPLÉMENTATION DE YOUTAQA

3.7 Déploiement du système YouTaQA

Afin d'interagir avec les utilisateurs de notre système, nous avons mis en oeuvre une application web SPA8 complète qui fournit une expérience utilisateur facile en appliquant les dernières normes UI9 et l'utilisation du Material Design 10 fourni par Google comme nous pouvons le voir dans la capture d'écran de notre interface dans la Figure 3.8. Pour cela, nous avons utilisépour le front-end un template Colorlib 11 bâtis en utilisant VueJs 12, Bootstrap13 pour le front-end et le framework python Django14 pour le back-end.

FIGURE 3.8: Capture d'écran de l'application web YouTaQA

3.8 Conclusion

Dans ce chapitre nous avons décrit l'architecture de notre système de la saisie de la question par l'utili-sateur jusqu'àl'obtention des résultats en passant par plusieurs étapes qui sont: (i) La sélection des passages pertinents, (ii) La classification de ces derniers par probabilitéet (iii) L'extraction de la réponse exacte à partir du meilleur passage choisi. Nous présenterons dans le chapitre suivant nos résultats ainsi que leurs discussions.

8. SPA (Single page application) : c'est une application qui n'a pas besoin de recharger la page dans le navigateur

pendant son utilisation.

9. UI (user interface): signifie »interface utilisateur», c'est la présentation graphique d'une application.

10. Material Design: C'est un ensemble de règles de design proposées par Google et qui s'appliquent à l'interface

graphique.

11. https://colorlib.com/wp/templates/

12. VueJs : c'est un framework pour construire des interfaces utilisateur à base de javascript.

13. Bootstrap : c'est un framework CSS pour construire des interfaces utilisateur.

14. Django : c'est un framework web gratuit écrit en Python qui sert à développer des applications web.

35

Chapitre4

Analyse et discussion des résultats

4.1 Introduction

Durant ce dernier chapitre, nous présenterons les résultats de chaque module de notre système. La deuxième partie de ce chapitre consiste à présenter les résultats globaux de notre système YouTaQA ce qui nous permettra de positionner et de comparer ce dernier avec les travaux antérieurs et de mettre en évidence la valeur ajoutée que ce système apporte à l'état de l'art de ce domaine.

4.2 Prétraitement et fractionnement des données

Comme mentionnéprécédemment, le moteur de recherche et les modules de classification et d'extraction de réponses ont étéentrainés et testésur l'ensemble de données SQUAD. Le jeu de données »Train set» est diviséen 2 parties. La première partie représente 80% du total et est utilisée pour l'entraînement des modèles de Deep Learning. Les 20% restantes représentent le »Validation set» qui est utilisépour équilibrer le modèle et choisir les bons hyper-paramètres. Tans dis que le »Test set» est utilisépour évaluer les différents modules du système et voir l'amélioration des résultats obtenus.

4.3 Résultats du module de recherche d'information MRI

Après avoir établi un premier prototype de notre système, nous l'avons testéen utilisant l'évaluateur TREC-Eval en nous appuyant sur le dataset SQuAD. Nous avons utiliséles questions présentes dans ce dernier en les considérant comme requêtes pour notre moteur de recherche et comparer ses résultats avec les passages fournis par SQuAD.

36

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

4.3.1 Méthodes de recherche employées

Nous avons lancél'évaluateur TREC-Eval avec les 4 méthodes de recherche afin de comparer les performances de chaque méthode et choisir à la fin la meilleure méthode à utiliser. Ces méthodes seront décrites dans ce qui suit.

VSM SimpleSearch : Dans cette méthode de requêtage, nous avons utiliséle modèle de classement des résultats VSM (Voir la Section 2.1.1) tout en utilisant une recherche simple des mots clés de la requête dans le contenu des articles seulement.

VSM MultiFieldsSearch : Cette méthode de recherche est basée sur la recherche multi-champs (Multi-Fields Search en anglais), c'est-à-dire la recherche des mots d'une requête est effectuée non seulement sur le contenu de l'article mais aussi sur le titre de ce dernier.

BM25 SimpleSearch : La présente méthode est basée sur une simple recherche dans le contenu des articles. Durant l'étape de classement des résultats, ici nous utilisons l'approche BM25 au lieu du VSM (Voir la Section 2.1.1).

BM25 MultiFieldsSearch : Là, nous avons implémentéune méthode de recherche qui emploie la recherche multi-champs (recherche appliquée dans le contenu et le titre des articles au même temps). Làaussi, nous utilisons l'approche BM25.

4.3.2 Discussion des performances des méthodes de recherche

Après avoir lancél'évaluation de toutes les méthodes, nous avons tracédes graphes et des histogrammes afin de comparer les résultats.

Histogrammes MAP, MRR et R-Précision

Les histogrammes dans la Figure 4.1 représenent le MRR, la MAP et le R Précision de chaque méthode de recherche. Nous remarquons d'abord que toutes les méthodes qui utilisent la métrique BM25 comme métrique de classement des documents surpassent de loin les méthodes VSM en terme de précision moyenne. Cela dit, la métrique BM25 étant plus sophistiquée et étant plus précise, permet une recherche plus performante et plus assurée.

Maintenant, après avoir comparéles deux métriques de classement, nous passons directement à la comparaison des méthodes qui utilisent BM25. Làencore, nous remarquons la supérioritéde la méthode de recherche BM25 SimpleSearch.

37

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

(a) Graphe du MRR des résultats. (b) Graphe du MAP des résultats.

(c) Graphe du R-Précision des résultats.

FIGURE 4.1: Histogrammes d'évaluation du Module de Recherche d'Information.

Une chose de plus à remarquer dans l'histogramme du MRR dans la Figure 4.1, la méthode de recherche BM25 SimpleSearch a un score MRR et MAP égal à 0.20. Ceci dit, cette méthode permet d'avoir en moyenne le bon document parmi les 5 premiers documents retournés, ce qui, d'après notre choix, fournit en général toujours le bon document que nous cherchons parmi les 5 premiers documents envoyés au classifieur.

Graphes Précision, Rappel et précision-rappel

Ces autres métriques viennent confirmer ce que nous avons constatéprécédemment.

Pour les graphes de la précision@K et rappel@K présentés dans la Figure 4.2, oùK représente le nombre de résultats retournés suite à une recherche, permettent d'affirmer les performances supérieures réalisées par la méthode BM25 SimpleSearch.

Par ailleurs, nous constatons une baisse considérable de la précision en augmentant le nombre K de résultats

retournés. Quant au rappel, il augmente en augmentant le nombre K de résultats retournés. Cela est justifiépar la façon dont la précision et le rappel sont calculés. D'après la définition des deux métriques, la précision

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

38

(a) Graphe du Précision-Rappel des résultats. (b) Graphe du Précision@K des résultats.

(c) Graphe du Rappel@K des résultats.

FIGURE 4.2: Graphes d'évaluation du Module de Recherche d'Information.

représente le pourcentage de documents prédits correctement par rapport au nombre de documents erronés retournés. Le rappel lui, implique le pourcentage des documents corrects qui sont donnés sans se préoccuper du nombre de documents erronés retournés. Afin de remédier à tout ça, nous avons établi un nouveau graphe présent dans la Figure 4.2 qui met en valeur la relation précision-rappel à chaque valeur de K. Encore une fois, la méthode BM25 SimpleSearch Figure comme étant la meilleure méthode de recherche en obtenant un rapport précision-rappel toujours au-dessus des autres méthodes.

À la fin, après avoir comparéles différentes méthodes de recherche présentées antérieurement, nous sortons avec une conclusion qui permet de passer à l'étape suivante qui est le classifieur des documents tout en lui fournissant 5 documents. Le choix du nombre de documents passés au classifieur vient suite aux performances affichées par la méthode de recherche BM25 SimpleSearch, qui en moyenne, permet d'avoir le bon document parmi les 5 premiers documents retournés par notre moteur de recherche (MRR = 0.20).

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

4.4 Résultats du module de classification MC

Après la mise en place et obtention des passages pertinents du moteur de recherche , il est nécessaire àprésent, de tester le MC et suivre l'évolution du MRR à l'aide d'un ensemble d'expérimentations sur le même

dataset »Test Set» utiliséà l'étape précédente, oùnous vérifions si le système fonctionne, tout en classifiant correctement les réponses acquises. L'évaluation du modèle a étéfaite sur la base de 2 métriques qui sont: Loss (Erreur) et Accuracy. Ci-dessous les graphes des résultats obtenus.

(a) Accuracy (b) Loss

FIGURE 4.3: Graphes d'évaluation du Module de Classification.

D'après la Figure 4.3, nous remarquons que l'Accuracy augmente avec le nombre d'époques, jusqu'àl'Epoch (10), avec un pourcentage de 92% durant l'apprentissage (Training) et 87% sur le Validation dataset. De même, l'erreur d'apprentissage (Training) et de la Validation varient avec le nombre d'Epochs, oùle Training Loss diminue jusqu'àl'atteinte de 0.54 à la fin de cette étape et le Validation Loss se stabilise au bout de 10 Epochs, dans la valeur 0.57.

39

(a) Training (b) Validation

40

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

(c) Test

FIGURE 4.3: Matrices de confusion du MC.

D'après la figure 4.3, nous remarquons qu'en fin d'apprentissage, la totalitédes réponses mal classées est de 7 773 réponses, un taux d'erreur de 9% et la totalitédes réponses bien classées est de 109 964, donc un taux de précision de 93%. Nous notons également que le nombre de réponses mal classées durant la validation est de 1992 réponses ce qui est égal à un taux d'erreur de 13% et le nombre de réponses bien classées est de 109 964, de ce fait, un taux de précision de 95%. Le MC a atteint un taux d'erreur et une précision égales à 11% et 91% resp. sur le Test Set.

4.5 Résultats du module d'extraction des réponses MER

Dans cette section, nous allons discuter l'exactitude des résultats du MER. Pour ce faire, nous avons calculéles deux métriques : Loss (Erreur) et Accuracy. Durant l'apprentissage et la validation du modèle, nous avons tracéles courbes pour les deux sous modèles de détection du début et de fin de réponse.

(a) Accuracy (b) Loss

FIGURE 4.4: Graphes d'évaluation du Module d'Extraction de Réponse (Start).

41

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

Nous observons sur les graphiques figures 4.4 que la courbe de Training Accuracy pour la détection du début a atteint une valeur de 75% au bout de 14 Epochs, tandis que la Validation Accuracy s'est stabilisée à partir du 9ème Epoch à un pourcentage de 70%. Nous enregistrons en parallèle la diminution du Training Loss de ce modèle jusqu'àla valeur 0.75 au 15ème Epoch et le Validation Loss qui s'est figéà la valeur 1.12 à partir du 8ème Epoch.

(a) Accuracy (b) Loss

FIGURE 4.5: Graphes d'évaluation du Module d'Extraction de Réponse (End).

Les courbes de Accuracy et Loss du deuxième sous-modèle de détection de fin sont présentées dans la figure 4.5. Nous remarquons dans ces dernières que la détection du début sur la Training Accuracy a atteint une valeur de 80% après 14 epochs d'apprentissage. Tandis que la Validation Accuracy a accru jusqu'à73% au 9ème Epoch. Nous notons également que le Training Loss de ce modèle a diminuéjusqu'àla valeur 0.75 au 15ème Epoch et le Validation Loss est 1.12 dès le 8ème Epoch.

Dans le but de tester l'efficacitéde notre modèle, nous avons utilisél'évaluateur proposépar SQUAD 1, qui prend comme entrée un fichier contenant les réponses extraites à partir des contextes de SQUAD pour chaque question du Test Set, et donne en sortie les métriques F1-Score et Exact Match.les résultats enregistrés sont les suivant :

-- »exact»: 86.85,

-- »f1» : 91.58,

-- »total» : 11873,

-- »HasAns total» : 5928.

1. https://rajpurkar.github.io/SQuAD-explorer/

42

CHAPITRE 4. ANALYSE ET DISCUSSION DES RÉSULTATS

Les résultats présentés ci-dessus montrent que le Test Set contient 5928 questions ayant une réponse dans leurs contextes d'un total de 11873 questions. Notre MER a pu atteindre un Exact Match de 87% et un F1-Score de 92%.

4.6 Déploiement et test du système

Les résultats obtenus des questions sans réponses sont liés directement au manque d'informations sur la base de documents Wikipédia car il y a des questions qui sont subjectives comme l'opinion sur un sujet ou plus encore des questions de confirmation (les questions qui ont comme réponses «Oui» ou «Non»). De plus, et comme nous avons vu précédemment, chaque module présente une marge d'erreur à son niveau. Cela dit, la partie des résultats erronés obtenus sont dus à ces imperfections.

FIGURE 4.6: Exemple d'utilisation du système YouTaQA

Nous estimons que notre système affiche des performances globales acceptables en prenant en compte la marge d'erreur et les limites liées à la source d'information de notre système ainsi qu'un temps d'exécution moyen de 5 6 secondes seulement.

4.7 Conclusion

Dans ce dernier chapitre, nous avons présentéles résultats donnés par l'implémentation de notre architecture présentée dans le chapitre précédent. Nous avons testénos modules et avons présentéet discutéles résultats obtenus en calculant des métriques d'évaluation et en présentant des graphes afin de faciliter la comparaison des expérimentations.

43

Conclusion Générale

Le travail qui nous a étéconfiés dans le cadre de notre projet de fin d'études, consiste à concevoir et réaliser un système complet de questions-réponses basésur la recherche d'information.

Le but principal de notre système était de fournir une solution complète qui, après l'identification des problèmes rencontrés dans les travaux précédents, facilitera la réponse aux questions des utilisateurs. La tâche principale des systèmes QAS existants étant de répondre aux questions en exigeant tout de même un passage dans lequel il extrairait la réponse, notre système permettra aux utilisateurs d'automatiser la fourniture du passage en utilisant un moteur de recherche performant et rapide.

Nous nous sommes appuyés sur l'application des méthodes innovantes basées sur le Deep Learning afin de décrire et éliminer avec succès les anomalies et les problèmes que nous avons rencontrés au fil des étapes du développement de la solution.

Pour but de réaliser le pipeline complet de notre système nomméYouTaQA, nous avons tout d'abord implémentéun moteur de recherche en utilisant la base de documents « Wikipédia » comme source d'in-formations, tout en considérant chaque section d'article comme étant un document en lui-même afin d'affiner les résultats de recherche. Ensuite, en se basant sur le « Deep Learning» et spécialement le modèle BERT qui permet d'atteindre l'état de l'art à l'heure oùcette thèse a étérédigée, nous avons bâti un module de classification de documents qui sert à reclasser les passages résultants de notre moteur de recherche en lui fournissant la question et les 5 meilleurs passages, cela nous permet à chaque fois d'identifier le passage le plus probable et d'avoir une réponse exacte à une question donnée.

Étant notre Classifieur basésur le « Deep Learning », nous avons étéamenés à faire un entraînement à ce dernier, ce qui nous a poussés à choisir le DataSet de SQUAD réalisépar l'universitéde Stanford et qui fournit plus de 150.000 paires de question-passage et qui précise à chaque paire si le passage contient une réponse à la

44

CONCLUSION GÉNÉRALE

question. Après l'avoir entraîné, notre Classifieur permet désormais des performances convergentes vers l'état de l'art actuel en affichant une Accuracy égale à 87% et une Précision de 89% sur le Test Set ce qui est plus qu'acceptable en prenant compte la difficultédes tâches NLP et de la classification du texte en particulier.

Ensuite, et après avoir choisi le meilleur passage susceptible à contenir une réponse à la question posée par l'utilisateur, la tàache la plus importante était d'extraire la réponse exacte à cette question, d'oùle module d'extraction des réponses MER a étéréaliséafin d'accomplir cette tâche. Le module d'extraction des réponses a étéimplémentéen utilisant le modèle BERT et a étéentraàýnéen s'appuyant sur le DataSet SQuAD . Le module MER affiche un F1-Score égal à 92% et un Exact Match de 87% en le testant sur plus de 5 000 questions, ce score représente une contribution qui pourrait être ajoutée à la littérature.

Afin de tout concrétiser, et de fournir une expérience utilisateur digne d'un système haut niveau, nous avons implémentéune application web moderne qui satisfait les normes internationales de design.

Perspectives

Les travaux rapportés dans cette thèse ne composent qu'un simple morceau dans un puzzle de travaux supplémentaires qui doivent être réalisés pour aboutir à un système parfait. Pour cela, les perspectives envisageables afin d'améliorer ce travail sont multiples, nous citons:

-- Améliorer notre moteur de recherche en employant des méthodes basées sur le Deep Learning.

-- Implémenter un module de mise à jour automatique qui permet d'actualiser la base des documents

Wikipédia régulièrement afin d'envisager de répondre aux questions liées aux nouveaux sujets.

-- Mettre en oeuvre la version arabe et française de notre système YouTaQA pour but d'atteindre une plus

large communauté.

-- Implémenter une API afin de faciliter l'utilisation du noyau YouTaQA dans des applications tierces. Pour finir, le savoir est la seule matière qui s'accroisse quand on la partage, comme le dit Socrate, sur ce, nous avons mis à disposition notre code source sur GitHub : https://github.com/rbouadjenek/YouTaQA.

45

Bibliographie

[RNN, 2017] (2017). Basic architecture of rnn and lstm. https://pydeeplearning.weebly.com/blog/ basic-architecture-of-rnn-and-lstm. Accessed: 2020-07-25.

[VSM, 2017] (2017). information retrieval document search using vec-

tor space model in r. http://www.dataperspective.info/2017/11/

information-retrieval-document-search-using-vector-space-model-in-r.html. Ac-
cessed: 2020-07-29.

[Tra, 2018] (2018). The illustrated transformer. https://developpaper.com/

the-calculation-of-self-attention-in-bert-series/. Accessed: 2020-07-25.

[Fin, 2019] (2019). Ideas on how to fine-tune a pre-trained mo-

del in pytorch. https://medium.com/udacity-pytorch-challengers/
ideas-on-how-to-fine-tune-a-pre-trained-model-in-pytorch-184c47185a20.

[Sel, 2020] (2020). The calculation of self attention in bert series. https://developpaper.com/ the-calculation-of-self-attention-in-bert-series/. Accessed: 2020-07-25.

[Wik, 2020] (2020). Wikipedia :size comparisons. https://en.wikipedia.org/wiki/Wikipedia:Size_ comparisons. Accessed: 2020-07-25.

[Abadi et al., 2016] Abadi, M., Barham, P., Chen, J., Chen, Z., Davis, A., Dean, J., Devin, M., Ghemawat, S., Irving, G., Isard, M., et al. (2016). Tensorflow : A system for large-scale machine learning. In 12th {USENIX} symposium on operating systems design and implementation ({OSDI} 16), pages 265-283.

[Adamic et al., 2008] Adamic, L. A., Zhang, J., Bakshy, E., and Ackerman, M. S. (2008). Knowledge sharing and yahoo answers. In Proceeding of the 17th international conference on World Wide Web - WWW '08. ACM Press.

[Ahn et al., 2004] Ahn, D., Jijkoun, V., Mishne, G., M·uller, K., Rijke, M., and Schlobach, S. (2004). Using wikipedia at the trec qa track.

46

Bibliographie

[Baeza-Yates and Ribeiro-Neto, 2011] Baeza-Yates, R. A. and Ribeiro-Neto, B. A. (2011). Modern Information Retrieval - the concepts and technology behind search, Second edition.

[Bahdanau et al., 2015] Bahdanau, D., Cho, K., and Bengio, Y. (2015). Neural machine translation by jointly learning to align and translate.

[Banko et al., 2002] Banko, M., Brill, E., Dumais, S., and Lin, J. (2002). Askmsr : Question answering using the worldwide web. In Proceedings of 2002 AAAI Spring Symposium on Mining Answers from Texts and Knowledge Bases, pages 7-9.

[Baudis, 2015] Baudis, P. (2015). Yodaqa : a modular question answering system pipeline. In POSTER 201519th International Student Conference on Electrical Engineering, pages 1156-1165.

[Baudis and Sediv'y, 2015] Baudis, P. and Sediv'y, J. (2015). Modeling of the question answering task in the yo-daqa system. In Proceedings of the 6th International Conference on Experimental IR Meets Multilinguality, Multimodality, and Interaction - Volume 9283, CLEF'15, page 1156-1165, Berlin, Heidelberg. Springer-Verlag.

[Bauer and Berleant, 2012] Bauer, M. A. and Berleant, D. (2012). Usability survey of biomedical question answering systems. Human Genomics, 6(1).

[Beitzel et al., 2009] Beitzel, S. M., Jensen, E. C., and Frieder, O. (2009). MAP, pages 1691-1692. Springer US, Boston, MA.

[Benamara and Saint-Dizier, 2003] Benamara, F. and Saint-Dizier, P. (2003). Webcoop : A cooperative question-answering system on the web.

[Berant et al., 2013] Berant, J., Chou, A., Frostig, R., and Liang, P. (2013). Semantic parsing on Freebase from question-answer pairs. In Proceedings of the 2013 Conference on Empirical Methods in Natural Language Processing, pages 1533-1544, Seattle, Washington, USA. Association for Computational Linguistics.

[Bian et al., 2017] Bian, W., Li, S., Yang, Z., Chen, G., and Lin, Z. (2017). A compare-aggregate model with dynamic-clip attention for answer selection. In Proceedings of the 2017 ACM on Conference on Information and Knowledge Management, CIKM '17, page 1987-1990, New York, NY, USA. Association for Computing Machinery.

[Blier et al., 2018] Blier, L., Wolinski, P., and Ollivier, Y. (2018). Learning with random learning rates.

[Bollacker et al., 2008] Bollacker, K., Evans, C., Paritosh, P., Sturge, T., and Taylor, J. (2008). Freebase : A collaboratively created graph database for structuring human knowledge. In Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data, SIGMOD '08, page 1247-1250, New York, NY, USA. Association for Computing Machinery.

[Bordes et al., 2015] Bordes, A., Usunier, N., Chopra, S., and Weston, J. (2015). Large-scale simple question answering with memory networks. ArXiv, abs/1506.02075.

47

Bibliographie

[Bouadjenek et al., 2016] Bouadjenek, M. R., Hacid, H., and Bouzeghoub, M. (2016). Social networks and information retrieval, how are they converging? a survey, a taxonomy and an analysis of social information retrieval approaches and platforms. Information Systems, 56.

[Bouma G., 2005] Bouma G., Mur J., v. N. G. (2005). Reasoning over dependency relations.

[Brill et al., 2002] Brill, E., Dumais, S., and Banko, M. (2002). An analysis of the AskMSR question-answering system. In Proceedings of the 2002 Conference on Empirical Methods in Natural Language Processing (EMNLP 2002), pages 257-264. Association for Computational Linguistics.

[Buscaldi and Rosso, 2006] Buscaldi, D. and Rosso, P. (2006). Mining knowledge from wikipedia for the question answering task. In In Proceedings of the 5th International Conference on Language Resources and Evaluation (LREC'06, page 727-730.

[Cabrio et al., 2012] Cabrio, E., Cojan, J., Aprosio, A. P., Magnini, B., Lavelli, A., and Gandon, F. (2012). Qakis : an open domain qa system based on relational patterns.

[Cao et al., 2011] Cao, Y., Liu, F., Simpson, P., Antieau, L., Bennett, A., Cimino, J. J., Ely, J., and Yu, H. (2011). AskHERMES : An online question answering system for complex clinical questions. Journal of Biomedical Informatics, 44(2) :277-288.

[Chen et al., 2016] Chen, D., Bolton, J., and Manning, C. D. (2016). A thorough examination of the cnn/daily mail reading comprehension task. CoRR, abs/1606.02858.

[Chen et al., 2017] Chen, D., Fisch, A., Weston, J., and Bordes, A. (2017). Reading wikipedia to answer open-domain questions. arXiv preprint arXiv :1704.00051.

[Chen et al., 2001] Chen, K., Kvasnicka, V., Kanen, P., and Haykin, S. (2001). Feedforward neural network methodology. IEEE Transactions on Neural Networks, 12(3) :647-648.

[Chollet et al., 2015] Chollet, F. et al. (2015). Keras.

[Craswell, 2009a] Craswell, N. (2009a). Mean Reciprocal Rank, pages 1703-1703. Springer US, Boston, MA. [Craswell, 2009b] Craswell, N. (2009b). R-Precision, pages 2453-2453. Springer US, Boston, MA. [Craswell, 2009c] Craswell, N. (2009c). R-Precision, pages 2453-2453. Springer US, Boston, MA.

[Dalip et al., 2013] Dalip, D. H., Gonçalves, M. A., Cristo, M., and Calado, P. (2013). Exploiting user feedback to learn to rank answers in q&a forums. In Proceedings of the 36th international ACM SIGIR conference on Research and development in information retrieval - SIGIR '13. ACM Press.

[Devlin et al., 2018] Devlin, J., Chang, M.-W., Lee, K., and Toutanova, K. (2018). Bert : Pre-training of deep bidirectional transformers for language understanding.

[Diekema et al., 2004] Diekema, A. R., Yilmazel, O., and Liddy, E. D. (2004). Evaluation of restricted domain question-answering systems. In Proceedings of the Conference on Question Answering in Restricted Domains, pages 2-7, Barcelona, Spain. Association for Computational Linguistics.

48

Bibliographie

[ElKafrawy et al., 2018] ElKafrawy, P. M., Sauber, A. M., and Sabry, N. A. (2018). Semantic question answering system using dbpedia. In Lecture Notes in Computer Science, pages 821-832. Springer International Publishing.

[Fader et al., 2014] Fader, A., Zettlemoyer, L., and Etzioni, O. (2014). Open question answering over curated and extracted knowledge bases. In Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD '14, page 1156-1165, New York, NY, USA. Association for Computing Machinery.

[Ferrucci et al., 2010] Ferrucci, D., Brown, E., Chu-Carroll, J., Fan, J., Gondek, D., Kalyanpur, A., Lally, A., Murdock, J. W., Nyberg, E., Prager, J., Schlaefer, N., and Welty, C. (2010). Building watson : An overview of the deepqa project. AI Magazine, 31 :59-79.

[Garg et al., 2019] Garg, S., Vu, T., and Moschitti, A. (2019). Tanda : Transfer and adapt pre-trained transformer models for answer sentence selection.

[Gazan, 2016] Gazan, R. (2016). Seven words you can't say on answerbag. In Proceedings of the 27th ACM Conference on Hypertext and Social Media - HT '16. ACM Press.

[Green et al., 1961] Green, B. F., Wolf, A. K., Chomsky, C., and Laughery, K. (1961). Baseball. In Papers presented at the May 9-11, 1961, western joint IRE-AIEE-ACM computer conference on - IRE-AIEE-ACM '61 (Western). ACM Press.

[Greff et al., 2016] Greff, K., Srivastava, R. K., Koutn'ýk, J., Steunebrink, B. R., and Schmidhuber, J. (2016). Lstm : A search space odyssey. IEEE transactions on neural networks and learning systems, 28(10) :2222- 2232.

[Harabagiu et al., 2001] Harabagiu, S., Moldovan, D., Pasca, M., Mihalcea, R., Surdeanu, M., Bunescu, R., Girju, R., Rus, V., and Morarescu, P. (2001). Falcon: Boosting knowledge for question answering.

[Hermann et al., 2015] Hermann, K. M., Kocisk'y, T., Grefenstette, E., Espeholt, L., Kay, W., Suleyman, M., and Blunsom, P. (2015). Teaching machines to read and comprehend. CoRR, abs/1506.03340.

[Hewlett et al., 2016] Hewlett, D., Lacoste, A., Jones, L., Polosukhin, I., Fandrianto, A., Han, J., Kelcey, M., and Berthelot, D. (2016). WikiReading : A novel large-scale language understanding task over Wikipedia. In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1 : Long Papers), pages 1535-1545, Berlin, Germany. Association for Computational Linguistics.

[Hill et al., 2015] Hill, F., Bordes, A., Chopra, S., and Weston, J. (2015). The goldilocks principle : Reading children's books with explicit memory representations. CoRR, abs/1511.02301.

[Hochreiter, 1998] Hochreiter, S. (1998). The vanishing gradient problem during learning recurrent neural nets and problem solutions. International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 06(02) :107-116.

49

Bibliographie

[Iyyer et al., 2014] Iyyer, M., Boyd-Graber, J., Claudino, L., Socher, R., and DauméIII, H. (2014). A neural network for factoid question answering over paragraphs. In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pages 633-644, Doha, Qatar. Association for Computational Linguistics.

[Jain et al., 2018] Jain, A., Kulkarni, G., and Shah, V. (2018). Natural language processing. International Journal of Computer Sciences and Engineering, 6 :161-167.

[Kaisser, 2005] Kaisser, M. (2005). Qualim at trec 2005 : Web-question answering with framenet. In TREC.

[Katz et al., 2002] Katz, B., Felshin, S., Yuret, D., Lin, J., Marton, G., McFarland, A., and Temelkuran, B. (2002). Omnibase : Uniform access to heterogeneous data for question answering. pages 230-234.

[Kolomiyets and Moens, 2011a] Kolomiyets, O. and Moens, M.-F. (2011a). A survey on question answering technology from an information retrieval perspective. Information Sciences, 181(24) :5412-5434.

[Kolomiyets and Moens, 2011b] Kolomiyets, O. and Moens, M.-F. (2011b). A survey on question answering technology from an information retrieval perspective. Information Sciences, 181(24) :5412-5434.

[Kowsari et al., 2019] Kowsari, K., Meimandi, K. J., Heidarysafa, M., Mendu, S., Barnes, L. E., and Brown, D. E. (2019). Text classification algorithms : A survey. CoRR, abs/1904.08067.

[Kumaran and Carvalho, 2009] Kumaran, G. and Carvalho, V. R. (2009). Reducing long queries using query quality predictors. In Proceedings of the 32nd International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR '09, page 564-571, New York, NY, USA. Association for Computing Machinery.

[Kwok et al., 2001] Kwok, C., Etzioni, O., and Weld, D. S. (2001). Scaling question answering to the web. ACM Trans. Inf. Syst., 19(3) :242-262.

[Lan et al., 2019] Lan, Z., Chen, M., Goodman, S., Gimpel, K., Sharma, P., and Soricut, R. (2019). Albert: A lite bert for self-supervised learning of language representations.

[Lee et al., 2006] Lee, M., Cimino, J., Zhu, H., Sable, C., Shanker, V., Ely, J., and Yu, H. (2006). Beyond information retrieval--medical question answering. AMIA Annu Symp Proc, pages 469-473.

[Leskovec et al., 2014] Leskovec, J., Rajaraman, A., and Ullman, J. D. (2014). Finding Similar Items, page 68-122. Cambridge University Press, 2 edition.

[Lopez et al., ] Lopez, V., Motta, E., Sabou, M., and Fernandez, M. Poweraqua : A multi-ontology based question answering system-v1.

[Loshchilov and Hutter, 2017] Loshchilov, I. and Hutter, F. (2017). Decoupled weight decay regularization. arXiv preprint arXiv :1711.05101.

[Mervin, 2013] Mervin, R. (2013). An overview of question answering system. 1.

50

Bibliographie

[Moldovan et al., 1999] Moldovan, D., Harabagiu, S., Pasca, M., Mihalcea, R., Goodrum, R., Girju, R., and Rus, V. (1999). Lasso : A tool for surfing the answer net.

[Moldovan et al., 2003] Moldovan, D., Pasca, M., Harabagiu, S., and Surdeanu, M. (2003). Performance issues and error analysis in an open-domain question answering system. ACM Transactions on Information Systems (TOIS), 21(2) :133-154.

[Molla Aliod and Gonz'alez, 2007] Molla Aliod, D. and Gonz'alez, J. (2007). Question answering in restricted domains : An overview. Computational Linguistics, 33 :41-61.

[Nam et al., 2009] Nam, K. K., Ackerman, M. S., and Adamic, L. A. (2009). Questions in, knowledge in? In Proceedings of the 27th international conference on Human factors in computing systems - CHI 09. ACM Press.

[Ojokoh and Adebisi, 2019] Ojokoh, B. and Adebisi, E. (2019). A review of question answering systems. Journal of Web Engineering, 17 :717-758.

[Olvera-Lobo and Gutiérrez-Artacho, 2011] Olvera-Lobo, M.-D. and Gutiérrez-Artacho, J. (2011). Multilingual question-answering system in biomedical domain on the web : An evaluation. In Multilingual and Multimodal Information Access Evaluation, pages 83-88. Springer Berlin Heidelberg.

[Olvera-Lobo and Gutiérrez-Artacho, 2011] Olvera-Lobo, M. D. and Gutiérrez-Artacho, J. (2011). Open- vs. restricted-domain qa systems in the biomedical field. Journal of Information Science, 37 :152-162.

[Pan and Yang, 2010] Pan, S. J. and Yang, Q. (2010). A survey on transfer learning. ieee transactions on knowledge and data engineering. 22 (10) : 1345, 1359.

[Paszke et al., 2019] Paszke, A., Gross, S., Massa, F., Lerer, A., Bradbury, J., Chanan, G., Killeen, T., Lin, Z., Gimelshein, N., Antiga, L., et al. (2019). Pytorch : An imperative style, high-performance deep learning library. In Advances in neural information processing systems, pages 8026-8037.

[Qaiser and Ali, 2018] Qaiser, S. and Ali, R. (2018). Text mining: Use of tf-idf to examine the relevance of words to documents. International Journal of Computer Applications, 181.

[Radford et al., 2018] Radford, A., Narasimhan, K., Salimans, T., and Sutskever, I. (2018). Improving language understanding by generative pre-training.

[Rajpurkar et al., 2016] Rajpurkar, P., Zhang, J., Lopyrev, K., and Liang, P. (2016). Squad: 100, 000+ questions for machine comprehension of text. CoRR, abs/1606.05250.

[Reddy and Madhavi, 2017] Reddy, A. C. O. and Madhavi, K. (2017). A survey on types of question answering system. IOSR-JCE, 19(6) :19-23.

[Richardson et al., 2013] Richardson, M., Burges, C. J., and Renshaw, E. (2013). MCTest : A challenge dataset for the open-domain machine comprehension of text. In Proceedings of the 2013 Conference on Empiri-

51

Bibliographie

cal Methods in Natural Language Processing, pages 193-203, Seattle, Washington, USA. Association for Computational Linguistics.

[Robertson and Zaragoza, 2009] Robertson, S. and Zaragoza, H. (2009). The probabilistic relevance framework: Bm25 and beyond. Foundations and Trends in Information Retrieval, 3 :333-389.

[Rodrigues and Milic-Frayling, 2009] Rodrigues, E. M. and Milic-Frayling, N. (2009). Socializing or knowledge sharing? In Proceeding of the 18th ACM conference on Information and knowledge management - CIKM '09. ACM Press.

[Ryu et al., 2014] Ryu, P.-M., Jang, M.-G., and Kim, H.-K. (2014). Open domain question answering using wikipedia-based knowledge model. Inf. Process. Manage., 50(5) :683-692.

[Sak et al., 2014] Sak, H., Senior, A. W., and Beaufays, F. (2014). Long short-term memory recurrent neural network architectures for large scale acoustic modeling.

[Seo et al., 2016] Seo, M., Kembhavi, A., Farhadi, A., and Hajishirzi, H. (2016). Bidirectional attention flow for machine comprehension.

[Shortliffe, 1977] Shortliffe, E. (1977). Mycin : A knowledge-based computer program applied to infectious diseases*. Proceedings / the ... Annual Symposium on Computer Application [sic] in Medical Care. Symposium on Computer Applications in Medical Care.

[Sun et al., 2015] Sun, H., Ma, H., Yih, W.-t., Tsai, C.-T., Liu, J., and Chang, M.-W. (2015). Open domain question answering via semantic enrichment. In Proceedings of the 24th International Conference on World Wide Web, WWW '15, page 1045-1055, Republic and Canton of Geneva, CHE. International World Wide Web Conferences Steering Committee.

[Tay et al., 2018] Tay, Y., Tuan, L. A., and Hui, S. C. (2018). Hyperbolic representation learning for fast and efficient neural question answering. In Proceedings of the Eleventh ACM International Conference on Web Search and Data Mining - WSDM '18. ACM Press.

[Teufel, 2007] Teufel, S. (2007). An Overview of Evaluation Methods in TREC Ad Hoc Information Retrieval and TREC Question Answering, volume 37, pages 163-186.

[Ting, 2010] Ting, K. M. (2010). Precision and Recall, pages 781-781. Springer US, Boston, MA.

[Vargas-Vera and Motta, 2004] Vargas-Vera, M. and Motta, E. (2004). Aqua - ontology-based question answering system. In Monroy, R., Arroyo-Figueroa, G., Sucar, L. E., and Sossa, H., editors, MICAI 2004 : Advances in Artificial Intelligence, pages 468-477, Berlin, Heidelberg. Springer Berlin Heidelberg.

[Vaswani et al., 2017] Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, L., and Polosukhin, I. (2017). Attention is all you need.

52

Bibliographie

[Voita et al., 2019] Voita, E., Talbot, D., Moiseev, F., Sennrich, R., and Titov, I. (2019). Analyzing multi-head self-attention : Specialized heads do the heavy lifting, the rest can be pruned. arXiv preprint arXiv :1905.09418.

[Voorhees and Tice, 2000] Voorhees, E. and Tice, D. (2000). The trec-8 question answering track evaluation. Proceedings of the 8th Text Retrieval Conference.

[Wang et al., 2018] Wang, A., Singh, A., Michael, J., Hill, F., Levy, O., and Bowman, S. (2018). GLUE : A multi-task benchmark and analysis platform for natural language understanding. In Proceedings of the 2018 EMNLP Workshop BlackboxNLP : Analyzing and Interpreting Neural Networks for NLP, pages 353-355, Brussels, Belgium. Association for Computational Linguistics.

[Wong, 2007] Wong, W. (2007). Practical approach to knowledge-based question answering with natural language understanding and advanced reasoning.

[Woods, 1973] Woods, W. A. (1973). Progress in natural language understanding. In Proceedings of the June 4-8, 1973, national computer conference and exposition on - AFIPS '73. ACM Press.

[yacine, 2018] yacine, D. (2018). Recherche d'information: Prétraitement et indexation.

[Yang et al., 2015] Yang, Y., Yih, W.-t., and Meek, C. (2015). WikiQA : A challenge dataset for open-domain question answering. In Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pages 2013-2018, Lisbon, Portugal. Association for Computational Linguistics.

[Yang et al., 2019] Yang, Z., Dai, Z., Yang, Y., Carbonell, J., Salakhutdinov, R., and Le, Q. V. (2019). Xlnet : Generalized autoregressive pretraining for language understanding.

[Yoon et al., 2019a] Yoon, S., Dernoncourt, F., Kim, D., Bui, T., and Jung, K. (2019a). A compare-aggregate model with latent clustering for answer selection. pages 2093-2096.

[Yoon et al., 2019b] Yoon, S., Dernoncourt, F., Kim, D. S., Bui, T., and Jung, K. (2019b). A compare-aggregate model with latent clustering for answer selection. In Proceedings of the 28th ACM International Conference on Information and Knowledge Management, CIKM '19, page 2093-2096, New York, NY, USA. Association for Computing Machinery.

[Yu et al., 2018] Yu, A. W., Dohan, D., Luong, M.-T., Zhao, R., Chen, K., Norouzi, M., and Le, Q. V. (2018). Qanet : Combining local convolution with global self-attention for reading comprehension.

[Zhang et al., 2020] Zhang, Z., Yang, J., and Zhao, H. (2020). Retrospective reader for machine reading comprehension.

[Zheng, 2003] Zheng, Z. (2003). Question answering using web news as knowledge base. In Proceedings of the Tenth Conference on European Chapter of the Association for Computational Linguistics - Volume 2, EACL '03, page 251-254, USA. Association for Computational Linguistics.

53

Abstract

Users' need for comfort and the demand to have accurate answers to their questions are present nowadays which has given a new purpose to artificial intelligence. The best known search engines such as Google tend to offer brief answers to so-called »factoid» questions. This task is considered difficult in terms of the complexity of the queries and even their answers which can be the combination of several passages.

For this, in this thesis, our goal is based on the design and implementation of a Question-Answering system that can overcome the difficulties mentioned above and that is able to answer questions in several areas accurately and precisely using the Wikipedia knowledge base. Our system named YouTAQA starts by collecting the passages that can answer the query entered by the user and ends by extracting the start and end of the exact answer using Deep Learning. That being said, our system is capable of doing the complete pipeline, from collecting the relevant passages, to extracting the final answer requiring only the question as input. The Deep Learning modules of our system were implemented using the pre-trained BERT model which has been designed to perform various NLP tasks.

Experiments on the dataset have demonstrated the effectiveness of the proposed method and the results of the comparison have shown that our architecture improved the Question-Answering domain.

Keywords: Information Retrieval, Deep Learning, Natural Language Processing, Transfer Learning.

P~.t

~:'w1 ·
· w?w oehtl·F#177; Tqy' ûA,A>) Ylà wO.....1A~ TbAWm1 T~Irl·yd~tsmIT~A>

TM~ T
·r`m1 .1..2-b1 ûA
·r~ TMS
·i TMym.3 .·àAnW}1 °A
·@l A3/4d§d. A3/4ARr ûWài ·t1 rRA.2,1

·tl Ah3A4?) Yt~ Tl·F#177;1 dyq`~ "."4->
· · Tb`} Tmhm1 £@ rbt`3 .z~w 'L'AtA?) oe§dq~ Yl TM?w?

3/4

.T-.'w-,4 dà · AA-z  wk3  i ·k

~lOEt( centsnk Tl·F#177;l Ylà T.0.>2
·
A\ú @yfn3 oeymO.3 Ylà An
·d dmt`§ , r
·@mI £@ ·
· , I@h

· 1di.tFAt T'd, ûAs.m1 · d§d`1 ·
· Tl·F#177;l Ylà T.0.,31 Ylà C AqI £®ài Cw
·@mI ûA,w`OI Ylà 1s1 Ylà TiA>3l Ahnkm§ ·t1 %oVAqm1%oym,.tu YouTAQA Ymsm1 AnA\ú Lt .A§dybyk§ TàwFw .Deep Learning I Tynq~
·
1d,tFA, Tqy'd1 T-?A. 31 T§Ahú T§ldi er~tFA.s ·htn§
·
d~tsmI centsli i (c)@1

&Ir"tFl Y) , Tl} ûlÐ T,w...#177;1 %om? · , 4:u,b1 û1wW-> TMk.?
·
Ayq1 Ylà C A' AnA\ú  4
· , -Ð %o

«bs BERT ~Ðw
·
Idi.tFA~ AnA\ú &.§Cd3 oe.3 .TM.idm
· 1s1 Xq
· 4.4Wt~ ·t1 TyAhn1 T?A~3~

.Tflt~m1 T§wOEl1 T~rb1
·
Ah °I #177; centsmymO~ oe.3 (c)@1 ,..§Cdt1

Antyn.  i TúCAqm1 acAtú rh\3 , TsrtqmlTq§rW1 TyA`
· ûAúAyb1 Tàwm-14 Ylà L..tCA-14t1 c.Rw3

.Tl·F#177;~ Ylà Tt,A>2 r::
·i A3/4A14..4 ·W`~

.oel`tI TMqú ,Ty`ybW1 TOEll T,A` ,«ymà oel`~ ,ûAwl`m1 Ylà ........b1 :a1t6.o.J~ .it.o..t_,Jt






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"La première panacée d'une nation mal gouvernée est l'inflation monétaire, la seconde, c'est la guerre. Tous deux apportent une prospérité temporaire, tous deux apportent une ruine permanente. Mais tous deux sont le refuge des opportunistes politiques et économiques"   Hemingway