[voikko] HY:n morfologinen jäsennin omorfi

Flammie Pirinen flammie at iki.fi
Sun Dec 30 11:01:48 EET 2007


2007-12-28, Harri Pitkänen sanoi:

> On Thursday 27 December 2007 18:10, Harri Pitkänen wrote:
> > Jatkan testailua...

Jep, kiitos jo aiemmista korjauksista, lisäilin ne.

> - Käännösvaihe kestää aika paljon kauemmin kuin Suomi-malagan kanssa.
> Tämä tietysti on ihan ymmärrettävää, koska SFST tekee kaikenlaista
> optimointia noille transduktoreille, malaga ei tee juuri mitään
> vastaavaa. Eli jos joku ensimmäistä kertaa kokeilee tätä, kannattaa
> make-komennon antamisen jälkeen varautua odottamaan tovi.

On se silti huolestuttavan hidas, luultavasti jokin pieni huonosti
määritelty osa transduktorin rakennuksen alkuvaiheissa ampuu vieläkin
keskelle transduktoria jotain roskaa joka ei sinne kuulu ja siistintä
siivoaa sen tms., kun transduktorien operointi on kuitenkin aika pientä
eikä niiden koon pitäisi missään vaiheessa karata käsistä.

Yksi asia millä nopeutta voinee parantaa on SFST:n Makefilen
puukottaminen, ainakin omalla läppärilläni omorfi kääntyy nopeammin
kuin CSC:n corpuksella, vaikkei pitäisi, ehkä vain siksi että vääntelin
CFLAGSit vähän maltillisemmiksi.

> - Jouduin poistamaan liitepartikkelit ja vertailumuodot, jotta
> sanojen generointi komennolla "fst-generate -u omorfi.sfsta" ei
> tuottaisi kohtuuttoman paljon (oikoluvun kannalta) virheellisiä
> muotoja. Nämä varmaan ovat tunnettuja asioita, ja ehkä osittain
> tarkoituksellisia. Mutta tällä tavoin mukautettu transduktori oli
> joka tapauksessa mukavampi käyttää, kun kokeilin syöttää generoituja
> sanoja voikkospellin läpi.

Mm, liitepartikkelit löin mukaan lopussa sanomalla vain rumasti että
taivutuksen jälkeen voi panna 1–4 mielivaltaista kliittiä sinne minne
kliitit sopivat. Nopein tapa poistaa kliitit pelistä on piilottaa
<clit>-merkki aakkosto.sfst:n #symbolit#-määritelmästä.

Vertailumuodotkin liimattiin päälle lähinnä vain sitä varten, että
päästään suunnittelemaan jotain keinoa millä tunnistaa sanoja
adjektiiveiksi, sitä tietoa kun ei kotus-sanalistaan ole sisällytetty.
Komparatiivin sääntöhän lienee melkein oikea, mutta superlatiivista en
usko.

> - Muokkauksia tehdessäni havaitsin, että kun eräitä sfst-tiedostoja
> oli editoitu, make ei ymmärtänyt, että jotain pitäisi generoida
> uudelleen. Ehkä sain jotain rikottua liikaa, tai sitten Makefilessä
> ei ole kerrottu kaikkia tarpeellisia tiedostojen välisiä
> riippuvuuksia.

En tiedä, automaken sielunelämä on minulle liian monimutkaista että
osaisin kehittää sellaisen makefilen jossa samoja lähdetiedostoja
saatetaan käyttää monenkin eri targetin rakentamiseen, kun nyt nuo
partisiipit ja muut johdokset pitää ensin rakentaa melkein valmiiksi ja
palata sitten takaisin lähtöpisteeseen ja toisaalta arvainkin käyttää
puolia samoista tiedostoista niin ainakaan maken tai automaken
manuaalissa ei juuri neuvota miten tätä pitäisi lähestyä.

> - Omorfi on ERITTÄIN hyvä testiväline Voikon kehittämistä varten. Sen
> avulla löysin taas uuden bugin Voikon omistusliitteiden käsittelyssä:
> Voikko hyväksyi virheellisen muodon *maleksimaaan. Tämä sama bugi on
> myös Omorfissa, tai ainakin siinä minun hakkeroimassa versiossani :)

Heh, tuo on hyvin ilkeä regressio joka on jäänyt huomaamatta, tuo
Vn-muotoisen omistusliitteen suodatus on vain lakannut toimimasta.
Paikkasin sitä hieman luettelemalla sijamuotoja, mutta se vaatisi kyllä
elegantimpaa käsittelyä.

> - Omorfista löytyi myös muita tapauksia, joissa generoiduissa
> sanoissa on kolme samaa kirjainta peräkkäin. Ehkä näistäkin osa
> johtuu tekemistäni muutoksista, mutta osa voi olla myös
> alkuperäisessä versiossa (jota en nyt ehdi kääntämään uusiksi että
> voisin asian varmistaa). Esimerkiksi fst-generate -u omorfi.sfsta |
> grep ttt tuottaa sanan *mitttelevien (mittelevä<N10><pl><gen>).

Tuollainen astevaihtelubugi onkin helposti jäänyt huomaamatta, kun
toinen muoto 'mitellä<V><act><pcpva><pl><gen>' toimii oikein. Korjasin
nyt niin että partisiipit  kehitetään samoin johdoksina kuin ilmankin.

> - Mitä on suunnitelmissa Omorfin jatkokehityksen suhteen? Onko
> esimerkiksi yhdyssanojen käsittelylle tarkoitus jossain vaiheessa
> tehdä jotain?

Vaikuttaa siltä että jo yliopistolla suunnitelmia ja kaikenlaisia
innostuneita ideoita olisi jos jonkin verran, siis ainakin yhdyssanoja
ja adjektiiveja tutkittaneen, tuloksista saati aikatauluista nyt ei
ikinä tiedä. Yksi mielenkiintoinen projekti on taas Googlen OpenFST:n
ujuttaminen SFST:n tilalle, saataisiin painollisia transduktoreja
ilmaiseksi ja siitä toisenlainen ratkaisu yhdyssanaongelmiin, joka
monien mielestä olisi parempi. Kaiken kaikkiaan kai jatkokehityksistä
yliopistolla parhaan kuvan saanee omorfin seminaarisivuista ja ehkä
muistakin seminaari- yms. sivuista joita on siroteltu sinne tänne.

> Voikon kannalta tämä on varmaan se mielenkiintoisin
> kysymys. Meillähän on jo pari vuotta ollut TODO-listalla mahdollinen
> malagan korvaaminen SFST:llä, mutta en ole uskaltanut aloittaa tätä
> projektia kun en oikein tiedä, pystyykö Voikon yhdyssanasääntöjä
> järkevästi sen avulla toteuttamaan. Olisi toki kätevää, jos voisimme
> käyttää Omorfia suoraan Voikossa (teknisesti malagan korvaaminen
> SFST:llä on aika helppo homma), vaikka sanastona luultavasti
> käyttäisimmekin nykyistä Voikon sanastoa, emme Kotuksen listaa.

Millaisia voikon yhdyssanasäännöt ovat? Olen ymmärtänyt että aika
pitkälti käsisäädöllä toteutettuja?

> - Mihin Omorfista löytyvät bugit kannattaa raportoida? Gna-projektin
> bug trackeriin, KitWikiin, tänne postituslistalle? Onko projekti
> siinä vaiheessa, että ulkopuolisten tekemiä patcheja hyväksytään
> mukaan? Katsoin sivut
> http://forums.csc.fi/kitwiki/pilot/view/KitWiki/OMorFiRoadmap
> http://forums.csc.fi/kitwiki/pilot/view/KitWiki/OMorFiPhases
> http://forums.csc.fi/kitwiki/pilot/view/KitWiki/OMorFiFreedom
> http://forums.csc.fi/kitwiki/pilot/view/KitWiki/OMorFiCommunity mutta
> noista ei vielä selvinnyt, että miten tämän projektin hallinta on
> konkreettisesti ajateltu järjestää. Ilmeisesti vaiheissa niin, että
> ensin kehitetään HY:n sisällä projektimuotoisesti, ja sitten kun on
> saatu tuote riittävän hyvään kuntoon, siirrytään perinteiseen
> avoimeen kehitykseen?

Hankala sanoa tätä, itse olen hyvin juurtunut perinteiseen open source
-malliin. Gna-projektin tein itse ja sitä voinee pitää omana forkkinaan
jolla voi pelata miten haluaa. HY:n, ja mahdollisesti vähän kotuksenkin,
projektiin liittynee aina kaikennäköisiä vaatimuksia
oikeuksienluovutuslomakkeista ja ties mistä byrokraattisista kuvioista
lähtien. Itse en oikein noista lakijutuista ja muista jaksa välittää
niin tuo gna-projekti toimii minulle hyvänä leikkikenttänä, ja sinne
sitten saa svn-oikeuksia tms. ihan pyytämällä. Tällä hetkellä kun
omorfi-palikkaan ei kukaan muu ole koskenut eikä kai lähiaikoina
koskemassa niin projektin hallinta luonnistuu miten päin tahansa,
luultavasti yliopistolla olisivat tyytyväisiä jos kitwikiä käytettäisiin
mahdollisimman paljon, mutta toisaalta taas itse olen tottunut hyvin
bugihallintasovellusten kanssa pelaamiseen.

Ja kiitokset testauksesta, nämä korjaukset ovat nyt revisiossa 14.
-- 
Flammie, computer scientist-linguist B.Sc., Gentoo translator, and a 
freak. <http://www.iki.fi/flammie/>



More information about the voikko mailing list