Learning
27-10-2019
Big Data Scientist & Engineer
,Inhoudsopgave
Samenvatting..........................................................................................................................................2
Introductie..............................................................................................................................................3
Gebruikte modellen................................................................................................................................4
Support Vector Machine (SVM)..........................................................................................................4
Random Forest...................................................................................................................................4
Naive Bayes........................................................................................................................................4
Het proces..............................................................................................................................................5
De data inladen..................................................................................................................................5
Kaggle dataset................................................................................................................................5
Eigen reviews toevoegen................................................................................................................5
Web scraping..................................................................................................................................6
Data voorbereiden..............................................................................................................................7
Data sentiments.................................................................................................................................9
Grafieken data sentiment.............................................................................................................12
Data cleaning....................................................................................................................................14
Training & Test sets......................................................................................................................15
Data klaarzetten voor classifiers...................................................................................................15
Modellen..............................................................................................................................................17
Support Vector Machine (SVM)........................................................................................................17
Random Forest model......................................................................................................................18
NaiveBayes model............................................................................................................................20
Resultaten............................................................................................................................................22
Conclusie..............................................................................................................................................23
Literatuurlijst........................................................................................................................................24
, Samenvatting
In dit verslag wordt er beschreven hoe machine learning toegepast kan worden via RStudio. Ik heb
voor deze opdracht gebruik gemaakt van de modellen Support Vector Machine (SVM), Random
Forest en NaiveBayes.
In deze opdracht heb ik gebruik gemaakt van het hotel reviews dataset van de site Kaggle. Deze
dataset bevat meer dan 515 duizend hotelreviews. Om deze data niet telkens opnieuw in te hoeven
laden heb ik een script geschreven die contact maakt met een database. Daarnaast heb ik ook scripts
geschreven om eigen reviews en web scraped reviews toe te kunnen voegen aan deze database.
Vervolgens ben ik gestart met een analyse naar de data binnen mijn reviews. Zo ben ik gestart met
het bekijken van mijn meest voorkomende woorden binnen de data. Daarna heb ik een sentiment
analyse gedaan naar de positieve en negatieve woorden binnen mijn datasets. De woorden die vaak
voorkomen maar geen sentimentele waarde bevatten heb ik toegevoegd aan mijn stopwoorden.
Deze stopwoorden worden later uit de data gefilterd aan de hand van corpus cleaning.
Na het opschonen van de data binnen de datasets met corpus cleaning ben ik begonnen met het
trainen van mijn modellen. Al mijn modellen hebben accuracy scores gehaald boven de 90%.
Aangezien ik met een kleine dataset gewerkt hebt tijdens het trainen en testen waren alle modellen
ook zeer snel klaar. Het random forest model was het snelste klaar van alle drie de modellen en had
de hoogste accuracy bereikt met een waarde van 100%. NaiveBayes had in eerste instantie een hele
lage accuracy waardoor de voorspelling ook niet accuraat was. Nadat ik de accuracy omhoog had
gehaald presteerde alle modellen goed en gaven ze accurate voorspellingen. Het SVM model zou het
minst geschikt zijn voor dit soort predicties wanneer er gewerkt zou worden met grotere datasets,
aangezien dit proces dan zeer vel tijd in beslag neemt.