Nézzük meg egy konkrét példán:
-
ábra: Az eredeti szöveg
A szöveg forrása: Peter Høeg: Smilla kisasszony hóra vágyik.
-
ábra: MS-Word, helyesírás-ellenőrző működése.
A szöveg forrása: Peter Høeg: Smilla kisasszony hóra vágyik.
Sárgával jelöltem azokat a szavakat, amelyeket „elrontottam” az eredeti szöveghez képest. A helyesírás-ellenőrző pirossal húzta alá azokat, amelyeket ő hibásnak talált, zölddel pedig azokat, ahol valamilyen javaslatot tett (lásd a fejezet elején megfogalmazott 1. és 2. kérdést!).
Csoportosítsuk a jelenségeket:
1. csoport: sárga, de nincs se pirossal, se zölddel aláhúzva. Ezek azok a szavak, amelyek írása nem helyes, de a helyesírás-ellenőrző ezt nem vette észre: sok féle, ki rakhatunk, zsebtükrükre, hang, beszívhattuk, hogyha.
Ellenőrizzük ezeknek a szavaknak a helyesírását a nemrégen létrehozott helyesírás-tanácsadó oldalon, az http://helyesiras.mta.hu/ -n!
A sok féle, ki rakhatunk, hogyha szavakat a „Külön vagy egybe” eszköznél (menüpontnál) érdemes ellenőriztetni a fenti oldalon. Az derül ki, hogy a sokféle, kirakhatunk egybeírva helyes, a hogyha viszont mindkét alakban: hogy ha és hogyha. Az érthető tehát, hogy a hogyha-t nem húzta alá a helyesírás-ellenőrzőnk. De a sok féle és a ki rakhatunk miért nem lett hibás?
A zsebtükrükre, beszívhattuk szavak helyesírása ebben az alakban tökéletes. Csak éppen nem illeszkedik a szöveghez: a zsebtükrükre esetében a várt T/1 helyett T/3 alak van a birtokosban, a beszívhattuk esetében a várt jelen idő helyett múlt idő. Miért nem jelzi ezeket a helyesírás-ellenőrző?
A hang szó önmagában hibátlan. Viszont a követő ulatot nyilvánvalóan értelmetlen, míg a hang-gal egybeírva értelmes lenne. És a hang mint ragtalan (alanyesetű) főnév nem is helyezhető el a mondatban, hangulatot-ként használva, tárgyesettel grammatikus mondatot kapunk. Miért nem vizsgálta meg ezt a lehetőséget, és ajánlotta fel ezt a javítást a helyesírás-ellenőrző program?
Ezt a három kérdésünket valójában két problémára csoportosíthatjuk: a helyesírás-ellenőrző úgy tűnik, nem vizsgálta azt, hogy két egymást követő, eredetileg külön írt szó egybeírásával milyen szöveg alakulna ki, illetve nem vette figyelembe a szöveg jelentését, koherenciáját.
2. csoport: sárga és pirossal van aláhúzva. Ezek azok a szavak, amiknek az elrontott írását a helyesírás-ellenőrző észrevette, és a hibát jelezte is: probálkozhatunk, leplezéséval, zsiletpenge, fehré, ulatot, csiknyi, halgathatunk. Javítási javaslatok: próbálkozhatunk, leplezésével, zsilettpenge, fehér-fehéré, latot. A csiknyi javítása bonyolultabb. A lehetséges javítások a program szerint: Csiknyi, csíknyi, csöknyi, csóknyi, csikónyi. A halgathatunk javítása a legbonyolultabb: hallgathatunk, algathatunk, hallathatunk, halogathatunk, haltathatunk.
Az tapasztaljuk, hogy ha egy szót egy (néha két) karakter cseréjével (probálkozhatunk, leplezéséval), betoldásával (zsiletpenge, fehré -> fehéré) vagy kihagyásával (ulatot), esetleg ezek kombinációjával (fehré -> fehér) helyes alakra lehet hozni, akkor a helyesírás-ellenőrző ezt végrehajtja. Mindegy, hogy a hibát hosszú-rövid magánhangzó, illetve mássalhangzó hibája, hangrendi illeszkedés elrontása vagy elgépelés okozta. Az elrontott szabály milyensége nem releváns, nem rontja-javítja a helyesírás-ellenőrző működését.
A csiknyi alapján láthatjuk, hogy a program többféle betűcserét vagy betűbetoldást kipróbál, és az így talált grammatikus és megfelelő helyesírású alakokat mind felkínálja.
A halgathatunk eseteit vizsgáljuk meg egyenként:
- halgathatunk -> hallgathatunk: egy –l betoldásával jó lesz a hallgat ige képzett alakjának helyesírása
- halgathatunk -> halogathatunk: egy –o betoldásával jó lesz a halogat ige képzett alakjának helyesírása
- halgathatunk -> hallathatunk: egy betűcserével (g helyett l) jó lesz a hallat ige képzett alakjának helyesírása
- halgathatunk -> haltathatunk: itt is betűcsere történik (g helyett t). De mit jelent a haltathatunk? A végződése alapján ige, haltat tővel. De mi az a haltat?
Először ellenőrizzük a helyesiras.mta.hu oldalon! Most a Helyes-e így? menüt kell választanunk. Az eredmény: „"haltathatunk”: ismeretlen. Javaslatok: altathatunk, hallathatunk, hajtathatunk, haltat hatunk, haltat-hatunk”. Vagyis nincs haltat ige, de van haltat hatunk, sőt haltat-hatunk kifejezés!
Ellenőrizzük az Alaktani táblázatoknál a haltat igét! (http://corpus.nytud.hu/cgi-bin/e-szokincs/alaktan) Az eredmény: „haltat: Nincs a szótárban!”
Ellenőrizzük az Intelligens Lexikai Adatbázisban (http://corpus.nytud.hu/inlex/)! Sajnos, nincs találat.
Ellenőrizzük a Magyar Nemzeti Szövegtárban (http://corpus.nytud.hu/mnsz/)! Ez a szövegtár közel 200 millió szövegszót tartalmaz, és a határon túli nyelvváltozatok szövegei is beletartoznak. A haltathat szóra nincs találat. A haltat szóra van: „hiszem , hogy ott például a hősi halált haltat ne temetnék el katonai tiszteletadással” Forrásként egy magyarországi felszólalás, vagyis beszélt nyelvi szöveg van megjelölve. Ebben a szövegben a haltat egy tárgyesetű névszó, a halt melléknévi igenév ragozott alakja.
Nézzük meg a Magyar Irodalmi és Köznyelv Nagyszótárában, ami egyben a Történeti Korpusz is (http://www.nytud.hu/hhc/)! Heuréka! Két találat is van a haltathat szóra: (1) „á! - Ha én még ma erö4vel meg haltathatnám az én Uramat, há há! ug..” (2) „nánk, ha ö4tet erö4vel-is meg- haltathatnánk. Ha erre s43egíttenétek..” Mindkét találat forrása Fehér György 1790-es komédiája, a címe: Az öreg fösvény. A Landerernél jelent meg, Pozsonyban.
Az általunk használt helyesírás-ellenőrző nyilván „ismerte” ezt a szót, ezért került a javaslatok közé. Most már mi is ismerjük, noha szemmel láthatóan ma már nem gyakori szóalak.
- halgathatunk -> algathatunk: itt betűkihagyás (h a szó elejéről ) történik. De megint felmerül a kérdés: mit jelent az algathatunk? A végződése alapján ismét ige, algat tővel. De mi az a algat?
A nélkül, hogy az előbbi utat végigjárnánk, röviden beismerjük, hogy nem sikerült az algat / algathat szavak nyomára bukkanni. De lehetséges, hogy az al-hat, al-va szavak elemzésének érdekében a program tárol egy al- igetövet, és ennek szabályos képzésével jut el a potenciális, de nem létező algat / algathat szavakhoz. (Az ötletet Medve Annának, a PTE BTK Nyelvtudományi Tanszék docensének köszönöm!)
Milyen problémákkal találkoztunk ebben a csoportban? A hibák felismerése tökéletes volt (pl. nincsenek olyanok, ahol aláhúzás van, pedig a szót nem is rontottuk el), a javaslatok között azonban vannak kifogásolhatóak, sőt, egyenesen érthetetlenek.
3. csoport: sárga és zölddel van aláhúzva. Ezek azok a szavak, amelyeket nem hibásnak, hanem megfontolandónak tart a helyesírás-ellenőrző: az aki, kitud. az aki esetén a probléma: „A kiemelt szó környékén egy vessző hiányzik. A vonatkozó névmás alárendelt mondatot vezethet be: Az, ...”. kitud esetén a probléma: „Az igekötő nem a segédigéhez tartozik: Ki tud”.
Mindkét elemzés tipikusan olyan, mint a statisztikai elemzésnél emlegetettek: az aki vonatkozó névmás, illetve a ki igekötő kiváltja egy-egy jelenség ellenőrzését: van-e előtte vessző, illetve segédige vagy ige követi-e. Jellemző, hogy az előbbi mondatban („az aki vonatkozó névmás...”) is ugyanezt a „vesszőhibát” jelzi a helyesírás-ellenőrző, ebben az esetben rosszul. De ez a ritka eset, amikor a vonatkozó névmást metanyelvi értelemben használjuk (erre utal a dőltbetűs írásmód), így a ritka esetben a statisztikai szabály téved, ahogy ezt korábban elemeztük.
Az 1a) és 1b) vizsgálatok tapasztalatai egybecsengtek ennél a 6. feladatnál tapasztaltakkal? Vagyis hogy az egyes szavak javításai működnek, néha túl sok javítási javaslattal, a szövegkörnyezet feltérképezése működik, ha nagyon konkrét szavakról van szó, de a helyesírás-ellenőrző nem alkalmas egyeztetési hibák, szöveg-koherencia stb. javítására.
Előfordulhat, ha csoportosan végezték az 1) vizsgálatokat, hogy ugyanannál a szövegnél nem pontosan ugyanazt kapták eredményül a szövegszerkesztőjükben. Hogyan lehetséges ez?
Először is: elképzelhető, hogy nem ugyanazt a helyesírás-ellenőrző programot használták. Ugyanis két helyesírás-ellenőrző is forgalomban van Magyarországon. Az egyik a Helyes-e, Helyesel, Helyesek programcsomag, a MorphoLogic Kft fejlesztése (http://www.morphologic.hu/, vezetője Dr. Prószéky Gábor, aki a legtöbb nyelvtechnológiai témájú könyvet publikálta Magyarországon). Ez a program van pl. a Microsoft Office programcsomagban, de számtalan más alkalmazásban is. A másik a HunMorph, a BME Mokk fejlesztése (http://mokk.bme.hu/), a Szószablya projekten belül jött létre (http://eprints.sztaki.hu/7886/1/Kornai_1773394_ny.pdf). Ez használatos a következő programokban: OpenOffice, Mozilla Firefox, Google Chrome, Mac OS X, Opera.
De ha ugyanolyan szövegszerkesztőt használtak is, akkor is lehetséges, hogy nem ugyanazt a verziójú helyesírás-ellenőrzőt használják. Különbség lehet a helyesírás-ellenőrző adatbázisában vagy a szabályaiban is, hiszen mindegyiket folyamatosan frissítik, javítják.
Ezek szerint a helyesírás-ellenőrzőknek minimum két része van: az adatbázis és a szabályrendszer. Mit lehet még róluk tudni?
Prószéky - Kis (1999) alapján röviden a következőképpen foglalhatjuk össze egy helyesírás-ellenőrző működését. A helyesírás-ellenőrző programnak van egy adatbázisa, amit szótárnak is nevezhetünk. Ennek a szótárnak két része van: egyrészt tárolja a létező alakokat és tőtípusokat, másrészt tárolja a paradigmákat a tőtípusokhoz. Papp (1994)-t követve a főnévi tőtípusok közül megkülönböztethetjük például a következőket:
- változatlan tövű főnevek (hajó-hajók, ember-emberek, ház-házak, asztal-asztalok, kör-körök)
- magánhangzóra végződők (alma-almák, epe-epék)
- rövidülés (nyár-nyarak, út-utak)
- hangkivetés (bokor-bokrok, eper-eprek)
- v-vel váltakozó tövek (falu-falvak)
- rövidülés és v-vel váltakozó (ló-lovak, fű-füvek).
Ez azt jelenti, hogy a program tárolja a töveket, és azt, hogy melyik tőtípusba tartoznak. A tőtípushoz pedig tárolja annak a ragozási paradigmáját.
A helyesírás-ellenőrzés valójában azt jelenti a program számára, hogy először tokenizál, aztán tokenenként ellenőrzi, hogy a szöveg szavai benne vannak-e a szótárában. Amit nem talál meg, azt lemmatizálja, és megnézi, hogy így megvan-e a szótárban, illetve, hogy a szövegben található változat előállítható-e a megtalált szótőből a tőbesorolás és a paradigma alapján. Ha van találat, akkor nem jelöli hibásnak a szót. Így nem lett hibás a 12. ábra szavai közül a sok féle, ki rakhatunk, zsebtükrükre, hang, beszívhattuk, hogyha.
Ha nincs találat, akkor hibát jelez (pirossal aláhúz), és statisztikai alapon javasol javítást. Vagyis olyan szóalakokat javasol, amelyek a szótárban benne vannak, vagy belőle előállíthatók, és olyan módon térnek el a begépelt szótól, ami statisztikailag a valószínűek közé tartozik (egy karakter hiánya, egy felesleges karakter, bizonyos tipikus, nyelvre jellemző karaktercserék stb.).
Ezen kívül a program felajánlja a szótár bővítését is. De ilyenkor nem ajánlja fel a felvenni kívánt szó tőtípusának kiválasztását! Így az újonnan felvett szó paradigma-jelölés nélkül kerül be a szótárba, ezért a program nem tudja kiszámítani a lehetséges alakjait.
Íme, megvan a válasz a fejezetünk elején feltett első kérdésre! Megismétlem:
„1. KÉRDÉS: Ha a helyesírás-ellenőrzőm hibásnak ítél egy amúgy tökéletesen írt szót, és felvetetem vele a szótárba, utána miért kell felvennem az összes toldalékolt alakját külön-külön? Miért nem ismeri fel azokat automatikusan?”
Azért nem ismeri fel a felvett szó toldalékolt alakjait, mert nem ismeri a ragozási paradigmáját. Ha a felvett szó a kredit, akkor, ha ez változatlan tövű, a tárgyesete kreditet, ha viszont hangkivetéses, akkor kredtet stb.
A helyesírás-ellenőrzőkről az imént megtanultak alapján a második kérdésre is megkísérelhetjük a választ:
„2. KÉRDÉS: Miért küld a helyesírás-ellenőrző ilyen üzeneteket: „A mint elé vesszőt kell tenni, ha nem -ként értelemben használja”.
Az adatbázis mint dinamikus korpusz működhet a természetes nyelvi lekérdezések fejlesztésekor.”
A fenti elemzésekből láthattuk, hogy a helyesírás-ellenőrző szavakat ellenőriz, nem mondatokat. A mondatszintű szabályokat is csak konkrét szavakhoz kötve, statisztikai alapon ismeri. Vagyis nem elemzi a mondatot, nem állapítja meg, hogy a mint ebben a mondatban milyen értelemben szerepel, csak észreveszi, hogy van egy mint szó, és nincs előtte vessző, így automatikusan kiírja a fenti figyelmeztetést.
Papp 1994-ről megjegyzendő, hogy először 1969-ben jelent meg, és az első „számítógépes nyelvészeti alapú” szótár volt. A szókészletet lyukkártyákon tárolták. Néhány részlet megtalálható itt: http://people.mokk.bme.hu/~kornai/Habil/habil_3.html. Jóval részletesebben megírta Prószéky 2001.