De NOS laat een robot verslag doen van Statenverkiezing

Een nieuwsbericht geschreven door AI? Dat kan ook zonder ChatGPT. De NOS laat zien hoe het werkt.

📰 Het verhaal

De NOS maakte bij de Provinciale Statenverkiezingen van 2019 voor het eerst gebruik van robotjournalistiek. Een machine schreef voor alle 355 gemeentes een kort artikel over de uitslagen. Op menskracht had de redactie nooit op één dag zoveel artikelen kunnen publiceren. Giselle van Cann, destijds plaatsvervangend hoofdredacteur van de NOS, legt uit waarom de verkiezingen uitstekend waren voor een experiment met robotjournalistiek: “Het is een afgebakend onderwerp met gestructureerde cijfers.”

📈 De data

Om de artikelen te vullen met de juiste informatie maakte de NOS gebruik van verkiezingsdata van het ANP: de naam van elke gemeente, het percentage stemmen per partij en het opkomstpercentage. Deze data wordt door het algoritme op de juiste plek in het artikel neergezet, zodat lopende zinnen ontstaan.

🦾 De AI

Hier is geen gebruik gemaakt van ingewikkelde Machine Learning, maar van een vrij simpel sjabloon met ‘open plekken’. Je kunt het sjabloon zien als een soort standaard artikel vol gaten, die pas kunnen worden ingevuld op het moment dat de verkiezingsuitslagen bekend zijn. Een partij die minder stemmen haalde dan tijdens de vorige verkiezingen, verliest bijvoorbeeld. Als de verkiezingsdata laten zien dat er inderdaad sprake is van minder stemmen voor een partij, verbindt het systeem daar het woord ‘verlies’ aan.

In het voorbeeld hieronder zie je een ingevuld sjabloon. Alle gekleurde stukken, zijn automatisch ingevoerd nadat de verkiezingsdata bekend waren. 

Bron:  https://numrush.nl/de-nos-gebruikte-de-verkiezingen-als-testcase-voor-robotjournalistiek/

Dit soort sjablonen werkt goed in situaties waarbij het aantal uitkomsten beperkt en voorspelbaar is; denk aan beurskoersen, sportverslagen en de publicatie van criminaliteitscijfers. Verkiezingsuitslagen lenen zich dan ook goed: het aantal deelnemers en hun namen zijn vooraf bekend; de variatie zit ‘m in winst, verlies of gelijk en percentages en aantallen.

In het NOS-sjabloon zaten 76 open plekken, ook wel dynamische velden genoemd. De data van het ANP (opkomstcijfers en percentage stemmen per partij) werden geautomatiseerd in deze velden gegoten.

Zo kan een voorbeeldzin uit het sjabloon zijn dat:

[naam politieke partij] [verliest/wint] [x-aantal zetels] in [naam gemeente]. Met de bijbehorende data van het ANP resulteert dit mogelijkerwijs in de zin:  “De VVD verliest één zetel in gemeente Tilburg”.

Zo genereert de NOS unieke en specifieke, lopende nieuwsberichten over de verkiezingsuitslag per gemeente.

Voorafgaand aan de verkiezingen zijn alle mogelijke constructies van zinnen opgeschreven en geprogrammeerd. Het leverde maar liefst 7200 tekstvariaties op. Op die manier kon veel voorwerk worden gedaan, zodat er op de dag van de verkiezingen snel veel artikelen klaar stonden. Om de leesbaarheid te verbeteren worden ook synoniemen gebruikt. Zo kan de VVD de ene keer bij haar naam worden genoemd, en in de volgende zin worden omschreven als  ‘de liberale partij’.

De vorm van automatisering die de NOS heeft gebruikt is rule-based. Dat wil zeggen: Mensen (journalisten en programmeurs) stellen regels op, waar de machine zich heel direct aan dient te houden. Zo’n regel kan zijn: ‘Als een partij 2% minder zetels heeft behaald dan ze had voor de verkiezingen, spreken we van een klein verlies. Omdat de machine niets anders doet dan de regels opvolgen, is dit strikt genomen geen AI. Het systeem leert immers zelf niet bij.

⚖️ Ethiek en betrouwbaarheid

De genoemde werkwijze werpt voor de journalist verschillende vragen op. Bij wie ligt bijvoorbeeld de journalistieke verantwoordelijkheid als het mis gaat? En hoe kun je in de gaten houden dat er geen foutjes in het verhaal sluipen? Is er tijd om alle verhalen te dubbelchecken? Voor wie heeft het gevolgen als de berichtgeving een fout bevat? Je kan je ook afvragen hoe deze vorm van geautomatiseerde journalistiek in de praktijk moet worden gebruikt. Worden de verslagen online geplaatst en is daarmee de journalistieke taak van het nieuws brengen vervuld, of biedt deze manier van verslaggeving nieuwe mogelijkheden voor de journalistiek?

Welke kansen zie jij voor automatische nieuwsgeneratie? Welke onderwerpen zijn geschikt? En wat zouden journalisten moeten doen met de tijd die ze overhouden?

📚 Lesmateriaal

💡 Leerdoel: Je leert zelf data labelen en wordt je bewust van de subjectiviteit van labeling

Wanneer automatisch teksten worden gegenereerd, bestaat, net als bij handgeschreven artikelen, de kans op fouten. De kans dat die fouten tijdig ontdekt worden, is echter kleiner. Met automatische tekstgeneratie kan het aantal berichten dat je produceert tenslotte flink omhoog. Is er nog tijd om al die berichten te dubbelchecken? En wie is er verantwoordelijk als het fout gaat?

In deze opdracht werken we met een fictieve casus.

Een grote Amerikaanse krant gebruikt automatische tekstgeneratie om dagelijks verslag te doen van financieel nieuws. Op een dag gaat dit mis. Eén van de grote beursgenoteerde bedrijven in de VS, met een grote impact op de wereldmarkt, lijkt ineens diep in het rood te staan bij de presentatie van de jaarcijfers. Een fout, zo blijkt later. Er stond een komma verkeerd. Maar de gevolgen zijn niet meer te stoppen. In paniek blijkt een grote groep aandeelhouders haar aandelen verkocht te hebben. Het gevolg: de beurswaarde van het bedrijf keldert verder. De redactie van de krant herstelt de fout, maar kan de gevolgen voor het bedrijf, de aandeelhouders en de economie niet ongedaan maken.

Wie is hier verantwoordelijk?

Bij het opstellen van geautomatiseerde berichten, zijn verschillende partijen betrokken:

  • de journalist
  • de eindredacteur
  • de hoofdredacteur die besloten heeft de redactie met geautomatiseerde berichtgeving te laten werken
  • het bedrijf dat de software ontwikkeld heeft
  • de developer die de redactie geholpen heeft om de software te gebruiken voor op de redactie

Maak groepjes van vier. De docent deelt papiertjes waar bovenstaande rollen op staan. Leg de papiertjes met je groepje op volgorde van verantwoordelijkheid. Je bepaalt dus wie je het meest verantwoordelijk vindt voor de fout, wie daarna komt, etc., en uiteindelijk wie de minste verantwoordelijkheid draagt. Zorg dat je je keuze kunt beargumenteren.

💭 Bespreking

Bespreek de volgordes van de groepjes klassikaal. Wat valt op? Verschillen de meningen of zijn jullie het eens? En wat betekent dit voor een redactie dit robotjournalistiek in wil zetten? Stel dat jij de hoofdredacteur was en mocht beslissen of en hoe jullie robotjournalistiek zouden inzetten, wat zou je doen?

🧰 Materiaal

⏱ Tijdsindicatie

35 minuten, waarvan:

  • 10 minuten om het verhaal te lezen
  • 10 minuten om de volgorde van verantwoordelijkheid te bepalen met je groepje
  • 15 minuten om na te spreken

💡 Leerdoel: Je leert algoritmisch denken zodat je geautomatiseerde oplossingen kunt bedenken, volgen, beschrijven of zelfs kunt (mede-)ontwikkelen, voor verschillende journalistieke toepassingen

Boeken kun je op allerlei manieren sorteren. Ken je creatieve personen die hun boekenkast op kleur hebben gesorteerd?

Wij gaan vandaag op verschillende manieren boeken sorteren in een kast. En daarvoor ga je zelf een algoritme schrijven.
We verdelen de klas in vier groepen. Elke groep denkt een stappenplan uit voor haar eigen sorteeralgoritme.

Daarna gaan we elkaars algoritme testen. En dat doe je natuurlijk met echte boeken.
The proof of the pudding is in the eating.

Maak allereerst vier groepen.

Ronde 1: Een algoritme uitwerken

  • Groepen A en B sorteren op kleur
    Instrueer een robot om een nieuw boek in een boekenkast op kleur te sorteren. Schrijf alle stappen die hij moet zetten – maximaal zeven – zorgvuldig uit. Oefen alvast een keer.

  • Groepen C en D sorteren op alfabet
    Instrueer een robot om een nieuw boek in een boekenkast op alfabet te sorteren. Schrijf alle stappen die hij moet zetten – maximaal zeven – zorgvuldig uit. Oefen alvast een keer.

Ronde 2: Een algoritme testen

  • Elk team wisselt de bedachte instructies uit met een ander team
  • Alle teams voeren nu, om beurten, klassikaal, de instructies uit van in ieder geval één ander team, totdat alle instructies van alle teams zijn uitgevoerd. Jullie mogen elkaar geen aanwijzingen geven. Als de regels (je algoritme) duidelijk zijn, zou het zonder hulp moeten lukken. Is dat zo, of zijn er wijzigingen nodig?

💭 Bespreking

  • Welke set instructies werkte nu het best?
  • Waar ging het mis? Hoe komt dat?
  • Als je zou herschrijven – je mag regels weghalen, aanpassen en toevoegen – waar kom je dan op uit?
  • Terug naar het verkiezingsmodel van de NOS. Je ziet hieronder een voorbeeld van een template, waarin de onderdelen die automatisch worden ingevuld gemarkeerd zijn. Hoe gevoelig of ongevoelig is dit denk je voor fouten?
  • Wie is er verantwoordelijk als er een foutje insluipt?
  • En wat zijn de voordelen? Zou jij dit zelf inzetten als je het voor het zeggen had?

🧰 Materiaal

⏱ Tijdsindicatie

Disclaimer.

De onderzoekers hebben geprobeerd alle informatie te verifiëren bij de betrokken media. Waar dit niet is gelukt, is ervoor gekozen om op basis van de beschikbare informatie een zo volledig mogelijk beeld te schetsen van de software die (zeer waarschijnlijk) gebruikt is. De onderzoekers zijn daarbij bijgestaan door AI-experts. Omdat de experts de genoemde AI-toepassingen in meer algemene termen duiden, bestaat de kans op onjuiste details of onvolledigheden. Mocht u deze aantreffen, neem dan gerust contact op.