L'insuffisance des données est souvent l'un des principaux revers pour la plupart des projets de science des données. Cependant, savoir comment collecter des données pour tout projet dans lequel vous souhaitez vous lancer est une compétence importante que vous devez acquérir en tant que data scientist.
Les scientifiques des données et les ingénieurs en apprentissage automatique utilisent désormais des techniques modernes de collecte de données pour acquérir plus de données pour les algorithmes d'entraînement. Si vous envisagez de vous lancer dans votre premier projet de science des données ou d'apprentissage automatique, vous devez également être en mesure d'obtenir des données.
Comment pouvez-vous vous faciliter la tâche? Jetons un coup d'œil à quelques techniques modernes que vous pouvez utiliser pour collecter des données.
Pourquoi vous avez besoin de plus de données pour votre projet de science des données
Les algorithmes d'apprentissage automatique dépendent des données pour devenir plus précis, plus précis et plus prédictifs. Ces algorithmes sont formés à l'aide d'ensembles de données. Le processus de formation est un peu comme apprendre à un enfant le nom d'un objet pour la première fois, puis lui permettre de l'identifier seul lorsqu'il le verra ensuite.
Les êtres humains n'ont besoin que de quelques exemples pour reconnaître un nouvel objet. Ce n'est pas le cas pour une machine, car elle a besoin de centaines ou de milliers d'exemples similaires pour se familiariser avec un objet.
Ces exemples ou objets de formation doivent se présenter sous la forme de données. Un algorithme d'apprentissage automatique dédié parcourt ensuite cet ensemble de données appelé ensemble d'apprentissage et en apprend davantage à son sujet pour devenir plus précis.
Cela signifie que si vous ne fournissez pas suffisamment de données pour entraîner votre algorithme, vous risquez de ne pas obtenir le bon résultat à la fin de votre projet car la machine ne dispose pas de suffisamment de données pour apprendre.
Il est donc nécessaire d'obtenir des données adéquates pour améliorer la précision de votre résultat. Voyons ci-dessous quelques stratégies modernes que vous pouvez utiliser pour y parvenir.
1. Récupération de données directement à partir d'une page Web
Le scraping Web est un moyen automatisé d'obtenir des données sur le Web. Dans sa forme la plus élémentaire, le web scraping peut impliquer la copie et le collage des éléments d'un site Web dans un fichier local.
Cependant, le scraping Web implique également l'écriture de scripts spéciaux ou l'utilisation d'outils dédiés pour récupérer directement les données d'une page Web. Cela pourrait également impliquer une collecte de données plus approfondie en utilisant Interfaces de programmation d'application (API) comme Serpstack.
Avec l'API serpstack, vous pouvez facilement glaner des informations sur les pages de résultats de Google et d'autres moteurs de recherche.
Bien que certaines personnes pensent que le web scraping pourrait entraîner une perte de propriété intellectuelle, cela ne peut se produire que lorsque les gens le font de manière malveillante. Le scraping Web est légal et aide les entreprises à prendre de meilleures décisions en recueillant des informations publiques sur leurs clients et concurrents.
En rapport: Qu'est-ce que le Web Scraping? Comment collecter des données sur des sites Web
Par exemple, vous pouvez écrire un script pour collecter des données dans les magasins en ligne afin de comparer les prix et la disponibilité. Bien que cela puisse être un peu plus technique, vous pouvez également collecter des médias bruts tels que des fichiers audio et des images sur le Web.
Jetez un œil à l'exemple de code ci-dessous pour avoir un aperçu du web scraping avec Python beautifulsoup4 Bibliothèque d'analyseur HTML.
depuis bs4 importer BeautifulSoup
depuis urllib.request import urlopen
url = "Entrez ici l'URL complète de la page Web cible"
targetPage = urlopen (url)
htmlReader = targetPage.read (). decode ("utf-8")
webData = BeautifulSoup (htmlReader, "html.parser")
impression (webData.get_text ())
Avant d'exécuter l'exemple de code, vous devez installer la bibliothèque. Créer un environnement virtuel à partir de votre ligne de commande et installez la bibliothèque en exécutant pip installer beautifulsoup4.
2. Via des formulaires Web
Vous pouvez également utiliser les formulaires en ligne pour la collecte de données. Ceci est particulièrement utile lorsque vous avez un groupe cible de personnes auprès duquel vous souhaitez collecter les données.
Un inconvénient de l'envoi de formulaires Web est que vous risquez de ne pas collecter autant de données que vous le souhaitez. C'est assez pratique pour les petits projets ou didacticiels de science des données, mais vous risquez de rencontrer des contraintes en essayant d'atteindre un grand nombre de personnes anonymes.
Bien que des services de collecte de données en ligne payants existent, ils ne sont pas recommandés pour les particuliers, car ils sont généralement trop chers, sauf si cela ne vous dérange pas de dépenser de l'argent sur le projet.
Il existe différents formulaires Web pour collecter des données auprès des personnes. L'un d'eux est Google Forms, auquel vous pouvez accéder en accédant à forms.google.com. Tu peux utiliser Google Forms pour collecter des informations de contact, données démographiques et autres détails personnels.
Une fois que vous avez créé un formulaire, tout ce que vous avez à faire est d'envoyer le lien à votre public cible par courrier, SMS ou tout autre moyen disponible.
Cependant, Google Forms n'est qu'un exemple de formulaires Web populaires. Il existe de nombreuses alternatives qui font également d'excellents travaux de collecte de données.
Vous pouvez également collecter des données via des médias sociaux tels que Facebook, LinkedIn, Instagram et Twitter. Obtenir des données à partir des médias sociaux est un peu plus technique que toute autre méthode. Il est entièrement automatisé et implique l'utilisation de différents outils API.
Les médias sociaux peuvent être difficiles à extraire des données car ils sont relativement peu organisés et en grande quantité. Correctement organisé, ce type d'ensemble de données peut être utile dans les projets de science des données impliquant l'analyse des sentiments en ligne, l'analyse des tendances du marché et la stratégie de marque en ligne.
Par exemple, Twitter est un exemple de source de données de médias sociaux où vous pouvez collecter un grand volume d'ensembles de données avec son tweepy Package d'API Python, que vous pouvez installer avec le pip installer tweepy commander.
Pour un exemple de base, le bloc de code pour extraire les Tweets de la page d'accueil Twitter ressemble à ceci:
importer tweepy
importer re
myAuth = tweepy. OAuthHandler (collez la clé consumer_key ici, collez la clé consumer_secret ici)
auth.set_access_token (collez access_token ici, collez access_token_secret ici)
authentifier = tweepy. API (myAuth)
target_tweet = api.home_timeline ()
pour les cibles dans target_tweet:
print (cibles.text)
Vous pouvez visiter le docs.tweepy.org site Web pour accéder au tweepy documentation pour plus de détails sur son utilisation. Pour utiliser l'API de Twitter, vous devez demander un compte de développeur en vous rendant sur le developer.twitter.com site Internet.
Facebook est une autre plate-forme de médias sociaux puissante pour la collecte de données. Il utilise un point de terminaison d'API spécial appelé l'API Facebook Graph. Cette API permet aux développeurs de collecter des données sur les comportements d'utilisateurs spécifiques sur la plate-forme Facebook. Vous pouvez accéder à la documentation de l'API Facebook Graph à l'adresse développeurs.facebook.com pour en savoir plus.
Une explication détaillée de la collecte de données sur les réseaux sociaux avec l'API dépasse le cadre de cet article. Si vous souhaitez en savoir plus, vous pouvez consulter la documentation de chaque plate-forme pour des connaissances approfondies à leur sujet.
En plus d'écrire des scripts pour se connecter à un point de terminaison d'API, des données de médias sociaux collectant des outils tiers tels que Expert en grattage et bien d'autres sont également disponibles. Cependant, la plupart de ces outils Web ont un prix.
4. Collecte d'ensembles de données préexistants à partir de sources officielles
Vous pouvez également collecter des ensembles de données préexistants à partir de sources faisant autorité. Cette méthode consiste à visiter les banques de données officielles et à télécharger des ensembles de données vérifiés à partir de celles-ci. Contrairement au scraping Web et à d'autres options, cette option est plus rapide et ne nécessite que peu ou pas de connaissances techniques.
Les ensembles de données sur ces types de sources sont généralement disponibles aux formats CSV, JSON, HTML ou Excel. Quelques exemples de sources de données faisant autorité sont Banque mondiale, UNdata, et plusieurs autres.
Certaines sources de données peuvent rendre les données actuelles privées pour empêcher le public d'y accéder. Cependant, leurs archives sont souvent disponibles en téléchargement.
Plus de sources de jeux de données officielles pour votre projet d'apprentissage automatique
Cette liste devrait vous donner un bon point de départ pour obtenir différents types de données à utiliser dans vos projets.
- Portail des données ouvertes de l'UE
- Ensembles de données Kaggle
- Recherche d'ensembles de données Google
- Hub de données
- Registre des données ouvertes sur AWS
- Agence gouvernementale européenne - Données et cartes
- Données ouvertes Microsoft Research
- Référentiel génial d'ensembles de données publics sur GitHub
- Données. Gov: le berceau des données ouvertes du gouvernement américain
Il y a beaucoup plus de sources que cela, et une recherche minutieuse vous récompensera avec des données parfaites pour vos propres projets de science des données.
Combinez ces techniques modernes pour de meilleurs résultats
La collecte de données peut être fastidieuse lorsque les outils disponibles pour la tâche sont limités ou difficiles à comprendre. Alors que les méthodes plus anciennes et conventionnelles fonctionnent toujours bien et sont inévitables dans certains cas, les méthodes modernes sont plus rapides et plus fiables.
Cependant, plutôt que de compter sur une seule méthode, une combinaison de ces méthodes modernes de collecte de vos données a le potentiel de donner de meilleurs résultats.
Vous souhaitez vous lancer dans l'analyse de données? Voici quelques outils que vous devriez apprendre.
- Programmation
- Python
- Big Data
- Apprentissage automatique
- Collecte de données
- L'analyse des données
Idowu est passionné par tout ce qui concerne les technologies intelligentes et la productivité. Pendant son temps libre, il joue avec le codage et passe à l'échiquier quand il s'ennuie, mais il aime aussi rompre avec la routine de temps en temps. Sa passion pour montrer aux gens le chemin de la technologie moderne le motive à écrire davantage.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!
Un pas de plus…!
Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.