Salesforce esquisse un algorithme polyvalent pour traiter le langage naturel

Data-stockage

Salesforce a développé un algorithme capable de travailler simultanément sur une multitude de tâches associées au traitement automatique du langage naturel.

Registre, syntaxe, vocabulaire, ton, sémantique… Et si le traitement du langage naturel pouvait être assuré par un algorithme « polyvalent » ?

Salesforce vient de rendre compte de ses travaux sur cette question.

Le groupe américain avait fait un point d’étape fin 2017. Il avait dressé un constat : les réseaux neuronaux artificiels exploités dans ce domaine sont généralement optimisés pour un usage et un jeu de données. Ainsi sont-ils, par exemple, rarement efficaces à la fois en traduction, en résumé de texte et en analyse du sentiment.

Les équipes de Richard Socher (fondateur de MetaMind, start-up acquise en 2016 par Salesforce) ont fait le pari d’une approche plus flexible dans la création automatisée de ces réseaux neuronaux.

Elles ont eu recours à un langage dédié suffisamment flexible pour définir des architectures standard de type LSTM (mémoire court terme persistante) capables d’intégrer des éléments non standard tels que les courbes trigonométriques.

salesforce-schema-1
Le générateur d’architectures s’améliore à mesure que sont évaluées celles considérées comme les plus prometteuses.

Pour permettre aux algorithmes de développer des capacités à partir de celles qu’ils possèdent déjà, Salesforce recourt à un framework d’apprentissage renforcé qui identifie les relations entre lesdites capacités.

Chaque tâche est divisée en sous-tâches. Le modèle d’apprentissage détermine alors à quel moment exploiter une capacité connue et à quel moment en apprendre une nouvelle. Il est entraîné pour expliciter ses décisions « en langage humain ».

salesforce-schema-2

Sur cette base a été code, en Python, un algorithme MQAN (« Multitask Question Answering Network ») capable de travailler simultanément sur dix tâches liées au traitement du langage naturel.

Un challenge decaNLP (« Natural Language Decathlon ») a été créé dans cette optique. Il regroupe l’ensemble de ces dix tâches : analyse de texte, dialogue orienté, résolution pronominale, création de requêtes SQL, etc.

Toutes les tâches sont modélisées sous forme de questions en langage naturel. L’algorithme en tire parti pour détecter des relations entre les différentes descriptions. Il s’améliore en conséquence et peut surtout résoudre des problèmes pour lesquels il n’a pas été spécifiquement entraîné. Une perspective notable pour les chatbots.

Cette approche « unifiée », Salesforce l’applique aussi à l’analyse d’images. Et plus particulièrement à la comptabilisation d’objets. Le processus est abordé de façon séquentielle ; les objets pertinents sont dénombrés et les relations entre eux permettent de décider s’il convient ou non de les ajouter au compteur.

salesforce-schema-3

Crédit photo : Christian Lagerek – Shutterstock.com

Lire aussi :

Lire la biographie de l´auteur  Masquer la biographie de l´auteur