Développement nouveaux produitsEtudes de marchés

Analyse sémantique pour le développement de nouveaux produit

Un de mes conseillers de doctorat, Hans Uszkoreit avait pour habitude de  dire « le texte est le tissu de la toile ». C’était vrai dans les années 90 et c’est encore plus vrai aujourd’hui avec l’expansion des médias sociaux. Si le texte, c’est-à-dire la langue, est l’épine dorsale du web, il est normal que l’analyse automatique des conversations en ligne prenne une importance capitale. Il y a beaucoup de noms pour cela : « analyse sémantique », « text mining », « text analytics », « Natural Language Processing » (NLP), etc. A la fin de l’histoire, leur but est le même : transformer le texte en données structurées qui sont compréhensibles par les ordinateurs et utilisables par les programmes.

Récemment, la technologie de l’analyse de texte a été stimulée par les progrès de l’intelligence artificielle (IA), une importance particulière étant accordée à l’apprentissage deep learning. Je ne commenterai pas les attitudes trop optimistes que ces technologies ont inspirées, ni le buzz largement démotivé qu’elles ont suscité. Vous trouverez ici un exposé sur le sujet. (en Français avec des slides en Anglais). Une conséquence plus importante est qu’aujourd’hui presque toutes les entreprises dans le domaine du marketing, de la gestion de la relation client, de la surveillance des médias, etc. affirment avoir intégré l’analyse sémantique dans leurs plateformes. Dans cet article, je vais essayer de montrer que l’analyse des conversations humaines est une tâche difficile, et qu’on ne peut pas s’y attaquer sérieusement simplement en adoptant une technologie open source disponible.

Je commencerai par une affirmation presque triviale : l’analyse sémantique concerne un langage spécifique, il n’existe pas d' »analyse sémantique indépendante du langage ». Cela suscite quelques soupçons lorsque je vois des entreprises relativement petites prétendre « nous avons affaire à plus de 30 langues ». Vous quoi ?! Soit pour le « dealing » vous voulez dire compter les mots dans une page ou vous êtes Google, ou IBM, ou Nuance Corporation. Traiter 30 langues signifie avoir au moins 2 employés de langue maternelle par langue, juste pour les opérations de maintenance, ce qui est un investissement important. La réponse à cette objection est invariablement : « Non, nous utilisons des technologies d’apprentissage automatique, qui sont indépendantes de la langue ». Eh bien, dans cet article, je vais le prouver :

  1. L’indépendance linguistique de l’apprentissage automatique est une revendication non étayée, même si l’on tient compte des technologies d’IA les plus récentes comme l’apprentissage en profondeur.
  2. Pour être efficace dans des contextes réels, l’apprentissage en profondeur doit être couplé à une analyse symbolique, ce qui présuppose la présence de chercheurs de langue maternelle au sein de l’organisation.

Le mythe de l’indépendance linguistique

Le concept derrière le machine learning (y compris le deep learning) est très simple : vous donnez un ensemble d’exemples positifs et négatifs à un algorithme et il apprend à classer les exemples successifs invisibles. Par exemple, vous donnez à votre algorithme un ensemble de 10.000 tweets avec des sentiments positifs, 10.000 avec des sentiments négatifs et vous avez un programme capable de vous dire si un nouveau tweet est positif ou négatif. Aussi simple que ça ? Oui, mais vous devez avoir les 20.000 tweets classés manuellement . Et c’est beaucoup d’argent pour développer un tel ensemble (nous l’appelons « corpus »). Et vous devez l’avoir pour n’importe quelle langue, ce qui représente beaucoup plus d’argent. Objection possible : vous l’achetez une fois et vous avez terminé. Faux : l’apprentissage machine souffre d’un problème appelé « corpus over fitting ». Voyons un exemple.
L’un des meilleurs systèmes d’analyse des sentiments est probablement Celui de l’Université de Stanford (cf. « Deeply Moving : Deep Learning for Sentiment Analysis » et « Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank »). Il a obtenu de très bons résultats dans plusieurs compétitions internationales et c’est certainement l’un des meilleurs systèmes au monde. Je connais aussi personnellement certains des chercheurs impliqués, et je peux vous assurer que ce sont des gens très sérieux. Toujours est-il que si vous testez le système  avec la phrase “la montre est toujours 4 minutes à l’avance, je demanderai un remboursement. », voilà ce que vous obtenez :

Analyse des sentiments
Sentiment Analysis

La phrase est considérée comme positive. Pourquoi cela ? Eh bien, le modèle a été formé à partir d’un corpus orienté vers les critiques de films, donc il fonctionne de façon spectaculaire en devinant la tonalité d’une critique de films, mais il est sous-performant dans des domaines qui sont différents de celui sur lequel il a été formé. C’est ce que nous appelons le corpus over-fitting, ce qui ramène à la question « acheter un corpus en langue X et utiliser le modèle appris pour toujours ». Non : achetez/construisez-le pour n’importe quel domaine possible avec lequel vous allez traiter ! Un pour les montres, un pour la nourriture, un pour les voitures, etc. Et ce n’est bien sûr pas durable.

Il existe une autre preuve académique de l’indépendance linguistique présumée des méthodes d’apprentissage automatique. Si tel était le cas, lorsqu’on examine les résultats des évaluations internationales en tenant compte de nombreuses langues, on devrait s’attendre à des résultats grosso modo équivalents entre les langues. Or, ce n’est pas le cas et tout le monde peut constater que l’analyse sémantique des textes anglais est systématiquement meilleure que celle des autres langues. Pourquoi cette situation ? C’est un sujet largement débattu dans la communauté scientifique, mais la réponse courte est : à cause des ressources linguistiques. Il y a des tonnes de lexiques, thésaurus, dictionnaires, grammaires, corpus, etc. qui ont été développés pour l’anglais (chacun avec des coûts de développement élevés) mais la situation est différente pour les autres langues. Et sans ces ressources, la précision de toute analyse sémantique est forcément plus faible, parfois inutilisable.

Le mythe du « Corpus-in Solution-out »

L’autre point crucial concernant l’adoption aveugle des technologies de machine learning et de deep learning est leurs fiabilités dans un contexte réel de production . Le contexte ici est important : je pense que dans les évaluations linguistiques, les méthodes d’apprentissage automatique (ML) se sont déjà révélées très efficaces. Le point est : sont-elles assez efficaces afin d’être utilisées pour fournir des services d’analyse sémantique fiables ?

Encore une fois, j’aimerais partir d’un exemple concret. La sémantique vectorielle (aka « matrix semantics », aka « word embeddings ») est l’une des plus belles applications des réseaux de neurones dans le traitement du langage naturel (à proprement parler, il ne s’agit pas de deep learning, puisqu’une seule couche est utilisée). Ils ont l’énorme avantage de deviner la sémantique des mots sans avoir besoin d’un corpus annoté : tout ce dont vous avez besoin est un corpus raisonnablement grand. Après une phase de formation, il suffit de taper un mot et vous obtenez, par exemple, ses synonymes. Une bonne démo est disponible sur le site Web Rare Technologies (à la fin de la page). Maintenant, essayez de taper le mot « time » et cliquez sur « Get Most Similar » : vous aurez de très jolis synonymes, tels que « day », « moment », « period », etc. Jusqu’à présent, tout va bien. Essayez maintenant la même chose avec le mot « gin ». Ce que vous avez, ce ne sont pas des synonymes, mais seulement des esprits apparentés : « Whisky », « rhum », « brandy », etc…. Qu’en est-il d’une application qui s’appuie entièrement sur le word embeddings pour fournir des résultats ? Eh bien, il est évident qu’il confond l’opinion sur le gin avec l’opinion sur le rhum, ce qui est loin d’être satisfaisant.

Un autre point faible du word embeddings est leurs incapacités (jusqu’à présent) à traiter l’un des problèmes de langage les plus complexes, à savoir l’ambiguïté sémantique. Prenez le cas de la compréhension de la voix du client d’un corpus de critiques de montres. Une partie de la montre est évidemment le boîtier, qui est une source de jugement par rapport à son matériau, sa solidité, son poids, son esthétique, etc.  Malheureusement, si l’on demande à notre word embeddings des synonymes d’application web pour « cas », on pense comme « habeas_corpus_proceeding », « prosecution », « acquital »…. L’explication est évidente : le système confond le sens de cas comme partie mécanique avec celui de cas comme essai. Il y a des chercheurs qui travaillent sur la résolution de ce problème, mais les résultats ne sont pas encore applicables dans un contexte de production.

La réalité des Systèmes Hybrides

Tout ce que j’ai dit jusqu’à présent n’est pas censé être une critique à l’égard de technologies telles que le deep learning ou le word embeddings. Au contraire, ils sont tous les deux largement utilisés par VoU. Mais l’humain doit toujours rester dans la boucle pour éviter des résultats « surprenants ». Bien sûr, par humain, je ne veux pas dire quelqu’un qui révise les résultats du système. Un humain est nécessaire en tant que « analyste » et son travail est crucial pour donner un sens aux résultats. Je veux plutôt dire des professionnels dans le domaine du traitement du langage naturel, capables de suivre les « pièges » du langage dans des domaines spécifiques et d’écrire règles pour les contourner. Cette intégration des règles et des technologies statistiques donne ce que nous appelons un système hybride, c’est-à-dire un système:

– 1) dont les résultats sont toujours prévisibles

– 2) dont le comportement est compréhensible

-3) dont les résultats peuvent être modifiés à tout moment sans qu’il soit nécessaire d’effectuer une nouvelle formation.

Comme la rédaction de règles prend du temps et de l’argent, il est tentant de passer à l’option « statistiques ». Cela peut également s’appliquer à des tâches spécifiques telles que la classification des documents. Mais il échouera dans une tâche aussi délicate que de capter les attitudes des utilisateurs des médias sociaux pour le développement de nouveaux produits. Mais je reviendrai sur ce sujet dans un prochain article.