| |
|
|
|
|
|
Vervolgens zoeken we in een grote hoeveelheid tekst simpelweg alle
voorkomens van -d- en -dt-woorden; dat worden de
voorbeelden waarop we een zelfde soort model bouwen als eerder. We
slaan rijtjes woorden op, nu links en rechts van het middelste
d-dt-woord, waaruit je met grote waarschijnlijkheid kunt afleiden
dat het woord in het midden een -t-uitgang krijgt, of niet. Het
aantal rijtjes dat met deze procedure gevonden wordt passeert de
anderhalf miljoen, en het eindresultaat is er ook naar: als we testen
op nieuwe d-dt-woorden in teksten die het model nog niet eerder
heeft gezien, dan maakt het model in 99,2% van de gevallen een
correcte beslissing. Dat doet het op basis van typische
dt-constructies als "Hij * dat de" en "Dat * straks" en met
typische d-constructies als "ik * het", "* je", maar ook
"het * van", want woorden als "geld" zijn in hun d-vorm niet
alleen werkwoorden, maar ook zelfstandige naamwoorden. Dat weet
ons model niet, maar dat geeft ook niet.
Met zo'n accuratesse, 99,2%, kan het model vervolgens losgelaten
worden op iedere tekst waarin d-dt-woorden staat; ieder
d-dt-woord wordt als mogelijke fout onderzocht. Wanneer het model
iets anders voorspelt dan dat er feitelijk in de tekst staat, dan zou
de fout wel eens aan de tekst kunnen liggen, en hebben we dus
feitelijk een dt-fout opgespoord. In gezamenlijk onderzoek
heeft Herman Stehouwer het web afgespeurd naar dt-fouten, en
heeft een bloemlezing gemaakt van enkele honderden gevallen. Het zal
niemand verbazen dat het vrij eenvoudig is om op het web
dt-fouten te vinden; ik gaf eerder al de cijfers voor "ik wordt"
met dt. We vonden er bijvoorbeeld veel in teksten op
forumpagina's, waarbij de zinnen doorgaans niet alleen maar lijden aan
een dt-fout; meestal wordt de fout omringd door allerlei andere
problemen.
- ik bidt al zolang, maar bereik er niets mee.
- innerlijke is belangrijker als uiterlijk want het voed je ziel ipv je ogen.
- wie weet hoe ik dit weg kan krijgen want zoals ik al zij word hij er langzaam vam.
Ons model was in staat om 79% van die gevallen aan te duiden als
fouten. Een redelijke score, zeker gezien de soms problematische
gevallen als de onderste zin, waar de verkeerde vorm van het woord
"zei" niet bepaalt helpt. Aangespoord door een redacteur van een
bundel waarin dit resultaat zal worden gepubliceerd (Stehouwer &
Van den Bosch, te verschijnen), hebben we ook een vergelijking gemaakt
met de grammaticale correctiemodule die ingebouwd zit in Microsoft
Office, versie 2003; deze bekende tekstverwerker merkte slechts 17%
van de dt-fouten aan als fout.
|
|
|
|
|
|
|
|
|
|
|
|
Het dt-probleem is maar een fragment van het totale probleem
van tekstcorrectie, en het zijn maar twee cijfers die ik hier
vergelijk, maar met dit probleem zijn we al wel beland in het werk- en
priv\'e-domein van mensen zoals u en ik die regelmatig tekstverwerkers
gebruiken. Het dt-probleem staat model voor heel veel meer
gevallen van grammaticale en morfologische verwarbaarheid die op
dezelfde manier aangepakt kunnen worden: hen-hun,
dan-als, verwarringen op basis van klankgelijkenis,
enzovoort. Het ligt in de mogelijkheden om tekstverwerkers van al deze
"impliciete intelligentie" te voorzien; onze modellen kunnen er zo
ingebouwd worden.
Een andere veelgehoorde wens waar onze woordvoorspeller een rol kan
spelen, is de mogelijkheid om teksten te vertalen. De wereld wordt een
stuk ruimer als je kunt lezen wat mensen in andere talen zeggen. Er is
eigenlijk maar een eenvoudige aanpassing nodig om onze
woordvoorspeller om te vormen in een automatische vertaler. Stel, we
laten hem leren hoe je Nederlands naar Engels vertaalt. De taak is dan
niet meer om een Nederlandse constructie af te maken met een volgend
Nederlands woord, maar om die constructie te koppelen aan een Engels
woord, of een Engelse constructie. Het model moet daarbij weten hoe je
woorden en constructies in het Nederlands naar het Engels vertaalt,
maar minstens zo belangrijk is dat het model weet hoe je dingen zegt
in het Engels.
Er liggen nu een paar puzzelstukjes op mijn spreekwoordelijke
onderzoekstafel die in elkaar lijken te passen. Bij vertalen hebben we
het niet over hoe je dingen zegt in één taal, maar de simultane
kennis over hoe je dingen zegt in twee talen. Die kennis kun je
impliciet afleiden als je een heleboel vertalingen hebt. Bij het
vertalen van "ik houd van sterke koffie", is het nodig om te weten
dat "ik houd van" een typisch Nederlandse constructie is, en
"sterke koffie" een andere; en dat "I love" en "strong coffee"
typische Engelse constructies zijn, en, en dit is essentieel, dat "ik
houd van" vertaalt naar "I love", en "sterke koffie" naar
"strong coffee". Het probleem is dus niet om het woord "sterke" te
vertalen, wat in principe vertaald zou kunnen worden als "strong" en
"powerful". We hoeven ons dit niet af te vragen, want we zijn hier
helemaal niet bezig met "sterke" te vertalen, maar met "sterke
koffie", en dat heeft maar één vertaling: "strong coffee".
Hoe kan de computer overigens zeker weten dat "strong coffee" niet
een vertaling is van "ik houd van"? Zekerheid is er nooit, maar als
je een grote verzameling van vertalingen hebt, dan kun je door te
tellen vaststellen dat de twee constructies "ik houd van" en "I
love" heel vaak samen voorkomen in paren van vertaalde zinnen; in
ieder geval vaker dan "ik houd van" en "strong coffee".
In de aanloop naar het bouwen van zo'n model, in gezamenlijk werk met
Peter Berck en Sander Canisius, hebben we eigenlijk een nog simpeler
model gebouwd, dat zich beperkt tot het omzetten van rijtjes van drie
Nederlandse woorden naar rijtjes van drie Engelse woorden, waarbij de
middelste woorden van beide rijtjes elkaars meest waarschijnlijke
vertaling zijn. Vervolgens worden de Engelse rijtjes van drie op de
goede volgorde gezet, door gebruik te maken van hun onderlinge overlap
(Van den Bosch et al, 2007). Klinkt ingewikkeld misschien, maar
dat is het niet. Het werkt zo.
|
|
|
|
|
|
|
|