Beaucoup de gens se demandent : « L'analyse de sentiments relève-t-elle de l'apprentissage automatique ? » La réponse courte : oui. L'analyse de sentiments moderne repose sur des modèles d'apprentissage automatique pour analyser et améliorer la détection de la signification émotionnelle d'un texte.
Dans cet article, j’expliquerai ce qu’est l’analyse de sentiments, ce que signifie l’apprentissage automatique, et comment ces deux notions interagissent dans les contextes d’expérience client.
Qu’est-ce que l’analyse de sentiments ?
L’analyse de sentiments, également appelée fouille d’opinion (opinion mining), est le processus qui consiste à lire un ensemble de textes et à interpréter si le ton est positif ou négatif. Les entreprises utilisent souvent des outils d’analyse de sentiments pour comprendre ce que les clients ressentent à propos de leur marque ou ce que les gens disent en ligne à propos de la concurrence.
Dans le cadre de l’analyse de sentiments, les blocs de texte—comme un tweet ou un avis client—reçoivent une note négative, neutre ou positive en fonction des mots qui composent le texte.

Pour cela, un logiciel d’analyse de sentiments utilise un lexique ou dictionnaire afin d’identifier et de noter chaque mot. Ce dictionnaire est construit manuellement par des personnes qui attribuent une note à chaque mot.
Ce processus est long et fastidieux car chaque mot a besoin de sa propre note et les scores doivent être relatifs les uns aux autres. Par exemple, « le meilleur » est mieux que « excellent », qui est mieux que « bon ».
Ce lexique constitue la base de l’analyse de sentiments.
Comment fonctionne l’analyse de sentiments ?
Il existe trois façons d’implémenter une analyse de sentiments client selon la quantité de données à analyser et le niveau de précision recherché.
Basé sur des règles
L’analyse de sentiments basée sur des règles est une méthode de sélection de caractéristiques automatique, basée sur des règles établies par des humains. Les règles intègrent généralement de nombreuses techniques de traitement automatique du langage naturel (NLP) et des classificateurs bayésiens naïfs. Cette approche est rapide, mais extrêmement simple et peu précise.
Par exemple, les règles peuvent définir des mots très négatifs (pire, horrible, laid) et positifs (excellent, meilleur, beau). Ces mots reçoivent une valeur positive ou négative. S’il y a plus de mots positifs que négatifs, le logiciel indique que le texte a un sentiment positif ; s’il y a plus de mots négatifs, il indique un sentiment négatif. S’il y a un nombre égal de mots positifs et négatifs, le texte est considéré comme neutre.
Comme mentionné, cette approche est rapide mais peu nuancée. Elle ne prend en compte que les règles simples appliquées aux mots, sans prêter attention à l’emplacement des mots ni à la façon dont ils sont combinés. Il est possible de modifier les règles en cours de route, mais cela modifiera aussi les résultats précédents. Ces systèmes exigent beaucoup de réglages et de maintenance.
Automatique
Les systèmes automatiques relèvent de l’apprentissage automatique. Ils ne s’appuient pas sur des règles définies par des programmeurs pour la classification des sentiments, mais ils ont besoin d’apprendre. Durant l’entraînement, le système apprend à associer certains mots et combinaisons de texte à des étiquettes spécifiques. Le texte est converti en vecteur de caractéristiques. La machine associe étiquettes et vecteurs de caractéristiques pour générer un algorithme et créer un modèle à utiliser par la suite.
Les vecteurs de caractéristiques représentent toutes les caractéristiques d’un objet ; dans ce cas, il s’agit des mots et expressions. En apprentissage automatique, ils sont essentiels pour extraire des motifs et pour le traitement des données. Ainsi, plus le système reçoit d’exemples, plus il crée d’étiquettes et de vecteurs, et plus il affine son algorithme et son modèle d’analyse de sentiments.
Ce processus peut devenir assez complexe, allant jusqu’au deep learning, qui utilise un ensemble d’algorithmes et de réseaux de neurones artificiels pour analyser les données, dans le but d’imiter le processus de réflexion du cerveau humain.
Hybride
L'approche hybride combine l’analyse de sentiments basée sur des règles et l’analyse automatique, en tirant idéalement le meilleur de chaque méthode. Cette approche est généralement la plus précise.
Comment l’analyse de sentiments et le machine learning sont liés
L’apprentissage automatique est une composante importante de l’analyse de sentiments, mais ce n’est pas la seule chose qui compte.
En utilisant le traitement automatique du langage naturel, les programmeurs peuvent alimenter d’énormes volumes de texte et de données lors de la construction d’un lexique de sentiments et de l’entraînement d’un programme d’apprentissage automatique. Le programme continuera à noter de nouveaux mots, améliorant ainsi son algorithme et sa capacité à effectuer l’analyse et, éventuellement, la prédiction de sentiments. Ces améliorations sont soutenues par les algorithmes d’apprentissage automatique.
Il existe de nombreux aspects que l’apprentissage automatique appliqué à l’analyse de sentiments doit maîtriser pour être le plus précis possible, d’où la préférence pour des modèles à base d’apprentissage profond.
Une analyse de sentiments précise nécessite une compréhension approfondie des parties du discours. Les programmeurs entraînent le machine learning à cela en étiquetant chaque mot comme nom, verbe, adjectif, etc.
Au fur et à mesure que le programme se familiarise avec la structure des phrases et la place des mots, il enrichit sa compréhension de base du langage naturel, améliorant ainsi la précision de la classification.
Malgré cela, de nombreux obstacles compliquent l’apprentissage automatique dans l’analyse de sentiments.
Les défis du machine learning pour l’analyse de sentiments
L’analyse de sentiments présente de nombreux défis, quel que soit le modèle utilisé.
L’analyse de sentiments est quelque chose que nous faisons naturellement en tant qu’humains. À chaque fois que nous lisons un texto d’un ami ou un tweet d’un inconnu, nous devons comprendre quel est le véritable sentiment. Sont-ils sarcastiques ? Drôles ? Ironiques ?
Il est difficile même pour les humains de discerner le sens réel d’un texte 100% du temps. Si nous avons parfois du mal dans notre propre langue, il est logique que l’apprentissage automatique en ait aussi avec l’analyse de sentiments.
Voici quelques raisons pour lesquelles l’analyse de sentiments pose des difficultés au machine learning :
Subjectivité
Certaines phrases sont factuelles et ni positives ni négatives, mais il n’est pas toujours facile de distinguer cela. Par exemple, regardons les deux exemples suivants :
La chemise est bleue.
La chemise est belle.
Dans cet exemple, il est évident quelle phrase a un sentiment positif—« La chemise est belle ». Mais cela ne signifie pas que la première est négative. La première phrase est objective. Elle expose un fait—la chemise est bleue.
La difficulté apparaît car les deux prédicats ne sont pas équivalents. La deuxième phrase qui indique que la chemise est belle est plus importante pour l’analyse de sentiments car elle est subjective. Ce deuxième commentaire montre ce que ressent l’utilisateur vis-à-vis du produit—une donnée utile.
Tonalité
La tonalité est l’un des éléments les plus difficiles à déchiffrer, même pour les humains, alors imaginez pour une machine. Déterminer si quelqu’un est sarcastique, par exemple, est extrêmement difficile dans un texte car les mots utilisés sont souvent à l’opposé de ce qu’ils veulent dire. Par exemple :
Ma merveilleuse voiture est encore tombée en panne. Génial !
Ma vieille bagnole pourrie est encore tombée en panne.
Ces deux phrases expriment un ressenti négatif, mais la première utilise le sarcasme en incluant des mots comme « merveilleuse » et « génial ». Ce scénario serait difficile à interpréter pour un système d’analyse de sentiments sans une vérification humaine finale.
Contexte
Parfois, il est impossible de déterminer le sentiment sans un contexte plus large. Considérez la phrase suivante : « Le choix dans ce magasin de fournitures artistiques est génial si vous êtes spécialisé en peinture. » En parcourant le texte, on repère des mots comme « génial » qui sont généralement positifs.
Cependant, dans un contexte plus large, cette citation implique autre chose : que ce magasin d’art ne convient pas si votre domaine est le crayon, l’encre, la sculpture ou un autre médium artistique. Aïe. En tenant compte du contexte, on se rend compte que cet avis n’est finalement pas si positif !
Lorsqu’un système d’apprentissage automatique effectue une fouille d’opinion, il ne prend pas toujours bien en compte le contexte.
Comparaisons
Les comparaisons sont complexes car elles dépendent moins des mots que des relations entre eux. Voici un exemple :
C’est la meilleure tarte que j’aie jamais mangée.
Leurs tartes sont bonnes pour une chaîne de restaurants.
La première phrase est positive. La seconde est plus ambiguë. On souhaite généralement que son produit soit bon comparé à tous les types de concurrence. Le deuxième ressenti sous-entend qu’en comparaison avec un artisan, une boulangerie locale ou un autre établissement, votre tarte est en seconde position.
Les solutions d’analyse de sentiments risquent de ne pas détecter ce facteur de comparaison. Elles risquent de ne retenir que le mot « bon » et d’attribuer un score positif, alors qu’il y a clairement plus que cela dans l’analyse.
Emojis
Quiconque fréquente Internet sait que les emojis sont omniprésents. Certains sont simples, d’autres complexes, mais tous peuvent poser problème aux algorithmes de machine learning pour l’analyse de ressentis.
Les emojis jouent un rôle clé dans la communication en ligne. Un cœur doit être considéré comme un ressenti positif, tandis que l’emoji caca sera presque toujours négatif. Cela ne pose pas de problème tant que les bibliothèques d’analyse de sentiments attribuent des scores aux emojis courants, comme elles le font pour l’argot populaire.
Argot
La langue évolue sans cesse, y compris le lexique de chaque génération comme « smol », « stan », « woke » et « salty ». Comme pour les emojis, votre outil d’analyse de sentiments peut avoir du mal ici.
Après tout, il semble qu'un nouveau mot d'argot inspiré des mèmes apparaisse tous les quelques mois. L’argot qui persiste et qui pourrait apparaître dans les avis et sur les réseaux sociaux peut être ajouté à la bibliothèque de sentiment et recevoir un score positif, neutre ou négatif... tout comme n'importe quel autre mot !
Notre dictionnaire de langue évolue constamment. Je me souviens du roulement d’yeux collectif lorsque YOLO (You Only Live Once, pour les non-initiés) a fait son entrée dans le dictionnaire en ligne Oxford en 2014. Cependant, les analyseurs de sentiment peuvent avoir de l’espoir : cela signifie que les dictionnaires de ML peuvent également évoluer. Les meilleurs outils d’analyse de sentiment seront capables d’intégrer le nouvel argot grâce à des mises à jour logicielles ou via une saisie manuelle de l’utilisateur.
Le juste milieu : qu’est-ce qu’un sentiment neutre ?
Une bonne manière de poser les bases pour entraîner le machine learning est de prendre un moment pour réfléchir à ce que signifie exactement « neutre ». J’ai beaucoup parlé des exemples positifs et négatifs pour un analyseur de sentiment, mais ces deux sentiments dépendent du fait d’avoir une définition claire du neutre. On peut dire que le neutre est l’une des parties les plus importantes du processus.
Mais comment définit-on le neutre ? Voici 3 façons de commencer :
- Inclure des tests objectifs. Rappelez-vous l’exemple ci-dessus : cette chemise est bleue. La voiture est jaune. L’arbre a des feuilles. Ce sont toutes des affirmations objectives basées sur des faits. Elles n’ont aucun sentiment positif ou négatif associé.
- Filtrer tout ce qui est hors sujet. Les informations non pertinentes ne vous aideront pas à déterminer si quelque chose est positif ou négatif. Par exemple, si un avis sur un sèche-linge commence par une anecdote, comme : « Je suis allé au sous-sol et j’ai jeté les vêtements mouillés dans le sèche-linge, pour découvrir qu’il était cassé », cette information n’est pas pertinente pour le sentiment de l’avis lui-même et peut être exclue.
- Ignorer les suggestions. Ce n’est pas une règle absolue, mais la plupart du temps, les suggestions ne contribuent pas au sentiment. Si vous voyez des avis où les clients souhaiteraient qu’un article ait une fonctionnalité, cela ne vous dit pas grand-chose sur leur sentiment. Vous pourriez penser que c’est négatif, ce qui peut être le cas. Par exemple : « Le steak était affreux, j’aurais préféré qu’il ne soit pas trop cuit », c’est négatif. Mais les souhaits et envies peuvent aussi apparaître dans des avis positifs : « Le gâteau était délicieux, j’aurais aimé qu’il y en ait plus » ou « J’adore tout dans cette chemise, j’aurais aimé qu’elle existe en 100 couleurs .»
Avoir un neutre clairement défini est la pierre angulaire de toute analyse de sentiment. Toute analyse commence par le neutre, après tout, puis s’oriente vers le positif ou le négatif à mesure que le texte est évalué.
Conclusion
L’analyse de sentiment est un type d’outil de machine learning. Le machine learning fonctionne avec le traitement du langage naturel pour constituer les éléments de base du processus d’analyse de sentiment.
Le machine learning, cependant, n’est qu’un mode d’apprentissage pour les ordinateurs, et il ne doit pas forcément être lié à l’analyse de sentiment. Il existe aussi du machine learning pour les chatbots de service client, la prévision commerciale, les moteurs de recommandations de produits, la tarification dynamique et bien plus encore.
Abonnez-vous à la newsletter The CX Lead pour plus d’analyses d’experts sur l’expérience client et l’expérience utilisateur.
À lire aussi : 10 meilleurs logiciels de service client pour PME et grands comptes
