• No results found

Een case study in data mining

N/A
N/A
Protected

Academic year: 2021

Share "Een case study in data mining"

Copied!
97
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

CASESTUDY IN DATAMINING

ONDERZOEK NAAR DE CONSTRUCTIE EN DE BRUIKBAARHEID

VAN VOORSPELLENDE MODELLEN BIJ FILMREVIEWS

Aantal woorden: 18205

Laurens De Croo

Studentennummer: 01503439

Thomas Van Tittelboom

Studentennummer: 01505546

Promotor: Prof. Els Clarysse

Masterproef voorgelegd voor het behalen van de graad master in de Handelswetenschappen

(2)

Vertrouwelijkheidsclausule

PERMISSION

Ondergetekenden verklaren dat de inhoud van deze masterproef mag geraadpleegd en/of gereproduceerd worden, mits bronvermelding.

(3)

Preambule

De impact van Covid-19 op deze masterproef was gering doch aanwezig. Het onderzoek spitste zich voor de maatregelen namelijk toe op de sociaalnetwerksite Twitter. Desondanks hebben we de oorspronkelijke doelstelling van dit onderzoek kunnen behouden: dataminingmodellen opbouwen en testen aan de hand van verschillende filmreviews. Aangezien alle films werden uitgesteld en er geen tweets gecapteerd konden worden, diende de datacollectie op een andere manier te gebeuren. Daarom werd uiteindelijk in samenspraak met de promotor besloten om filmreviews van de Internet Movie Database (IMDb) te gebruiken. De verzamelde data bestonden dusdanig uit reviews uit het verleden, in tegenstelling tot de live tweets zoals oorspronkelijk gepland.

Deze preambule werd in overleg tussen de studenten en de promotor opgesteld en door beiden goedgekeurd.

(4)

Voorwoord

Allereerst wensen we iedereen te bedanken, die mee bijgedragen heeft tot deze masterproef. Met name willen we onze promotor, Els Clarysse, bedanken voor de structurele feedback doorheen dit onderzoek. Eveneens bedanken we graag alle familieleden en vrienden die ons in deze bijzondere tijden geholpen en gesteund hebben. Want bijzondere tijden zijn het, ook in de wereld van datamining. Zoals futuroloog Peter Hinssen (2020) enkele weken geleden aangaf in De Tijd: “Big data is plots bloedserieus geworden: serious data.”

(5)

Inhoudstabel

PREAMBULE ... I

VOORWOORD ... II

INHOUDSTABEL ... III

LIJST MET AFKORTINGEN ... VI

LIJST VAN TABELLEN ... VII

LIJST VAN FIGUREN ... IX

1. INLEIDING ... 1 2. LITERATUURSTUDIE ... 3 2.1 DATAMINING ... 3 2.1.1 ALGEMEEN KADER ... 3 2.1.2 TOEPASSINGEN ... 5 2.1.2.1 Classificatie ... 5 2.1.2.2 Regressie ... 6 2.1.2.3 Clusteren ... 6

2.1.2.4 Selectie van variabelen ... 7

2.1.2.5 Voorspelling van linken ... 8

2.1.3 ALGORITMEN ... 9 2.1.4 DATAMININGPROCES ... 14 2.2 SENTIMENTANALYSE ... 20 2.2.1 ALGEMEEN KADER ... 20 2.2.2 SOORTEN SENTIMENTANALYSE ... 21 2.2.3 GERELATEERDE LITERATUUR ... 22

(6)

3.2 DATA UNDERSTANDING ... 29

3.3 VOORBEREIDING ... 30

3.4 MODELLERING ... 31

3.5 EVALUATIE ... 32

4. RESULTATEN ... 33

4.1 ONCE UPON A TIME…IN HOLLYWOOD (COMEDY/DRAMA, 2019) ... 35

4.1.1 KORTE BESCHRIJVING ... 35

4.1.2 SAMENVATTING TESTFASE ... 35

4.1.3 CONFUSION-MATRIX VAN HET MEEST ACCURATE MODEL ... 36

4.1.4 INFORMATION GAIN ... 38

4.2 FROZEN II (ANIMATIEFILM, 2019) ... 39

4.2.1 KORTE BESCHRIJVING ... 39

4.2.2 SAMENVATTING TESTFASE ... 40

4.2.3 CONFUSION-MATRIX VAN HET MEEST ACCURATE MODEL ... 41

4.2.4 INFORMATION GAIN ... 42

4.3 JOKER (THRILLER, 2019) ... 43

4.3.1 KORTE BESCHRIJVING ... 43

4.3.2 SAMENVATTING TESTFASE ... 44

4.3.3 CONFUSION-MATRIX VAN HET MEEST ACCURATE MODEL ... 45

4.3.4 INFORMATION GAIN ... 47

4.4 AVENGERS: ENDGAME (ACTIE, 2019) ... 48

4.4.1 KORTE BESCHRIJVING ... 48

4.4.2 SAMENVATTING TESTFASE ... 49

4.4.3 CONFUSION-MATRIX VAN HET MEEST ACCURATE MODEL ... 50

4.4.4 INFORMATION GAIN ... 53

4.5 A STAR IS BORN (ROMANTISCHE FILM, 2018) ... 55

4.5.1 KORTE BESCHRIJVING ... 55

4.5.2 SAMENVATTING TESTFASE ... 55

4.5.3 CONFUSION-MATRIX VAN HET MEEST ACCURATE MODEL ... 56

4.5.4 INFORMATION GAIN ... 58

4.6 VERGELIJKING TUSSEN DE MODELLEN ... 59

4.7 TESTFASE OVER DE MODELLEN HEEN ... 61

(7)

5.1 ALGORITMES ... 63 5.2 BRUIKBAARHEID ... 64 5.3 BEPERKINGEN ... 65 6. CONCLUSIE ... 66 BRONNENLIJST: ... X BIJLAGEN ... XX

BIJLAGE 1.1: TESTFASE ONCE UPON A TIME IN HOLLYWOOD ... XX BIJLAGE 1.2: TESTFASE FROZEN II ... XXII BIJLAGE 1.3: TESTFASE JOKER ... XXIV BIJLAGE 1.4: TESTFASE AVENGERS:ENDGAME ... XXVI BIJLAGE 1.5: TESTFASE A STAR IS BORN ... XXVIII

(8)

Lijst met afkortingen

Afkorting Betekenis

AUC Area Under the Curve

CRISP-DM Het Cross-Industry Standard Process for Data Mining

FN False Negative

FP False Positive

GDPR General Data Protection Regulation

IDTFT IDTF Transform

KNN K-Nearest Neighbors

PPV Positive Predictive Value

ROC Relative Operating Characteristic

SVM Support vector machines

TN True Negative

(9)

Lijst van tabellen

TABEL 1: STANDAARDFORMAAT VAN DATA ... 4

TABEL 2: CONFUSION-MATRIX ... 18

TABEL 3: SAMENVATTING TESTFASE ONCE UPON A TIME IN HOLLYWOOD ... 35

TABEL 4: CONFUSION-MATRIX ONCE UPON A TIME IN HOLLYWOOD ... 36

TABEL 5: INFORMATION GAIN ONCE UPON A TIME IN HOLLYWOOD (HOGE SCORES) .. 38

TABEL 6: INFORMATION GAIN ONCE UPON A TIME IN HOLLYWOOD (LAGE SCORES) ... 38

TABEL 7: SAMENVATTING TESTFASE FROZEN II ... 40

TABEL 8: CONFUSION-MATRIX FROZEN II ... 41

TABEL 9: INFORMATION GAIN FROZEN II (HOGE SCORES) ... 42

TABEL 10: INFORMATION GAIN FROZEN II (LAGE SCORES) ... 43

TABEL 11: SAMENVATTING TESTFASE JOKER ... 44

TABEL 12: CONFUSION-MATRIX JOKER ... 45

TABEL 13: INFORMATION GAIN JOKER (HOGE SCORES) ... 47

TABEL 14: INFORMATION GAIN JOKER (LAGE SCORES) ... 47

(10)

TABEL 19: SAMENVATTING TESTFASE A STAR IS BORN ... 55

TABEL 20: CONFUSION-MATRIX A STAR IS BORN ... 56

TABEL 21: INFORMATION GAIN A STAR IS BORN (HOGE SCORES) ... 58

TABEL 22: INFORMATION GAIN A STAR IS BORN (LAGE SCORES) ... 58

(11)

Lijst van figuren

FIGUUR 1: CLUSTERING VAN VERSCHILLENDE SOORTEN IRISSEN ... 7

FIGUUR 2: NAIVE BAYES FORMULE. ... 9

FIGUUR 3: VOORBEELD VAN EEN BESLISSINGSBOOM ... 11

FIGUUR 4: ILLUSTRATIE NEURAAL NETWERK ... 13

FIGUUR 5: CRISP-DM MODEL ... 15

FIGUUR 6: AREA UNDER THE CURVE ... 19

(12)

1.

Inleiding

Dagelijks worden er wereldwijd 500 miljoen tweets en 294 miljard e-mails verstuurd. Daarbovenop wordt er elke dag ook nog eens 4 petabyte, wat overeenkomt met 4 miljoen gigabyte, aan data gegenereerd op het sociale medium Facebook (Desjardins, 2019). Al deze data bevatten potentieel heel wat bruikbare informatie voor onder meer bedrijven die op zoek zijn naar informatie over hun klanten of inzicht willen krijgen in de reactie van klanten op acties van de onderneming. Datamining kan hierbij fungeren als een hulpmiddel om informatie te winnen uit die data, om patronen te herkennen of om voorspellingen te verrichten (Ge, Song, Ding, & Huang, 2017).

In de Verenigde Staten is de filmindustrie met een jaarlijkse omzet van bijna 12 miljard dollar al decennialang een vaste waarde in de entertainmentsector (Richter, 2019). De méér dan 1,2 miljard bezoekers die vorig jaar in de VS naar een film trokken, zorgden voor een schat aan informatie door online hun mening over de bezochte film te uiten (The Numbers, z.d.). Dit door reviews achter te laten op sites als Rotten Tomatoes en IMDB. Deze sites geven bezoekers snel een overzicht van de gemiddelde beoordeling die andere bezoekers aan hun reviews toevoegden. Hoewel we via deze reviews al snel een overzicht krijgen van hoe goed of hoe slecht de film beoordeeld wordt, wordt het volle potentieel van deze reviews vaak nog niet benut. Op deze manier komen we namelijk niets te weten over het waarom. Sentimentanalyse kan hier voor een oplossing zorgen (Pang & Lee, 2008). Sentimentanalyse, ook bekend als opinion mining, bestaat uit de extractie van positieve of negatieve gedachten uit, vaak ongestructureerde, teksten (Pang & Lee, in Thelwall et al, 2010). Op die manier kan aan de hand van een algoritme bepaald worden welke elementen in een review voor het positieve of negatieve gevoel zorgen.

Onderzoek naar een dergelijke analyse op filmreviews is door onder meer Taboada et al. (2011) reeds besproken, maar we willen met dit onderzoek nog een stap verder gaan. Daarom luidt onze onderzoeksvraag: in welke mate verschillen de resultaten en de bruikbaarheid van voorspellende dataminingmodellen van filmreviews? We analyseren de gelijkenissen en de verschillen op basis van een analyse van een duizendtal positieve en negatieve reviews van verschillende genres.

Op vlak van structuur houden we in deze masterproef de standaard aan. Allereerst beginnen we met een literatuurstudie omtrent datamining en al haar facetten. Hiermee willen we een context creëren waarrond ons onderzoek gecentreerd is. Als tweede bespreken we onze

(13)

werkwijze in de methodologie. Daarna vervolledigen we deze paper met de resultaten en de conclusie. Achteraan is de bronnenlijst op alfabetische volgorde toegevoegd.

(14)

2.

Literatuurstudie

In deze literatuurstudie trachten we om de huidige kennis rond ons onderzoeksonderwerp in kaart te brengen. De literatuurstudie is opgesplitst in twee hoofdstukken. Het eerste hoofdstuk behandelt de basisprincipes van datamining, terwijl het tweede hoofdstuk dieper ingaat op de sentimentanalyse die later in dit onderzoek uitgevoerd wordt.

2.1 Datamining

2.1.1 Algemeen kader

Datamining kadert vandaag de dag in de algemene trend die “Big Data” heet. Big data kan het best uitgelegd worden volgens het HACE-theorema (Xindong et al., 2014). Big data begint met een groot volume aan heterogene en autonome bronnen en datamining heeft tot doel om uit die data complexe en evoluerende relaties te ontdekken. Binnen de bedrijfswereld hopen

ondernemingen op die manier, uit de berg aan informatie die hun klanten of potentiële klanten leveren, een competitief voordeel te halen ten opzichte van hun concurrenten. Hiervoor worden vaak diverse vormen van data bijgehouden. Zo worden soms telefoongesprekken door een computer geregistreerd, of worden diverse parameters bij een financiële transactie bewaard (Keim, 2002). Deze data zouden bijvoorbeeld het (winkel)gedrag van klanten in kaart kunnen brengen met het oog op een verbetering van de klantenervaring. Bij bedrijven gebeurt dit vaak aan de hand van specifiek daartoe ontworpen tools, die het bedrijf in staat stellen om informatie uit die data te halen. Het verzamelen en analyseren van deze data wordt ook Business

Intelligence genoemd. Voorbeelden van dergelijke Business Intelligence-tools zijn Power BI en SAS BusinessObject.

Niet alleen in traditionele winkels worden data bijgehouden, ook in de industriële sector kan datamining van nut zijn. Zo wordt datamining er bijvoorbeeld ingezet om data uit processen om te zetten naar bruikbare informatie ter verbetering van diezelfde processen. Daarnaast kan die informatie ook dienen als ondersteuning bij het nemen van beslissingen in de bedrijfsvoering (Ge et al., 2017). Een andere toepassing van datamining speelt zich af in de financiële sector. Daar kampt men onder meer met de gevolgen van financiële fraude. Daarom worden gegevens van rekeningen vaak bijgehouden om fraude te kunnen detecteren. Financiële fraudedetectie wordt in deze context aanzien als het onderscheiden van frauduleuze en reguliere activiteiten (Ngai et al., 2011). Datamining kan hierin een belangrijke rol spelen door patronen te herkennen die anders nooit of bijna nooit ontdekt zouden worden.

(15)

Een essentieel element in de extractie van informatie bij datamining is het model. Het

dataminingmodel is een gesimplificeerd weergave van de werkelijkheid, dat is opgesteld met een bepaald doel voor ogen (Provost & Fawcett, 2013). Datamining kan voor het opstellen van dergelijke modellen ingedeeld worden in twee groepen: supervised en unsupervised machine learning. Machine learning wordt door Oxford Learner’s Dictionary omschreven als een vorm van artificiële intelligentie waar computers grote hoeveelheden data gebruiken om zichzelf aan te leren hoe een taak uitgevoerd moet worden. Dit in tegenstelling tot een programma dat geprogrammeerd is om een taak op een bepaalde manier uit te voeren (Oxford Learner’s Dictionary, z.d.). Datamining kunnen we bijgevolg zien als een toepassing van machine learning (Kotsiantis, 2007).

Tabel 1 is een voorbeeld van hoe data bijgehouden kunnen worden met het oog op supervised machine learning. Elke instantie wordt gekenmerkt door dezelfde verzameling aan features (Kotsiantis, 2007). Deze features zijn waarden die van een instantie bijgehouden worden en kunnen uit verschillende formaten bestaan. Zo kan het meetniveau van een feature ordinaal, nominaal, interval of ratio zijn. We spreken van supervised learning als van elke instantie de uiteindelijke uitkomst gekend is (Kotsiantis, 2007). In dit geval gaat het dus om de kolom die de waarden “good” of “bad” kan bevatten.

Tabel 1: Standaardformaat van data Data in standard format

Case Feature 1 Feature 2 … Feature n Class

1 xxx x xx Good

2 xxx x xx Good

3 xxx x xx Bad

Noot. Herdrukt van “Supervised Machine Learning: A Review of Classification Techniques”, door Kotsiantis, S., 2007, Informatica, 31, p. 249.

Unsupervised learning is net het tegenovergestelde. In dit geval zijn de gehele trainingsdata ongestructureerd en is het de bedoeling om met een algoritme de onderliggende structuur van

(16)

2.1.2 Toepassingen

In dit onderdeel bespreken de we verschillende toepassingen die mogelijk zijn met het opstellen van een dataminingmodel. Belangrijk is dat de toepassing vaak gaat bepalen welk algoritme voor de opdracht gebruikt kan worden. Meer uitleg over de verschillende soorten van algoritmen vinden we terug in onderdeel 2.1.3.

2.1.2.1 Classificatie

Classificatie betekent in deze context het correct beoordelen van een klasse van een instantie aan de hand van de aanwezige parameters. Tabel 1 is een voorbeeld van een

classificatieprobleem. Hierbij wordt een model opgesteld aan de hand van een algoritme om na te gaan of de laatste klasse “good” of “bad” is. Classificatie is gerelateerd aan class probability estimation, waar het model voor elke nieuwe instantie de kans berekent dat die tot een

bepaalde groep behoort (Provost & Fawcett, 2013). Op vlak van validatie wordt bij classificatie vaak gebruik gemaakt van de voorspellende accuraatheid. Hierbij wordt bekeken in hoeveel van de gevallen het model de juiste categorie toewijst aan de ingevoerde instantie.

Als we het voorbeeld uit sectie 2.1.1 rond fraudedetectie concreet maken, kunnen we de accuraatheid bepalen door het aantal correct geclassificeerde gevallen, zowel frauduleus als niet-frauduleus, te delen door het totale aantal geclassificeerde instanties. Hierbij moet

opgemerkt worden dat de accuraatheid niet in elk geval de juiste optie is. In gevallen waar één uitkomst sterk vertegenwoordigd is, kan dit voor problemen zorgen. De kans op een “majority vote”-model is er namelijk groot. Dit houdt in dat het model de hoogste accuraatheid bereikt door alle instanties te classificeren als de klasse die in totaal het vaakst aanwezig is. Dit model mag dan wel een hoge accuraatheid hebben, de economische waarde ervan is quasi nihil als alle frauduleuze gevallen als niet-frauduleus geclassificeerd worden.

(17)

Voor het tegenovergestelde moet ook gewaakt worden: overfitting. Overfitting vindt plaats wanneer het model niet goed generaliseert naar de werkelijkheid (Ying, 2019). Hiervoor zijn er diverse mogelijke oorzaken volgens Ying (2019). Ten eerste is er de mogelijkheid dat er ruis op de trainingsdata zit. In de context van datamining betekent ruis een verkeerde invulling van waarden van attributen of het verkeerd labelen van klassen (Wu & Zhu, 2008). Data cleansing, vrij vertaald het oppoetsen van de data, kan daarbij helpen. Data cleansing maakt deel uit van de derde stap in het CRISP-DM-dataminingproces. Meer daarover in sectie 2.1.4. Een tweede oorzaak voor overfitting volgens Ying (2019) is een te beperkte trainingsdataset. Dat is de dataset die enkel gebruikt wordt met het oog op training en niet om het model te testen. Een laatste mogelijke oorzaak die Ying aanhaalt, is een te complexe classifier.

2.1.2.2 Regressie

Bij regressie is het doel om aan de hand van een model een functie op te stellen die een voorspelling kan maken (Wu et al., 2007). Een uitgewerkt voorbeeld vinden we terug op dataminingplatform Kaggle. Kaggle schrijft ongeveer wekelijks een nieuwe

dataminingcompetitie uit waar iedereen kan aan deelnemen (Kaggle, 2020). Een competitie met regressie als doel is er uitgeschreven rond de Amerikaanse supermarktketen Walmart. Het doel is om een model op te stellen dat een zo correct mogelijke voorspelling kan maken van

verschillende producten die de supermarkt verkoopt. De twee bekendste algoritmen die gebruikmaken van regressie zijn lineaire en logistische regressie. Deze worden verder in deze paper besproken.

2.1.2.3 Clusteren

Clusteren wordt gebruikt met het oog op het vormen van groepen, ook wel clusters genaamd, op basis van gelijkenissen tussen de verschillende instanties (Gorunescu, 2011). Het

eindresultaat moet twee of meerdere groepen opleveren die binnenin veel gelijkenissen vertonen en waarbij elke groep duidelijk verschilt van elkaar. Clustering is een voorbeeld van een unsupervised probleem (Ge et al., 2017). Een veelgebruikt algoritme voor clustering is K-means clustering. Cai en Verbeek (2016) werkten hieromtrent een voorbeeld uit. Het betreft een casus waarbij verschillende soorten irissen onderscheiden moeten worden aan de hand van

(18)

Figuur 1: Clustering van verschillende soorten irissen

Noot. Herdrukt van “Rough Fuzzy C-means and Particle Swarm Optimization Hybridized Method for Information Clustering Problem”, door Cai, F., Verbeek, F., 2016, Journal of

communications, 11, p. 1110

Figuur 1 illustreert de uitkomst van een clustering vertrekkende van drie clusters. De opdeling wordt hier opgemaakt aan de hand van drie elementen: de lengte van het bloemblad, de breedte van het bloemblad en de lengte van het kelkblad. Naargelang het aantal clusters waarnaar initieel wordt gezocht, worden elementen samengenomen om clusters te vormen. Zo kunnen de modellen met drie en vier clusters zeer verschillende resultaten opleveren.

2.1.2.4 Selectie van variabelen

Een volgende belangrijke toepassing van datamining is het selecteren van variabelen. Hierbij is het doel om die variabelen, ook wel features genaamd, te selecteren die belangrijk zijn in het voorspellen van de uitkomst van één variabele (Frank et al., 2004). Naarmate machine learning met complexere en meer uitgebreide data gaat werken, neemt de problematiek rond de focus op enkel nuttige informatie namelijk toe (Blum & Langley, 1997).

Hoe meer variabelen een instantie heeft, hoe meer de dimensionaliteit van de data toeneemt. Een hoge dimensionaliteit heeft negatieve gevolgen met het oog op een selectie van variabelen volgens Liu en Yu (2005).

(19)

Het belangrijkste gevolg is de zogenaamde vloek van dimensionaliteit, wat refereert naar het fenomeen waar data schaarser worden naarmate de dimensionaliteit toeneemt. Dit heeft een negatieve invloed op algoritmen die vooral gericht zijn op data met een lage dimensionaliteit (Li et al., 2017). Hoe schaarser de data, hoe minder data er zijn om het algoritme te trainen. Dit resulteert uiteindelijk in een minder effectief model (Liu & Yu, 2005). In sommige gevallen kan het aantal variabelen zelfs het aantal instanties overstijgen. In dat geval wordt volgens de onderzoekers het best gekeken naar algoritmen die het beste met zo’n hoge dimensionaliteit om kunnen gaan.

Een selectie van variabelen kan bij deze problematiek helpen. Op die manier wordt de dimensionaliteit van de data gereduceerd en wordt de prestatie van het algoritme verbeterd (Xue, Zhang, Browne, & Yao, 2016). We bekomen met andere woorden een beter model door variabelen die geen invloed hebben, weg te laten. Het belang van deze toepassing wordt verder onderstreept door Li et al. (2017). Zij maken de link naar het dataminingmodel, zoals besproken wordt in sectie 2.1.4.

Selectie van variabelen kan namelijk een belangrijke rol spelen in de derde stap: de

voorbereiding van de data. Volgens de onderzoekers kan selectie van variabelen bovendien opgedeeld worden in twee soorten: extractie van variabelen en selectie van variabelen. Extractie van variabelen houdt in dat variabelen uit de hoog-dimensionale omgeving worden gehaald om er een nieuwe laag-dimensionale omgeving van te maken. Die nieuwe omgeving is dan vaak een combinatie van de originele variabelen.

Selectie van variabelen houdt dan weer in dat een subset van variabelen gecreëerd wordt binnen de huidige omgeving.

2.1.2.5 Voorspelling van linken

De focus van het voorspellen van linken bevindt zich in het domein van complexe netwerken, waar meerdere entiteiten met elkaar verbonden zijn (Lü & Zhou, 2011). Denk hierbij

bijvoorbeeld aan een sociaal medium waar mensen met elkaar gaan verbinden. Eén van de uitdagingen waar een dergelijk platform mee kampt, is de vraag of we kunnen afleiden welke interacties er tussen leden mogelijks kunnen ontstaan in de nabije toekomst (Liben-Nowell & Kleinberg, 2007). Een ander voorbeeld van een dergelijke voorspelling is het

(20)

een antwoord bieden op het probleem waarbij wetenschappelijke auteurs maar een beperkt zicht hebben op auteurs waarmee ze samen zouden kunnen werken.

De diverse toepassingen van een voorspelling van linken kan volgens Lü en Zhou (2011) onderverdeeld worden in drie soorten. Ten eerste kan een voorspelling van linken helpen bij het reconstrueren van netwerken. Dit houdt in dat op basis van zo’n voorspelling foutieve of

ontbrekende data kan geïdentificeerd worden in het netwerk (Guimerà & Sales-Pardo, 2009).

Daarnaast wordt een dergelijke voorspelling ingezet bij continue evoluerende modellen volgens Lü en Zhou (2011). Een algoritme voor het voorspellen van linken maakt een voorspelling van welke factoren resulteren in het ontstaan van linken. Dat is exact wat een evoluerend model wil aantonen volgens die auteurs.

Een laatste toepassing is een classificatie in netwerken die niet volledig gelabeld zijn. Het grootste probleem op vlak van classificatie in onvolledig gelabelde netwerken schuilt in het tekort aan gelabelde instanties (Zhang, Shang, & Lü, 2010). Een voorspelling van linken kan hier een oplossing bieden door gelijkenissen op te sporen tussen instanties. Hoe meer gelijkenissen er bestaan tussen de nieuwe instantie en één van de bekende instanties, hoe groter de kans dat de klasse van de nieuwe instantie gelijk zal zijn aan die van de bekende.

2.1.3 Algoritmen

Naive Bayes

Dit is een vorm van voorspellende datamining. Naive Bayes veronderstelt dat de aanwezigheid van een feature onafhankelijk is van andere features in een bepaalde klasse (Rish, 2001). Dit model is gebaseerd op het theorema van Bayes. Figuur 2 illustreert dit theorema.

Figuur 2: Naive Bayes formule.

Noot. Herdrukt van “How to implement a Guassian Naïve Bayes Classifier in Python from scratch?”, by Păpăluță, V., 2020. Geraadpleegd van

(21)

In het kort zegt deze formule dat we de waarschijnlijkheid van A zoeken, gegeven dat B zich voordoet. Hierbij is B de klasse-variabele en A de verzameling van features (Gandhi, 2018). Naive Bayes wordt vaak gebruikt bij tekstrepresentatie waarbij een tekst een opeenvolging van karakters is (Lewis, 1998). Dit is de klassieke voorstelling van een tekst als een verzameling van woorden. Het model kent dan ook een grote toepassing bij sentimentanalyse en in tegenstelling tot andere classifiers is Naive Bayes zeer praktisch vanwege zijn grote schaalbaarheid (Ting et al., 2011). Hierdoor kan een grote hoeveelheid data snel verwerkt worden, al stelt de voorwaarde van onafhankelijke features zich nog wel voorop (Ghandi, 2018).

Beslissingsboom

Een beslissingsboom is een tool om een dataset op te delen in kleinere subdivisies. Dergelijke boom geeft visueel een verzameling mogelijke uitkomsten weer. Vaak wordt een

beslissingsboom voorgesteld a.d.h.v. een flowchart model. Zo bestaat een boom uit meerdere nodes (knopen) en branches (takken). Een boom start altijd met een wortelnode, dit is een eerste beslissing die genomen zal worden. Naast de wortelknoop zijn er ook nog

beslissingsknopen en bladknopen. Beslissingsknopen zijn knopen waar attributen getoetst worden aan een bepaalde stelling. Afhankelijk van de uitkomst van deze test wordt een bepaalde tak gevolgd naar ofwel een nieuwe beslissingsknoop, ofwel een bladknoop. Een bladknoop vormt zich op het einde van een tak en geeft één klasse weer. Een beslissingsboom creëert een segmentatie van een dataset waarbij elk datapunt overeenkomt met een tak en elke blad met een segment (Provost en Fawcett, 2013). Op deze manier vormen beslissingsbomen een tool om data te classificeren en worden ze gebruikt voor voorspellende modellen. Naarmate men de boom afloopt via de verschillende takken, kan men een klasse voorspellen wanneer het blad bereikt wordt.

(22)

Figuur 3 geeft een voorbeeld weer van een beslissingsboom.

Figuur 3: Voorbeeld van een beslissingsboom

Noot. Herdrukt van “Inducing decision trees with an ant colony optimization algorithm” door Otero, F. E. B., Freitas, A., Johnson, C., 2012. Geraadpleegd van

https://www.researchgate.net/figure/An-example-of-a-decision-tree-adapted-from-30-Internal-nodes-including-the-root_fig3_257635858

De knoop “Outlook” vormt een wortelknoop waaruit 3 takken lopen. Indien men van oordeel is dat het om een zonnige dag gaat, wordt de tak ‘sunny’ gevolgd. Daarna volgt opnieuw een test of die dag gekenmerkt wordt door een normale of een hoge luchtvochtigheidsgraad. In figuur 3 duiden de rechthoekige knopen op beslissingsknopen en de ronde knopen (N en P) op

bladknopen en dus op een klasse.

Een beslissingsboom is een geliefd middel aangezien het eenvoudig te lezen en te begrijpen is. Het kan zonder harde data opgesteld worden en is makkelijk te combineren met andere

beslissingstools. Maar zoals uit figuur 3 kan afgeleid worden, kan zo’n boom heel snel evolueren van een simpele voorstelling naar een complex gegeven naarmate meer en meer knopen en takken toegevoegd worden, wat het geheel al snel onoverzichtelijk maakt. Een ander nadeel bestaat uit het risico op overfitting (Gupta et al. 2017).

(23)

Support Vector Machines

SVMs is een supervised, niet-parametrische, algoritme (Mountrakis, Im, & Ogole, 2011). Dit algoritme staat bekend als één van de betere algoritmen omdat het één van de meest robuuste en accurate oplossingen levert van alle beschikbare algoritmen (Wu et al, 2007). Support Vector Machines kunnen ingezet worden voor classificatie, regressie en andere taken rond machine learning (Chang & Lin, 2011).

Volgens Chang en Lin (2011) zijn er twee manieren om de kracht van een model, dat opgesteld is op basis van SVMs, te evalueren. Bij classificatie kan gebruik gemaakt worden van het percentage correct geclassificeerde instanties. Bij regressie ligt die evaluatie iets moeilijker. Daar wordt gewerkt met de gemiddelde kwadratische afwijking en de determinatiecoëfficiënt.

Neurale Netwerken

Een artificieel neuraal netwerk (ANN) is een voorspellend model dat afkomstig is uit Deep Learning en is gebaseerd op haar biologische variant. Het gaat om een verzameling van neuronen (zenuwcellen) die verbonden zijn via netwerken op dezelfde manier als het menselijk brein (Singh & Chauhan, 2009). Het netwerk bestaat uit verschillende lagen van neuronen die verbonden zijn met elkaar waardoor zeer complexe datastructuren geclassificeerd kunnen worden. Een neuraal netwerk dient getraind te worden en is adaptief, dit wil zeggen dat er zich wijzigingen kunnen voordoen in haar structuur naargelang de instroom van informatie tijdens de leerfase.

Een simpele vorm van een neuraal netwerk is het Feed Forward Neural Network (FFNN). Dit model heeft een structuur die uit drie verschillende lagen bestaat: de inputlaag, de verborgen laag en de outputlaag. Figuur 4 illustreert de wisselwerking tussen de verschillende lagen. Elke laag bevat één of meerdere processoren die sterk lijken op de neuronen in het brein. Input komt binnen via zo’n processor en wordt doorgegeven via een connectie naar andere processoren in een andere laag (Misra en Dehuri, 2007). Aan elke connectie is een bepaald gewicht toegekend en varieert naarmate er meer informatie ter beschikking wordt gesteld in het leerproces.

(24)

Informatie vloeit van de input-laag naar de output-laag waar een bepaalde uitkomst wordt bekomen. De werkelijke uitkomst wordt verminderd met de voorspelde uitkomst om tot een benaderingsfout te komen. Bij supervised learning corrigeert het model zichzelf a.d.h.v. back propagation (Singh en Chauhan, 2009). Hierbij worden de gewichten tussen de output-laag en de laatste verborgen laag aangepast en verloopt zo verder tot aan de input-laag. Eenmaal dit is afgerond herhaalt het proces zich opnieuw om zo de benaderingsfout te minimaliseren.

Figuur 4: Illustratie neuraal netwerk

Noot. Herdrukt van “Neural Network Foundations, Explained: Updating Weights with Gradient Descent & Backpropagation”, Mayo, M., 2017. Geraadpleegd van

https://www.kdnuggets.com/2017/10/neural-network-foundations-explained-gradient-descent.html

Neurale netwerken slagen erin om uit complexe datasets heel nauwkeurige voorspellingen te maken, zelfs indien er bepaalde elementen uit de dataset ontbreken. Het grootste nadeel heeft te maken met het blackbox-karakter van het proces. Wat er in de hidden layer gebeurt en hoe men uiteindelijk tot de output komt, is namelijk niet duidelijk. Het is dus moeilijk voor mensen om te interpreteren wat er zich in het model heeft afgespeeld. Een beslissingsboom is daarentegen wel veel makkelijker om te begrijpen en wordt hierdoor in sommige gevallen verkozen boven een neuraal netwerk.

(25)

K-Nearest Neighbor

Bij k-nearest neighbor (k-NN) wordt gekeken naar de omgeving om de doelvariabele van een nieuwe instantie te bepalen. Het algoritme gaat op zoek naar een k-aantal objecten die zich het dichtste bij de nieuwe instantie bevinden en baseren de waarde van de nieuwe instantie op basis van de waarden in de omgeving (Wu et al, 2007). K-nearest neighbor kan ingezet worden voor zowel classificatie als regressie. Het algoritme wordt algemeen beschouwd als vrij

eenvoudig omdat er geen ingewikkelde trainingsfase aan voorafgaat (Triguero et al., 2018). Nieuwe instanties kunnen dus ter plaatse toegevoegd worden, zonder dat dit een grote impact op het model heeft.

De factor k is bij dit algoritme zeer belangrijk. K zal namelijk bepalen naar hoeveel vergelijkbare instanties gezocht zal worden in de omgeving van een nieuwe, onbekende, instantie. K wordt dan ook beschouwd als de parameter die correct afgestemd dient te worden om het model zo effectief mogelijk te laten functioneren (Thanh Noi & Kappas, 2017).

2.1.4 Dataminingproces

Een dataminingproces omschrijft de stappen die genomen moeten worden om datamining tot een goed einde te kunnen brengen. Eén van de meest conventionele modellen om de

levenscyclus van een dataminingproces weer te geven, is het CRISP-DM-model (Shearer, 2000). Het Cross-Industry Standard Process for Data Mining bestaat uit 6 fases die iteratief doorlopen worden. De keuze voor dit model wordt ondersteund door onderzoek van Saltz et al. (2017), die het CRISP-DM-model vergelijkt met enkele andere standaarden zoals Scrum en Kanban. Uit de resultaten blijkt dat, ondanks een kortere tijd besteed te hebben aan codering, de groep die CRISP-DM hanteerde toch een hogere eindscore behaalde dan andere groepen.

(26)

Figuur 5: CRISP-DM-model

Noot. Herdrukt van “Data Mining Phases”, Smart Vision Europe, 2015. Geraadpleegd van http://crisp-dm.eu/reference-model/

Figuur 5 illustreert de verschillende stappen die doorheen het proces doorlopen worden. Deze stappen worden verder uitgewerkt in de volgende sectie.

1. Business Understanding

De eerste stap draait om het begrijpen van de bedrijfskant van de projecten. Vooraleer we naar de eigenschappen van de data en algoritmen kijken, is het dus nodig om de eigenschappen van het project te kennen. Zo stellen Provost en Fawcett (2013) dat creativiteit van het ontwerpteam enorm belangrijk is. Het ontwerpteam moet in staat zijn om een business probleem te

herformuleren tot één of meerdere datawetenschappelijke problemen. Verder moet het kijken naar wat voor een use-scenario gehanteerd zal worden. Dat scenario omschrijft de stappen die werknemers, klanten of andere bedrijven doorlopen wanneer ze in interactie gaan met de vooropgestelde oplossing in verschillende omstandigheden (Oracle, 2007). Zo zal men een antwoord trachten te formuleren op de situationele vragen: wie, wat, waar, waarom, wanneer en hoe. Wirth en Hipp (2000) halen dit ook aan onder het mom van een inschatting van de situatie. Dat betekent een analyse waarin de terminologie, risico’s, kosten en baten worden

uitgestippeld. Deze analyse kan het use-scenario verder specifiëren. Uiteindelijk wordt er een plan opgesteld waarin wordt uitgelegd hoe men succesvol het dataminingproces zal doorlopen.

(27)

2. Data Understanding

Deze stap focust zich op het begrijpen en analyseren van de data. Een eerste taak is de initiële dataverzameling. Bij deze verzameling is het belangrijk om de eigenschappen van de data na te gaan. Provost en Fawcett (2013) halen aan dat historische data die zijn opgeslagen in

databanken, niet gerelateerd zijn aan het business probleem. Zo kunnen er problemen

opduiken bij de extractie van data uit deze databanken wanneer blijkt dat essentiële informatie niet werd vastgelegd. Dit soort kwaliteitsproblemen kunnen leiden tot een aanpassing van de hypothese of het bedrijfsprobleem zoals ook visueel te zien is in figuur 5. De twee rode pijlen uit stap 1 en 2 wijzen op een iteratie. Provost en Fawcett (2013) gaan hier verder op in en menen dat er zich meerdere cycli in een cyclus afspelen. Zo zal er een wisselwerking zijn tussen Business Understanding en Data Understanding in één cyclus van het gehele proces). Wijzigingen in Data Understanding kunnen leiden tot wijzigingen in Business Understanding zoals een gewijzigd plan, objectieven of hypotheses.

3. Datavoorbereiding

De voorbereiding van de data hangt samen met de vorige stap. De voorbereiding bestaat voornamelijk uit het manipuleren en converteren van originele, ruwe data naar bruikbare data (Provest en Fawcett, 2013). Het doel is om een finale dataset te realiseren, die als input kan gebruikt worden voor verschillende tools. Volgens Zhang et al. (2003) kan het belang van de voorbereiding opgedeeld worden in drie soorten. Ten eerste kan de voorbereiding een

oplossing bieden voor de onzuiverheden in de omgeving. De data kunnen namelijk onvolledig zijn of fouten of inconsistenties bevatten. Met inconsistenties verwijzen de auteurs naar inconsistent gebruik van codes of namen. Ten tweede kan een goede voorbereiding zorgen voor een hogere efficiëntie van het model. In de voorbereidingsfase kan de dataset namelijk verkleind worden door irrelevante variabelen weg te nemen, wat een positief effect heeft op de efficiëntie. Als laatste kan een voorbereiding ook zorgen voor een verhoging van de kwaliteit van de data. Een goeie voorbereiding kan namelijk onvolledige data identificeren, fouten corrigeren en conflicten binnen de data oplossen.

(28)

4. Modellering

De vierde stap in de levenscyclus gaat over het modelleren van data. Voor bepaalde dataminingvraagstukken kunnen meerdere technieken van toepassing zijn (Wirth en Hipp, 2000). Afhankelijk van welke techniek men gebruikt, wordt een testdesign gemaakt. Daarna wordt het model gebouwd en uiteindelijk volgt een evaluatie van het model (Wirth en Hipp, 2000).

Het testgedeelte kan op verschillende manieren plaatsvinden. Een veelgebruikte methode is het opsplitsen van de dataset in twee delen: één deel dat dient om het model mee te trainen en een ander deel om het model op te testen. Een verdere toepassing van deze methode is k-fold cross validatie. Hierbij wordt de dataset in k-aantal delen verdeeld en wordt k-aantal keer een ander deel van de dataset gebruikt als testdeel om zo elke keer tot een nieuw model te komen. Dit heeft als voordeel dat na deze validatie het model met de hoogste efficiëntie gebruikt kan worden.

5. Evaluatie

Zoals besproken in de vorige stap dient het model ook geëvalueerd te worden. Het model kan getest worden na de eigenlijke datamining uitgevoerd te hebben, maar Provest en Fawcett (2013) beargumenteren echter dat het veiliger en goedkoper is om deze evaluatie in een gecontroleerde setting te laten verlopen. In deze stap is het belangrijk om terug te koppelen naar de eerste stap om te achterhalen of de doelstellingen wel degelijk behaald worden. Dit wordt terug visueel voorgesteld in figuur 5 a.d.h.v. de dunnere pijlen. Provest en Fawcett (2013) waarschuwen wel dat een ‘labo’-test niet hetzelfde is als een werkelijke datamining.

Eén van de methodes voor het evalueren van een model rond binaire classificatie is de confusion-matrix (Buczak & Guven, 2016). De confusion-matrix is een matrix waarin vier verschillende groepen onderverdeeld worden. De groepen zijn gebaseerd op de inschatting die het model maakt van de klasse van een instantie en de werkelijke klasse waartoe de instantie behoort. We bouwen het voorbeeld van fraudedetectie uit sectie 2.1.1 verder uit. Wordt een frauduleuze testinstantie geclassificeerd als frauduleus, dan spreken we van een correct positieve (TP). Als een frauduleuze testinstantie als niet-frauduleus ingeschat wordt, is er sprake van een vals negatieve (FN). Een vals positieve (FP) is dan weer net het

tegenovergestelde van een vals negatieve. Als een niet-frauduleuze instantie ook zo

geclassificeerd wordt, spreken we van een correct negatieve (TN). Tabel 2 verduidelijkt deze termen op een schematische manier.

(29)

Tabel 2: confusion-matrix

In werkelijkheid: frauduleus In werkelijkheid: niet-frauduleus

Voorspelling: frauduleus TP FP

Voorspelling: niet-frauduleus FN TN

Er zijn volgens Buczak en Guven (2016) diverse manieren om deze matrix te evalueren. Ten eerste kan de accuraatheid gemeten worden door het aantal correct geclassificeerde instanties (TN+TP) te delen door het totale aantal geclassificeerde. Ten tweede kan volgens de auteurs ermee de positieve voorspellende waarde (PPV) berekend worden. Deze ratio wordt berekend met de formule TP / (TP + FP). Naar analogie met het voorbeeld over fraudedetectie vertelt deze ratio ons hoeveel procent van de gevallen, die als frauduleus geclassificeerd werden, ook daadwerkelijk frauduleus zijn. Een laatste mogelijke invulling van de matrix is de detectieratio. Deze ratio gaat na hoeveel van de frauduleuze gevallen door het model werden aangeduid als frauduleus. Dit gebeurt aan de hand van de formule TP / (TP + FN).

Een andere mogelijke methode voor evaluatie betreft die van het gebied onder de ROC-curve, wat de AUC wordt genoemd. Figuur 6 is een voorbeeld van hoe een ROC-curve eruitziet. Dit gebied onder de curve is een maatstaf van de onderscheidingskracht van model dat werkt rond classificatie (Jiménez-Valverde, 2012). Op de Y-as van de ROC-curve staat de gevoeligheid afgebeeld. Hiermee wordt de ratio van de correct positieve bedoeld, die gelijk staat aan de detectieratio. Op de X-as staat de ratio die de valse positieve instanties weergeeft op het totale aantal negatieve instanties (FP + TN).

De AUC, die een waarde aanneemt tussen 0.5 en 1, geeft de kans weer dat een willekeurig gekozen positieve instantie een hogere kans heeft om als positief geclassificeerd te worden dan een willekeurige negatieve instantie (Hanley & McNeil, 1982). Een AUC van 0.5 wijst op een model dat louter gokt of een nieuwe instantie positief of negatief is. Een AUC van 1 betekent dan weer een perfect model waar geen enkele instantie verkeerd geclassificeerd is.

(30)

Figuur 6: Area under the curve

Noot. Herdrukt van “Insights into the area under the receiver operating characteristic curve (AUC) as a discrimination measure in species distribution modelling”, door

Jimenez-Valverde, A., 2012, Global Ecology and Biogeography, 21(4), p. 499

6. Ingebruikname

Zoals Nadali et al. (2011) aanhalen, is het creëren van een model niet de laatste stap in het proces. De finale stap is het model inzetten om het bedrijfsprobleem op te lossen. Hiervoor kan zowel de business analist als de klant instaan voor de aanwending van het model. Verder beargumenteren Nadali et al. (2011) dat de aanwending zowel kan bestaan uit de

implementatie van het model in bedrijfssystemen als uit een eenvoudig rapport. Een belangrijke opmerking is dat de cyclus na de laatste stap vaak terugkeert naar het begrijpen van de

business (Provost en Fawcett, 2000). Door deze levenscyclus te herhalen komen vaak nieuwe inzichten en oplossingen tevoorschijn. Het is dan ook niet noodzakelijk dat de ingebruikname onsuccesvol is om deze cyclus te herhalen.

(31)

2.2 Sentimentanalyse

2.2.1 Algemeen kader

Elke dag worden grote hoeveelheden berichten geplaatst op sociaalnetwerksites, blogs en discussiefora. Emoties maken vaak een belangrijk deel uit van die berichten. Via emoties kunnen mensen in berichten namelijk vriendschap uitdrukken, sociale ondersteuning bieden of deel uitmaken van een discussie (Thelwall et al., 2010). Ondanks de grote hoeveelheid aan berichten, is deze door zijn ongestructureerde vorm moeilijk machinaal te verwerken (Cambria, Schuller, Xia, & Havasi, 2013).Algoritmen die kunnen werken rond sentimentanalyse kunnen hierbij een oplossing bieden. Sentimentanalyse, ook bekend als opinion mining, wordt

omgeschreven als de taak die de mening van een auteur omtrent een specifiek gegeven

probeert te achterhalen (Feldman, 2013). Op deze manier krijgen we een inzicht in de motivatie achter de positieve of negatieve perceptie van het onderzoeksonderwerp. Deze algoritmen kunnen volgens Thelwall et al. (2010) de rol van emoties in informele communicatie helpen verklaren en bieden daarbovenop de mogelijkheid om afwijkende meningen te detecteren. Afwijkende berichten worden in deze context geïnterpreteerd als mogelijks gevaarlijke berichten.

Berichten op sociaalnetwerksites en blogs kunnen zo ook waardevolle informatie bevatten. Bedrijven krijgen namelijk op deze manier frequent en in grote aantallen feedback op het gedrag van de organisatie. Deze feedback kan op zijn beurt de bedrijfsvoering mee sturen. Niet alleen voor bedrijven die op zoek zijn naar feedback van klanten, maar ook voor consumenten kunnen dergelijke berichten van nut zijn. Consumenten vertrouwen voor een online aankoop vandaag namelijk vaak op reviews, die achtergelaten zijn door bestaande klanten (Ravi & Ravi, 2015). Zo kunnen reviews achtergelaten op bijvoorbeeld Amazon of IMDb, een invloed hebben op het uiteindelijke consumentengedrag van een klant.

(32)

2.2.2 Soorten sentimentanalyse

Volgens Cambria et al. (2013) kan sentimentanalyse opgedeeld worden in twee verschillende soorten: polariteitclassificatie en detectie van overeenstemming. Polariteitclassificatie vindt plaats wanneer een stuk tekst, dat een mening bevat over één bepaald onderwerp, als één van twee tegenovergestelden geclassificeerd wordt. Zo kan een bericht geclassificeerd worden als “vind ik leuk” of “vind ik niet leuk”. Detectie van overeenstemming is een andere vorm van binaire classificatie. Deze detectie gaat volgens Cambria et al. (2013) na of twee

tekstdocumenten dezelfde of verschillende sentimentgerelateerde labels moeten krijgen.

Verder maakt Feldman (2013) een andere opdeling om sentimentanalyse te beschrijven. Hij maakt een onderscheid op 3 niveau’s:

Niveau 1: Document-gebaseerde analyse

Via supervised of unsupervised-technieken tracht men het globale gevoel van het document te beschrijven. Hierbij geldt uiteraard dat het document zich maar over één specifiek onderwerp uitspreekt. Een voorbeeld van een document kan een review zijn over een paar schoenen dat iemand bij een webshop heeft aangekocht.

Niveau 2: Zin-gebaseerde analyse

Bij zin-gebaseerde sentimentanalyse gaat men nog specifieker te werk. Een document bestaat uit meerdere zinnen en elk van deze zinnen kan een opinie bevatten. Hier geldt uiteraard opnieuw de voorwaarde dat de zin zich wendt tot één specifieke entiteit. Behdenna et al. (2016) menen dat op dit niveau moet worden nagegaan of er ten eerste wel een opinie in de zin te vinden is. Ten tweede moet de polariteit van de opinie geanalyseerd worden.

Het hoeft geen betoog dat enkel zinnen die een opinie bevatten worden opgenomen in de uiteindelijke analyse. Net als bij een document-gebaseerde analyse bestaat hier de mogelijkheid om te kiezen tussen gesuperviseerde of ongesuperviseerde technieken.

(33)

Niveau 3: Aspect-gebaseerde analyse (ABSA)

Feldman (2013) beargumenteert dat deze laatste techniek vooral interessant is wanneer een bepaalde entiteit meerdere attributen heeft en waardoor een mening ontstaat over elk attribuut. Dit soort analyses heeft niet als doel om één stuk tekst als positief dan wel negatief te

classificeren maar kijkt naar alle aspecten en gaat deze apart analyseren. Yang et al. (2019) gebruiken het in hun onderzoek rond ABSA het volgende voorbeeld: “De vis is vers maar het assortiment aan vis is niet buitengewoon.”. Deze zin werd voor dit voorbeeld vrij vertaald vanuit het Engels naar het Nederlands. De polariteit van het doel “de vis” is positief, maar de polariteit van de eigenschap van het doel “assortiment aan vis” is negatief. Het verschil tussen ABSA en de polariteitsclassificatie zit in het aantal gegevens waarvan we de polariteit proberen te meten. ABSA gaat eerst op zoek naar het aantal aspecten waarvan de polariteit in de tekst staat, terwijl polariteitsclassificatie enkel de polariteit zoekt van het tekstbestand. De taken van een ABSA-model kunnen volgens Yang et al. (2019) opgesplitst worden in twee soorten: detectie van alle aspecten en de classificatie van de gevonden aspecten.

Eén van de benaderingen die door Felman (2013) aangehaald wordt, is een analyse o.b.v. naamwoordgroepen. Cambridge Dictionary (n.d.) definieert een naamwoordgroep als een groep woorden in een zin dat zich gedraagt als een naamwoord. Naamwoordgroepen die vaak

voorkomen, dus met een frequentie boven een bepaalde grens, worden geselecteerd en geanalyseerd. Feldman (2013) beargumenteert dat deze laatste techniek vooral interessant is wanneer een bepaalde entiteit meerdere attributen heeft en daardoor een mening ontstaat over elk attribuut. Deze soort analyses heeft niet als doel om 1 stuk tekst als positief dan wel negatief te classificeren maar kijkt naar alle aspecten en gaat deze apart analyseren.

2.2.3 Gerelateerde literatuur

Singh et al. (2013)

Singh et al. (2013) gaan in hun onderzoek op zoek naar een nieuwe methode om via sentimentanalyse reviews van films te beschrijven. Hun methodiek bestaat eruit om via een aspect-gebaseerde benadering in een tekst te achterhalen welke aspecten geanalyseerd

(34)

SentiWord is een soort databank die aan een enorme hoeveelheid Engelstalige woorden een numerieke score toekent op basis van hun gevoelswaarde. Er worden twee polariteiten

gemeten: De SO-polariteit en de PN-polariteit. De SO-polariteit bepaalt of het onderzochte stuk tekst subjectief dan wel objectief kan opgevat worden. Indien subjectief bevonden, wordt via de PN-polariteit een score toegekend, variërend tussen de waarden -1 en 1, die respectievelijk corresponderen met een heel negatieve en een heel positieve gevoelswaarde (Ensuli en Sebastiani, 2006). Een belangrijke opmerking is dat de woorden, die uit de tekst gefilterd en in de databank opgezocht worden, adjectieven, bijwoorden en werkwoorden zijn. De scores van elk aspect van meerdere reviews worden geaggregeerd waardoor men een sentimentprofiel bekomt voor de film.

Verder hebben ze nog een bijkomende document-gebaseerde benadering toegepast waarvan de resultaten vergeleken werden met de aspect-gebaseerde benadering. Uit de resultaten blijkt dat hun eigen methode een meer nauwkeurig sentimentprofiel concludeerde dan de document-gebaseerde techniek.

Thet et al. (2010)

Hun onderzoek wordt gevoerd via een vorm van zin-gebaseerde methodiek. De

sentimentanalyse wordt uitgevoerd op het niveau van clausules. Clausules zijn een groep woorden die een onderwerp bevatten en iets vertellen over de zin. Elke zin is een clausule maar niet elke clausule is een zin. Neem het volgende voorbeeld: “Als het stopt met regenen, ga ik een ritje met de fiets maken.” Hier is de clausule “als het stopt met regenen”.

Thet et al. (2010) gebruiken een domein-specifiek en generiek lexicon om scores toe te kennen die de gevoelswaarde van een woord meten. Wat opvalt is dat ook zij SentiWordNet gebruiken net als Sing et al. (2013). Verder maken ze gebruik van een beslissingsboom die onderverdeeld wordt in subbomen. Elke subboom weerspiegelt een clausule die focust op een aspect van de film. Daarnaast wordt de contextuele score berekend d.m.v. de grammaticale afhankelijkheden en de individuele sentimentscores van de woorden.

(35)

Hu en Liu (2004)

In deze paper deden Hu en Liu onderzoek naar reviews over producten die via e-commerce verkocht worden. Hun motivatie is dat het voor de producent lastig wordt om na te gaan of het product al dan niet in de smaak valt bij klanten. Vaak bestaan er honderden tot duizenden reviews over een bepaald product wat het moeilijk maakt om het bos door de bomen nog te zien. Daar komt nog bij dat een producent vaak meerdere producten of varianten maakt. Ook klanten kunnen het lastig hebben om een keuze te maken over een aankoop door het grote aantal reviews.

Hu en Liu proberen dan ook om ten eerste features of attributen van een product uit een review te identificeren, vervolgens gaan ze na of deze features positief dan wel negatief werden beoordeeld. Tenslotte volgt een samenvatting van de beoordeelde features. Zij hanteren dus ook een aspect-gebaseerde methodologie. Hu en Liu vermelden expliciet dat hun vorm van samenvatting anders is dan de traditionele manier. Alleen features die expliciet beoordeeld werden door gebruikers in hun reviews worden opgenomen in de dataset. Het is dus mogelijk dat over bepaalde aspecten van het product geen uitspraak kan worden gedaan. Verder maken zij gebruik van een gestructureerde samenvatting i.p.v. een ongestructureerde tekst.

Yu et al. (2010)

Dit onderzoek probeert a.d.h.v. datamining van filmreviews een voorspelling te maken van de omzet. Ze zijn van oordeel dat de gevoelswaarde van reviews en de omzetcijfers van de film waarover deze reviews gaan, een positief verband tonen. Voor de filmproducent kan dit uiteraard een uiterst belangrijke indicator zijn om, kort na de première van een film, snel een inschatting van de winstgevendheid te bekomen. Uiteraard op voorwaarde dat er voldoende reviews over deze film geschreven werden. Als methode wordt de Sentiment PLSA gebruikt die een review beschouwt als een document dat verborgen sentimentfactoren bevat. Voor de omzetvoorspelling wordt het ARSA (Autoregressive Sentiment-Aware)-model ingezet.

(36)

2.2.4 Uitdagingen

• Named Entity Recognition (NER)

Dit concept geeft aan dat een algoritme een element uit een zin classificeert in een bepaalde categorie. In ongestructureerde teksten loopt men het risico dat deze elementen niet goed geclassificeerd worden. Als voorbeeld nemen we een potentiële tweet waarin iemand vindt dat een film te lang duurde: “The running time of The Wolf of Wall Street was way too long.”. Bij een foutieve NER kan het algoritme er niet in slagen om The Wolf of Wall Street te classificeren als een film en wordt het als een wolf (dier) in Wall Street (locatie) opgevat. De uitdaging voor dit probleem kan nog groter worden wanneer een foutieve grammatica of spelling gebruikt worden, wat niet ongewoon is bij hedendaagse reviews.

• Sarcasme

Sarcasme is een vorm van bijtende spot maar wordt tegelijk vaak gebruikt als een vorm van humor. Op sociale media waarin iedereen zijn mening kan delen, komt sarcasme dan ook geregeld voor. Voor sentimentanalyse is sarcasme een enorm lastig gegeven om te ontrafelen. Aangezien bij sarcasme men vaak iets zegt terwijl men het omgekeerde bedoelt, wordt dit door sentimentanalyse-algoritmen moeilijk opgepikt (Maynard & Greenwood, 2014). Neem de volgende review als voorbeeld: “De nieuwste IPhone aan de enorm schappelijke prijs van 1000 euro, een prachtig lcd-scherm, gigantische batterijcapaciteit van 1000 mAh waarmee je de volle ochtend met gemak doorkomt en zonder nutteloze headphone jack. Een formidabel

totaalpakket!” Voor de mens is het makkelijk om de sarcastische ondertoon op te merken en deze review als negatief te classificeren. Maar bij een letterlijke evaluatie, zonder oog voor nuance, komt men tot de omgekeerde vaststelling.

(37)

• Woordambiguïteit

Ambiguïteit betekent dat een woord meerdere, dubbelzinnige betekenissen kan hebben. Het spreekt voor zich dat dubbelzinnige betekenissen nefast zijn bij de interpretatie van een tekst. Helaas zal dit altijd een uitdaging blijven voor sentimentanalyse (Turney en Littman, 2003). Ambiguïteit bestaat zowel op semantisch als op syntactisch vlak. Een voorbeeld van een semantisch ambigu woord kan men vinden in de zin “De bank is ingestort.” Dit kan zowel over een zitbank als over een financiële instelling gaan. “Ik heb de jongen met de fiets

omvergereden.” is een voorbeeld van syntactische ambiguïteit. Hier ontstaat er twijfel omtrent de betekenis van een zin door de zinsbouw. Heb ik een fietsende jongen omvergereden of heb ik een jongen omvergereden met mijn fiets? Vaker is deze laatste vorm van ambiguïteit

moeilijker te ontleden dan de eerste omwille van het gebrek aan context.

• Multipolariteit

Een tekst zoals een review is vaak opgebouwd uit verschillende paragrafen. Meestal zal een review zowel goede als minder goede aspecten aankaarten. Dit betekent dat een tekst multipolair kan zijn. Wang en Liu (2015) zijn van oordeel dat reviews als deze niet op een globale manier kunnen geanalyseerd worden maar dat een aspect-gebaseerde methode (ut supra) soelaas kan bieden.

• De complexiteit en kwaliteit van de data

Ondanks de overvloed aan data, hebben sommige onderzoeken te kampen met data van onvoldoende kwaliteit (Y.-C. Chang, Ku, & Chen, 2019). Zo worden in de toeristische sector soms valse reviews geschreven uit geldgewin of om onnodige problemen te vermijden

(Li et al., 2018). Valse reviews hebben ontegensprekelijk een negatief effect op het uiteindelijke model. De complexiteit van de data komt vooral naar voor in de derde stap van het CRISP-DM model voor modellering dat besproken werd in sectie 2.1.3, namelijk bij de voorbereiding van de data. Aangezien de tekstbestanden die gebruikt worden ongestructureerd zijn, is een goede voorbereiding noodzakelijk. Deze stap is noodzakelijk om zinloze resultaten te vermijden

(38)

Ten eerste kunnen stopwoorden in de tekstbestanden verwijderd worden. Het verwijderen van stopwoorden verkleint de ruis op de data en verhoogt op die manier de kwaliteit van de data (Saif et al., 2014). Dit kan volgens Saif et al. (2014) op twee manieren: aan de hand van een vooraf gedefinieerde stopwoordenlijst of aan de hand van meer geavanceerde methodes die dynamisch stopwoorden gaan herkennen. Het gebruik van een stopwoordenlijst mag dan wel de gemakkelijkste zijn, er is twijfel over het nut van dergelijke lijsten. Zo halen Lo et al. (2005) als kritiek aan dat dergelijke lijsten snel gedateerd zijn in een nog sneller veranderende online omgeving. Desondanks is er in de academisch literatuur ook tegenkanting tegen een

verwijdering van stopwoorden. Zo verklaren Thelwall et al. (2012) in een uitbreiding op hun onderzoek uit 2010 dat ze stopwoorden niet verwijderden, omdat woorden als “ik” en “jij” geassocieerd kunnen worden met gevoelsuitdrukkingen.

Naast het weglaten van woorden kunnen woorden ook aangepast worden met het oog op sentimentanalyse. Zo slaat de Engelse term “stemming” op een reductie van een verbogen woord tot zijn stam (Bao et al., 2014). De term “lemmatization” doet hetzelfde, maar dan voor verbogen woorden. Als voorbeeld kan het verbogen woord “at” herleid worden tot de stam “eet”.

(39)

3.

Methodologie

Op vlak van methodologie werden voor dit onderzoek de stappen van het

CRISP-DM-dataminingproces uit sectie 2.1.4 gevolgd. De werkwijze die werd gehanteerd, wordt in deze sectie dan ook beschreven per stap.

3.1 Business understanding

Het doel van dit experiment bestond uit twee grote delen. Het eerste betrof de vraag welke verschillen en gelijkenissen er bestaan in voorspellende dataminingmodellen die opgesteld zijn op basis van filmreviews van verschillende genres. Het tweede luik handelde over de vraag of het dataminingmodel dat opgesteld is op basis van reviews van één film, ook kan gebruikt worden bij films van een ander genre.

Sentimentanalyse kan een enorm belangrijk gegeven zijn voor producten uit de filmindustrie om het succes van een film af te toetsen (Goyal en Parulekar, 2015). Door zich te focussen op het gevoel van de reviewer is het mogelijk om nuttigere info te verkrijgen dan wanneer men zich louter zou baseren op de reviewscore van de film. Waar een reviewscore enkel een bepaalde score over de hele lijn weergeeft, kan de review een opinie over elk aspect van de film

blootleggen. Met de analyse beoogden we te weten te komen welke aspecten van de film in de smaak vallen bij het publiek en welke niet. Deze analyse is van belang omdat onderzoek van Chintagunta, Gopinath en Venkataraman (2010) onder meer heeft aangetoond dat de waarde van online mond-tot-mondreclame, hier het gemiddelde van alle reviews, een significant verband en positieve relatie heeft met de inkomsten uit de ticketverkoop. Met deze informatie zou de filmindustrie enkele aanpassingen kunnen maken. Zo zou een vervolg op een film rekening kunnen houden met de tekortkomingen uit de vorige film, of zou een trailer aangepast kunnen worden om de kijker zoveel mogelijk aan te spreken.

Datamining kan naast het kwalitatieve onderzoek van reviews ook helpen om in een fractie van een seconde een overzicht te krijgen van de informatie die online beschikbaar is. Eens het dataminingmodel is opgesteld, zouden andere data ook probleemloos aan het model

(40)

3.2 Data understanding

De eerste stap van het begrijpen van data bestaat uit de initiële dataverzameling. De dataset die in dit onderzoek gebruikt werd, bestond uit een grote verzameling filmreviews die onttrokken werden uit de Internet Movie Database, ook wel IMDb genoemd. Met meer dan 80 miljoen geregistreerde gebruikers is IMDb één van de populairste vormen van media om een opinie te delen over films, series, documentaires, etc. Figuur 7 is een voorbeeld van hoe een typische IMDb-review eruitziet. De inhoud bestaat uit een score op tien, de titel in een vetgedrukt lettertype met daaronder de gebruiker die de review geschreven heeft en de datum van publicatie. Als laatste volgt de uiteindelijke review.

Figuur 7: Voorbeeld IMDb review

Noot. Herdrukt van “Frozen II User Reviews”, IMDb, 2019. Geraadpleegd van https://www.imdb.com/title/tt4520988/reviews?ref_=tt_ql_3

De dataset die gebruikt werd voor ons onderzoek bestond uit enkel Engelstalige reviews. Dit is voornamelijk te wijten aan een gebrek aan Nederlandstalige reviews. Een tiental reviews per film zou enkel leiden tot een onbetrouwbaar dataminingmodel, wat dit onderzoek nutteloos zou maken. De keuze voor Engelstalige reviews werd mede ondersteund door de globaliteit van de filmindustrie.

De films waarover de reviews betrekking hebben zijn Once Upon A Time In Hollywood (comedy/drama, 2019), Frozen II (animatie, 2019), Joker (thriller, 2019), Avengers: Endgame (actie, 2019), en A Star is born (romantische film, 2018). Voor elk genre werden 1000 reviews verzameld, waarvan meestal 500 reviews die als positief gekwalificeerd worden en 500 als negatief. Enkel bij Frozen II werden er door een gebrek aan negatieve reviews, meer positieve dan negatieve reviews opgenomen. Dit had enkele implicaties op de betrouwbaarheid van de gegevens. Zo werd een vergelijking van de modellen op basis van de ROC-waarde, de

onderscheidingskracht, bemoeilijkt. Met een onevenredige verdeling van de reviews haalt een “majority vote” model namelijk altijd meer dan 50% accuraatheid, in dit geval zelfs 77%.

(41)

Eveneens werd er gekozen voor het gebruik van zoveel mogelijk reviews met één en tien sterren. Ook dit was niet bij elk genre mogelijk. De uiteindelijke verdeling van de opgenomen reviews wordt bij het begin van de resultatensectie per film aangegeven.

Bij de extractie van deze reviews werden deze omgezet van HTML naar TXT-files om een bag of words te kunnen creëren in Weka. Bij zo’n zak van woorden worden de elementen in een zin van elkaar gesplitst en wordt er geen rekening gehouden met de grammaticale structuur. De frequentie van een bepaald woord wordt gebruikt als attribuut of feature om het

classificatiemodel te trainen.

3.3 Voorbereiding

De reviews werden geanonimiseerd door middel van een verwijdering van de accountnaam die gelinkt was aan de review. Dit met het oog op een correcte naleving van de GDPR-regels. De titel van de review werd mee opgenomen terwijl er gekozen werd om het tijdstip van de review niet op te nemen. Het doel was namelijk niet om te onderzoeken of het tijdstip van de review een impact heeft, maar wel de inhoud ervan. Daarnaast werd ook de score niet opgenomen. Ook hier is de achterliggende reden dat de score automatisch een indicatie geeft van het gevoel achter een review en dus geen waarde toevoegt aan het model.

Verder bestaat bij IMDb de optie om een soort tag, namelijk “Warning: spoilers”, aan de review toe te voegen om lezers te waarschuwen dat de review mogelijk bepaalde scènes of

fragmenten kan verraden. We hebben deze tag verwijderd bij elke review wegens het feit dat het niet relevant is om de gevoelswaarde van de auteur te achterhalen. Daarnaast heeft de term “spoilers” een dubbelzinnig karakter. Enerzijds slaat zij op een element dat de spanning uit de film weghaalt of de plot onthult, anderzijds is er ook haar intrinsieke betekenis in de zin van verpesten en bederven. Indien de tag aanwezig blijft in de dataset, is de kans reëel dat deze term een impact heeft op de resultaten wegens haar negatieve connotatie.

De opkomst van sociale media gaat gepaard met het gebruik van emoji’s. Emoji’s zijn kleine digitale afbeeldingen die vaak gebruikt worden op het internet om een idee of gevoel uit te drukken (Oxford English Dictionary, z.d.). In ons onderzoek werd geopteerd om deze emoji’s uit

(42)

3.4 Modellering

Zoals eerder aangegeven in sectie 3.3 werd voor deze sentimentanalyse gebruik gemaakt van het dataminingprogramma Weka. Weka is een open source machine learning programma dat ontworpen is door de universiteit van Waikato in Nieuw-Zeeland. Weka stelt de gebruiker in staat om aan machine learning te doen zonder dat er ook maar één lijn code geschreven moet worden (University of Waikato, z.d.). Het programma werd eerder al gebruikt in het vak

“Business Intelligence” dat door één van de twee auteurs werd gevolgd in derde bachelor Handelswetenschappen. Dit zorgde voor enige vertrouwdheid met het programma.

In het kader van dit onderzoek werden twee soorten experimenten uitgevoerd op verschillende films met als doel een vergelijking tussen de films te kunnen opstellen. Dit onderzoek kon opgedeeld worden in twee luiken. Het eerste luik diende antwoord geven op de

onderzoeksvraag: op welke manier verschillen voorspellende dataminingmodellen, die opgebouwd zijn aan de hand van reviews van verschillende films. Het tweede luik ging dan weer dieper in op de bruikbaarheid van dergelijke modellen bij tests met reviews van verschillende films. Deze experimenten kunnen als een mengeling van zowel kwalitatief als kwantitatief beschouwd worden (Rambocas & Gama, 2013). Sentimentanalyse heeft namelijk een aantal kenmerken van beide varianten van onderzoek volgens Rambocas en Gama (2013). Een voordeel dat de kwalitatieve kant van dit onderzoek met zich meebrengt is dat, in

tegenstelling tot de traditionele enquêtes of interviews, de testpersoon niet weet dat hij of zij deelneemt aan een onderzoek en daar dus ook niet door beïnvloed wordt.

De analyses die op de reviews werden uitgevoerd vallen onder de document-gebaseerde analyses. Weka maakt namelijk geen opsplitsing per zin, noch maakt het programma een opsplitsing per aspect. Weka gaat na of het achterliggende gevoel van een review positief of negatief is, op basis van de woorden die in de reviews staan. In de resultatensectie werd telkens slecht een samenvatting van de testen opgenomen. De volledige resultaten kunnen gevonden worden in de bijlagen.

(43)

Voor het eerste luik van dit onderzoek werd gekeken naar de information gain en de

accuraatheid van de verschillende testen. De information gain die Weka berekende, leverde een lijst op die het onderscheidingsvermogen van elk attribuut, in dit geval een woord, ten opzichte van de klassen weergeeft (University of Waikato, 2019). Hoe hoger de score, hoe groter het belang van het woord in het maken van een onderscheiding tussen positief en negatief. Per film werden telkens twee tabellen opgenomen: één tabel met woorden met een groot onderscheidingsvermogen en één tabel met woorden die verrassend genoeg niet

bijdroegen tot een onderscheiding tussen positieve en negatieve woorden. Om een antwoord te vormen op de bruikbaarheid van de modellen, werd het meest accurate model van elke film getoetst aan de reviews van de overige films.

Ook bij sentimentanalyse dient men met overfitting rekening houden. Een vaak voorkomende fout is het gebruik van trainingsdata bij de testfase. Bij het classificatieprobleem wordt dit

opgelost aan de hand van een gefilterde classifier. De structuur van de filter is dan, net zoals de classifier, enkel gebaseerd op de trainingsdata en alle testdata worden dan verwerkt zonder dat de structuur aangepast wordt (“FilteredClassifier”, z.d.).

3.5 Evaluatie

Bij de beoordeling van de modellen werden telkens twee parameters opgenomen: het percentage correct geclassificeerde reviews en de ROC-waarde, die het

onderscheidingsvermogen van de modellen weergeeft. Bij de keuze van het beste model werd voornamelijk gekeken naar de ROC-waarde. Enkel bij Frozen II werd gekozen voor het model met de hoogste accuraatheid omdat daar de verdeling tussen positieve en negatieve reviews niet evenredig was.

(44)

4.

Resultaten

Om de resultaten van de testfase te begrijpen dienen eerst enkele instellingen, die doorheen de testen continue gewijzigd worden, uitgeklaard te worden. Deze zijn telkens gewijzigd om tot een zo hoog mogelijke accuraatheid en ROC-Area te bekomen, zonder het model te overfitten.

• Algoritme

De verschillende algoritmen werden reeds besproken in sectie 2.1.3. De testfases focussen zich in dit onderzoek op de meest gebruikte algoritmen: J48 (een beslissingsboom), Naive Bayes, lineaire en logistische regressie.

• IDTF Transform

IDTF Transform berekent de TFIDF per woord. TFIDF staat voor “term frequency inverse document frequency” (“Tf-idf: A Single-Page Tutorial - Information Retrieval and Text Mining”, z.d.). TFIDF is een statistische methode die gebruikt wordt om te evalueren hoe belangrijk een woord is in een verzameling van documenten. Deze wordt berekend aan de hand van twee termen: het aantal keer dat een woord in een document terugkomt en de inverse frequentie van datzelfde woord. De eerste term telt enkel hoe vaak een woord voorkomt in een document terwijl de tweede term het belang ervan berekent. Zo kunnen woorden als “as” of “is” vaak voorkomen in een document, maar van weinig belang zijn. De TFIDF wordt berekend door beide termen met elkaar te vermenigvuldigen. Elk document wordt op die manier een vector van verschillende variabelen. De verzameling van de verschillende documenten wordt dan een verzameling van vectoren (Provost & Fawcett, 2013).

• Kleine letters (tabel: “Lowercase”)

Een omzetting van alle woorden in een document naar enkel kleine letters is een vorm van normalisatie. Aan de hand van deze techniek worden op die manier bijvoorbeeld de woorden “great” en “Great” beide als “great” opgenomen.

(45)

• Stemmer

De stemmer is een algoritme dat elk woord omzet in zijn stamvorm. De stemmers die getoetst worden zijn: de nullstemmer, de iterated lovinsstemmer, de lovinsstemmer en

snowballstemmer. De nullstemmer is een dummy die geen effect heeft op de woorden.

• Stopwords handler (tabel: “SW handler”)

Deze instelling bepaalt welke stopwoordenlijst gebruikt wordt om de data aan te passen. Elk woord dat in de desbetreffende lijst staat, zal verwijderd worden uit de reviews. Een

verwijdering van stopwoorden is een methode die ruis dient te verwijderen uit de data.

Desondanks is er twijfel of deze methode wel aangewezen is. Zo kwamen Saif et al. (2014) tot de conclusie dat een stopwords handler een negatieve impact heeft op een classificatiemodel dat opgebouwd wordt met tweets. Net als bij de stemmer staat “null” hier voor een lijst die geen effect zal hebben op de data. De andere lijsten zijn “multistopwords” en “rainbow”.

• Maximum aantal woorden (tabel: “max # words”)

Hiermee wordt het maximum aantal woorden vastgesteld dat Weka in rekening neemt bij de modellering van het model. De optie “doNotOperatePerClass” wordt voor de testfase standaard op False gezet.

• Tokenizer (tabel: “token”)

De tokenizer bepaalt hoe woorden of zinnen opgesplitst worden in verschillende stukken. Op basis van de tokenizer worden andere (stukken van) woorden opgenomen in het uiteindelijke model.

(46)

4.1 Once Upon a Time…in Hollywood (Comedy/Drama, 2019)

4.1.1 Korte beschrijving

Once Upon a Time in Hollywood is een tragikomedie die geregisseerd werd door Quentin Tarantino. Het verhaal speelt zich af in het Los Angeles van 1969, waar een acteur en zijn stuntman hun plek proberen te veroveren in de filmindustrie. De film is een melancholische terugblik op een industrie die in de afgelopen 50 jaar sterk veranderd is. De reviews die voor de testen zijn opgenomen bestaan uit 500 positieve en 500 negatieve reviews, allemaal met een rating van 10 of 1.

4.1.2 Samenvatting testfase

Tabel 3: Samenvatting testfase Once Upon a Time in Hollywood Test Algoritme IDTFT Lower

-case Stem-mer SW Handler Max. # words Token Accuracy/ ROC-Area 1 Beslissings-boom

False True Null Null 1000 Words 80.1% 0.845 4 Simple

Logistic

False True Null Null 1000 Words 88.5% 0.953 5 Support

vector machines

False True Null Null 1000 Words 88% 0.880

8 KNN

(K=10)

False True Null Null 1000 Words 77.7 0.866

19 Naive Bayes (MN)

False True Null Null 1000 Alpha-betic

92.7% 0.972

Afbeelding

Tabel 1 is een voorbeeld van hoe data bijgehouden kunnen worden met het oog op supervised  machine learning
Figuur 1: Clustering van verschillende soorten irissen
Figuur 3 geeft een voorbeeld weer van een beslissingsboom.
Figuur 4: Illustratie neuraal netwerk
+7

Referenties

GERELATEERDE DOCUMENTEN

Zonder een Schepper die een eeuwig doel had voor Zijn schepping en Die in staat is deze te berei- ken van buitenaf (niet met reïncarnatie of evolutie maar met nieuwe schepping

Als een arts door sedatie of versterven een patiënt laat overlijden, moet hij niet aan dezelfde voorwaarden en procedures voldoen als voor het toedienen van

Ten slotte kunnen artsen die wel euthanasie toepassen maar zich niet aan alle regels houden, dat toedekken door het te klasseren als palliatieve sedatie.. Zo ontlopen ze

Teken nu nog de weg met een viltstift in, welke je rijdt, om links af te slaan.. Hoe sla ik correct naar links

De oplossing en zeer veel andere werkbladen om gratis te

Voordat je naar buiten in de zon gaat, moet je jezelf met zonnebrandcrème insmeren.. Als je een zonnebrand hebt, dat doet weliswaar pijn, maar het is niet

brasseur néerlandais part en réalité à la conquête d’un marché de 1,3 milliard de musulmans à travers le monde. Et il peut compter pour cela sur un allié inattendu:

taalgebruik moet worden verstaan: fouten tegen de regels voor interpunctie, voor het gebruik van hoofdletters, voor zinsbouw, voor spelling, voor woordgebruik en voor