"Wat een wolf anders maakt dan een hond"


Een veelgebruikte toepassing van machine learning is het classificeren van data. Classificatie is automatisch herkennen of indelen van data in (voorgedefinieerde) categorieën. Dit kunnen bijvoorbeeld afbeeldingen zijn; Denk bijvoorbeeld aan plaatjes van dieren die je wilt sorteren naar hun soort. In chatbots wordt tekstclassificatie vaak toegepast om bijvoorbeeld de vele manieren hoe je een vraag kan stellen te groeperen naar dezelfde achterliggende hoofdvraag, de zogeheten ‘intent’.

Een belangrijke valkuil bij het toepassen van classificatie algoritmes is dat we als mensen snel ervan uit gaan dat, indien een classificatiemodel bijvoorbeeld bij 99% van de afbeeldingen de correcte categorie kan raden, het model daadwerkelijk begrepen heeft goed te classificeren. Immers zegt het percentage van 99% dat het model vrijwel altijd correct is, toch? In de praktijk ligt dit helaas net even anders. We toetsen immers enkel het geven van het correcte antwoord, maar controleren niet de methode die gebruikt wordt om tot het goede antwoord te komen.

Een perfect praktijkvoorbeeld was een onderzoek (paper: arXiv:1602.04938) waarbij getest werd om afbeeldingen van honden en wolven te onderscheiden. Het leerde niet de verschillen tussen honden en wolven, maar bleek in plaats daarvan naar de omgeving te kijken als onderscheidende factor; De wolven zaten vaak in de sneeuw en honden in het gras in de foto’s en dat was het onderscheidende kenmerk om de afbeeldingen “goed” te onderscheiden.

In veelgebruikte intent-classificatie met neurale netwerken in chatbots zien we hetzelfde gedrag -het kiezen van een makkelijkere maar verkeerde weg- ook regelmatig optreden. Een classificatie-algoritme probeert simpelweg zijn opgedragen doel te bereiken om de intents te onderscheiden en daardoor kan dit alsnog gebeuren op andere taalkundige kenmerken dan we als mensen bedoeld hadden. Misschien kwam in de ene zin wel een (voor ons minder belangrijk) woord of kenmerk voor wat de zin voor het algoritme wel onderscheidend maakte van de andere zinnen.

Dankzij ons onderzoek naar meer robuuste AI ontdekten we recentelijk een nieuwe methodiek om classificatie in chatbots een aanzienlijke boost te geven. Door een neuraal netwerk op een speciale manier extra traindoelen vanuit de linguïstiek te geven, kunnen we het netwerk opdragen tijdens de training rekening te houden met bepalende taalkundige kenmerken, denk bijvoorbeeld aan het lijdend voorwerp of een ontkenning in een zin. Hierbij trainen we de chatbot niet alleen op resultaat, maar ook op toegepaste methodiek. Het effect? Veel voorspelbaarder gedrag op niet eerder geziene vraagzinnen.

Benieuwd aan welke innovaties Cornelistools werkt en hoe we dit voor jouw organisatie kunnen inzetten? Neem gerust eens contact op!


Geplaatst 08-2023 in Classificatie

Eerdere posts

Tests en monitoring in een tijd van AI

Veel developers kennen wel de meme 'It works on my machine'. Software die perfect op de ene machine werkt, kan op een net andere machine of in een veranderende omgeving compleet falen. • (2023) Lees verder →

"Wie A zegt moet ook B zeggen"

Een zeer bruikbare en nuttige toepassing van taaltechnologie is het maken van samenvattingen. Dagelijks krijgen we zoveel informatie te verwerken dat er steeds meer behoefte komt aan het filteren en beknopter maken van informatie. Toegang tot beknoptere informatie helpt ons efficiënter keuzes te maken aan welke informatie we onze tijd moeten besteden. • (2023) Lees verder →

Reductie in complexiteit

Een fascinerend aspect van de totstandkoming van de baanbrekende transformer architectuur (Google Brain team, 2017), sindsdien het dominante component in de huidige AI-revolutie, is het destijds streven naar meer eenvoud. • (2023) Lees verder →