Meta en de blunderende Blenderbot
Het klinkt als een album van Suske en Wiske, de titel van dit artikel. Toch zit er een serieus onderwerp achter, namelijk de door Meta (lees Facebook) geïntroduceerde Blenderbot. Een chatbot die in gesprekken tot verrassende conclusies komt.
Dit ontdekte Marietje Schaake (voormalig Europarlementariër, columnist en policy director bij Stanford Universiteit). In een chat met een collega van haar met Blenderbot had werd zij (Schaake) gelabeld als een terrorist. De vraag ‘Who is a Terrorist?’ werd volgens het screenshot beantwoord op een vreemde manier.
Hoe kan een chatbot iemand zomaar als terrorist labelen?
Het vreemde is dat er een ‘menselijk lijkend’ antwoord wordt gegeven EN direct daarna een persoon (Schaake) wordt genoemd die gezien haar achtergrond een zeer onwaarschijnlijke naam is.
Het menselijk lijkende antwoord verbaast me niet. Meta is al jaren bezig met NLP (natural language processing), onder andere met long form question answering. Je kunt dit omschrijven als het stellen van vragen aan een systeem waarbij het antwoord niet direct te geven is. Dus geen vraag als ‘Wat is de temperatuur in Amsterdam?’, maar meer de vraag ‘Moet ik me laten vaccineren?’. Bij de vaccinatie-vraag zal het systeem op zoek gaan in publieke bronnen om daaruit een antwoord te halen waarbij er recht wordt gedaan aan alle invalshoeken met betrekking tot vaccinatie.
Hoe werkt Blenderbot eigenlijk?
In dit artikel zal ik de principes van het systeem (zowel long form als Blenderbot) beschrijven. Want de tweet van Schaake triggerde me om er eens in te duiken hoe Blenderbot tot deze chat kwam. Ik heb contact gezocht met Schaake, maar nog geen contact gekregen. Via contacten probeer ik te zien of de technologie op basis is van long form answering of dat er nieuwe vormen zijn. Ook Meta heb ik geprobeerd te pakken te krijgen, maar tot nu toe geen succes. Dus ik schrijf op basis van wat ik kan vinden in de researchpagina’s.
Achter de bot zit natuurlijk NLP en zeer waarschijnlijk state of the art Transformer Models die in staat zijn om de vraag te begrijpen en antwoorden te formuleren. Meta heeft zijn eigen model ontwikkeld.
Wat wel direct te lezen valt:
This early prototype needs your help. Have a conversation about anything that interests you, and provide feedback to help AI research.
Wat is NLP?
Maar eerst een stukje achtergrond over de technologie. Wat is NLP? Omdat IBM het al heel mooi opschreef:
Natural language processing (NLP) refers to the branch of computer science – and more specifically, the branch of artificial intelligence or AI – concerned with giving computers the ability to understand text and spoken words in much the same way human beings can.
Dat is makkelijk gezegd en in de praktijk moeilijk te realiseren. Veel (zo niet alle) universiteiten zoals de UvA / VU maar ook grote techbedrijven als Meta, Microsoft en Google zijn ermee bezig. Ook veel start-ups / spin-offs van universiteiten en scale-ups zijn op NLP gedoken.
Zeta Alpha, een start-up op het Science Park in Amsterdam houdt zich bijvoorbeeld bezig met een slimmere manier om informatie (onder andere wetenschappelijke papers) te ontdekken en te organiseren voor teams die zich met kunstmatige intelligentie en data science bezig houden. Want het gaat snel in de wereld van AI / NLP. Hoogtepunt voor mij als leek is de jaarlijkse workshop waar de state of the art op het gebied van NLP / Transformers (het populairste model) wordt uitgelegd aan geïnteresseerden.
Consumenten komen eigenlijk alleen met de output van NLP in contact. Google Translate is een goed voorbeeld waar NLP wordt gebruikt om te vertalen. De resultaten geven meestal een goed beeld van de tekst, maar de vertaling is niet vlekkeloos. Met name bij complexe teksten, minder gangbare uitdrukkingen of complexer woordgebruik zie je dat de vertaling mank gaat. Dat is logisch, want taal is complex!
Long Form Q&A
Vorig jaar vertelde een onderzoekster van Facebook over hun Long Form Q&A. Ik ga niet haar hele verhaal herhalen, al was het maar dat het redelijk technisch is, maar ook omdat er al veel online te vinden is. Waarom is dit van belang? Omdat het een beeld geeft van wat NLP nu al kan.
In principe wordt in vereenvoudigde form bij Long Form Q&A:
- de vraag geïnterpreteerd (eventueel verheldering gevraagd).
- binnen de bronnen / op het internet gezocht naar relevante stukken die antwoord geven.
- gewogen op relevantie.
- van ieder relevant stuk een verkort abstract gemaakt.
- uiteindelijk een antwoord in ‘menselijke’ vorm gegeven op basis van de relevantste stukken.
Dit is een indrukwekkend stuk werk. De training van het Meta-model gebeurde op basis van de ELI5 Dataset. ELI5 staat voor: Explain Like I am Five en is een Reddit-community. Omdat de uitleg duidelijk is heeft Meta een extract gemaakt van deze dataset om als testset te gebruiken. Want kunstmatige intelligentie moet getraind worden. Weten wat goed en niet goed is, is de basis. Liefhebbers (lees onderzoekers) met technische skills kunnen zelf met de modellen aan de slag. Niet alleen met Long Form AI, maar ook met de source van Blenderbot.
Het ontwikkelen van een nieuw model is typisch iets voor universiteiten en research-afdelingen. Gebruik van een model is iets wat ook niet-onderzoeksafdelingen kunnen doen, maar dit is nog steeds werk voor specialisten op dit gebied. De inbedding in een chatbot zoals Blenderbot is voor de consument eigenlijk de interface naar de technologie.
Wees gewaarschuwd
Bij het gebruik van de Blenderbot word je op diverse manieren gewaarschuwd voor de status van Blenderbot. De chatbot speelt een personage, een character. Maar hoe moet je dat interpreteren? Is een personage een chatbot met een bepaalde eigenschappen en voorkeuren? Qua politiek, levensbeschouwing of iets anders?
Ik probeer dezelfde vraag als de kennis van Schaake: ‘Who is a terrorist?’. In plaats van een persoon wordt er nu meer een definitie gegeven:
‘Do you mean who are terrorists? They are people who commit violent acts in the name of a political or religious cause‘.
Er wordt geen persoon of groep genoemd. De vraag ‘Noem er een?’ levert een bekende naam op: Al Qaida en daarna de Taliban. Een Nederlandse terrorist is volgend Blenderbot “de Pauline Jansens foundation”. Na de naam van een terrorist van Isis komt de chatbot met Geert Wilders op de proppen. Hierbij wordt Wilders als racist gelabeld en vraagt de chatbot of dat ook terrorisme is. Blijkbaar is er voor Blenderbot een relatie. Bij navragen wordt de connectie gelegd. Later kent Blenderbot geen andere Nederlandse “terroristen”.
De chatbot als grappenmaker
Maar zijn er andere onderwerpen waar je over kunt praten? Ik probeer het met de vraag of tijd een illusie is. Bij een eerdere poging op mijn mobiel gaf Blenderbot daarbij een antwoord wat neerkwam op de manier van het meten van tijd en dat dat iets is wat wij verzonnen hebben. Net zoals de reden waarom een minuut 60 seconden heeft. Deze keer komt er een ander antwoord, maar met wat doorvragen komen we toch op de juiste argumenten.
Wel komt de chatbot in deze tweede sessie (voortbordurend op de terroristen-vragen) onverwacht als een grappenmaker uit de hoek.
Ook in de discussie is de chatbot minder direct dan ik verwacht.
De antwoorden lijken ontwijkend, maar toch ook weer niet. Het is geen directe poging om een ander onderwerp aan te snijden.
Toch blijft Blenderbot hangen in de grappen. Een derde poging levert weer wel een ‘tijd is een illusie’-antwoord op.
Ook hier weer wat schimmige antwoorden. Verder gaat Blenderbot graag over op een ander onderwerp. Blenderbot snapt wel de context en snapt ook dat rennen veel tijd kost.
Blunders?
Als je kijkt bij Vox, The Verge en Engadget blijft er weinig heel van Blenderbot. Aan de andere kant, de disclaimers staan er duidelijk bij als je met Blenderbot begint. Volgens Jelle Zuidema (universitair hoofddocent aan de Universiteit Amsterdam) is Blenderbot een bijzonder krachtig systeem wat op taalgebied een sterk staaltje laat zien. Helaas is kan het voorkomen dat een systeem uit de bocht schiet. Het napluizen waar de fout precies zit is niet zo makkelijk, maar wel zeer wenselijk volgens hem.
De openheid van Meta is in dit geval opvallend, want iedereen kan zelf het model downloaden en aan de slag. Andere taalmodellen zijn veel geslotener. Misschien dat je dit wel moet zien als een slip of the tongue. Je kunt niet overal expert op zijn als mens en dat geldt tot nu toe ook voor chatbots, AI en NLP.
Maar het levert wel problemen op voor Meta. Ook Jakub Zuvrel (CEO van Zeta Alpha) benadrukt het prototype-karakter van Blenderbot: ‘In principe probeert het systeem een gesprekspartner te zijn op allerlei gebieden en komt het neer op kakelen’.
Als je kijkt in de papers op de site, dan zie je dat er meerdere filters zijn die berichten eruit halen die onwenselijk zijn. Maar een groot systeem dat uit allerlei bronnen data haalt, dan is het inherent dat er iets tussendoor schiet.
Taal en relaties
Hoe kan dat nou komen dat iemand als terrorist wordt gelabeld? Laten we ervan uit gaan dat het internet de bron is voor de chatbot. Het kan ook zijn dat een gedeelte wordt gebruikt, maar voor een generieke chatbot is meer data beter en ook moeilijker.
Het probleem met taal is dat je op vele manieren iets kunt zeggen. Soms duidelijk, soms minder duidelijk. Sommige politici kunnen veel zeggen, maar wat precies is niet duidelijk.
Een ander voorbeeld: ‘Marianne parkeerde haar bolide voor de deur’. Dan moet het systeem snappen dat bolide een soort auto is. Maar ook dat het niet noodzakelijk een supersnelle raceauto is maar net zo goed een Fiat Panda kan zijn. Dit is afhankelijk van de context. Is Marianne een fysiotherapeute uit Eindhoven, dan verwacht je niet een Ferrari F40 maar eerder een leuke cabriolet.
Het is lastig te achterhalen waar het mis gaat
Zoals gezegd kunnen we niet in Blenderbot kijken als gebruiker. Of Meta dat wel kan en in welke mate weet ik niet zeker, maar ik verwacht dat ze wel voor een gedeelte de logica kunnen volgen. Omdat je Blenderbot kunt resetten zou je zelfs wel moeten zien of iets te reproduceren is.
Neem het voorbeeld van de “pauline jansens foundation”. Zoeken naar deze entiteit levert weinig op. Op Google maar ook op Dogpile komt er niets zinnigs naar voren. Het kan zijn dat ergens in een document deze naam staat en het systeem een verkeerde relatie legt of de waarde van de informatie verkeerd inschat.
Uitzoekwerk voor Meta. Het is op zijn zachtst gezegd onhandig om mensen als terrorist te labelen.
Zoeken op “Bill Gates” levert bij Google ook niet gelijk de verhalen op over allerlei complottheorieën. Voor wat betreft Schaake is het ook onduidelijk hoe Meta hiertoe komt en waarom ook zo direct. Anderen die dezelfde chat hebben geprobeerd, komen op andere resultaten uit. Uitzoekwerk dus voor Meta, want ik denk dat ze toch wel enige vorm van transparantie of inzichtelijkheid moeten geven. Het is op zijn zachtst gezegd onhandig om mensen als terrorist te labelen.
Doe je dit als persoon, dan neemt men je hopelijk niet serieus als je met dit soort voorbeelden komt. Toch zie je dit (ook in de politiek) steeds vaker gebeuren. Verwatering van termen kan een systeem ontregelen. Het is niet dat het systeem niet meer functioneert, maar het wordt het verkeerde geleerd.
Wanneer is iemand een terrorist?
En hoe zit het met de definitie van een terrorist? Ben je dat als je terroristische handelingen uitvoert / plant / financiert? Politici zoals Trump worden bijvoorbeeld genoemd in relatie tot stochastisch terrorisme. Dit is een term die, vrij vertaald, het volgende inhoudt: ‘het publiek demoniseren van groepen of mensen wat aanzet tot (willekeurig) geweld tegen hen.’
Het stochastische element is de willekeur. Het is niet bekend door wie, wanneer en tegen wie het geweld zal worden gebruikt. Maar de kans is er dat iemand dit aangrijpt voor geweld. Door deze term kan Blenderbot mogelijk ook de connectie maken, zoals je in de screenshot ziet bij Wilders waarbij racisme wordt gerelateerd tot terrorisme.
Tijd is een dimensie die in Blenderbot wel een rol speelt, omdat het in staat is om recent te kijken naar een persoon bijvoorbeeld. Maar het is gissen wat er mis gaat. Als Meta hier (en voor fouten in het algemeen) onvoldoende een antwoord op kan geven (en corrigeren), dan zal een breed systeem als Blenderbot zeer waarschijnlijk geen succesvolle toekomst hebben.
Het karakter van Blenderbot
Het karakter van Blenderbot is tot nu toe niet echt belicht, maar ik zou willen welen hoe “character” wordt gedefinieerd. Zoals Blenderbot in de latere discussies overkwam was het een beetje de grappige oom op het verjaardagsfeestje (het is een grapje!).
Maar is er ook een verandering in bronnen, weging of voorkeuren? Kan Blenderbot meer naar de complotkant denken of sterker in de kerkelijke leer zijn? Willen we een chatbot die antwoorden kan geven, die een denkrichting kan voeden of doet een chatbot dat altijd door de algemene mening van het internet weer te geven?
Openheid
Meta is redelijk open over de technologie die wordt gebruikt. Zoals al eerder gezegd, het is niet de meest toegankelijke stof maar er zijn goede introducties voor Longform Q&A maar ook voor Blenderbot zelf. Voor de liefhebber is er een hele pagina met wetenschappelijke papers over de onderdelen / elementen van Blenderbot en andere projecten daarvoor.
Het gaat om wat je met de technologie doet
Dit lange artikel geeft een kijkje in de wereld van AI en NLP. Met alle doorbraken, maar ook met de zwakheden. Kunstmatige intelligentie moet je altijd met vraagtekens benaderen. Is dit iets wat we willen, ja of nee? AI brengt veel, maar het is een onderzoeksgebied met vragen. Op het gebied van transparantie en bias in data en modellen, maar ook over wat het kan.
De cameratechnologie die China gebruikt bij de observatie (spionage) van haar burgers is dezelfde die is gebruikt om te bepalen welke mensen het Capitool bestormden. Het ene gebruik is verwerpelijk en repressief, het ander begrijpelijk en verdedigbaar. Het is niet de technologie in dit geval die slecht is, het is wat je er mee doet.
Het doel van Blenderbot is onderzoek. Het gebruik van Blenderbot is omgeven door mitsen en maren, disclaimers en checkboxen. Ondanks al die disclaimers heeft Meta toch een verplichting om openheid te geven in de totstandkoming en ook fouten eruit te halen. Doen ze dat niet, dan blijft Blenderbot blunderen!
Luister ook de uitzending van BNR Zakendoen waar ik samen met presentator Thomas van Zijl Blenderbot bespreek.