Een chatbot waar gebruikers terecht kunnen met hun vragen over het coronavirus. Op vrijdag 28 februari werd de eerste besmetting gemeld in ons land. In de week daarna zagen we al veel onzin over het virus op sociale media verschijnen. Tijd dus om mensen te helpen in hun zoektocht naar betrouwbare informatie over de virus uitbraak. De technologie was er en binnen een dag was de eerste versie dan ook gereed.
Chatbots worden getraind door ze te voeden met vragen en de bijbehorende antwoorden. Deze vragen en antwoorden worden opgeslagen in een database waarna een gebruiker vragen kan stellen aan de getrainde bot. Een Natural Language Processing (NLP) dienst vertaalt de vraag van de gebruiker in iets bruikbaars en Machine Learning (ML) zorgt er vervolgens voor dat het meest waarschijnlijke antwoord (of antwoorden) wordt getoond aan de gebruiker.
Een betrouwbaar mechanisme dat zijn werk al jaren zo doet. Maar toch zagen we gebruikers worstelen met de antwoorden die werden gegeven op hun vragen. Waar ging dat dan mis?
Meest gestelde vraag na eerste twee weken: Hoe weet ik of ik het coronavirus heb?
De beste resultaten krijg je als je een bot met regelmaat opnieuw traint op basis van input van de gebruikers. Al dan niet automatisch. Vragen uit de praktijk vormen namelijk de beste voeding voor een chatbot. Niet beantwoorde vragen zorgen er zo voor dat de bot elke dag beter wordt.
Meest gestelde vraag na vier weken: Wanneer gaan de scholen weer open?
De corona chatbot was zoals gezegd snel in de lucht. Betrouwbare vragen en antwoorden werden automatisch van de websites gehaald van het RIVM en andere betrouwbare (semi)overheidsinstellingen. Door dit met regelmaat te herhalen zou de kennis van de chatbot actueel blijven. Vervolgens zou de chatbot beter moeten worden door de bot bij te scholen op basis van de daadwerkelijk gestelde vragen over het coronavirus door gebruikers.Dat was het plan.
De praktijk bleek echter iets weerbarstiger. Met name praktische uitdagingen zorgden ervoor dat een chatbot met een antwoord op alle vragen over het virus nog ver weg is. Welke uitdagingen zijn we dan zoal tegengekomen?
Om ervoor te zorgen dat de chatbot dagelijks wordt bijgewerkt met actuele kennis van betrouwbare websites, is het van belang dat de structuur van die websites niet (teveel) wijzigt. Waar we begonnen met een verwijzing naar korte lijstjes met vragen op de website van het RIVM en de Rijksoverheid, waren we al snel gedwongen om dagelijks alle verwijzingen bij te werken.
Met name de structuur van de website van de Rijksoverheid wijzigde regelmatig. Dat moest ook wel want er kwamen dagelijks grote hoeveelheden vragen en antwoorden bij. Je kan je afvragen waarom de Rijksoverheid niet zelf een chatbot heeft ingericht. Misschien iets voor de toekomst.
We leren elke dag meer over het virus en de manier waarop we ermee om willen gaan. Ook de vragen uit de de samenleving wijzigen daarmee dagelijks. Daar waar de eerste weken bijvoorbeeld de vragen meestal gingen over gezondheid (“Hoe weet ik of ik het coronavirus heb”), zijn de vragen de laatste tijd meer gericht op het versoepelen van de verschillende maatregelen.
Dit heeft tot gevolg dat de inhoud van de vragen en de antwoorden op de verschillende websites met regelmaat wijzigt. Waar de chatbot begon met een kort lijstje met vragen over gezondheid bij het RIVM, haalt deze nu informatie uit meer dan 10 betrouwbare bronnen met meer dan 1400 vraag- antwoordparen over allerhande onderwerpen rondom de virus uitbraak.
Een chatbot over het virus die niet dagelijks wordt getraind, is dan ook al snel verouderd. Het risico van verouderde informatie adresseren we nu door dagelijks de bot opnieuw te trainen en altijd een bron te vermelden bij het gegeven antwoord.
Een goede vraag stellen is een kunst op zich. We zien dan ook grote verschillen tussen de vragen over het coronavirus op websites van (semi)overheden en die van (bijvoorbeeld) grote dagbladen. Je merkt dat partijen verschillen in het aanvoelen van de vragen die leven in de samenleving.
Zoals eerder aangegeven is het van belang dat een chatbot wordt getraind met simpele vragen en varianten van die vraag. Als je man klachten heeft en je maakt je daarover zorgen, dan vraag je waarschijnlijk niet: “Ik ben huisgenoot van iemand die luchtwegklachten en koorts heeft”. Toch staan de websites van betrouwbare instanties vol met dergelijke formuleringen.
Dit betekent dat variaties op de vragen handmatig moeten worden toegevoegd of automatisch op basis van de input van gebruikers. Dit is tot nu toe lastig gebleken omdat de chatbot regelmatig opnieuw wordt getraind (alle oude kennis eruit en nieuwe erin).
De technologie en kennis om succesvolle (vraag- en antwoord) chatbot te realiseren zonder al teveel handwerk is voor iedereen beschikbaar. Voor een succesvolle chatbot dient echter wel aan een aantal randvoorwaarden te worden voldaan.
Zo dienen de structuur en de inhoud van de bronnen die worden geraadpleegd om de bot te trainen, zoveel mogelijk constant te blijven. Pas dan kan aandacht worden besteed aan het optimaliseren van de bot door bijvoorbeeld varianten op vragen toe te voegen. Al dan niet op basis van de chathistorie van gebruikt. Een chatbot die automatisch wordt getraind, altijd up-to-date is en zichzelf optimaliseert op basis van de input van gebruikers, is bij een onderwerp als het coronavirus voorlopig een utopie.
Tot die tijd betekent dat veel extra handwerk. Wat we met plezier hebben gedaan.
Ik hoop in elk geval dat het vaccin er eerder is dan die perfecte bot.