Voorspellen van de sociale beleving van nieuwsartikels met behulp van sentimentanalyse

Michelle Gybels
Lezers kunnen op Facebook reacties plaatsen onder nieuwsartikels. In het kader van deze thesis is met behulp van verschillende machine learning technieken automatisch voorspeld wat het uitgedrukte sentiment van deze reacties is: negatief, positief of neutraal/objectief. Voor de eigen case is gekozen voor artikels van Het Belang van Limburg.

Het Sentiment van Limburg

(zie bijlage voor opgemaakte versie in pdf-formaat)

Mediahuis Connect doet zijn krant Het Belang van Limburg uit de doeken als grootste en populairste krant in de provincie Limburg. Met hun nieuws bereiken ze maar liefst 85% van de Limburgse krantenlezers. Aangezien nieuwsbladen sterke spelers zijn bij het vormen van de publieke opinie, is het interessant om de impact van de nieuwsartikels van HBVL op de Limburger onder de loep te nemen. Met behulp van de reacties die geplaatst worden op hun Facebookpagina kan het sentiment van de lezer nu automatisch geanalyseerd worden.

Om hun lezers nog sneller te kunnen bereiken plaatst HBVL dagelijks meerdere artikels op hun Facebookpagina. Aangezien er een constante stroom aan reacties op deze artikels is, is het onbegonnen werk deze allemaal met de hand te analyseren. In een wereld waar computers ons heel wat rekenwerk uit handen nemen, kan gezocht worden naar methodieken om automatisch het sentiment van de reacties te voorspellen. Er worden hierbij twee belangrijke taken uitgevoerd. Enerzijds wordt achterhaald hoe het sentiment uit korte Nederlandstalige tekstjes kan worden afgeleid. Dit proces wordt aangeduid als Natural Language Processing. Met de informatie die hieruit verkregen is wordt de tweede taak uitgevoerd: leren! De computer gaat zichzelf trainen en leren hoe hij uit de informatie het sentiment van reacties kan voorspellen. Dit is het domein van Machine Learning.

Drie sentimenten
Het analyseren van het sentiment houdt in dat voorspeld wordt of een reactie een positieve, negatieve of neutrale connotatie heeft. Dat een artikel voornamelijk negatieve reacties uitlokt is niet noodzakelijk slecht. Dit hoeft niet te betekenen dat een lezer ontevreden is over de inhoud van het artikel. Ook reacties die een vorm van medeleven uiten worden als negatief geclassificeerd aangezien de lezer hiermee aangeeft droevig te zijn. Ook andersom kan gesteld worden dat een positieve reactie niet altijd goed bedoeld is.

Schrijffauten...
Chattaal, vreemde zinsbouw, het ontbreken van leestekens en schrijffouten zijn op sociale media schering en inslag. Zodoende zijn ook de reacties die op de artikels van HBVL’s Facebookpagina geplaatst worden hier sterk aan onderhevig. Bepaalde woorden kunnen echter een sterke invloed hebben op het uitgedrukte sentiment. Daarom is het belangrijk om fouten op te sporen zodat verkeerd gespelde woorden eveneens als hetzelfde woord behandeld worden. Dit kan nog verder worden doorgetrokken door verschillende woordvormen naar hun stam te reduceren. Dit zijn slechts een paar voorbeelden van operaties die vooraf moeten gebeuren. Een goede voorbereiding is het halve werk!

1, 0, 12, 0.75, 0
In tegenstelling tot jij en ik kunnen computers geschreven tekst niet zo goed begrijpen. Daarom moeten de reacties naar een formaat worden omgezet waarmee de computer aan de slag kan. Uit de tekstjes worden numerieke kenmerken afgeleid die van belang kunnen zijn bij het voorspellen van het sentiment. Denk maar aan het aantal voorkomens van bepaalde woorden, de fractie van het bericht dat in hoofdletters staat of het aantal lachende emoji. De mogelijkheden zijn eindeloos! De reactie kan nu woorden voorgesteld als een reeks van getallen.

Verschillende leermethodes
De computer kan op verschillende manieren leren hoe hij met behulp van de gegeven getallen het sentiment kan voorspellen. Hij krijgt eerst veel voorbeelden van reacties waarbij ook telkens het sentiment dat ze uitdrukken gegeven is. Nu moet de computer op zoek gaan naar verbanden tussen de reacties die tot eenzelfde sentiment behoren. Hij kan hiervoor een hiërarchisch schema opstellen, gekend als een Decision Tree, waarin op ieder niveau de waarde van één van de getallen afgetoetst wordt: “Zijn er hoogstens vijf uitroeptekens? Ja? Komt er dan minstens ééns boze emoji voor? Nee? Dan is de reactie vast positief!”
Een andere methode is gekend als een Support Vector Machine waarbij de reacties als punten in een n-dimensionale ruimte geplaatst worden. De computer zoekt waar hij een scheidingslijn kan plaatsen zodat de reacties met eenzelfde sentiment aan dezelfde zijde liggen. Het sentiment voorspellen houdt dan in dat de computer kijkt aan welke kant van de scheidingslijn de reactie ligt. Een derde methode is om de kans te bereken dat een reactie met diens kenmerken tot elk van de sentimenten behoort. Een bekende techniek hiervoor heet Naive Bayes.

Stel je voor! 34 jaar lang leren...
Ongeacht de gekozen leermethode geldt: hoe meer voorbeelden, hoe liever. Voor dit onderzoek zijn 500 positieve, 500 negatieve en 500 neutrale reacties verzameld. De kwaliteit van de voorspellingen kunnen verbeterd worden door te puzzelen met combinaties van interessante kenmerken van de reactie en deze telkens te testen met verschillende leermethodes. Er zijn echter ontzettend veel combinaties mogelijk. Zo veel zelfs, dat het 34 jaar zou duren om ze allemaal op één computer te testen. Door echter op een slimme manier te zoeken naar een zo hoog mogelijke accuraatheid is een voorspeller gevonden die 73,7% van de reacties correct kan voorspellen. Een resultaat waarbij gebruik is gemaakt van Naive Bayes en die de vooropgestelde verwachtingen heeft overtroffen.

Webtool
Om de bekomen voorspeller in de praktijk te kunnen gebruiken is de webtool Het Sentiment van Limburg ontwikkeld. Deze toont de artikels die geplaatst zijn op de Facebookpagina van HBVL. Per artikel kunnen de reacties getoond worden waarbij tevens aangeduid is in welke mate de reactie tot ieder sentiment behoort. Dit is met een taartdiagram gevisualiseerd waarbij groen de graad aangeeft dat de reactie een positief sentiment uitdrukt, rood de graad van het negatief sentiment en blauw dat van het neutrale sentiment. Ook per artikel wordt met een taartdiagram de verdeling weergeven van de sentimenten van de bijbehorende reacties.

Webtool "Het Sentiment van Limburg"

Met het oog op geautomatiseerde sentimentanalyse van nieuwsartikels is er een brede waaier aan leermethodes mogelijk. Het is eveneens van groot belang om aandacht te hebben voor het afleiden van relevante kenmerken die in de reacties verscholen zijn. De webtool Het Sentiment van Limburg maakt gebruik van een voorspeller die er in slaagt het sentiment van 73,7% van de reacties correct te voorspellen. De resultaten worden in deze tool gevisualiseerd zodat ze gebruikt kunnen worden om de impact van de nieuwsartikels verder te onderzoeken. Zouden we binnenkort ook op voorhand op basis van een artikeltitel het sentiment kunnen voorspellen?

 

Bibliografie

Bibliografie

[1]   Facebook for developers. https://developers.facebook.com/. Accessed: 2017- 10-20.

[2]  Charu Aggarwal, Jiliang Tang, Salem Alelyani, Huan Liu, Hongbo Deng, Yizhou Sun, Yi Chang, Jiawei Han, Victor E Lee, Lin Liu, et al. Data classification algorithm and application, 2014.

[3]  D Alessia, Fernando Ferri, Patrizia Grifoni, and Tiziana Guzzo. Approaches, tools and applications for sentiment analysis implementation. International Journal of Computer Applications, 2015.

[4]  Gary Armstrong, Philip Kotler, et al. Marketing: De Essentie. Pearson Education Benelux BV, 10 edition, 2013.

[5]  Muhammad Zubair Asghar, Aurangzeb Khan, Shakeel Ahmad, and Fazal Masud Kundi. A review of feature extraction in sentiment analysis. Journal of Basic and Applied Scientific Research, 4(3):181–186, 2014.

[6]  Machine Learning Group at the University of Waikato. Weka 3: Data mining software in java. http://www.cs.waikato.ac.nz/ml/weka/. Accessed: 2017-05- 10.

[7]  Michael Baron. Probability and Statistics for Computer Scientists. CRC Press, 2013.

[8]  Ria Mae Borromeo and Motomichi Toyama. Automatic vs. crowdsourced senti- ment analysis. In Proceedings of the 19th International Database Engineering & Applications Symposium, Yokohama, Japan, July 13-15, 2015, pages 90–95, 2015.

[9]  Tom Dietterich. Overfitting and undercomputing in machine learning. ACM computing surveys (CSUR), pages 326–327, 1995.

[10]  Ronen Feldman and James Sanger. The Text Mining Handbook: Advanced Ap- proaches in Analyzing Unstructured Data. Cambridge University Press, 2007.

[11]  Ashutosh Garg and Dan Roth. Understanding probabilistic classifiers. In European Conference on Machine Learning, pages 179–191. Springer, 2001.

[12]  Harvard.edu. The general inquirer home page. http://www.wjh.harvard.edu/ ~inquirer/, 2002. Accessed: 2017-02-20.

[13]  Jure Leskovec, Anand Rajaraman, and Jeffrey David Ullman. Mining of Massive Datasets. Cambridge University Press, 2014.

[14]  Bing Liu. Professor department of computer science. https://www.cs.uic.edu/~liub/, 2002. Accessed: 2017-02-20.

[15]  Bing Liu. Sentiment analysis and opinion mining. Synthesis Lectures on Human Language Technologies, 2012.

[16]  Christopher D Manning, Prabhakar Raghavan, Hinrich Schu ̈tze, et al. Introduction to Information Retrieval. Cambridge university press Cambridge, 2008.

[17]  Eddy Mayoraz and Ethem Alpaydin. Support vector machines for multi-class classification. In International Work-Conference on Artificial Neural Networks, pages 833–842. Springer, 1999.

[18]  Andrew Mccallum and Kamal Nigam. A comparison of event models for naive bayes text classification. In AAAI-98 Workshop on ’Learning for Text Categori- zation’, 1998.

[19]  Walaa Medhat, Ahmed Hassan, and Hoda Korashy. Sentiment analysis algorithms and applications: A survey. Ain Shams Engineering Journal, pages 1093–1113, 2014.

[20]  Yelena Mejova and Padmini Srinivasan. Exploring feature definition and selection for sentiment classifiers. In ICWSM, 2011.

[21]  Tom M Mitchell. Machine Learning. McGraw-Hill International Editions, 1997.

[22]  Alexander Pak and Patrick Paroubek. Twitter as a corpus for sentiment analysis and opinion mining. In LREC, volume 10, 2010.

[23]  Bo Pang and Lillian Lee. Opinion mining and sentiment analysis. Foundations and Trends in Information Retrieval, pages 1–135, 2007.

[24]  MPQA Project. Multi-perspective question answering. http://mpqa.cs.pitt.edu, 2013. Accessed: 2017-02-20.

[25]  Ross Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann Publishers, San Mateo, CA, 1993.

[26]  Stuart Russell and Peter Norvig. Artificial intelligence: A modern approach. Artificial Intelligence. Prentice-Hall, Englewood Cliffs, 2016.

[27]  Olena Kummer-Jacques Savoy. Feature selection in sentiment analysis. 2012.

[28]  Helmut Schmid. Improvements in part-of-speech tagging with an application to german. In In Proceedings of the ACL Sigdat-Workshop. Citeseer, 1995.

[29]  SentiWordNet. SentiWordNet, a lexical resource for opinion mining. http:// sentiwordnet.isti.cnr.it/, 2010. Accessed: 2017-02-20.

[30]  Sonia Singh and Priyanka Gupta. Comparative study id3, cart and c4. 5 deci- sion tree algorithm: a survey. International Journal of Advanced Science and Technology, pages 97–103, 2014.

[31]  Henrique Siqueira and Flavia Barros. A feature extraction process for sentiment analysis of opinions on services. In Proceedings of International Workshop on Web and Text Intelligence, pages 404–413, 2010.

[32]  Erik Tromp. Multilingual sentiment analysis on social media. 2011.

[33]  Sholom M Weiss, Nitin Indurkhya, and Tong Zhang. Fundamentals of Predictive Text Mining. Springer, 2010.

[34]  Jason Weston, Chris Watkins, et al. Support vector machines for multi-class pattern recognition. In ESANN, pages 219–224, 1999.

[35]  Charles Yaacoub, Georges Mhanna, and Sandy Rihana. A genetic-based feature selection approach in the identification of left/right hand motor imagery for a brain-computer interface. Brain sciences, 2017.

Universiteit of Hogeschool
Master in de Informatica
Publicatiejaar
2017
Promotor
Prof. dr. Jan Van den Bussche
Kernwoorden