Zo werkt het

Cijfers en adressen inspreken

Spraakherkenning gaat goed om met zinnen en slecht met reeksen cijfers. De reden is dezelfde die het goed maakt in zinnen, en als je hem kent weet je precies wanneer je moet stoppen met praten en beginnen met typen.

Gidsen

Spreek de zin, tik de reeks

Eén werkverdeling dekt vrijwel alles.

Een bericht met “de referentie is” erin spreek je in twee seconden in. De referentie zelf tik je in drie seconden, en die levert helemaal geen fouten op. Het geheel inspreken en daarna verbeteren duurt elke keer langer dan de reeks meteen intikken.

In de praktijk ziet dat er zo uit. Je spreekt in: “Hoi Karin, mijn nieuwe nummer staat hieronder, bel maar als het uitkomt.” Daarna tik je het nummer. Twee handelingen, en de tweede kost je minder dan de correctieronde die je anders had gehad.

Blijven over: de gevallen waarin tikken niet kan, en hoe je herkent welke reeksen de gevaarlijke zijn.

Waarom cijfers zonder hulp zitten

Spraakherkenning leunt zwaar op de woorden eromheen. Is een klank dubbelzinnig, dan versmallen de buren de mogelijkheden, en daarom komt een hele zin er goed uit terwijl een los woord dat niet doet.

Een reeks cijfers heeft die buren niet. Elk cijfer kan op elk ander cijfer volgen, dus aan “zeven” valt niet af te lezen dat “drie” waarschijnlijker of onwaarschijnlijker is als volgende. Het systeem werkt puur op klank, zonder de hulp waar het normaal op steunt.

Adressen en codes zijn nog erger, want die mengen categorieën. Een Nederlandse postcode is vier cijfers en twee letters zonder enig taalkundig patroon. Een e-mailadres bevat een woord, een teken, nog een woord en een uitgang, en dat komt er in één adem uit. Een referentienummer is een reeks die iemand verzonnen heeft. Een betere app verhelpt dit niet.

Zo ziet het misgaan eruit:

Cijfers plakken aan elkaar of vallen uiteen. “Twintig vierentwintig” wordt 2024, of 20 24, of het blijft in woorden staan, afhankelijk van het systeem en van je ritme.

Cijfers die op elkaar lijken. In veel talen klinken meerdere getallen dicht bij elkaar, en snel achter elkaar uitgesproken lopen ze in elkaar over.

Opmaak wordt verzonnen. Telefoonnummers worden gegroepeerd, datums omgezet, en het decimaalteken landt anders afhankelijk van de taal waarvan het model dacht dat je hem sprak.

Tekens worden woorden. Het apenstaartje, de punt, het streepje, de schuine streep. Die spreek je als woord uit en er is geen betrouwbare manier waarop een systeem kan weten of je het teken of het woord bedoelde.

Letters worden klankgenoten. In een postcode of een referentie zijn uitgesproken letters genadeloos. B, C, D, E, G, P, T en V rijmen allemaal op elkaar, en het systeem kiest er een.

Als je ze toch hardop wilt zeggen

Soms kun je niet typen: je handen zijn bezig, je loopt, of de reeks is kort genoeg om het omschakelen niet waard te zijn. Een paar technieken helpen.

Zeg cijfers los, met een tel ertussen. “Nul, zes, één, twee” en niet “nul zes twaalf”. Groeperen is waar het aan elkaar plakken vandaan komt.

Geef het een aanloop. Twee gewone woorden vóór het getal geven het systeem iets om zich aan vast te houden. Zeg “het nummer is” en dan pas de cijfers; koud met een cijfer beginnen is de lastigste start die je kunt kiezen.

Zeg korte groepjes en pauzeer. Een telefoonnummer in drie stukjes met een pauze ertussen is veel betrouwbaarder dan één doorlopende stroom. Een 06-nummer valt vanzelf in drieën: nul zes, dan vier cijfers, dan de laatste vier.

Gebruik het spelalfabet voor letters. Alfa, Bravo, Charlie levert geen losse letters op, maar wel woorden die je zelf betrouwbaar kunt omzetten, en dat verslaat een verkeerde letter die je niet gezien hebt.

Zeg kleine getallen als woord en grote als cijfers. “Drie” is ondubbelzinnig. “Drieduizend zevenhonderd twaalf” is een loterij.

Datums, tijden en bedragen

Alle drie hebben ze een eigen val.

Datums worden omgezet volgens de gewoontes van de taal waarvan het systeem dacht dat je hem sprak. Dat risico is echt in elke tweetalige situatie, waar dezelfde drie getallen twee verschillende dagen betekenen afhankelijk van de conventie. Zeg de maand als woord, dan is de dubbelzinnigheid helemaal weg: “twaalf maart” kan maar één ding zijn.

Tijden gaan meestal goed als je ze natuurlijk uitspreekt, maar de vorm met twaalf en die met vierentwintig uur raken door elkaar. En let op “half acht”: in het Nederlands is dat 7.30 uur en voor een Engelstalige 8.30 uur. Schrijf je aan iemand die anders telt, zet er dan cijfers neer.

Bedragen lijden onder het decimaalteken. Sommige talen gebruiken een komma waar andere een punt gebruiken, en het model past de gewoonte toe van de taal die het hoorde. Voor alles waar het bedrag toe doet: tikken.

E-mailadressen en alles wat op één teken stukgaat

Een e-mailadres bevat minstens één teken dat uit een uitgesproken woord afgeleid moet worden, meestal een eigennaam die het systeem nooit gezien heeft, en een uitgang die als gewoon woord klinkt. Elk onderdeel ervan is een manier om te falen, en anders dan bij een zin zit er geen ruimte in: één verkeerd teken en het bericht komt nergens aan.

Hetzelfde geldt voor gebruikersnamen, webadressen, rekeningnummers, kentekens, postcodes en codes die je per sms krijgt. Bij een zin ziet de lezer een fout en vult hij hem zelf aan. Bij deze reeksen valt er niets aan te vullen.

Straatnamen kun je wel toevoegen

Een deel hiervan is vooraf te verhelpen.

Terugkerende eigennamen binnen adressen, je straat, je woonplaats, de naam van de wijk, zijn woorden die je aan je eigen woordenlijst kunt toevoegen. Dan komen de woorden rondom de cijfers goed aan, ook als de cijfers zelf nog aandacht vragen. LocalType houdt zulke toevoegingen op je telefoon en geeft ze als context aan de herkenner mee terwijl die werkt.

Getallen zelf zijn op die manier niet aan te leren, want het probleem is niet de woordenschat. Het systeem kent elk cijfer uitstekend; het heeft alleen geen manier om ertussen te kiezen.

Voor het overige gelden hier dezelfde grenzen als voor elk ander programma, want ze komen uit de aard van het probleem en niet uit de uitvoering. De modelmaat maakt wel verschil: er zijn drie opties, van 60, 190 en 539 MB, en heb je in je werk voortdurend met getallen te maken, dan is de grootste de maat om mee te beginnen. Als ijkpunt: de middelste van 190 MB schreef 6,9 seconden spraak uit in 4,1 seconden op de telefoon met 4 GB waarop getest is. Verder blijft alles hetzelfde. Het herkennen gebeurt op je telefoon, uit een bestand dat geen andere app kan openen. Het netwerk komt er één keer aan te pas, om het model op te halen. Er is geen account, geen reclame, niets dat je gebruik vastlegt, geen bewaarde audio, en de back-up van Android slaat de gegevens van de app met opzet over. Boven een wachtwoordveld staat de microfoon uit, en dat telt hier extra, want codes en cijfers zijn precies wat mensen inspreken in velden waar dat niet hoort.

Lees de cijfers terug voordat je verstuurt

Een verkeerd verstaan woord in een zin valt een lezer meestal op. Een verkeerd verstaan cijfer niet, want een fout getal oogt precies zo geloofwaardig als een goed getal.

Lees zulke reeksen dus bewust na, of lees ze hardop terug, want hardop teruglezen vangt fouten die scannen niet vangt. Bij een rekeningnummer of een postcode kost dat je vijf seconden, tegenover een telefoontje en een nieuwe overboeking als het misgaat.

Voor alles wat financieel, juridisch of medisch is: behandel ingesproken getallen als ongecontroleerd tot je ze naast de bron hebt gelegd. Dezelfde regel zou je toepassen op getallen die je moe hebt ingetikt.

LocalType voor Android

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

Ontdek op Google Play