GiellaLT

GiellaLT provides an infrastructure for rule-based language technology aimed at minority and indigenous languages, and streamlines building anything from keyboards to speech technology.

View GiellaLT on GitHub

Page Content

MT-beaivvit cuoŋománus

Kursa 2016

Praktihkalaččat

bistá 5 beaivvi, mii álgit mánnodaga dii. 9

Prográmmaevttohus:

Trond, ML ja Lene leat hupman MT-vahku sisdoalu birra. Dát lea evttohus:

MÁNNODAGA

0 Bures boahtin

1 Evalueret sme-teavstta MT-jorgalusa

Jorgalit guokte oanehis teavstta: čáppagirjjálašvuođa teavstta ja čoahkkingirjji:

2 Buoridit jorgalanfeaillaid

Mo gávdnat jorgalanfeailla siva

Bargat ieš, oažžut bagadeami

Bargat násttiid ja hash

Missing (násti)

Ovdalgo sáhttá árvvoštallat cealkaga syntávssa dahje váilevaš genererema, de eai galgga leat missing-sánit cealkagis

Geahččat dan maid analysáhtor ii máhte genereret (hash):

echo 'cealkka' | apertium -d. sme-smn-dgen , omd.

#Pariisa<np><top><sg><loc>

usmn 
Pariisa 
Pariisa	Pariisa+N+Prop+Sem/Plc+Sg+Nom 


dsmnNorm 
Pariisa+N+Prop+Sem/Plc+Sg+Loc 
Pariisa+N+Prop+Sem/Plc+Sg+Loc	Pariisa+N+Prop+Sem/Plc+Sg+Loc	+?

Ferte lasihit/divvut FST (omd. addit +Sg+Loc leksikonii masa Pariisa manná)

Nubbi ovdamearka:

usmn 
lávluđ 
lávluđ	lávluđ+V+Inf


dsmnNorm  
lávluđ+V+Der/NomAg+N+Sg+Nom 
lávluđ+V+Der/NomAg+N+Sg+Nom	lávluđ+V+Der/NomAg+N+Sg+Nom	+?

Ferte lasihit/divvut FST (addit +Der/NomAg leksikonii masa lávluđ manná)

Leago sme-input riekta?

Geahččat input:

Geahččat sme syntávssalaš analysa apertiumas:

echo 'cealkka' | apertium -d. sme-smn-disam

Geahččat sme syntávssalaš analysa olggobeal apertiuma:

Jus buot sánit eai leat mielde bidixis, de lea buoret geavahit dán gohččuma:

echo 'cealkka' | smedis

Manne transfer-njuolggadus ii doaimma?

Geahččat chunkema:

echo 'cealkka' | apertium -d. sme-smn-chunker

DISTTAGA

3 Giellatekno ja Apertiuma taggaformáhtat

echo 'cealkka' | apertium -d. sme-smn-biltrans

Dahje don sáhtát iskat eaŋkilsániid:

4 Testenbargu: python skriptat

Mis leat dákkár teaksta-máhpat:

  1. texts : fiillat dábálaš txt-formáhtas. _sme.txt ja _smX.txt
  2. tmx_data : sihke sme ja smX seammá fiillas, okta cealkka háválassii. tmx-formáhtain lea vejolaš genereret html-fiilla.
  3. fi.samediggi : sihke sme ja smn seammá fiillas, okta cealkka háválassii. tmx-formáhtain lea vejolaš genereret html-fiilla.
  4. pseudo_tmx_data : dušše sme, okta cealkka háválassii. tmx-formáhtain lea vejolaš genereret html-fiilla.
  5. otpt_dir/ : output-directory mas leat fiillat mat leat genererejuvvon python-skriptain.

Jorgalit teavstta mii lea juo jorgaluvvon, ja buohtastahttit jorgalusaid:

Jorgalit dihto fiilla, ja rahpat bohtosa:

  1. python wercheck_mt-otpt.py -f tmx_data/100writers_sme2smn.tmx
  2. open otpt_dir/ - de rahpasa finder-láse. Vállje fiilla maid háliidat rahpat.

Jorgalit olles máhpa, ja rahpat bohtosa:

  1. python wercheck_mt-otpt.py -d tmx_data/
  2. open otpt_dir/ - de rahpasa finder-láse. Vállje fiilla maid háliidat rahpat.

Jorgalit teavstta mii ii leat jorgaluvvon ovdal:

Jorgalit dihto fiilla, ja rahpat bohtosa:

  1. python check_mt-otpt.py -f mappe/file
  2. open otpt_dir/ - de rahpasa finder-láse. Vállje fiilla maid háliidat rahpat.

Jorgalit olles máhpa, ja rahpat bohtosa:

  1. python check_mt-otpt.py -d tmx_data/
  2. open otpt_dir/ - de rahpasa finder-láse. Vállje fiilla maid háliidat rahpat.

5 Buoridit jorgalanfeaillaid

Lexical selection

Jus lea eanet go okta vejolaš jorgalus, de sáhttá ráhkadit njuolggadusaid -lrx-fiillas. omd. sämikielâlâš + human vs sämikiel

Lasit bidixii

Geavat dán gohččuma vai oainnát taggaid

^Doppe<adv><sem_plc><@ADVL→>/Tobbeen<adv><sem_plc><@ADVL→>$ 
^leat<vblex><iv><indic><pres><p3><pl><@+FMAINV>/leđe<vblex><indic><pres><p3><pl><@+FMAINV>$ 
^ollu<adv><@←ADVL>/ennuv<adv><@←ADVL>$ 
^sámegielat<adj><sem_hum><attr><@→N>/sämikiel<adj><sem_hum><attr><@→N>/sämikielâlâš<adj><sem_hum><attr><@→N>$ 
^olmmoš<n><sem_hum><pl><nom><←ext→><@←SUBJ>/olmooš<n><sem_hum><pl><nom><←ext→><@←SUBJ>$
^.<sent>/.<sent>$^.<sent>/.<sent>$ 

Lasit -lrx-fiilii:

  <rule weight="1.0">
    <match lemma="sámegielat">
      <select lemma="sämikiel"/>
    </match>
  </rule>


  <rule weight="0.5">
    <match lemma="sámegielat">
      <select lemma="sämikielâlâš"/>
    </match> 
  </rule>


  <rule weight="0.6">
   <match lemma="sámegielat" tags="adj.sem_hum.attr.*">  (sámegielat<adj><sem_hum><attr><@→N>)
      <select lemma="sämikielâlâš"/>
   </match>
<or>
   <match tags="n.sem_hum.*"/>     (omd. olmmoš<n><sem_hum><pl><nom>)
   <match tags="n.*.sem_hum.*"/>   (omd. oahpaheaddji<n><nomag><sem_hum><pl><nom>)
 </or>  
  </rule>

Nubbi ovdamearka dás: Lexical selection

GASKAVAHKU

6 Hash-listtuiguin bargat

Hash-listu ráhkaduvvo teavsttaid jorgaleami vuođul, ja buot dábáleamos čuolmmat bohtet listtu bajimussii. Nu ahte čuolmmat sorterejuvvojit frekveanssa mielde.

Jus don háliidat ráhkadit ođđa hash-listtu ieš, dahje don háliidat ohcat ovdamearkkaid, de fertet genereret ođđa jorgalusaid: genereret jorgalusaid

Loga eanet hash-listtuid birra dás: hash-listtut

dev/hash-fi-report.fi

  27 #sosiaal<adj><cmp_sgnom><cmp_splitr>  sosiála-  sosiaal-	sosiaal+A+Cmp/Attr+Cmp/SplitR
  21 #sosiaal<adj><cmp_sgnom><cmp>syergi
  14 #jieškote<prn><ind><sg><gen>
  14 #Sosiaal<adj><cmp_sgnom><cmp_splitr>
  12 #vääri<n><cmp_sgnom><cmp>#ovdâsteijee<n><nomag><sg><loc><south>
   9 #Sosiaal<adj><cmp_sgnom><cmp>syergi
   7 #riehtiministeriö<n><sg><gen>  riehtiministeriö	riehti+N+Cmp/SgNom+Cmp#ministeriö+N+Sg+Acc
   6 #Ume<np><top><sg><loc>  Ume+N+Prop+Sem/Org+Sg+Loc

Ulbmil: Ipmirdit ja divvut feaillaid.

Gohččumat:

cat dev/hash-report.freq |egrep -v '(cmp|<np-d"#" -f2|cut -d"<" -f1|hfst-lookup smj-sme.automorf.hfst |see
cat dev/hash-report.freq |egrep -v '(cmp|<np>|<top>|der_)'|see

DUORASTAGA

7 Bidix-sanity

Bidix-sanity listu ráhkaduvvo bidix-listtu vuođul. Čuolmmat sorterejuvvojit alfabehtalaččat.

sh bidix-sanity.sh > sanityoutput

Lea vejolaš heivehit sanityoutput nu ahte oaččut listtu mas eai leat namat, ja mas smX-sánit leat sorterejuvvon sáni loahpa mielde. Dalle lea álkit árvvoštallat sániid (seammá sánit bohtet maŋŋálaga) ja maiddái kopieret sániid FST:i.

Go leat dev-máhpas:

sh sortedsanityoutput_withoutprop.txt

Loga eanet bidix-sanity birra.

BEARJADAGA

8 Testen

Regression tests

./t/regression-tests

Pending tests

./t/pending-tests

Loga eanet

9 Derivašuvnnat

Harmoniserte tagger som forteller funksjon:

Forslag om nye tagger som forteller funksjon:

Andre harmoniserte tagger:

Forslag om nye harmoniserte tagger:

Resten av sme-taggene - ikke diskutert, og mange av dem er ikke så viktige for MT

10 Missinglisttuiguin bargat

missinglisttut

11 Gávdnat meattáhusaid sme-inputas

12 Syntávssalaš áššit

13 Transfer-njuolggadusat

Bargat syntávssalaš áššiiguin

Bargu ovdal geassemánu MT-vahku.

FST

Buohkaide

Derivašuvnnat MT perspektiivvas

smn

Adjektiivvat, Px,

MT

Buohkaide

smj

bidix

smn

Teknihkalaš áššit

Boahtteáiggi fáttát