Onvoldoende data is vaak een van de grootste tegenslagen voor de meeste data science-projecten. Weten hoe u gegevens kunt verzamelen voor elk project waaraan u wilt beginnen, is echter een belangrijke vaardigheid die u als datawetenschapper moet verwerven.
Datawetenschappers en machine learning-ingenieurs gebruiken nu moderne technieken voor het verzamelen van gegevens om meer gegevens te verzamelen voor het trainen van algoritmen. Als u van plan bent om aan uw eerste datawetenschap- of machine learning-project te beginnen, moet u ook gegevens kunnen verzamelen.
Hoe kunt u het proces voor uzelf gemakkelijk maken? Laten we eens kijken naar enkele moderne technieken die u kunt gebruiken om gegevens te verzamelen.
Waarom u meer gegevens nodig heeft voor uw Data Science-project
Algoritmen voor machine learning zijn afhankelijk van gegevens om nauwkeuriger, nauwkeuriger en voorspellend te worden. Deze algoritmen worden getraind met behulp van sets gegevens. Het trainingsproces is een beetje zoals een peuter voor de eerste keer de naam van een object leren, en hem dan alleen de naam geven als hij het weer ziet.
Mensen hebben maar een paar voorbeelden nodig om een nieuw object te herkennen. Dat is niet zo voor een machine, want die heeft honderden of duizenden soortgelijke voorbeelden nodig om vertrouwd te raken met een object.
Deze voorbeelden of trainingsobjecten moeten in de vorm van gegevens komen. Een speciaal algoritme voor machine learning doorloopt vervolgens die set gegevens, een trainingsset genaamd, en leert er meer over om nauwkeuriger te worden.
Dat betekent dat als u niet genoeg gegevens verstrekt om uw algoritme te trainen, u aan het einde van uw project mogelijk niet het juiste resultaat krijgt omdat de machine niet voldoende gegevens heeft om van te leren.
Het is dus noodzakelijk om over voldoende gegevens te beschikken om de nauwkeurigheid van uw resultaat te verbeteren. Laten we hieronder enkele moderne strategieën bekijken die u kunt gebruiken om dat te bereiken.
1. Gegevens rechtstreeks van een webpagina schrapen
Webscraping is een geautomatiseerde manier om gegevens van internet te halen. In de meest eenvoudige vorm kan webscraping het kopiëren en plakken van de elementen op een website in een lokaal bestand inhouden.
Webscraping omvat echter ook het schrijven van speciale scripts of het gebruik van speciale tools om gegevens rechtstreeks van een webpagina te schrapen. Het kan ook gaan om meer diepgaande gegevensverzameling met behulp van Application Programming Interfaces (API's) zoals Serpstack.
Met de serpstack API kun je eenvoudig informatie uit de resultatenpagina's van Google en andere zoekmachines halen.
Hoewel sommige mensen denken dat webscraping kan leiden tot verlies van intellectueel eigendom, kan dat alleen gebeuren als mensen het kwaadwillig doen. Webscraping is legaal en helpt bedrijven betere beslissingen te nemen door openbare informatie over hun klanten en concurrenten te verzamelen.
Verwant: Wat is webscraping? Gegevens verzamelen van websites
U kunt bijvoorbeeld een script schrijven om gegevens van online winkels te verzamelen om prijzen en beschikbaarheid te vergelijken. Hoewel het misschien wat technischer is, kunt u ook onbewerkte media zoals audiobestanden en afbeeldingen via internet verzamelen.
Bekijk de onderstaande voorbeeldcode om een glimp op te vangen van webscraping met Python's mooiesoep4 HTML-parserbibliotheek.
uit bs4 importeer BeautifulSoup
van urllib.request import urlopen
url = "Voer hier de volledige URL van de doelwebpagina in"
targetPage = urlopen (url)
htmlReader = targetPage.read (). decode ("utf-8")
webData = BeautifulSoup (htmlReader, "html.parser")
afdrukken (webData.get_text ())
Voordat u de voorbeeldcode uitvoert, moet u de bibliotheek installeren. Creëer een virtuele omgeving vanaf uw opdrachtregel en installeer de bibliotheek door pip installeer beautifulsoup4.
2. Via webformulieren
U kunt ook gebruikmaken van online formulieren voor het verzamelen van gegevens. Dit is vooral handig als u een doelgroep heeft met mensen van wie u de gegevens wilt verzamelen.
Een nadeel van het verzenden van webformulieren is dat u mogelijk niet zoveel gegevens verzamelt als u wilt. Het is best handig voor kleine data science-projecten of tutorials, maar je kunt beperkingen tegenkomen bij het bereiken van grote aantallen anonieme mensen.
Hoewel er betaalde onlinegegevensverzamelingsservices bestaan, worden deze niet aanbevolen voor individuen, omdat ze meestal te duur zijn, behalve als u het niet erg vindt om wat geld aan het project uit te geven.
Er zijn verschillende webformulieren om gegevens van mensen te verzamelen. Een daarvan is Google Formulieren, die u kunt openen door naar te gaan formulieren.google.com. Jij kan gebruik Google Formulieren om contactgegevens te verzamelen, demografische gegevens en andere persoonlijke details.
Zodra u een formulier heeft gemaakt, hoeft u de link alleen maar naar uw doelgroep te sturen via e-mail, sms of wat voor beschikbare middelen dan ook.
Google Formulieren is echter slechts een voorbeeld van populaire webformulieren. Er zijn veel alternatieven die ook uitstekend geschikt zijn voor het verzamelen van gegevens.
U kunt ook gegevens verzamelen via sociale media zoals Facebook, LinkedIn, Instagram en Twitter. Gegevens ophalen van sociale media is iets technischer dan welke andere methode dan ook. Het is volledig geautomatiseerd en maakt gebruik van verschillende API-tools.
Sociale media kunnen moeilijk zijn om gegevens uit te halen, omdat het relatief ongeorganiseerd is en er een enorme hoeveelheid van is. Goed georganiseerd, kan dit type dataset nuttig zijn bij data science-projecten met online sentimentenanalyse, analyse van markttrends en online branding.
Twitter is bijvoorbeeld een voorbeeld van een gegevensbron voor sociale media waar je een groot aantal datasets mee kunt verzamelen tweepy Python API-pakket, dat u kunt installeren met het pip install tweepy opdracht.
Voor een eenvoudig voorbeeld ziet het codeblok voor het extraheren van Twitter-homepage Tweets er als volgt uit:
import tweepy
import re
myAuth = tweepy. OAuthHandler (plak consumer_key hier, plak consumer_secret key hier)
auth.set_access_token (plak access_token hier, plak access_token_secret hier)
authenticate = tweepy. API (myAuth)
target_tweet = api.home_timeline ()
voor doelen in target_tweet:
print (doelen. tekst)
U kunt de docs.tweepy.org website om toegang te krijgen tot de tweepy documentatie voor meer details over het gebruik ervan. Om de API van Twitter te gebruiken, moet je een ontwikkelaarsaccount aanvragen door naar het developer.twitter.com website.
Facebook is een ander krachtig platform voor sociale media voor het verzamelen van gegevens. Het maakt gebruik van een speciaal API-eindpunt, de Facebook Graph API. Met deze API kunnen ontwikkelaars gegevens verzamelen over het gedrag van specifieke gebruikers op het Facebook-platform. U kunt de Facebook Graph API-documentatie raadplegen op developers.facebook.com om er meer over te leren.
Een gedetailleerde uitleg van het verzamelen van gegevens via sociale media met API valt buiten het bestek van dit artikel. Als u meer wilt weten, kunt u de documentatie van elk platform raadplegen voor diepgaande kennis over hen.
Naast het schrijven van scripts om verbinding te maken met een API-eindpunt, kunnen gegevens van sociale media die tools van derden verzamelen, zoals Schrapen expert en vele anderen zijn ook beschikbaar. De meeste van deze webtools hebben echter een prijs.
4. Verzamelen van reeds bestaande datasets uit officiële bronnen
U kunt ook reeds bestaande datasets uit gezaghebbende bronnen verzamelen. Deze methode omvat het bezoeken van officiële databanken en het downloaden van geverifieerde datasets van hen. In tegenstelling tot webscraping en andere opties, is deze optie sneller en vereist weinig of geen technische kennis.
De datasets op dit soort bronnen zijn meestal beschikbaar in CSV-, JSON-, HTML- of Excel-indeling. Enkele voorbeelden van gezaghebbende gegevensbronnen zijn Wereldbank, UNdata, en verschillende anderen.
Sommige gegevensbronnen maken de huidige gegevens mogelijk privé om te voorkomen dat het publiek er toegang toe heeft. Hun archieven zijn echter regelmatig beschikbaar om te downloaden.
Meer officiële datasetbronnen voor uw machine learning-project
Deze lijst zou u een goed startpunt moeten geven om verschillende soorten gegevens te gebruiken om mee te werken in uw projecten.
- EU-opendataportaal
- Kaggle-gegevenssets
- Google Dataset Search
- Gegevenshub
- Register van Open Data op AWS
- Europese Overheidsinstelling - Gegevens en kaarten
- Microsoft Research Open Data
- Awesome Public Datasets Repository op GitHub
- Gegevens. Gov: de thuisbasis van de open data van de Amerikaanse overheid
Er zijn veel meer bronnen dan dit, en zorgvuldig zoeken zal u belonen met data die perfect zijn voor uw eigen data science-projecten.
Combineer deze moderne technieken voor betere resultaten
Het verzamelen van gegevens kan vervelend zijn als de beschikbare tools voor de taak beperkt of moeilijk te begrijpen zijn. Hoewel oudere en conventionele methoden nog steeds goed werken en in sommige gevallen onvermijdelijk zijn, zijn moderne methoden sneller en betrouwbaarder.
In plaats van te vertrouwen op één enkele methode, kan een combinatie van deze moderne manieren om uw gegevens te verzamelen betere resultaten opleveren.
Op zoek naar data-analyse? Hier zijn enkele tools die u zou moeten leren.
- Programmeren
- Python
- Big data
- Machine leren
- Gegevensverzameling
- Gegevensanalyse
Idowu is gepassioneerd door alles wat slimme technologie en productiviteit is. In zijn vrije tijd speelt hij met coderen en schakelt hij over naar het schaakbord als hij zich verveelt, maar hij houdt er ook van om af en toe de routine te doorbreken. Zijn passie om mensen de weg te wijzen in moderne technologie, motiveert hem om meer te schrijven.
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Nog een stap…!
Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.