Une introduction au Natural Language Processing (NLP).
Le Traitement du Langage Naturel ou Natural Language Processing (NLP) est l’étude de la langue humain par les ordinateurs. La NLP est souvent considérée comme un sous-domaine de l’intelligence artificielle (IA), mais s’inspire beaucoup de la linguistique. Dans notre vie de tous les jours, la NLP est tout autour de nous : la recherche google, les filtres anti-spams pour e-mails, l’auto-completion, et la traduction automatique sont des examples de l’applications de la NLP. C’est aussi mon domaine d’études et je souhaite donc vous introduire à cette technologie incroyable.
Un peu d’histoire
Pour certains, l’IA à commencé avec la NLP en 1954 avec l’expérience dis de Georgetown. Cette expérience consistait à traduire 60 phrases russes en anglais et ce fut un premier succès. En 1960, SHRDLU fut le premier programme commandé par la langue, il permet des conversations simples avec sont utilisateur dans un monde de blocs. Toutes ces avancées semblait montrer que l’IA et la NLP allais devenir très important dans les prochains décennies.
Cependant, ce premier succès était trompeur. Les scientifiques de l’époque ont continué à travailler sur le problème et ont rapidement réalisé à quel point c’était difficile. Pas seulement la traduction automatique, mais tout ce que l’IA et la NLP étaient censés résoudre. C’était le début de l’hiver de l’IA. Une époque au cours de laquelle l’évolution de nombreux sous-domaines de l’IA a été ralentie et sous-financée. Il y avait en fait deux hivers IA, 1974-1980 et 1987-1993, mais nous en discuterons dans un autre article.
Après des décennies de recherche, l’IA et la NLP avaient gagné en maturité. Mais c’est seulement dans les années 2010 qu’elle regagne en réputation. En 2011, Watson (une IA d’IBM) a remporté le Jeopardy, une émission de télévision américaine, en gagnant contre les meilleurs joueurs humain. Apple, Google et Amazon ont rapidement suivi avec la création de leur assistant virtuel comme Alexa et Siri. La traduction automatisée devenait vraiment performante et de nombreux autres problèmes ont été résolus et depuis lors, l’IA est à nouveau en hausse, tout comme la NLP.
Exemples de tâches en NLP
Il y a beaucoup de sous-problème en NLP. Cela va de tâches simples telle que le balisage syntactic (POS tagging) qui attribue une étiquette telle que verbe, adjectif, pronom, etc. à chaque mot d’un texte. Ou la detection d’entité où le but est de trouver des mots ou des séquences de mots qui se réfèrent à des entités telles que des personnes, des objets, des produits et d’autres concepts dans un texte.
Il y a aussi des tâches complexes telles que l’analyse de sentiment qui attribue un score de polarité ou de subjectivité à un texte tel que des commentaires pour comprendre le sentiment et la réaction des gens. Ou des systèmes de réponse aux questions tels que les chatbots qui peuvent parfois fournir des niveaux de conversation crédibles. Ou encore la synthétisation automatique qui peux résumer automatiquement un texte de plusieurs pages en quelque paragraphes.
Beaucoup plus de problème de NLP existent et si vous êtes intéressé, voici une liste non exhaustive des plus importants. La plupart d’entre eux ne sont que partiellement résolus car la NLP est encore un domaine assez jeune et en développement.
La prochaine étape
La NLP à beaucoup de potentiel mais frôle seulement la surface de ce qui est possible. Les travaux de recherche antérieurs se sont concentrés principalement sur une analyse lexicale et superficielle des mots en accordant peu d’attention à un sens plus profond. Comprendre la grammaire et les règles syntaxiques est certes important, mais ce n’est pas la seul chose derrière des mots.
L’avenir de la NLP réside dans la compréhension sémantique du texte. Un mot n’est pas seulement une séquence de lettres mais la représentation textuelle d’une réalité, qu’elle soit abstraite ou physique. Comprendre que le mot «pizza» est un aliment et qu’il doit donc avoir une recette et un pays d’origine est facile pour nous les humains. Et c’est un problème parce que nous ne comprenons pas comment nous comprenons et pourtant nous le faisons sans effort. Par consequent, la prochaine étape pour la NLP est de transmettre cette connaissance sémantique du langage aux machines afin qu’elles puissent comprendre le monde derrière les mots.