Sentiment analyse

Inleiding

Bij het begrip ‘data’ denkt men over het algemeen aan eentjes en nulletjes. Maar het leeuwendeel van de data binnen een organisatie is meestal tekst. De talloze documenten, mails en contracten binnen een organisatie zijn ook allemaal data. Kan AI mensen ondersteunen om mensen sneller en beter grote hoeveelheden tekst te laten analyseren?

Het antwoord is een volmondige ja! De afgelopen jaren hebben we grote stappen gezet op het gebied van tekstanalyse. Het zijn het niet meer alleen de Apples en Googles van deze wereld die de middelen hebben om met behulp van AI tekst te analyseren.

Ook voor de kleinere organisaties zijn we inmiddels in staat zijn om mensen te ondersteunen in tijdrovende taken, zoals het lezen, interpreteren en beoordelen van contracten, het effect van nieuws op een aandelenportefeuille inschatten en continu je merkperceptie op social media monitoren.

In deze case bouwen we drie modellen die een continue screening van social media posts mogelijk maken. Omdat de aandacht vooral ligt op hoe de modellen werken en wat de waarde ervan is voor een organisatie, hebben we bewust gekozen voor een eenvoudige relatief eenvoudige dataset. De dataset bestaat uit 1,6 miljoen berichten van waarbij elke tweet simpelweg is beoordeeld of deze wel of niet positief is.

Modellen

Het veld dat zich bezighoudt met algoritmes die tekst kunnen analyseren heet Natural Language Processing (NLP). Dé standaard op het gebied van NLP was in het afgelopen decennium het zogenaamde Recurrent Neural Network (RNN), totdat Google in 2018 een nieuw algoritme genaamd BERT introduceerde. Dit model verpletterde eerdere modellen in een reeks van complexe taken op het gebied van prestaties en belooft de nieuwe standaard te worden.

Voor onze sentiment analyse bouwen we twee versies van het RNN en één versie van BERT om zo een vergelijk te maken welk model het best past bij deze taak. De tijd die nodig is om een algoritme te trainen is onder andere afhankelijk van de hoeveelheid data waar je het algoritme op traint. Om het proces te versnellen, trainen we de eerste versies van alle drie de modellen op slechts 10% van de dataset. Daarna trainen we het meest veelbelovende model op de gehele dataset.

Resultaten

Het eerste RNN is een netwerk dat aan elk woord in de tweet betekenis probeert te geven, voordat het probeert te bepalen of de tweet positief of negatief is. Het tweede RNN kijkt juist per letter om een oordeel te vellen. Het tweede netwerk vraagt meer rekenkracht, maar we verwachten ook betere resultaten. We zien in eerste instantie dat de word-based model een nauwkeurigheid van bijna 80% haalt, maar vrijwel direct overfitting op de traindata vertoond. Het gevolg is dat het model minder goed presteert op data dat het nog niet gezien heeft. Het model op basis van letters laat in eerdere training stadia weliswaar een lagere nauwkeurigheid zijn, maar verbetert in prestatie naar mate training vordert en komt na 5 cycli ook uit op bijna 80%. Dit leidt ons ertoe te geloven dat het laatste model meer potentie heeft.

Het BERT-model zou volgens de literatuur de beste prestaties moeten leveren. Iets wat we ook terugzien; de nauwkeurigheid ligt namelijk al direct op 84%. Op basis hiervan trainen we het model nog een keer op de gehele dataset, met als resultaat een nauwkeurigheid van  87%.

 

Conclusie

Deze case laat zien hoe we korte stukjes tekst met relatief hoge zekerheid kunnen beoordelen op sentiment. Dit is een taak die relatief eenvoudig is, maar wel tijdrovend kan zijn voor organisaties die hun merkwaarde of de effectiviteit van hun marketingcampagne op social media in de gaten willen houden. Complexere taken zoals het consequent en efficiënt beoordelen van contracten of het analyseren van nieuws behoren echter ook tot de mogelijkheden van NLP-algoritmes.

Heeft u een vraag of wilt u weten hoe we uw organisatie efficiënter kunnen maken door middel van tekstanalyse, neem dan contact met ons op.

Voor de liefhebber, zijn de modellen voor deze case zijn hier te vinden.

Delen:

Meer posts

Waar ai menselijk wordt

Gratis consult inplannen