Esperantilo Blogo en Esperanto pri projekto Esperantilo kaj komputila lingvistiko

25.11.2010

Nova Esperantilo por OpenOffice

Filed under: programado — artur @ 15:01

Mi preparis ankaŭ la eldonon 0.992 de Esperantilo por OpenOffice.

Tiu eldona havas subajn funkciojn

  • literumilo
  • gramatika kontrolilo
  • vortodivigilo (silabado)
  • tezaŭro
  • konvertilo de cx ch al ĉ

La tezaŭron mi faris de datoj de REVO vortaro. Mi uzis la referencojn de tipo „sin“ kaj „vid“ (sinonimo kaj vidu) por krei la dosieron por OpenOffice. Unue mi volis uzi nur „sin“ referencojn, sed mi rimarkis, ke la listo de vortoj estas tre malgranda (1600) kaj multaj taŭgaj vortoj ekzistas ĉe referencoj de tipo „vid“. Ekzemple de „granda“ al „giganta“. Mi pensas, ke kutime la tezaŭro ne nur enhavas sinonimojn sed ankaŭ vortoj kun simila senco. La malavantaĝa afero estas, ke multaj referencoj de tipo „vid“ povas estas malĝustaj. Do la uzanto ne plene fidu je tiu tezaŭro.

openoffice tezauxro

Aldonaj funckcioj de la kromprogramo Esperantilo por OpenOffice

Kutime la tiuspecaj kromprogramoj enhavas ankaŭ vortdividan vortaron aŭ vortaron por silabado (angle „Hyphenation Dictionary“ vidu lingucomponent.openoffice.org). La problemo estas, ke laŭ mia scio en Esperanto ne ekzistas klaraj reguloj por vortdividadon (vidu silabo kaj silabado).
Tamen iuj jam laboris pri tio diskutgrupo eLiberaProgramaro.

Mi aldonis la dosieron hyph_eo.dic-1.2.tar.bz preparitan de Ari Caldeira de la diskutgrupo al la kromprogramo.

Konvertilo por ĉapeloj

Alia necesa funkcio estas la konvertilo de provizoraj skribmanieroj por ĉapelitaj literoj (ŝĉĥĝĵŭ). Ankaŭ sur tiu kampo ekzistas io, sed bedaŭrinde ne kiel facile uzebla la trovebla kromprogramo (ne en provizo de kromprogramoj de OpenOffice).

Mi ankaŭ aldonis similajn funkciojn al la Esperantilo. Oni povas uzi la konvertilon de menuo (angle: Tools, gemane: Extras).

openoffice konvertilo

La konvertilo de Esperantilo estas iom pli ampleksa, ĉar ĝi testas, ĉu la rezulta vorto estas vere esperanta vorto. Tiu testo ebligas, ke la programo ne ŝanĝu maloportune la ne esperantan vorton (nomoj, citaĵoj kiel ekz. Linux). Tamen ekzistas vortoj kiel „chashundo“ (ĉashundo ne ĉaŝundo), kiuj ankaŭ nun faras problemojn ĉe konvertado.

Mi trovis ankaŭ aliajn vortojn, por kiuj la simpla ch-konvertilo faras erarojn:

grashepataĵo
ĉashundo
flughundo
ĉashundoj
invershava
neinvershava
ĉashundo
dishaki
kashalo
vangharoj
vangharo
longharulo
longhara
vangharulo
senchava
sukceshava
senchavi
potenchavi
grashava
invershava
neinvershava
potenchavulo
disheligi
seshora
seshore
plushoro
komenchoro
flughaveno
flughavena
flughavene
flughavenisto
amashisterio
misharmonia
disharmonio
misharmoniigi
misharmonio
Ŝlesvigholstinio
ŝlesvigholstiniano
seshektara
bushaltejo
aŭtobushaltejo
fikshejma
mishelpi
prononchelpo
ŝpruchelpilo
drogherba
drogherbo
kuracherbo
kuracherba
mishumore
mishumora
mishumoro
mishumorigi
mishumori
gajhumora
dishirtigi
sekshontemo

La same por „au“ kaj „eu“

reuzpapero
ŝippereulo
kakaujo
geulo
teumado
teumi
teujo
reuzi
neuzebla
neuzo
reuzebla
reuzado
reuzo
neuzeblaĵo
neuzinda
livreulo
jubileulo
fiksideulo
reutiligo
linoleumo
posteulo
oleujo
oleumi
sanktoleumi
praulo
Koreujo
nordkoreujo
petroleumo
tiaulo
tieulo
geukraino
reunio
doganaunio
eŭropaunio
unuaulo
imaginaraunuo
rereunuigi
rereunuiĝo
rereunuiĝi
reunuigi
reunuigita
reunuiĝo
reunuiĝi
matricaunuo
traurbe
malgrandaursino
blankaurso
grandaursino
geumo
saudaarabujo
Nauro
naura
araneuloj
aleuto
aleutaj
ureuso

Dezirinda estus ankaŭ la dialogo por agordo de gramatika kontrolilo. Tiu estas iom komplika afero, ĉar mi devus iel kunligi la gramatikan kontrolilon de Esperantilo kun agorda sistemo de OpenOffice kaj fine Esperantilo devus esti informita pri la agordaj ŝanĝoj.

Mi ne estas certa, ĉu indas prepari aliajn funkciojn de kutima Esperantilo al OpenOffice. La plej granda parto estas vortaroj kaj maŝina tradukado.
Tiaj funkcioj kutime ne estas parto de dokumentredaktilo. Ekzistas ankaŭ kelkaj analiziloj, kiuj tamen estas interesaj nur por lingvistoj.

15.11.2010

Eldono 0.992 – pli bona gramatika kontrolilo

Filed under: programado — artur @ 23:00

Ĉe aktuala eldono mi ĉefparte laboris pri plibonigo de gramatika kontrolado. La plej grava manko de kontrolilo estas tre alta nombro de falspozitivaj avertoj pri gramatikaj eraroj.
Tio signifas, ke programo reportas erarojn ĉe ĝustaj frazoj. Mi jam ricevis kelkcent erarraportojn pri tiuj eraroj de uzantoj. La plej granda parto de raportoj estas pri falspozitivaj avertoj de gramatika kontrolilo. Eble tio estas la rezulto de tio, ke uzantoj tre facilie povas raporti tiujn problemojn.

Nun mi ripete analizas kelkajn tekstojn por trovi metode la plej oftajn problemojn de programo.
Mi uzas por tio subajn tekstojn:

  • Ekzemplaj frazoj de ekzercaro de Zamenhofo
  • Ekzemplaj frazoj de PMEG
  • 5500 frazoj de artikoloj de Libera Folio

Fine mi povis malaltigi la nombron de falspozitivaj avertoj je averaĝe 15%.
Jen la tutaj rezultoj

  Libera folio zamenhofa ekzercaro pmeg ekzemploj
vortoj en tekstaro 131068 5110 43726
frazoj en tekstaro 5552 468 4139
eraraj frazoj 0.991 3155 57 741
  56,8264% 12,1795% 17,9029%
eraroj 0.991 6984 82 1036
  5,3285% 1,6047% 2,3693%
eraraj frazoj 0.992 2746 36 633
  49,4597% 7,6923% 15,2935%
eraroj 0.992 5659 54 864
  4,3176% 1,0568% 1,9759%
eraraj frazoj 0.992 (certaj) 1732 23 393
  31,1960% 4,9145% 9,4950%
Eraroj 0.992 (certaj) 2663 24 466
  2,0318% 0,4697% 1,0657%
plibonigo en 0.992 frazoj 12,9635% 36,8421% 14,5749%
plibonigo en 0.992 eraroj 18,9719% 34,1463% 16,6023%

La plej gravaj indikoj estas unue la nombro de eraroj (avertoj) kaj nombro de eraraj frazoj. Ekzemple ĉe artikoloj de libera folio (5552 frazoj) la programo en eldono 0.992 avertis, ke 2746 frazoj havas minimume unu eraron ( do 49,45%). Ĉe tiuj tekstoj oni povas asumi, ke la tekstoj estas ĝustaj. Tio estas almenaŭ certa ĉe frazoj de zamenhofa ekzeraro kaj frazoj de PMEG. Mi testis elonon 0.991 kaj 0.991 sur 3 diferencaj tekstaroj kaj kun diferenca severeco de korektilo (ĉiuj avertoj kaj nur certaj). Ĉe „certa“ korektado mi malŝaltis la avertojn pri komoj kaj senfunkciaj frazpartoj.

Fontoj de falspozitivaj avertoj

  • Sintaksa analizilo ne povas korekte analizi la frazon.
  • La programado de reguloj por korektilo estas malĝusta.
  • La radikaro de programo estas malĝusta. En tiu radikaro estas markitaj ekzemple ĉiuj transitivaj verboj.

Mi plibonigis la programon en ĉiu kampo. La uzanto mem povas redakti la radikaron. Do li mem havus la eblon infui la korektilon en tiu kampo.
Ekzemple li povus difini iun verbon kiel transitivan. Mi estas preskaŭ certa, ke neniu uzanto efektive tion ĝis nun faris.

Kiel influi la severecon de korektilo

Por mi estas tre malfacila demendo, kiel severa devas esti la korektilo. Mi devas substreki, ke la programo tute ne povas kompreni la tekston.
Ĝi nur iel analizas la tekston, komputas iajn indikoj pri eblaj eraroj. La programo do ne trovas erarojn, sed nur avertas pri eblaj eraroj.
Ankaŭ por pensanta homo la verdikto pri ĝusteco de iu teksto ne estas facila. Esperantistoj ofte diskutas pri ĝusteco de iu lingva konstruaĵo.
Ofte ekzistas diferencaj opinioj pri lingvo kaj gramatiko.

Kiam mi programas la gramatikan kontrolilon mi devas ofte decidi. Ĉu la programo avertu pri iu lingva konstruaĵo kun samtempa danĝero de falspozitivaj rezultoj , aŭ ĉu preterlasi tiujn necertajn konstruaĵojn. Oni povas tion bone priskribi tion per Precision kaj recall. Mi pensas, ke oni ĝenerale la demando dependas de tio, por kio oni uzas la gramatikan kontrolilon kaj kia estas la teksto. Ĉe tre mallongaj kaj freŝaj (nekorektitaj) tekstoj oni eble volas vidi ĉiujn eblajn avertojn. Se oni kontrolas tre longajn kaj fremdajn tekstojn, oni eble volas vidi tre certajn rezultojn.

En la programo Esperantilo la uzanto povas mem influi tion. En menuo „Preferaĵoj>Redaktu preferaĵojn>Kontrolado“ oni havas kelkajn opciojn por korektilo.

Se oni volas vidi nur pli certajn avertojn, oni malŝaltu subajn opciojn

  • Testu komojn
  • Testu mankantajn ? aŭ !
  • Raportu ĉiujn gramatikajn dubojn
  • Proponu pli konvenajn sinonimojn
  • Avertu pri ebla falsa amiko

En esperanta fundamento ne ekzistas reguloj por uzado de komoj. Tial neniu povas finfine diri kiel ĝuste uzi komojn. Tial oni malŝaltu tiun opcion, se la reguloj de la programo ne spegulas la propran guston.

Sintaksa Analizo

Sintaksa analizilo estas la koro de la programo Esperantilo. Verdire mia intereso pri programado de sintaksa analizilo estis la motoro por programado de la programo. La gramatika kontrolilo estis nur iu aldona rezulto de tiu analizilo. Mi ĉefe bezonis la analizilon por maŝina tradukado kaj la gramatika kontrolilo unue estis mia interna ilo por trovi mankojn de analizilo. Do mi volis scii, kun kiuj ĝustaj frazoj la programo havas problemojn ĉe analizo.

Mi de longa tempo kolektas diferencajn frazojn por testi mian analizilon (vidu)

Ekzemplaj frazoj estas aliaj kiel realaj tekstoj. Realaj tekstoj estas multe pli kompleksaj. Ili enhavas citaĵojn kaj multe proprajn nomojn, kiuj ne estas parto de esperanta lingvo. Realaj tekstoj ne estas ankaŭ simple aro de frazoj. Ili enhavas pli komplikan strukturon. Ekzistas do dialogoj, tabeloj, nombradoj, titoloj, diversaj propraj nomoj. Jam de trovo de unuopaj frazoj de granda teksto estas en detalo neniu facila tasko.

Nun mi rimarkis, ke la baza ideo por analizilo havas siajn limojn. La programado de aldonaj lingvaj fenomenoj estas ĉiam pli komplika. Mi nun havas prototipon de nova analizilo, kiu ne nur devas estas pli rapida, sed ankaŭ pli facila por programado de sintaksaj reguloj. Tio eble estas tasko por la sekva eldono.

Aliaj plibonigoj de programo de eldono 0.992

  • Refreŝigo de revo leksikono kaj korekto de kelkaj ĉimoj en la REVO montrilo.
  • Plivastigo de traduka vortaro por angla kaj pola lingvoj.
  • Korekto kaj kompletigo de pola vortaro je gramatikaj kaj fleksiaj informoj.
  • Aliaj malgrandaj plibonigoj kaj korektoj de programaj eraroj.

Ceteraj informoj

Nun aperis nova provo de esperanta gramatika korektilo surbaze de programo LanguageTool. Oni povas trovi kelkajn informojn sur blogo de Dominique Pellé. Mi esperas, ke mi iam povas kompari rezultojn de ambaŭ prgramoj kaj lerni de tio.

Powered by WordPress