Table des matières[Cacher][Montrer]
Les entreprises auront maîtrisé l'acquisition de données d'interaction avec les consommateurs d'ici 2021.
En revanche, une dépendance excessive à l'égard de ces points de données conduit souvent les organisations à traiter les commentaires des clients comme des statistiques - une approche plutôt unidimensionnelle pour écouter la voix du client.
La voix du client ne peut pas être badgée ou convertie en numéro.
Il faut le lire, le condenser et surtout le comprendre.
Le fait est que les entreprises doivent écouter activement ce que leurs consommateurs ont à dire sur tous les canaux par lesquels ils interagissent avec eux, que ce soit par le biais d'appels téléphoniques, d'e-mails ou de chat en direct.
Chaque entreprise devrait accorder la priorité à la surveillance et à l'évaluation des commentaires des consommateurs, mais les entreprises ont traditionnellement eu du mal à gérer ces données et à les transformer en informations significatives.
Ce n'est plus le cas avec l'analyse des sentiments.
Dans ce didacticiel, nous examinerons de plus près l'analyse des sentiments, ses avantages et l'utilisation de NLTK bibliothèque pour effectuer une analyse des sentiments sur les données.
Qu'est-ce que l'analyse des sentiments ?
L'analyse des sentiments, souvent connue sous le nom de conversation mining, est une méthode d'analyse des sentiments, des pensées et des points de vue des personnes.
L'analyse des sentiments permet aux entreprises de mieux comprendre leurs consommateurs, d'augmenter leurs revenus et d'améliorer leurs produits et services en fonction des commentaires des clients.
La différence entre un système logiciel capable d'analyser le sentiment des clients et un vendeur/représentant du service client qui tente de le déduire réside dans la capacité du premier à tirer des résultats objectifs du texte brut - ceci est principalement accompli grâce au traitement du langage naturel (TLN) et machine learning Techniques.
De l'identification des émotions à la catégorisation de texte, l'analyse des sentiments a un large éventail d'applications. Nous utilisons l'analyse des sentiments sur des données textuelles pour aider une entreprise à surveiller le sentiment des évaluations de produits ou des commentaires des consommateurs.
Différents sites de médias sociaux l'utilisent pour évaluer le sentiment des publications, et si l'émotion est trop forte ou violente, ou tombe en dessous de leur seuil, la publication est soit supprimée, soit masquée.
L'analyse des sentiments peut être utilisée pour tout, de l'identification des émotions à la catégorisation du texte.
L'utilisation la plus populaire de l'analyse des sentiments concerne les données textuelles, où elle est utilisée pour aider une entreprise à suivre le sentiment des évaluations de produits ou des commentaires des consommateurs.
Différents sites de médias sociaux l'utilisent également pour évaluer le sentiment des messages, et si l'émotion est trop forte ou violente, ou tombe en dessous de leur seuil, ils suppriment ou masquent le message.
Avantages de l'analyse des sentiments
Voici quelques-uns des avantages les plus importants de l'analyse des sentiments qui ne doivent pas être négligés.
- Aide à évaluer la perception de votre marque auprès de votre groupe démographique cible.
- Les commentaires directs des clients sont fournis pour vous aider à développer votre produit.
- Augmente le chiffre d'affaires et la prospection.
- Les opportunités de vente incitative pour les champions de votre produit ont augmenté.
- Un service client proactif est une option pratique.
Les chiffres peuvent vous fournir des informations telles que les performances brutes d'une campagne marketing, le degré d'engagement dans un appel de prospection et le nombre de tickets en attente dans le support client.
Cependant, il ne vous dira pas pourquoi un événement spécifique s'est produit ou ce qui l'a causé. Des outils d'analyse comme Google et Facebook, par exemple, peuvent vous aider à évaluer les performances de vos efforts de marketing.
Mais ils ne vous fournissent pas une connaissance approfondie des raisons pour lesquelles cette campagne spécifique a réussi.
L'analyse des sentiments a le potentiel de changer la donne à cet égard.
Analyse des sentiments - Énoncé du problème
L'objectif est de déterminer si un tweet a une émotion favorable, négative ou neutre concernant six compagnies aériennes américaines sur la base des tweets.
Il s'agit d'un travail d'apprentissage supervisé standard dans lequel nous devons catégoriser une chaîne de texte en catégories prédéterminées en fonction d'une chaîne de texte.
Solution
Nous utiliserons le processus d'apprentissage automatique standard pour résoudre ce problème. Nous commencerons par importer les bibliothèques et les ensembles de données nécessaires.
Ensuite, nous effectuerons une analyse exploratoire des données pour déterminer s'il existe des modèles dans les données. Ensuite, nous entreprendrons le prétraitement du texte pour transformer les données numériques d'entrée textuelles qu'un machine learning système peut utiliser.
Enfin, nous entraînerons et évaluerons nos modèles d'analyse des sentiments à l'aide de méthodes d'apprentissage automatique.
1. Importation de bibliothèques
Chargez les bibliothèques nécessaires.
2. Importer un ensemble de données
Cet article sera basé sur un jeu de données qui peut être trouvé sur Github. L'ensemble de données sera importé à l'aide de la fonction CSV de lecture de Pandas, comme indiqué ci-dessous :
À l'aide de la fonction head(), examinez les cinq premières lignes de l'ensemble de données :
Sortie :
3. Analyse des données
Examinons les données pour déterminer s'il y a des tendances. Mais d'abord, nous allons modifier la taille de tracé par défaut pour rendre les graphiques plus visibles.
Commençons par le nombre de tweets reçus par chaque compagnie aérienne. Nous utiliserons un graphique à secteurs pour cela :
Le pourcentage de tweets publics pour chaque compagnie aérienne est affiché dans la sortie.
Voyons comment les sentiments sont répartis sur tous les tweets.
Sortie :
Examinons maintenant la répartition du sentiment pour chaque compagnie aérienne spécifique.
Selon les résultats, la majorité des tweets de presque toutes les compagnies aériennes sont défavorables, suivis de tweets neutres et bons. Virgin America est peut-être la seule compagnie aérienne où la proportion des trois sentiments est comparable.
Sortie :
Enfin, nous utiliserons la bibliothèque Seaborn pour obtenir le niveau de confiance moyen des tweets de trois catégories de sentiments.
Sortie :
Le résultat montre que le niveau de confiance des tweets négatifs est supérieur à celui des tweets positifs ou neutres.
4. Nettoyer les données
De nombreux termes d'argot et signes de ponctuation peuvent être trouvés dans les tweets. Avant de pouvoir former le modèle d'apprentissage automatique, nous devons nettoyer nos tweets.
Cependant, avant de commencer à nettoyer les tweets, nous devons séparer notre ensemble de données en ensembles de fonctionnalités et d'étiquettes.
Nous pouvons nettoyer les données une fois que nous les avons séparées en fonctionnalités et ensembles de formation. Des expressions régulières seront utilisées pour ce faire.
5. Représentation numérique du texte
Pour former des modèles d'apprentissage automatique, les algorithmes statistiques utilisent les mathématiques. Les mathématiques, en revanche, ne travaillent qu'avec des nombres.
Nous devons d'abord transformer le texte en chiffres pour que les algorithmes statistiques le traitent. Il existe trois méthodes de base pour le faire : Bag of Words, TF-IDF et Word2Vec.
Heureusement, la classe TfidfVectorizer du module Scikit-Learn de Python peut être utilisée pour transformer des caractéristiques de texte en vecteurs de caractéristiques TF-IDF.
6. Création d'ensembles de formation et de test basés sur les données
Enfin, nous devons diviser nos données en ensembles d'entraînement et de test avant d'entraîner nos algorithmes.
L'ensemble de formation sera utilisé pour former l'algorithme, et l'ensemble de test sera utilisé pour évaluer les performances du modèle d'apprentissage automatique.
7. Développement de modèles
Une fois les données séparées en ensembles d'apprentissage et de test, des techniques d'apprentissage automatique sont utilisées pour apprendre à partir des données d'apprentissage.
Vous pouvez utiliser n'importe quel algorithme d'apprentissage automatique. L'approche Random Forest, cependant, sera utilisée en raison de sa capacité à traiter des données non normalisées.
8. Prédictions et évaluation du modèle
Une fois le modèle formé, la dernière étape consiste à faire des prédictions. Pour ce faire, nous devons appliquer la méthode predict à l'objet de classe RandomForestClassifier que nous avons formé.
Enfin, des mesures de classification telles que les mesures de confusion, les mesures F1, la précision, etc. peuvent être utilisées pour évaluer les performances des modèles d'apprentissage automatique.
Sortie :
Notre algorithme a atteint une précision de 75.30, comme le montrent les résultats.
Conclusion
L'analyse des sentiments est l'une des tâches les plus fréquentes de la PNL, car elle permet d'identifier l'opinion publique globale sur une question spécifique.
Nous avons vu comment plusieurs bibliothèques Python peuvent aider à l'analyse des sentiments.
Nous avons mené une étude sur les tweets publics de six compagnies aériennes américaines et avons atteint une précision d'environ 75 %.
Je vous suggère d'essayer un autre algorithme d'apprentissage automatique, tel que la régression logistique, SVM ou KNN, pour voir si vous pouvez obtenir de meilleurs résultats.
Soyez sympa! Laissez un commentaire