[EXPER’TECH] Les approches modernes des modélisations conversationnelles

Assistants virtuels personnels et agents avec interfaces conversationnelles sont des technologies qui deviennent de plus en plus populaires auprès de beaucoup de développeurs logiciels.

 

C’est grâce au développement rapide de la compréhension des langages naturels et des technologies à haut débit d’information que nous pouvons observer une forte croissance dans ce domaine. Ces assistants sont présentés comme des entrées pour des applications et services qui fournissent des méta-strates d’intelligence faisant office d’arbitres entre les applications pour une requête utilisateur.

Les démonstrations effectuées les présentent comme extrêmement performants avec une large série de tâches, comme suggérer à un utilisateur de faire quelque chose basé sur les événements précédemment traqués (assistance proactive) ou répondre à une requête utilisateur dite de manière explicite ou écrite (assistance réactive). Nous pouvons citer quelques exemples marquants comme Google Now, Alexa d’Amazon, Siri d’Apple ou encore Cortana de Microsoft. Naturellement, il existe des ensembles de prérequis que ces assistants à échelle industrielle doivent satisfaire :

De manière générale, beaucoup de développeurs peinent à trouver un équilibre optimal entre la latence et l’exactitude. Par exemple, le niveau de d’automatisation de Cortana varie, des dialogues totalement automatisés au human-in-the-loop, qui permet à des requêtes plus complexes d’être traitées par des humains.

L’approche appliquée pour le seq2seq de Google consiste à mapper une séquence par rapport à une autre (mapper entre les requêtes et les réponses en utilisant des réseaux récurrents). Cela peut être utile pour les modélisations conversationnelles, autrement dit pour prédire la prochaine séquence selon la ou les précédente(s). Etonnement, cette approche réussi à générer des réponses fluides et précises. Une autre technique appliquée dans le Google Smart Reply est basée sur un classement des réponses qui peuvent démontrer la bonne connaissance du monde réel. La majorité des solutions existantes utilisent une approche standard basée sur les intentions et les entités.

Ce comportement se révèle être efficace lors d’un travail sur de simples tâches comme la création d’une alarme ou la réservation d’une table auprès d’un restaurant. Par conséquent, l’argument de vente principalement mis en avant de ces systèmes est qu’ils permettent aux utilisateurs de déléguer de nombreuses tâches grâce à un seul et unique point d’entrée, i.e, qui remplace une recherche sur un site ou une application.

Néanmoins, lorsque les tâches vont au-delà du cadre des modélisations conversationnelles principales, les résultats produits par les technologies citées ci-dessus ne répondent pas forcément correctement aux attentes de l’utilisateur. Par exemple, l’approche la plus commune basée sur les entités et les intentions nécessite un entrainement manuel des entités spécifiques au domaine. Pour illustrer, les assistants virtuels de Microsoft utilisent un classificateur binaire de type one-vs-all séparé pour chaque domaine. Dans le cas où la requête de l’utilisateur dépasse le cadre des domaines pré-entrainés, le système peut perdre en performance. Comme mentionné précédemment, l’approche basée sur les la méthode du rang démontre une bonne connaissance du monde, mais les résultats nécessitent le réseau de neurones avec une échelle suffisamment large. De plus, la méthode du rang peut être efficace même sans comprendre le dialogue, car il utilise les transformations sémantiques et une approche basée autour des règles.

Même le seq2seq de Google qui semble être un outil parfait pour les modélisations conversationnelles peut rencontrer de sérieuses difficultés. Premièrement, seq2seq n’est pas capable de mettre à jour sa mémoire à long terme. Par conséquent, les choses importantes comme le nom d’utilisateur sera oublié après plusieurs itérations et donc, aucun nouvel élément ne pourra être mémorisé. Il est également important de souligner le fait que seq2seq n’est pas capable d’obtenir des données de la part de ressources externes. De plus, le savoir obtenu durant la phase d’apprentissage peut ne pas être appliqué à d’autres domaines et demande beaucoup de temps et de données pour apprendre le nouveau modèle. En outre, le modèle a tendance à donner des réponses courtes comme « oui » ou « non ». Dans les scénarios, lorsque l’utilisateur se retrouve inondé avec trop de données et trop peu de temps pour les comprendre, les solutions existantes ne se révèlent pas nécessairement efficaces.

Pour illustrer ce type de scénario, nous avons le système de synthétisation de texte pour les médecins où l’exactitude et la rapidité sont leurs principaux soucis. Il est également important de réaliser que tous les agents conversationnels décrits précédemment sont des agents réactifs, ce qui rend impossible l’implémentation d’analyses prescriptives. Pour résumer, nous pouvons dire qu’il est particulièrement intéressant de développer un agent qui :

 

Consultez la version originale ainsi que les références utilisées dans cet article Partie 1 et Partie 2.

Ecrit par Alibek Jakupov.

Contactez-nous
Construisons le futur ensemble

80 bis avenue du Général Leclerc
78220 Viroflay

+33(1) 39 24 22 70

info@expertime.fr

10 rue Édouard Nignon
44372 Nantes

+33(2) 40 50 28 02

info@expertime.fr

4 place Amédée Bonnet
69002 Lyon

+33(1) 39 24 22 70

info@expertime.fr