Online30.09.2013

De twee kampen binnen sentimentanalyse


Op het gebied van opinion mining en sentimentanalyse heb je twee kampen als het gaat om de aanpak: de methodes die statistiek als uitgangspunt nemen en aan de andere kant de mensen die hun methode op taalkennis van de betreffende taal baseren. Beide methodes hebben hun voordelen en hun nadelen. Maar waar ligt de toekomst?

Een paar weken geleden was ik in Chicago om een workshop te geven bij de Knowledge Discovery and Data Mining (KDD) 2013 conferentie, waar vakgenoten uit de academische wereld, het bedrijfsleven en de overheid hun ervaringen, resultaten en ontdekkingen op het gebied van data mining delen. Uiteraard was daar ook veel aandacht voor opinion mining en deden voorstanders van statistische methodes en aanhangers van taalkundige modellen hun zegje. Reden genoeg om beide aanpakken eens uiteen te zetten.

de-twee-kampen-binnen-sentimentanalyse.jpg
de-twee-kampen-binnen-sentimentanalyse.jpg

[Afbeelding: © intheskies – Fotolia.com]

Statistische aanpak
We beginnen met de ‘statistische’ methode. Onder andere de keynotepresentatie van professor Chengxiang Zhai tijdens de KDD-conferentie ging hierop in. Hierbij wordt vaak uitgegaan van een hoeveelheid internetdata, zoals reviews op Amazon. Je pakt bijvoorbeeld de 4- en 5-sterrenratings en gaat ervan uit dat deze doorgaans positief zijn. Daarna laat je een model naar patronen zoeken. Het grote voordeel van deze methodes is dat je je niet hoeft bezig te houden met het ontleden van de taal. Deze onderzoekers proberen namelijk vooral statistische zaken af te leiden en die onder te brengen in een model. Daardoor wordt ook de menselijke tussenkomst minimaal.

Oppervlakkig
Het grootste nadeel van deze methodes is echter dat ze erg oppervlakkig blijven. Daardoor is de analyse doorgaans niet zo accuraat als de sentimentanalyse op taalkundige basis. Bovendien heb je een veel grotere kans op ruis. Als een element of gegeven weliswaar statistisch gezien vaak voorkomt binnen een bepaald domein, maar niet generiek is, ‘vervuilt’ dat je model. Daar komt bij dat deze modellen elk bericht aan alle statistisch gevonden patronen moeten voorleggen, waardoor ze trager zijn dan taalkundige modellen, die specifiek op zoek zijn naar één kenmerk. En tot slot zijn de statistische modellen ook niet mensonafhankelijk, omdat ze nog altijd ‘labeling’ nodig hebben. Een statistisch model moet, net als een taalkundig model, leren wat bijvoorbeeld positief, negatief en neutraal is, echter is de menselijke tussenkomst wel kleiner.

Taalkundig
Het ‘andere kamp’ richt zich dus op het toepassen van diepe taalkennis en het herkennen van grammatica, woorden, woordgroepen, en de verschillen tussen en binnen talen. Dat heeft als voordeel dat je veel beter de onderliggende taalconstructies kunt afvangen en – minstens zo belangrijk – toevoegen. Daardoor zijn taalkundige modellen veel accurater. Daarnaast zijn ze sneller en dus beter in staat om realtime analyse uit te voeren op data in motion. Het nadeel is echter wel dat er veel menselijke input voor nodig is om de menselijke taalkennis over te brengen op een computer waardoor het langer duurt voordat een model operationeel is.

De toekomst
Waar ligt nu de toekomst van sentimentanalysetools? Beide methodes hebben aanhangers en tegenstanders. Maar de beste sentimentanalysetool voor de toekomst ligt in mijn ogen niet in één van de twee, maar in een hybrideoplossing. Daarbij wordt de aftrap gedaan door een statistische methode, die binnen een set gelabelde data een eerste statistische baseline creëert van patronen. Om die baseline te versterken laat je er vervolgens een taalkundig model op los. Door de beschikbaarheid van de statistische input kan het taalmodel veel gerichter zijn analyse doen en creëer je een tool die qua snelheid, schaalbaarheid en accuraatheid het beste van twee werelden bij elkaar brengt.

Deze blogpost is geschreven door Erik tromp, Adversitement.