Menselijke vs. geautomatiseerde sentimentsanalyse: 0 – 1
Bij sentimentanalyse speelt het woord nauwkeurigheid altijd een hoofdrol. En wat blijkt? Geautomatiseerde sentimentanalyse scoort beter dan de menselijke beoordelingscapaciteiten. Maar hoe goed is de mens dan? Vaak wordt ervan uitgegaan dat mensen het sentiment in een tekst in 70% van de gevallen goed beoordelen. Dat getal wordt vaak gebruikt, maar het is lastig te achterhalen. Op Wikipedia wordt die 70% genoemd, maar er is geen citaat vemeld. En daarnaast, hoe representatief is dat getal voor voor tweets? Om die vraag te beantwoorden, organiseerde ik een maand geleden een experiment.
Men neme een drietal goed opgeleide annoteurs en een grote bak tweets. Zes dagen hebben onze drie annoteurs tweets zitten classificeren. Daarbij hadden ze vier keuzes. Bij elke tweet beoordeelden ze eerst of deze objectief of subjectief was. Bij de subjectieve tweets vroegen we hen vervolgens aan te geven of er een positieve, negatieve of neutrale boodschap in de betreffende tweet schuilde. Bij het onderzoek zijn er 5000 tweets door alle drie de testpersonen geclassificeerd.
#drama
Na het classificeren hebben we de oordelen naast elkaar gelegd en gekeken hoe vaak de studenten overeenstemden over de lading van de tweet. In 68% van de gevallen waren twee van de drie studenten het eens over de boodschap. Dat zit dicht tegen de alom gehanteerde 70% aan. Maar hoe vaak kenden de studenten alle drie dezelfde lading toe aan een tweet? Het antwoord: een dramatische 58,8%. Over dik 40% van de tweets zijn de studenten het niet eens. Valt dat even tegen.
Waar is die boodschap
Eerder dit jaar legde ik uit dat goede geautomatiseerde sentimentanalyse een accuraatheid van rond de 70% haalt. Oftewel: hoger dan het menselijk vermogen om de boodschap van een tweet te analyseren. Niettemin is het goed om te zien welke ‘onderdelen’ van een tweet precies de lading geven. Daarom vroegen we de annoteurs ook om voor 1.600 tweets aan te geven welke zinsdelen precies het sentiment aanduidden. Dat leverde 1600 keer 3 patronen op. En van die 1600 stemden de oordelen van onze annoteurs slechts 58 keer overeen. Oftewel: 3,6%. Oei.
Sentiment in scène
De menselijke beoordeling van tweets lijkt dus achter te blijven bij die van sentimentanalyse. Toch moeten we ook niet alle nauwkeurigheidscijfers van sentimentanalyses voor zoete koek slikken. Vaak zitten er nog wel eens addertjes onder het gras. Sommige partijen claimen bijvoorbeeld een accuraatheid van 85% of hoger. Maar vaak is een model dan specifiek ‘getraind’ op één sector of product. Als je hetzelfde model loslaat in een andere wereld, zakt het vaak genadeloos door het ijs.
Een tweede addertje is de selectie van tweets. Neem bijvoorbeeld de situatie waarin we voor de zekerheid nog twintig andere annoteurs dezelfde tweets laten classificeren. Als we dan alleen de tweets pakken waarbij een unanieme interpretatie is gevonden, kunnen we er 100% zeker van zijn dat er geen ruis in ons sentimentmodel zit. Dit lijkt mooi, maar betekent ook direct dat het model geen enkele vorm van nuancering kent en dus alleen de ‘simpele’ gevallen kan detecteren.
De mens voorbij
Op basis van het bovenstaande verhaal moeten er direct alarmbellen gaan rinkelen als iemand claimt een nauwkeurigheid hoger dan 70% te halen bij sentimentanalyse. Maar dat maakt de persoon in kwestie niet per definitie een leugenaar. Een goede, structurele aanpak om geautomatiseerd sentimentanalyse uit te voeren zou namelijk voor elk nieuw domein (denk aan media, telecom, financieel) een specifiek model moeten hebben. Op die manier kan bijvoorbeeld het domeinmodel ‘media’ richting een nauwkeurigheid van 80% gaan, maar slechts een nauwkeurigheid van 60% scoren in de telecomwereld. Dit houdt dan wel in dat je bij het definiëren van een nieuw domein ook een nieuw model moet trainen. Maar ja, voor wat hoort wat.
Meer uit sentiment
Wie zichzelf niet in de maling neemt, zal dus tot de conclusie komen dat geautomatiseerde sentimentanalyse zeker meerwaarde heeft. Het brengt het sentiment over een bepaald onderwerp sneller en beter in kaart dan wie dan ook.
Afbeelding: Paul Keller (cc)
Hoi Erik, mooi onderzoek, mooie post!
Het roept nog wel een vraag bij me op, vooral de conclusie. Want als automatische sentimentanalyse 70% goed scoort, volgens wie zijn die analyses dan “goed”? Want kennelijk heeft elke persoon die de tweets beoordeelt er weer een andere mening over.
Dag Erik.
Dank voor je stuk! Het roept vele vragen op, maar ik zal me beperken tot een vraag over: “Bij elke tweet beoordeelden ze eerst of deze objectief of subjectief was.”
Letterlijk betekent objectiviteit dat een boodschap exact volgens de feiten wordt doorgegeven, zonder dat er een persoonlijke mening in is verwerkt. Subjectiviteit is het persoonlijk oordeel van een individu over een onderwerp.
Je hebt studenten gevraagd een oordeel te vellen (dat is altijd subjectief) over of een tweet feiten weergeeft of een persoonlijke mening verkondigt. Mijn vraag is: in welke mate waren ze hierover eensgezind? Dus nog even los van de vraag welke sentiment ze vervolgens toekennen aan de persoonlijke meningen.
En dan toch nog een vraag: klopt het dat je vervolgens de overeenkomsten tussen de beoordelaars voor wat betreft sentiment hebt gebaseerd op de tweets waarvan men unaniem aangeeft dat deze een persoonlijke mening ventileren (“Bij de subjectieve tweets vroegen we hen vervolgens aan te geven of er een positieve, negatieve of neutrale boodschap in de betreffende tweet schuilde.”)?
Wellicht kan je dit nog verduidelijken.
Dank je wel alvast,
Ivo
@Bram (en deels @Ivo): Een zeer terechte en goede vraag.
Wat je normaliter ziet (zoals Ivo aangeeft) is dat men inderdaad een training set (data om je methoden uit te laten leren) gebruikt waarvan een x aantal mensen unaniem aangeven wat het sentiment is. Zoals gezegd betekent dat echter automatisch dat alle nuances verloren gaan en schrijnende gevallen – waarvoor het vaak juist zeer belangrijk is ze juist te identificeren – wellicht niet goed worden herkend. Daar waar het voor het train proces niet direct een probleem is, is het dat wel voor het valideren waarbij vaak ook een dataset op een zelfde manier wordt gemaakt. Je kunt dan dus alleen ‘obvious cases’ valideren.
De enige manier hoe je deze factor uit het validatie proces kunt halen is door de echte waarheid te gebruiken; wat heeft de auteur van het bericht ermee bedoeld, wat was haar/zijn emotie? Valideren kun je dus doen door auteurs van bijvoorbeeld Twitter berichten te vragen wat voor sentiment zij met de tweet wilden uitdrukken. Je haalt hiermee de menselijke interpretatie factor weg.
@Ivo specifiek:
De overeenstemming subjectief vs. objectief tussen alle 3 de annoteurs was 77.7% (3963 uit de 5098). De moeilijkheid zit hem dus vooral in het bepalen van de lading van een subjectieve tekst.
De overeenstemming die ik vermeld zijn gebaseerd op een classificatie in 4 categorieën: positief, negatief, neutraal of objectief.
Ik vind dit een moeilijke discussie.
Op zich zijn de resultaten namelijk niet opzienbarend. Ik had de verschillen in interpretatie v.s. een computermodel ook wel verwacht. Je zet toch 3 mensen naast elkaar, en ieder mens heeft een andere mening of interpretatie, terwijl één computer hier natuurlijk geen last van heeft.
Daarnaast speelt ook training een grote rol. Je stipte het al even aan. Er kan ook getraind worden op het herkennen van sentiment in een uiting of het ontleden van een uiting, hebben de 3 studenten alle drie dezelfde ervaring/training op dit gebied? Daar hoef je ook niets mee uit te sluiten.
Ik haal trouwens alleen het resultaat qua onderlinge overeenstemming uit de tekst: 58%. Waren alle 58% dan ook correct beoordeeld (d.w.z. het sentiment klopte? Hoe zat dit per student?) dat is namelijk de vergelijking die je moet trekken, aangezien je in je opening stelt dat dit 70% zou moeten zijn. Hebben jullie daar zowel bij de studenten als bij het algoritme een steekproef op gedaan?
Ook interessant: Hoe scoorden de studenten op uitingen met sarcasme, of ingewikkelde taalconstructies/stijlfiguren t.o.v. het algoritme?
Even terplekke out of the box denkend: ik denk dat de resultaten van menselijke beoordeling juist altijd goed zijn. Immers, dat is de werkelijkheid! Dat die interpretatie soms flink uiteen kan lopen geeft aan dat dat bij echte mensen die de tweets in hun timeline lezen, ook zo zal kan zijn.
Automatische sentimentanalyse zit er dus vaak naast, omdat er niet één waarheid bestaat.
Los daarvan vraag ik me af wat het nut is sentimentmeting op de schaal positief/negatief/neutraal. Ik denk dat een ervaren analist al snel de sfeer rond een bepaald issue (bv. een product launch) zal proeven.
En het is voor mij belangrijker te weten welke aspecten er precies als positief of negatief wordt bestempeld.
Ik ben ook wel benieuwd wie sentimentanalyse eigenlijk (serieus!) gebruikt en waarvoor.
Misschien dat iemand zich geroepen voelt om eens een leuke case te beschrijven in een post op Marketingfacts.
Inderdaad, het is geen doen om grote datasets handmatig te beoordelen. Automatische sentimentanalyse helpt prima met herkennen van opmerkelijkheden in grote hoeveelheden data (conversaties). Bij mensen die voor het eerst kennismaken met social media research, of beter gezegd het interpreteren van conversatie data uit social merk ik vaak dat zij in eerste instantie sentiment alleen als positief ingedeeld willen zien als dit positief ten opzichte van het onderzochte onderwerp is. Logisch om dit te willen maar helaas niet realistisch. Want dat kost hoe dan ook tijd, en tijd is geld, geld wat je dan wellicht beter kunt steken in kwalitatief onderzoek.
Ben het eens met John, is sentiment niet de verklaring voor alles. En op zijn zachtst gezegd een onbetrouwbare KPI bij grote datasets. Trek niet te vlug harde conclusies uit sentiment stijgingen of dalingen. Niet dat ik denk jullie dat rücksichtlos zouden doen 🙂
Ik sluit mij aan bij bovengenoemde standpunten. Tot niet lang geleden wat het niet (goed) mogelijk om geautomatiseerd sentiment analyse uit te voeren omdat dit niet betrouwbaar genoeg bleek. De huidige technologie stelt ons echter in staat dit wel redelijkerwijs te doen en het grote gewin is dat we redelijkerwijs een arbeidsintensieve menselijke taak nu kunnen automatiseren.
Dat de voorspellingen niet altijd kloppen, dat is een onoverkoombaar feit. Echter is de strekking van mijn artikel dat dit niet erg is daar een mens niet of nauwelijks beter kan. Sterker nog durf ik te beweren dat wanneer domein experts ingezet worden om de modellen op te bouwen, een automatische analyse toegespitst op een specifiek domein beter kan zijn dan menselijke analyse door een ‘leek’. Dit lijkt mij een erg nuttig effect.
Het bepalen van polariteit is inderdaad pas een eerste stap, maar wel een in de goede richting. De volgende stap is het bepalen van emotie in berichten, een iets uitdagender probleem simpelweg omdat er meer mogelijkheden zijn.
Tot slot is het ook zo dat geautomatiseerde sentiment analyse niet de heilige graal is, maar wat wel? Het is een concrete aanpak voor een specifiek probleem en dient dus ook toegepast te worden voor dat specifieke probleem. Overigens is wel al aangetoond dat sentiment vaak een indicator is van andere factoren zoals epidemieën, beursgang en zelfs verkiezingsuitslagen. Mijn gevoel is dat dit slechts de top van de ijsberg is 🙂
@harro
*kuch* 🙂 Wij doen dat in bepaalde gevallen wel serieus. Maar alleen in opdracht, en als onze methode überhaupt mogelijk is. We doen dit dan in afgebakende datasets, zoals bijvoorbeeld een campagne. Waarbij het sentiment handmatig toegekend wordt en er vervolgens een (met de klant afgesproken) waarde toegekend wordt aan positieve, negatieve en neutrale berichten. Dit kan een goed instrument zijn om bij b.v. management zaken aan te tonen. Ik zeg niet dat het perfect is, maar een bedrag ergens aan hangen werkt beter dan “er waren 3.052 positieve berichten” oid.
@jolante:
Ik twijfel er niet aan dat jullie het serieus aanpakken 🙂
De vraag die ik heb slaat in jouw voorbeeld meer op de opdrachtgever waarvoor je de analyse maakt. Waarvoor gebruikt de opdrachtgever de uitkomsten? Interne borstklopperij van de marketingafdeling richting het management (even negatief gesteld), of worden er acties aan de uitkomsten van sentimentanalyse gekoppeld, bijvoorbeeld verbetering van product, verbetering van communicatie?
Of misschien zelfs in KPI’s om de ROI te onderzoeken?
@Harro
Marketing springt eeerlijk gezegd wel als eerste op ja:). Maar het wordt (als de dataset zich er voor leent) ook ingezet bij reputatie issues, problemen met producten of dienstverlening, en dan kan het inderdaad als wakkerschudder dienen om communicatie en interne processen te verbeteren. Helpt bij alle inspanningen om iets aan te kaarten intern. Ik kan niet keihard beweren dat puur het feit dat er een bedrag gekoppeld is in een van die opdrachten ervoor gezorgd heeft dat er een gedrags- of koerswijziging plaatsgevonden heeft. Met één steen kun je de loop van een rivier veranderen schijnt een gezegde te zijn he. Maar meestal heb je gewoon een hele berg zand nodig.
BROOKS FINANCIËLE LENING FIRM
Gebied : Service> Finance , Insurance & Hypotheek .
BROOKS financiële lening FIRM
WIJ BIEDEN EEN REDELIJK leningsfinancieringen, gelieve ons te contacteren now.BROOKS FINANCIËLE LENING FIRM .
================================================== ========================================
================================================== ========================================
Geachte heer / mevrouw ,
BROOKS Financiële Lening FIRM
EMAIL === [ Brooksloanfirm@gmail.com
HEAD KWARTAAL ===
302 Moseley Road ,
Moseley , Birmingham City
M B16 9AN ,
Verenigd Koninkrijk ,
N0 Fax : ( 0121 ) ( 303 ) ( 4318 )
================================================== ========================================
================================================== ========================================
Hier komt een helderdere dag voor degenen die financiële steun nodig hebben voor hun persoonlijke behoeften , grote en kleine investering of een project , onroerend goed etc. met BROOKS FINANCIËLE LENING FIRM kunt u afscheid nemen van al uw financiële probleem zeggen . Ik ben Dr Stefany Brooks , voorzitter en CEO van BROOKS FINANCIËLE LENING FIRM . Ons bedrijf is een legitieme en bekende Britse goedgekeurde lening instelling in UK.We worden gefinancierd door middel van alternatieve financieringsbronnen dwz BROOKS FINANCIAL LIMITED , banken en samenwerken instanties .
================================================== ========================================
================================================== ========================================
Wij bieden leningen aan individuen en organisaties die de intentie hebben
* Doel aankoop
* Het kopen van Eigenschappen
* Voor Renovatie
* Schuld consolidatie
* Het doel van herfinanciering
* Oprichting van bedrijven
* Persoonlijk gebruik e.t.c
================================================== ========================================
Onze alternatieve financieringsbronnen is geclassificeerd en betrouwbaar , we hebben de middelen , die gericht is op snelle, flexibele en reliable.We bieden de volgende soorten leningen aan onze klanten
————
* Langlopende leningen ( 20_40years )
* Kortlopende leningen ( 1_5years )
* Media termijn leningen ( 5_20years )
* Investor Leningen
* Consolidatie van de schuld
* Tweede Mortgage
* Business Leningen
* Persoonlijke Leningen
* International Loans
* Woningkredieten .
================================================== ========================================
Opmerking : Wij bieden de volgende leningen aan particulieren ,
* Commerciële Leningen ( Secure en Ongedekte )
* Small Business Administration lening ( SBAL ) ( Secure en Ongedekte )
* Persoonlijke Leningen ( Secure en Ongedekte )
* Woon leningen ( Secure en Ongedekte )
* Hypothecaire Leningen ( Secure en Ongedekte ) en nog veel meer tegen 1,2% rente
* Voor een minimum van $ 10.000,00 of voor een maximum van $ 500,000,000.00 of euros.Interested aanvragers moeten toepassen kunt u reageren ons via e-mail of telefonisch contact .
================================================== ========================================
onze klanten hebben hun eigen voordelen , zoals —-
*** Weinig of geen onderpand vereist .
*** Bedrag hypotheek : $ 10.000,00 of euro of hoger voor het persoonlijke lening , terwijl $ 50.000,00 of euro of hoger voor Businees / Investment Lening .
*** Home Loan Wijziging Programma Zes maanden na .
*** Lening aflossing aflossingsvrije periode van zes maanden .
*** 24hours/7days beschikbaar .
*** Elke dag van het jaar .
*** Betaling via overschrijving naar de kandidaat ( e – banking ) zal binnen 12 uur , 30 minuten op uw bankrekening , Western Union en MoneyGram in 15 minuten , door te controleren op maximaal 72 hours.If u geïnteresseerd bent in het verkrijgen van een lening van ons bedrijf , neem dan contact met ons op via onze e – mail of BROOKS FINANCIAL lENING FIRM Klantenservice Telefoonnummer: . +447045700502 tegenstelling tot de meeste roekeloze geldschieter Brooks als financiële lening instelling van een gestroomlijnde en niet- bureaucratische wijze van kredietverlening , zodat er gerust uw lening zal worden verwerkt op een zeer efficiënte manier .
HEAD KWARTAAL ===
302 Moseley Road ,
Moseley , Birmingham City
M B16 9AN ,
Verenigd Koninkrijk ,
N0 Fax : ( 0121 ) ( 303 ) ( 4318 )
beschouwen
De heer Thomas Brooks
advertentie Manager
BROOKS FINANCIËLE LENING FIRM
EMAIL ——- [ brooksloanfirm@gmail.com ] , [ brooksloanfirm@hotmail.co.uk ] , [ brookloanfirm@outlook.com ] , [ brooksloanlender@gmail.com ]
Opmerking : – Al is dit niet een automatische e-mail , houden wij op het versturen van deze e-mails naar al die mensen die vinden we in aanmerking komen van het gebruik van onze diensten . Afmelden voor toekomstige e-mails ( dat wil zeggen , om ervoor te zorgen dat we niet opnieuw contact met u opnemen met deze aanbieding ) , stuur dan je reactie , welke uw intenties .
Gerelateerde artikelen
Marketingfacts. Elke dag vers. Mis niks!
Marketingfacts. Elke dag vers. Mis niks!