Cet article présente les fonctionnalités du Natural Language Processing (NLP) utilisées dans l’industrie, telles que la prédiction de texte, la reconnaissance d’entités, l’extraction de relations, la traduction automatique, l’analyse des sentiments et les réponses aux questions. Il mentionne également les cas d’utilisation des chatbots et des filtres anti-spam.
Après avoir introduit le Natural Language Processing (NLP) sur notre blog, nous allons voir dans cet article quelques fonctionnalités du NLP, qui peuvent être utilisées dans le monde industriel. C’est parti !
Cette fonctionnalité est utilisée pour accélérer la rédaction d’e-mails, de messages et d’autres textes. Très «tendance» ces dernières années, elle est de plus en plus intégrée dans nos outils de mailing et de traitement de texte. Elle est basée sur la prédiction du mot suivant le plus adapté à la phrase en cours de rédaction. Cette technologie est basée sur des modèles probabilistes ou de vectorisation de mots qui ont appris comment les mots s’enchaînent dans une phrase.
On l’utilise principalement cette technique pour identifier et classifier les entités nommées (mots ou groupes de mots) dans des textes non structurés dans des catégories prédéfinies telles que:
Pour y arriver, on peut utiliser des ressources linguistiques (dictionnaires) mais aussi des algorithmes d’apprentissage profond (deep learning) qui ont appris à identifier chaque entité.
Ici, on cherche à extraire les relations sémantiques entre les entités identifiées dans le texte ou la parole telles que « est situé dans », « est marié à », « est employé par », « vit dans », etc…
Ce cas d’utilisation est traité principalement à travers des relations linguistiques telles le “part-of-speech” (verbe, adverbe, nom, etc.) ou des relations lexicales (synonymes, homonymes, etc.).
L’une des utilisations la plus répandue du NLP est la traduction automatique. Grâce à cela, les traductions se font beaucoup plus rapidement, malgré le besoin de vérifier certaines tournures de phrases à posteriori. La valeur ajoutée est très importante pour les entreprises qui ont besoin de traduire régulièrement du contenu comme des avis sur des produits, des documents réglementaires et des e-mails. Les applications les plus connues pour la traduction automatique sont Google Translate, Amazon Translate et DeepL. Généralement, ces systèmes s’appuient sur des réseaux tels que les réseaux neuronaux récurrents (RNN), les réseaux séquentiels (Seq2Seq) et plus récemment, les transformateurs (dont nous parlerons dans notre prochain article).
Cette fonctionnalité aborde la perception des gens sur certains sujets ou services. Cela rend cette option très utile pour de nombreuses entreprises (service client, communication, marketing stratégique, etc.).
Elle a pour but de vérifier que les biens ou les services satisferont les clients et de créer des sondages pour les marques et même les candidats politiques. Cela n’aide pas seulement les entreprises à acquérir des connaissances sur la façon dont les clients perçoivent ces biens ou services, mais permet également d’améliorer les concepts, les produits, le marketing et la publicité tout en réduisant le niveau d’insatisfaction.
Il s’agit d’un problème de classification et peut être traité de manière « classique » par des approches d’apprentissage automatique comme des classifieurs linéaires (régression logistique, classifieur bayésien, etc.), les k plus proche voisins, les arbres de décision, ou des réseaux de neurones tels que les réseaux de neurones récurrents (par exemple LSTM) ou les transformateurs (par exemple BERT).
La plupart des questions posées par des humains peuvent être répondues grâce à une fonctionnalité du NLP que l’on appelle le Question Answering (en bon français: Réponse aux questions). Le modèle va tout d’abord analyser la question, en utilisant notamment la fonction de reconnaissance d’entités nommées, puis va formuler une réponse en retour, selon sa base de connaissance (qui peut être très large !). Siri, OK Google et Virtual Assistants sont des exemples d’applications de réponses aux questions.
Cette fonctionnalité est développée en utilisant des méthodes d’apprentissage automatique qui apprennent à comprendre les fonctionnalités linguistiques sans supervision humaine. Voici deux exemples de fonctionnalités linguistiques qui peuvent être utilisées:
Les méthodes statistiques ont ouvert la voie à cette approche. Celle-ci se décompose en 2 étapes principales:
Le contexte est généralement identifié en cherchant dans une taxonomie (classification des différents mots dans des catégories et des sous catégories) qui a été créée grâce aux entités nommées et au classifieur. Les architectures des réseaux de neurones sont également très utiles pour ce cas d’utilisation. Elles permettent de cartographier le contexte textuel en représentations logiques qui sont ensuite utilisées pour la prédiction des réponses. Parmi ces réseaux de neurones, on peut noter que les réseaux de neurones récurrents (RNN) ont montré leur efficacité pour traiter ce type de tâche.
Ces fonctionnalités sont la base de ce que peut faire le NLP.
Voici deux exemples de cas d’application dont vous avez très probablement entendu parlé: les Chatbots et les filtres anti-spam.
Contrairement à la partie “Réponse aux questions” où la réponse existe dans un corpus donnée, les chatbots génèrent leurs propres réponses.
Les chatbots sont très efficaces aussi bien pour les entreprises que pour les consommateurs. Ils permettent déjà de répondre à de nombreuses questions.
Cependant, les entreprises poussent aujourd’hui plus loin dans le développement de chatbots pour pouvoir communiquer à un niveau humain avec toute sa complexité.
Les chatbots sont utiles pour les entreprises non seulement lorsqu’il s’agit d’améliorer l’expérience et la satisfaction des clients mais aussi pour répondre aux nombreuses interrogations des employés.
Les chatbots utilisent 2 types d’approches différentes:
Les filtres de courrier électronique sont un cas d’utilisation courant du NLP. Cette fonctionnalité permet de bloquer les e-mails indésirables. Ceux-ci sont identifiés comme tel en extrayant la signification et la fréquence de certains mots dans le corps d’un e-mail.
Ces fonctionnalités sont intégrées dans des approches d’apprentissage automatique ou des algorithmes de réseaux de neurones, qui vont permettre de s’améliorer grâce au retour des utilisateurs.
Toutes ces fonctionnalités peuvent être utilisées dans différents domaines d’activité. C’est ce dont nous parlerons dans notre prochain article de blog. Alors restez à l’écoute!