Youtaqa : système de questions-réponses intelligent basé sur le deep learning et la recherche d’informationpar Rayane Younes & Asma AGABI & TIDAFI Université d'Alger 1 Benyoucef BENKHEDDA - Master 2020 |
CHAPITRE 2. GÉNÉRALITÉSun 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:
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:
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ÉS2.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 |
|