door Liesbeth Koenen ©
10-07-1986
NRC Handelsblad

De Taalmachine

Gebroken woorden

Op veel universiteiten, maar ook bij bedrijven blijken taal en computer inmiddels een of andere verbintenis met elkaar aangegaan te zijn. Met wisselende en soms volkomen onverwachte gevolgen. Over pol-stasjes, reu-koffers en er-flaters.

Onder ‘computerlinguistiek’ wordt alles verstaan waar zowel taal als een computerprogramma bij komen kijken. Alleen tekstverwerkers blijven buiten beschouwing, maar die hebben in principe dan ook niets met taal te maken.

Iedereen die het geluk heeft van een tekstverwerkingsprogramma gebruik te kunnen maken weet dat het niet meer is dan een superschrijfmachine. Je kunt willekeurige rijtjes letters, cijfers en andere tekens intikken, die weer weghalen, er een ander rijtje tussenzetten, een deel van de tekens verplaatsen enzovoort. Maar voor de computer of de werking van het programma maakt het absoluut niet uit of je 100.000 keer een a tikt of bezig bent je levenswerk te schrijven. Pas als het programma een woordafbreekhulp heeft komt er een beetje taal bij kijken.

Bij de krant worden woorden al sinds jaar en dag automatisch afgebroken, en iedereen die regelmatig een krant inkijkt weet dat dat tot rare dingen kan leiden. Zijn techniek en wetenschap dan nog steeds niet ver genoeg gevorderd om een mini-ster en een minis-ter uit elkaar te houden en een reu-koffer te voorkomen?

Het antwoord is: maar zeer ten dele. Het afbreekprogramma dat bij de kranten gebruikt wordt, is van Hugo Brandt Corstius. De onderliggende gedachte is heel simpel: de computer krijgt opdracht woorden zó af te breken dat zowel links als rechts van het streepje een reeks letters komt te staan die voor een Nederlander uit te spreken is. In ongeveer 75% van de gevallen gaat dat goed, maar het levert ook pol-stasjes en er-flaters op.

De enige manier om ervoor te zorgen dat be-stel en pos-ter goed uit de machine komen is ze er met streepje en al in stoppen. Ook het verkeerd afbreken van een verwarrend woord als adelaarsnavel kan daarmee voorkomen worden.

De computer laten zoeken naar eventuele ‘samenstellingen’ helpt namelijk niet: zowel bes als tel zijn goede Nederlandse woorden en hetzelfde geldt voor po en ster. Alle woorden waarmee iets mis kan gaan van tevoren van streepjes voorzien is in principe natuurlijk wel mogelijk, maar kost verschrikkelijk veel tijd en bovendien extra geheugenruimte.

Nog veel moeilijker wordt het bij woorden als uitje en diplomaatje. Het hangt er maar helemaal vanaf of je uitjes kunt eten en diplomaatjes uitreiken. Alleen de omgeving van zulke woorden kan uitwijzen of het om een diploma of een diplomaat, om een ui of een uit gaat.

Bij dit probleem zou aan de volgende oplossing gedacht kunnen worden: koppel aan letterreeksen als uitje en minister, die een dubbele interpretatie hebben een rijtje andere woorden die in de buurt van een van de twee betekenissen verwacht kunnen worden. Vindt de computer in de buurt van minister een woord als Den Haag, regering, of wetsvoorstel dan moet het afbreekstreepje na de s komen, anders na de i.

‘Full-proof’ kan een dergelijk programma natuurlijk nooit worden, want ook in Den Haag kunnen mini-sterren wonen, en in Washington minis-ters. De geheugenruimte en de inspanning die zo’n programma kost zijn commercieel dan ook niet de moeite waard. De kranten nemen de 25 procent foute afbrekingen voor lief en de meeste tekstverwerkers doen alleen een voorstel waarop de gebruiker ja of nee kan zeggen.

Overigens is een niet perfect werkend afbreekmechanisme een automatische woordgrappengenerator en een goudmijn voor cryptogrammenmakers.

De voorleesmachine
Sommige van deze problemen kom je ook tegen bij een andere toepassing van de computer op taal: de voorleesmachine. Op de afdeling fonetiek van de Universiteit van Nijmegen wordt daar op dit moment aan gewerkt. De mogelijkheden die zo’n apparaat zou bieden zijn enorm. Niet alleen blinden zouden ermee geholpen zijn, maar ook mensen die tijdens de afwas de krant willen lezen.

De techniek is inmiddels zo ver dat er machinaal verstaanbare spraak voortgebracht kan worden, al doet het geluid nog wel denken aan robotten en andere science-fictioncreaties uit films. De beste resultaten worden daarbij overigens niet bereikt door simpelweg de afzonderlijke klanken op een rijtje te zetten. Omdat bijvoorbeeld de ie in bier anders klinkt dan die in biet neemt men vaak liever twee klanken samen.

De ongeveer 2000 mogelijke klankcombinaties (difonen) die er zijn, moeten dan stuk voor stuk in de machine opgeslagen worden, zodat Piet niet uit P-ie-t wordt opgebouwd, maar uit P-pie-iet-t, en zoals gezegd, dat klinkt veel ‘natuurlijker’.

Regels
Het onderzoek voor de voorleesmachine richt zich vooral op het omzetten van letters in geluid. Jammer genoeg is er bij geen enkele taal sprake van een een-op-een relatie tussen letters en klanken: het Nederlandse alfabet heeft 26 letters, terwijl de Nederlandse taal ongeveer 40 klanken kent.

Dat hoeft niet altijd problemen op te leveren: een x wordt gewoon omgevormd tot ks en e plus i moet ij worden. Maar hoe moet je een computerprogramma laten weten wanneer een e staat voor een lange (steek), een korte (stek) of een stomme (aanstekelijk) e? Als je alle woorden waar een e in voorkomt gecodeerd voor de juiste uitspraak in het programma stopt levert dat twee grote problemen op: je loopt grote kans dat je machine verschrikkelijk langzaam gaat voorlezen, en woorden die toevallig niet in de ingeprogrammeerde lijst zitten laten de boel toch weer in het honderd lopen.

Net als voor het afbreekprogramma geldt hier dat het tamelijk eenvoudig is enkele grove regels op te stellen die een groot deel van de gevallen dekken. In Nijmegen heeft men de volgende trits opgesteld voor het probleem van de stomme e (gemakshalve aangegeven als u) en dat van het achtervoegsel lijk dat als luk uitgesproken moet worden:

(1) en -> un
(2) be/ge -> bu/gu
(3) lijk -> luk

Regel (1) en (3) worden toegepast aan het eind van een woord (lopun, eerluk), regel (2) aan het begin (bugin, guval). De condities zijn verder dat de regels in de hierboven gegeven volgorde uitgevoerd moeten worden, en dat een woord nooit uitsluitend stomme medeklinkers mag hebben.

Op een woord als gelijk heeft dat het volgende effect: eerst wordt regel (2) uitgevoerd (regel (1) is niet van toepassing), dat levert gulijk op, waarna het toepassen van regel (3) uitgesloten wordt omdat dat een woord met alleen stomme klinkers op zou leveren. De machine leest keurig gelijk voor. U kunt zelf narekenen dat het ook bij de woorden geven, gevecht en begeren goed gaat. Een kippenren echter wordt met behulp van regel (1) kippenrun, een berevel door regel (2) een burevel en regel (3) laat het onderscheid tussen vrouwelijk en een vrouwenlijk verdwijnen.

Onoplosbaar, want niet van te voren in te programmeren, is het probleem met woorden die op je twee manieren uit kunt spreken, zoals regent of bedelen. Voor een voorleesmachine, anders dan voor een afbraakmechanisme in de krant, is een foutenpercentage van bijvoorbeeld 25% niet acceptabel meer.

Dat betekent dat je andere bronnen moet aanboren dan alleen het kijken naar rijtjes letters. Ben je in staat de computer enige grammaticakennis bij te brengen (hoe worden woorden samengesteld, gaat het om een zelfstandig naamwoord of om een werkwoord?) dan wordt in ieder geval een deel van de problemen opgelost. De ge in gevel is geen voorvoegsel zoals in gevoel of geval, en het zelfstandig naamwoord beving wordt anders uitgesproken dan de verleden tijd van het werkwoord bevangen. Daarmee wordt nog niet voorkomen dat vóórkomen ook als voorkómen kan voorkomen, maar het aantal foute uitspraken wordt wel enorm teruggedrongen.

(Volgende week: computers als opslagplaats voor taalmateriaal en als ontleders.)