Kven Finnish NLP Grammar

Finite state and Constraint Grammar based analysers, proofing tools and other resources

View the project on GitHub giellalt/lang-fkv

Viikkokokous 3.5.2013

*Aika: klo 13 *Paikka: internet *Välineet: iChat ja SEE *Osallistujat: Kaisa, Mervi, Pirjo, Trond

Agenda

*Työsuunnitelu *Työlista *Sanakirja *Muut asiat

Työsuunnittelu

Pronominit

Eli: Tarkempi virheilmoitus, jos haluat apua…

hum-tf4-ans163:fkv ttr000$ ufkv
0%>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>100%
jommatkummat
Segmentation fault: 11   <================= automaatti ei hyväksy
hum-tf4-ans163:fkv ttr000$ ufkv
0%>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>100%
jompikumpi
Segmentation fault: 11
hum-tf4-ans163:fkv ttr000$ ufkv
0%>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>100%
ei
ei	ei+V+Neg+Act+Ind+Sg3
ei	ei+V+Neg+Act+Ind+Pl3

Työtapa:

Mennä takaisin svn-historiassa kunnes se toimii, ja sitten nähdä mitä on lisätty katastroofin aiheuttamiseksi.

svn log src/morphology/affixes/pronouns.lexc|less

 
r75711 | mervi | 2013-05-03 08:17:42 +0200 (Fri, 03 May 2013)  <== nyt ei

Jommatkummat korjauksia.
---------------------------------------------------------------
r75656 | mervi | 2013-05-02 11:38:26 +0200 (Thu, 02 May 2013)  <== emme tiedä

Jommatkummat lisätty.
---------------------------------------------------------------
r75444 | mervi | 2013-04-26 16:27:29 +0200 (Fri, 26 Apr 2013)  <== silloin toimi

Jompikumpi tehty.                             
---------------------------------------------------------------

Debuggaaminen (fkv-hakemistossa):

svn up -r75656 src/morphology/affixes/pronouns.lexc
make

(jos tässäkin on vika, niin -r75444)

toinen mahis:

svn diff -r75656:75444 src/morphology/affixes/pronouns.lexc

… ja näet eron.

TEHTÄVÄ

Nominit

Vokaalivartaloiset nominit

Sanoja väärissä luokissa

Konsonanttivartaloiset nominit

  1. Luokka 41, 33, 32s ollaan käyty läpi
  2. Luokka 32 ei käyty läpi: ongelmia tytär:tyttär vai tytär:tyttä
  3. Luokka 31 ei käyty läpi
  4. Sanoja väärissä luokissa
    1. kuningas:kuninkhaa (vai kuninkha), rakas:rakkhaa (vai rakkha)

Yaml-testit

Paljon lukematta läpi. Substantiivien yaml-tiedostojen Ok-merkintä

hum-tf4-ans163:morphology ttr000$ grep tseka *
N-huonet_gt-norm.yaml:  Noun - huonet: # Noun 'borg' - ei tsekattu
N-kainulainen_gt-norm.yaml:  Noun - linna: # Noun 'borg' - ei tsekattu
N-kauhee_gt-norm.yaml:  Noun - kauhee: # Noun 'borg' - eo tsekattu
N-maa_gt-norm.yaml:  Noun - maa: # Noun 'borg' - ei tsekattu
N-meininki_gt-norm.yaml:  Noun - meininki: # Noun 'borg' - ei tsekattu
N-opettaaja_gt-norm.yaml:  Noun - opettaaja: # Noun 'borg' - ei tsekattu
N-rakas_gt-norm.yaml:  Noun - rakas: # Noun 'borg' - ei tsekattu
N-ruvis_gt-norm.yaml:  Noun - ruvis: # Noun 'borg' - ei tsekattu
N-suomi_gt-norm.yaml:  Noun - suomi: # Noun 'borg' - ei tsekattu
N-tooli_gt-norm.yaml:  Noun - tooli: # Noun 'borg' - ei tsekattu
N-veres_gt-norm.yaml:  Noun - veres: # Noun 'borg' - ei tsekattu
N-vuosi_gt-norm.yaml:  Noun - vuosi: # Noun 'borg' - ei tsekattu

V-aikkoot_gt-norm.yaml:  Verb - aikkoot: # Verb 'to bring' - ei tsekattu
V-ajatella_gt-norm.yaml:  Verb - ajatella: # Verb 'to bring' - ei tsekattu
V-anttaat_gt-norm.yaml:  Verb - anttaat: # Verb 'to bring' - ei tsekattu
V-aukaista_gt-norm.yaml:  Verb - aukaista: # Verb 'to bring' - ei tsekattu
V-haravoita_gt-norm.yaml:  Verb - haravoiđa: # Verb 'to bring' - ei tsekattu
V-havittaat_gt-norm.yaml:  Verb - hävittäät: # Verb 'to bring' - ei tsekattu
V-jatkata_gt-norm.yaml:  Verb - jatkata: # Verb 'to bring' - ei tsekattu
V-juosta_gt-norm.yaml:  Verb - juosta: # Verb 'to bring' - ei tsekattu
V-kadota_gt-norm.yaml:  Verb - kađota: # Verb 'to bring' - ei tsekattu
V-kattela_gt-norm.yaml:  Verb - kattela: # Verb 'to bring' - ei tsekattu
V-kavela_gt-norm.yaml:  Verb - kävelä: # Verb 'to bring' - ei tsekattu
V-kulkkeet_gt-norm.yaml:  Verb - kulkkeet: # Verb 'to bring' - ei tsekattu
V-kyytita_gt-norm.yaml:  Verb - kyytitä: # Verb 'to bring' - ei tsekattu
V-lahteet_gt-norm.yaml:  Verb - lähteet: # Verb 'to bring' - ei tsekattu
V-lenttaat_gt-norm.yaml:  Verb - lenttäät: # Verb 'to bring' - ei tsekattu
V-lukkeet_gt-norm.yaml:  Verb - lukkeet: # Verb 'to bring' - ei tsekattu
V-luottaat_gt-norm.yaml:  Verb - luottaat: # Verb 'to bring' - ei tsekattu
V-nahda_gt-norm.yaml:  Verb - nähđa: # Verb 'to do' - ei tsekattu
V-nakkyyt_gt-norm.yaml:  Verb - näkkyyt: # Verb 'to bring' - ei tsekattu
V-pajeta_gt-norm.yaml:  Verb - pajeta: # Verb 'to bring' - ei tsekattu
V-panna_gt-norm.yaml:  Verb - panna: # Verb 'to bring' - ei tsekattu
V-piikaroita_gt-norm.yaml:  Verb - piikaroiđa: # Verb 'to bring' - ei tsekattu
V-polata_gt-norm.yaml:  Verb - pölätä: # Verb 'to bring' - ei tsekattu
V-saada_gt-norm.yaml:  Verb - saađa: # Verb 'to bring' - ei tsekattu
V-soppiit_gt-norm.yaml:  Verb - soppiit: # Verb 'to bring' - ei tsekattu
V-tarista_gt-norm.yaml:  Verb - täristä: # Verb 'to bring' - ei tsekattu
V-tehda_gt-norm.yaml:  Verb - tehđa: # Verb 'to do' - ei tsekattu
V-tohtiit_gt-norm.yaml:  Verb - tohtiit: # Verb 'to bring' - ei tsekattu
V-tuoda_gt-norm.yaml:  Verb - tuođa: # Verb 'to bring' - ei tsekattu
V-vanheta_gt-norm.yaml:  Verb - vanheta: # Verb 'to bring' - ei tsekattu

hum-tf4-ans163:morphology ttr000$ grep ' ok' *.yaml
N-linna_gt-norm.yaml:  Noun - linna: # Noun 'borg' - ok
N-venet_gt-norm.yaml:  Noun - venet: # Noun 'borg' - ok
V-kattoot_gt-norm.yaml:  Verb - kattoot: # Verb 'to bring' - ok
V-kirjoittaat_gt-norm.yaml:  Verb - kirjoittaat: # Verb 'to bring' - ok
V-tulla_gt-norm.yaml:  Verb - tulla: # Verb 'to bring' - ok

Historia opettaa meitä (seisot fkv:ssä):

svn log test/src/morphology/V-aikkoot_gt-norm.yaml

Miten testata:

  1. make check
  2. poimia pitkät komennot, esim:
hum-tf4-ans163:fkv ttr000$ pushd /Users/ttr000/main/langs/fkv/test/src/morphology; /opt/local/bin/python3.2 /Users/ttr000/main/giella-core/scripts/morph-test.py -c -i -S hfst --app /usr/local/bin/hfst-lookup --gen ./../../../src/generator-gt-norm.hfst --morph ./../../../src/analyser-gt-norm.hfst ./N-linna_gt-norm.yaml; popd

Tulos: 6 virhettä

[FAIL] linna+N+Pl+Gen => Missing results: linnoin
[FAIL] linna+N+Pl+Gen => Unexpected results: linnoiin
[FAIL] linna+N+Pl+Par => Missing results: linnoi
[FAIL] linna+N+Pl+Par => Unexpected results: linnoii
[FAIL] linna+N+Pl+Ill => Missing results: linnhoin
[FAIL] linna+N+Pl+Ill => Unexpected results: linnoihin

Virheet ovat kahdentyyppisiä:

  1. ii, eikä i, partitiivissä ja genitiivissä
  2. h-sääntö

Sitten katsoa muita sanoja: Ovatko niissä sama virhemalli, vai ei?

Menetelmä olisi:

  1. Mihin luokkan linna kuuluu?
  2. Missä on linna-sanan partitiivn ja genetiivin monikon leksikot?
  3. Näkyykö siinä ylimääräisiä i:tä?

Vartalo lexc:ssä:

kissa n_21 ; ! kissa on hakumuoto ja vartalo
kssa: n_21 ; ! kissa on hakumuoto, vartaloa ei ole
käsi jokuleks ; ! käsi on hakumuoto ja vartalo
käsi:käte jokuleks ; ! käte vartalo
käsi:käti jokuleks ; ! käti vartalo
käsi:käsi jokuleks ; ! käsi vartalo, huono idea
ovi jokuleks ; ! sitten sääntö: i:e jos seuraa suf (mahdollista)
ovi:ove jokuleks ; ! sitten sääntö: e:i jos ei seuraa suf (mahdollista)
ovi:ovve jokuleks ; ! huono idea: koska meillä on geminaatiosääntö

Nyt on:
lovi:love n_21ie ; 

Astevaihtelu ja geminaatio:

   III     II        I
tekkee - tekevät - tehen

Astevaihtelu: II - I k:h, III-II takki - takin
Geminaatio: II > III
III - I ei ole (pp:v, kk:h, tt:đ ei ole)
==> vahva, ei-geminoitu aste on vartalomuoto.

Miten lexc ja twolc toimivat yhdessä: lexc:n output on twolc:n input. Tässä esimerkissä identtinen jono on hattu^WG>n:

Twolc-sääntö on:

"Gradation ppttkk : ptk" !!= * @CODE@  
Cx:0 <=> [Vowel:|l|m|n](r) _ Cx (:h) (Dummy:) Vowel: (Vowel:0) (Dummy:) (:i) (l) %^WG:0 ;  
            where Cx in ( k p t ) ;

TEHTÄVÄ

  1. Nominit:
    1. Pirjo tsekkaa: suomi, tooli, vuosi. (Merville)
    2. Pirjo tsekkaa: konsonanttivartalot. (Leenalle ja Kaisalle)
  2. Verbit:
    1. kai aikkoot ensin…
    2. Verbien kanssa odotetaan kunnes Kaisa on laittanut lisää muotoja

Työlista

Toukokuu:

Nominit

Verbit

Sanakirja

Eiran sanakirja on tässä

Sanakirjan päivitys ja Eiran sanakirja tilalle?

  1. Yhdistää aikamatka ja fkvnob
  2. manuaalisesti käydä läpi ja tehdä sanakirjatyö
  3. lisätä sanat lexc-tiedostoihin

Kysymys normatiivisuudesta tule esiin.

Päällekkäisyys on seuraavanlainen:

Kuka tekee mitä tälle asialle ja milloin? Ehkä emme lyö niitä yhten ennen tutustumista?

Toukokuussa: Trond, ehkä myös Mervi ja Pirjo.

Seuraava kokous