Etape n°1: Introduction au TAL
Le Traitement automatique du langage est une discipline à la frontière de la linguistique, de l'informatique et de l'intelligence artificielle, qui concerne l'application de programmes et techniques informatiques à tous les aspects du langage humainDans son ouvrage "Introduction au TALN et à l'ingénierie linguistique", Isabelle Tellier présente tous les niveaux classiques de description des langues humaines (phonèmes, morphèmes, propositions, sémantique lexicale et sémantique propositionnelle) et explique leur modélisation informatique (par des automates finis, des grammaires formelles, des formules logiques...). Son objectif est de montrer la complexité des phénomènes linguistiques et la grande variété des outils utilisables pour manipuler des textes numériques. Chaque chapitre se conclut par une série de liens vers des sites Web réalisant des traitements linguistiques en ligne. Ce document est plutôt destiné à des étudiants qui ne requiert aucun pré-requis.
Un chatbot est un personnage virtuel, souvent à visage humain, accessible sur un site web et doté d’une intelligence artificielle qui lui permet de répondre de manière plus ou moins pertinente aux questions posées par les internautes par l’intermédiaire du clavier. Ce sont donc des outils plutôt sympatique qui allie la simplicité à l'utilité.
Les réponses données par le chatbot est possible grâce à l'utilisation de mots clés (Définition "mot clé" : Mot ou expression choisi généralement dans le titre ou le texte d'un document pour en caractériser le contenu et en permettre la recherche. Il constitue un point d'accès. Il est à distinguer d'un descripteur, qui est un terme normalisé dans un thésaurus).
On remarque certaines limites à l'utilisation du chatbot mais nous verrons ça un peu plus tard dans nos explications.
Pour comprendre le TAL et ses applications, nous avons lu une partie du livre de Isabelle Tellier. En voici le résumé :
Ce texte s’interroge sur la capacité langagière et son utilisation possible ou non sur les machines. En effet, depuis les années 50 à aujourd’hui il y a eu de nombreuses tentatives pour permettre aux ordinateurs d’avoir cette capacité. Au début des années 50, les informaticiens ont essayé mais en vain, ils se sont rendu compte que la complexité du langage rendait ce défi difficile à réaliser. Dans les années 70-80, les « systèmes experts » apparaissent. Il s’agit de programme qui simule les connaissances d’un expert, pour reproduire son mode de raisonnement. C’est également la naissance du TAL (Traitement Automatique des Langues) même si celui-ci reste dans les laboratoires. Les années 90 sont en changement dans ‘histoire de l’informatique puisque l’on assiste à une banalisation des ordinateurs et un accès à internet pour tous. L’ingénierie informatique apparait alors comme indispensable pour classer, trier, ordonner les documents (surtout les textes). Toutes les sociétés ont une ou plusieurs langues qui permettent aux personnes de se comprendre et d’interagir. Jusqu’à présent parler est une activité humaine puisque nul autre (machine, animaux) n’y arrive. Les langues naturelles (humaines) vont donc s’opposer aux langues artificielles (machines). Les linguistes ont pour rôle de comprendre et décrire les langues, ils peuvent pour cela les comparer à d’autre. Une collaboration avec les informaticiens s’est révélée utile : cela à donnée naissance au TAL. Une collaboration a été possible car les avancés de ces deux domaines, même si elles n’ont pas progressé en même temps, a été importante. Durant ces années, les sciences du langage se sont modifiées et ont affiné leur objet d’étude. Des spécificités sont apparues : distinction entre dimension verticale et horizontale, la double articulation et les deux niveaux (sémantique lexical et propositionnelle). Ces différentes spécificités permettent aux informaticiens de comprendre et adapter un codage ainsi que les traitements possibles. Le langage humain est compréhensible grâce aux données linguistiques mais aussi par la psychologie. Pour construire un système artificiel, il faut donc essayer de constituer une architecture similaire à celle du langage humain. Une autre approche est possible : ne plus essayer de chercher à imiter le langage mais plutôt ce concentrer sur les capacités de calcul et de mémoire des machines. La phonétique est la branche de la linguistique qui étudie les sons des langues naturelles, indépendamment de leur sens. La phonologie est la branche de la linguistique qui étudie les propriétés des phonèmes. La transcription phonologique d’un énoncé peut se coder en utilisant certains des symboles de l’API mis entre barres obliques. Ce ne sont pas les éléments de cet alphabet qui constituent les unités de base de l’analyse du langage, parce que les sons ainsi d´écrits ne sont pas tous pertinents pour une langue donnée. En fait, chaque langue opère une sélection dans la liste des sons que la physiologie rend possibles. Deux sons élémentaires appartiennent à des classes différentes s’il est possible de trouver deux unités lexicales (deux mots) différentes (associées à des signifiés différents) qui ne différent d’un point de vue acoustique que par ces deux sons. On appelle un tel couple de mots une “paire minimale”. Inversement, ils sont équivalents (et appartiennent donc à la même classe) s’il est impossible de trouver deux unités lexicales différentes qui ne différent que par ces deux sons. La modélisation informatique se fait principalement sur les langues écrites. Néanmoins il existe des applications disponibles pour tous qui traitent le langage oral : analyse (reconnaissance vocal) et synthèse. La difficulté est de segmenter le flux permanent de parole et une fois le segment identifié il faut trouver le phonème correspondant car tout le monde ne prononce pas de la même façon. Il y a aussi le problème de la ponctuation, des abréviations, des nombres qui nécessitent un traitement spécifique pour être correctement traduits en symboles graphiques. Un nouveau niveau correspond à la notion de “mot”. Mais, comme nous le verrons, cette notion n’est pas très pertinente pour la linguistique, on préfère celle de morphème. On répartit traditionnellement les morphèmes en deux groupes : les morphèmes lexicaux et les morphèmes grammaticaux par plusieurs critères : sémantiques, énumératif. Ce découpage présente l’inconvénient de laisser de côté une famille de mots qui jouent un rôle fondamental dans le TALN `a l’heure actuelle : il s’agit des entités nommées (ce sont les expressions qui désignent soit des “noms propres” (de lieux, de personnes, d’organisations, etc.), soit des “valeurs numériques” (dates, nombres, etc.)). La morphologie étudie comment différents morphèmes se combinent entre eux pour former des unités plus complexes (unités lexicales). On distingue habituellement deux façons d’opérer des combinaisons : la composition et l’affixation. La capacité de mémoire des ordinateurs actuels est telle qu’elle permet de stocker facilement l’intégralité des formes fléchies d’une langue. On peut cependant enregistrer ces différentes formes de façon synthétique. Pour cela, nous évoquons deux approches possibles : une structure de données (c’est-à-dire une manière efficace de coder des informations avec des listes de mots partageant des lettres communes) et un modèle très puissant issu de l’informatique théorique.
Etape n°2: Fonctionnement d'Elizia
Elizia est une chatbot permettant de dialoguer avec un individu. Il a pour objectif de remplacer un vrai être humain. Pour cela, elle utilise des mots clés comme référence c'est à dire qu'à chaque mot que la personne prononce, une réponse deja préparer apparait. Le problème est qu'il peut y avoir des incohérences mais nous y reviendrons plus tard.
Pour observer les différences et les limites des deux chatbot, j’ai posé dix questions identiques à Elizia et à une autre chatbot (SNCF) afin de comparer leurs réponses.
Pour le Chatbot Elizia
Comment vous appellez vous ? Je m’appelle Elizia mais je ne suis pas là pour parler de moi.
Quel est votre âge ? Passons à autre chose.
Avez-vous pris des vacances ? Je ne suis pas là pour parler de moi.
Où êtes vous parti en vacances ? On voyage pour changer non de lieu mais d’idée.
Quand vous travaillez vous ? Vous vous sentez bien sur votre lieu de travail ?
Êtes-vous célibataire ? On ne pose pas de telles questions à une dame.
Quel type de musique aimez-vous ? La musique suffit pour une existence mais une existence ne suffit pas à la musique.
Quel est votre lieu de naissance ? Nous parlons de vous pas de moi.
Quel est votre date de naissance ? En quoi croyez vous que j’ai un lien avec vos problèmes.
Quel est votre film préféré ? Avez-vous un héro avec lequel vous aimez vous identifier ?
Pour le chatbot SNCF
Comment vous appellez vous ? Je m’appelle Léa. Et vous quel est votre prénom ?
Quel est votre âge ? J’ai 29ans. Que puis-je faire pour vous aider ?
Avez-vous pris des vacances ? J’ai des vacances mais c’est rare.
Où êtes vous parti en vacances ? Je vais au moins une fois par an chez mes parents dans le sud de la France. Mes dernières vacances étaient en Sicile, c’était super ! Ai-je répondu à votre question ?
Quand vous travaillez vous ? Vous savez je travaille 24h/24, 7J/7 … mais j’essaie quand même de me ménager un peu de temps libre.
Êtes-vous célibataire ? Pour le moment je suis célibataire. Que cherchez-vous sur les horaires ?
Quel type de musique aimez-vous ? J’aime un peu tout mais surtout de la variété. Que cherchez-vous sur les horaires ?
Quel est votre lieu de naissance ? Je suis née au sein de Voyages-Sncf.com à Levallois ! Que cherchez-vous sur les horaires ?
Quel est votre date de naissance ? Je suis née le 21/06/1977. Que cherchez-vous sur les horaires ?
Quel est votre film préféré ? J’en ai plusieurs « Pulp Fiction », « Matrix » et « La soupe aux choux » notamment. Que cherchez-vous sur les horaires ?
Pour Elizia :
On peut remarquer qu’Elizia ne donne aucune information personnelle. En effet, lorsqu’on lui pose une question elle répond par une phrase à l’impératif soit par une autre question nous concernant pour nous inciter à parler de nous. On observe également un décalage entre les questions que l’on pose et ces réponses. Elizia va utiliser le mot clé de la phrase pour formuler une question mais qui est hors-sujet. Dans certains cas, elle utilise également ces mots pour répondre avec des phrases de type citation.
Pour Léa :
On peut remarquer qu’elle répond aux questions personnelles que l’on pose : elle a une véritable identité. On peut avoir une conversation avec et sur elle. Lorsque l’on pose des questions personnelles, Léa répond et ensuite nous pose une question sur la Sncf pour nous réorienter vers son utilité première c'est-à-dire nous informer et renseigner sur la Sncf.
Conclusion :
Avec Elizia, on ressent la limite de la machine. En effet, il y a certaines incohérences et l’échange semble être que dans un seul sens : l’humain qui parle et la machine qui écoute (seulement dans une position passif). Au contraire, avec Léa on pourrait penser être dans une vraie conversation avec un humain. Celle-ci va nous répondre, poser des questions sans jamais être incohérente. Elizia étant l’ancienne version, nous pouvons dire qu’il y a eu de nombreuses améliorations pour arriver aujourd’hui à une conversation très proche de celle possible entre deux humains.