L’astrologie a depuis toujours, été un sujet de controverse dans le monde de la science. En effet, nombreux sont ceux qui considèrent que les astres n’ont aucune influence sur la vie d’un individu. D’un autre côté, il y a ceux qui accordent beaucoup d’importance à ce type d’étude. Mais qu’en est-il vraiment ? Les astres peuvent-ils réellement influencer la réalité ? Pour répondre à ces questions, et afin de départager les opinions divergentes, nous avons alors décidé de recourir à la data science. Voici donc tout ce qu’il y a à savoir sur cette expérience et les résultats qu’on a pu en tirer.
Comment utiliser la data science pour démontrer l’efficacité de l’astrologie ?
Comme la technologie du big data ne cesse d’évoluer chaque jour, on retrouve donc petit à petit de nombreuses applications de la data science dans de nombreux domaines de la vie quotidienne. Cette fois-ci, par exemple, la data science a été utilisée dans le but de démontrer comment fonctionne l’astrologie, et dans l’optique de savoir si celle-ci est une « vraie science » ou bien considérée comme étant une « pseudoscience ». Mais comment résoudre ces problématiques avec la data science ?
Pour répondre à cette question, analysons le projet Horoscope réalisé par une étudiante en Data mining. Ce projet consiste à utiliser des données Twitter pour prédire les emojis de chaque horoscope à l’aide d’un package Machine Learning nommé Bertmoticon. Celui-ci est est adapté au modèle BERT.
À noter que ces données ont été extraites à partir de nombreux comptes Twitter populaires traitant l’horoscope (Cancer, Lion, Bélier, Taureau, etc.).
Bertmoticon : Explorant les Liens entre l’Astrologie et la Data Science
Maintenant qu’on connaît le nom du package d’apprentissage automatique utilisé pour ce projet, passons à l’analyse de ce package pour comprendre son fonctionnement.
Notons ainsi que pour pouvoir fonctionner, Bertmoticon a besoin de 3 fichiers ou programmes principaux qui sont :
- Testastroold.py ;
- Exploratory_data_analysis1.py ;
- Astro-emojis.py.
Voyons un à un les détails de ces fichiers.
Testastroold.py
Ce premier fichier permet de récupérer les données sur Twitter : des anciens tweets jusqu’aux plus récents, de manière à obtenir un maximum de données. Pour ce faire, il utilise snscrape, anciennement connu sous l’appellation GetOldTweets3. En effet, ce dernier n’est plus compatible avec la version actuelle de Twitter.
Il convient de préciser que ces données sont récupérées à partir de différents comptes Twitter astrologiques. Aussi, nous avons choisi des tweets issus de comptes populaires et récents qui ont été tweetés et suivis par de nombreux autres utilisateurs de la plateforme.
Les tweets ne sont filtrés dans le fichier csv que s’il y a plus de 100 likes. Le but est de garantir la légitimité des tweets récupérés et d’éliminer ainsi les spams.
Exploratory_data_analysis1.py
Ce deuxième programme intervient dans le prétraitement des tweets collectés. Dans ce contexte, il se charge ainsi de nombreuses tâches, à savoir :
- Le stemming ou la radicalisation
Pour ce processus, on a recours à l’algorithme SnowballStemmer. Le but du stemming est de réduire les mots à leur racine. À titre d’exemple, les mots « aime », « aimé » et « aimant » sont tous réduits par l’algorithme au mot « amour ». Cela réduit, ainsi, considérablement l’erreur d’estimation, bien qu’il y ait un compromis d’augmentation de l’erreur de Bayes.
- La lemmatisation
En linguistique computationnelle, la lemmatisation désigne un processus algorithmique qui vise à déterminer le lemme ou la forme canonique d’un mot selon sa signification prévue. À la différence du stemming, ce procédé prend en compte le contexte, c’est-à-dire, la signification du mot dans la phrase entière, voire dans le document entier.
- La suppression des mots vides
Sont considérés comme mots vides, les mots courants qui n’ajoutent aucune valeur à la signification du message, comme par exemple, les mots « le » ou encore « et ». Leur suppression permet de réduire l’erreur d’estimation, ce qui est particulièrement utile lorsqu’on travaille avec moins de points de données.
- La suppression des textes inutiles
Il s’agit des éléments qui n’ont aucun rapport avec le message global du texte. Il peut, ainsi, s’agir des URLs, des hashtags, du nom d’utilisateur, des signes de retweet (RT) ou encore des chiffres.
Les tweets prétraités et nettoyés sont mis à jour dans le même fichier csv. À noter que ce processus de prétraitement permet de rendre les résultats de Bertmoticon plus précis.
Astro-emojis.py
Il s’agit du dernier fichier à exécuter.
Astro-emojis.py exécute Bertmoticon et déduit les emojis à partir du fichier csv mis à jour et généré à partir d’Exploratory_data_analysis1.py.
Ensuite, il prend un hashmap et génère les probabilités totales de tous les emojis. À noter que l’emoji au visage riant est, en quelque sorte, déduit dans chaque tweet. Il a donc souvent été ignoré.
Après ces processus, il ne reste qu’à réaliser une représentation graphique des probabilités d’emoji de chaque horoscope. Ensuite, il faut effectuer une analyse visant à relever les similitudes et les différences.
Vous souhaitez vous former au Big Data ? Retrouvez les formations Data Full Stack et Data Analyst qui vous forment aux métiers de Data Analyst, Data Scientist, Data Engineer et AI Scientist.
Merci pour votre lecture ! Si vous souhaitez lire nos prochains articles autour de la Data et de l’IA, vous pouvez nous suivre sur Facebook, LinkedIn et Twitter pour être notifié lorsqu’un nouvel article est publié !