Uitgelegd

Waarom spraakherkenning per taal verschilt

Elk spraakproduct is beter in het Engels dan in het jouwe. Dat is geen voortrekken, en de redenen kennen vertelt je wat er beter gaat worden en wat niet.

Gidsen

Het begint bij het oefenmateriaal

Een spraakmodel leert doordat het opgenomen spraak te zien krijgt naast de juiste tekst. Hoe meer het van een taal gezien heeft, hoe beter het ermee omgaat.

Dat materiaal is wild ongelijk verdeeld. Voor het Engels bestaat er een kolossale hoeveelheid uitgeschreven audio: uitzendingen, colleges, ondertitels, luisterboeken, openbare archieven. Een taal met tien miljoen sprekers en minder gedigitaliseerde media heeft daar een fractie van, en een streektaal soms vrijwel niets. Het Nederlands zit daar tussenin. Ruim bedeeld vergeleken met de meeste talen ter wereld, dun vergeleken met het Engels.

Het model velt geen oordeel. Het weerspiegelt wat het gekregen heeft, en wat het gekregen heeft weerspiegelt welke talen de meeste uitgeschreven audio opleveren. Dat gaat grotendeels over bevolkingsomvang en over hoeveel van het internet in die taal gebeurt. Het verklaart ook waarom het gat langzaam smaller wordt en niet in één nieuwe versie dichtgaat.

Binnen één taal herhaalt hetzelfde probleem zich op kleinere schaal. Oefenmateriaal helt over naar spraak uit uitzendingen, en die helt over naar standaardaccenten, voorbereide uitspraak en verzorgd taalgebruik. Gronings, Limburgs, Vlaams, jongere spraak, oudere spraak en sprekers voor wie het Nederlands een tweede taal is, zitten er in kleinere hoeveelheden in.

Twee mensen die dezelfde taal spreken kunnen daardoor merkbaar verschillende uitkomsten krijgen, en dat verschil zegt niets over hoe duidelijk een van beiden praat. Het gaat over hoeveel spraak die op de hunne lijkt in de stapel zat. Weet dat voordat je jezelf of je microfoon de schuld geeft.

Sommige talen zijn structureel lastiger

Los van de hoeveelheid materiaal maken een paar eigenschappen het herkennen oprecht moeilijker.

Samenstellingen. Talen die woorden aan elkaar plakken leveren heel lange vormen op die in geen enkele oefenverzameling vaak voorkomen. Het Nederlands doet dit voortdurend, en voor deze lezer is dat geen abstract punt. “Arbeidsongeschiktheidsverzekering” en “kinderopvangtoeslagaffaire” zijn gewone woorden uit het nieuws die een model vrijwel nooit als geheel gezien heeft, dus het moet ze uit brokstukken opbouwen. Gaat dat mis, dan krijg je geen spelfout maar drie losse woorden die op zichzelf allemaal bestaan, en zoiets glipt langs een snelle blik heen. Het Duits doet hetzelfde.

Rijke verbuiging. Heeft een zelfstandig naamwoord vijftien vormen en een werkwoord veertig, dan komt elke afzonderlijke vorm minder vaak voor dan een Engelse tegenhanger zou doen. Dezelfde hoeveelheid materiaal spreidt zich dunner uit.

Toon. In toontalen verandert toonhoogte de betekenis en niet de nadruk, en dat voegt een dimensie toe die het akoestische model goed moet hebben.

Schriftsystemen. Talen die zonder spaties tussen woorden geschreven worden vragen dat het systeem bepaalt waar woorden beginnen, en dat is een ander probleem dan ze horen. Talen met meerdere schriften zetten er nog iets bovenop.

Leenwoorden en wisselen midden in een zin. In veel talen zit alledaagse spraak vol Engelse vaktermen, en het Nederlands is daar een schoolvoorbeeld van: je stuurt een mail over de deadline van de meeting en logt daarna in op de portal. Die mengeling is gewoon in het leven en zeldzaam in schoon oefenmateriaal.

Geen van die dingen is onoverkomelijk, en ze betekenen allemaal dat een bepaalde hoeveelheid materiaal minder nauwkeurigheid koopt dan in een eenvoudiger taal.

Achttien talen uit één model, en wat dat kost

De meeste spraakinvoer op je telefoon gebruikt tegenwoordig één model dat veel talen dekt, en niet één model per taal. Die keuze heeft gevolgen die overal doorwerken.

Het voordeel is echt: één download, geen taalpakketten om bij te houden, en de mogelijkheid om uit de opname af te leiden welke taal je spreekt zonder een menu. Voor wie in twee talen leeft scheelt dat het verschil tussen inspreken gebruiken en het laten liggen.

De prijs is dat de capaciteit gedeeld wordt. Een model van een bepaalde omvang dat achttien talen dekt, besteedt aan elke taal minder van zichzelf dan een model van dezelfde omvang dat er één dekt. Daar komt de waarneming vandaan dat een toegewijd programma voor één taal het op die ene taal soms beter doet.

Er is ook een voordeel dat mensen niet verwachten. Verwante talen kunnen elkaar helpen, want patronen die uit de ene geleerd zijn dragen deels over naar de andere. Een kleinere taal die naast een ruim bedeelde verwant ligt, doet het in een meertalig model vaak beter dan zijn eigen hoeveelheid materiaal zou doen vermoeden. Het Nederlands heeft in dat opzicht twee goede buren.

Wat er gaat schuiven en wat niet

Schuift: de hoeveelheid beschikbaar oefenmateriaal, langzaam, naarmate er in meer talen meer uitgeschreven audio bij komt. De opbouw van modellen wordt bovendien efficiënter, wat betekent dat een model op telefoonformaat meer voorstelt dan het een paar jaar geleden deed.

Schuift niet: de structurele eigenschappen. Een taal met zware verbuiging spreidt zijn materiaal altijd dunner uit dan een taal zonder. Toonverschillen blijven een extra dimensie. Nederlandse samenstellingen blijven zo lang als het onderwerp ze maakt.

Schuift niet snel: de volgorde. Het Engels houdt niet op de best bediende taal te zijn, en elk product dat gelijke nauwkeurigheid over honderd talen belooft, beschrijft een voornemen.

Waarom een Engelse recensie je weinig vertelt

De meeste mensen komen bij deze vraag terecht terwijl ze tussen apps kiezen, en daar heeft dit alles een praktisch gevolg.

Vergelijkingen die in het Engels geschreven zijn beschrijven het best bedeelde geval. Een recensie die de nauwkeurigheid prijst, prijst die in de taal waar het meeste materiaal voor bestond, en de rangorde tussen producten kan in het Nederlands volstrekt anders liggen.

Test dus in de taal die je gaat gebruiken, op het soort zinnen dat je werkelijk schrijft, in plaats van op een Engelse rangorde af te gaan. Tien minuten met je eigen spraak is meer waard dan welke gepubliceerde vergelijking ook, en het is de enige manier om erachter te komen of een product jouw geval dekt.

Hetzelfde geldt voor het aantal ondersteunde talen op een productpagina. Een taal ondersteunen is een andere bewering dan er goed in zijn, en alleen de eerste komt in de reclame terecht. Een programma dat honderd talen opsomt en een dat er achttien opsomt kunnen allebei goed zijn in het Nederlands, of allebei tegenvallen, en de lijst gaat je dat niet vertellen.

Wat je er zelf aan kunt doen, en wat wij doen

Drie dingen zijn van jou en niet van ons, en ze staan hier op volgorde van effect.

Praat in hele zinnen. De omringende woorden helpen het model kiezen tussen vormen die op elkaar lijken, en in een taal vol samenstellingen helpen ze bepalen waar de grens tussen twee woorden ligt.

Voeg je eigen woordenschat toe. Eigennamen zijn in elke taal het slechtste geval, en het beste geval voor een eigen woordenlijst. LocalType houdt zulke toevoegingen op je telefoon en geeft ze als context aan het spraakmodel mee.

Probeer een groter model. Een groter model heeft meer capaciteit te verdelen over dezelfde achttien talen. Of je dat in het Nederlands merkt, weet je na tien minuten met je eigen zinnen.

Achtergrondgeluid verminderen helpt ook, en dat kost je meestal niet meer dan een deur dichtdoen.

Aan onze kant: achttien talen uit één meertalig model, afgeleid uit de opname en niet uit een menu, met drie modelmaten van 60, 190 en 539 MB zodat je capaciteit kunt uitgeven waar je hem nodig hebt. De middelste maat van 190 MB had op een testtelefoon met 4 GB geheugen 4,1 seconden nodig voor 6,9 seconden spraak.

De uitspraak is dezelfde als op de talenpagina: de nauwkeurigheid is niet gelijk over die achttien, want het oefenmateriaal is dat ook niet. Veelgesproken talen komen er het best uit. Bij je derde bericht zou je het toch gemerkt hebben.

Al het andere aan de app staat los van de taal die je spreekt. Het herkennen gebeurt op je telefoon uit een modelbestand dat geen andere app kan openen, het netwerk wordt één keer aangeraakt om dat model op te halen, er is geen account, geen reclame, niets dat je gebruik vastlegt, en geen bewaarde audio.

LocalType voor Android

Spraak naar tekst, privé op je eigen telefoon. De spraakherkenning draait op de telefoon zelf.

Ontdek op Google Play