Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Next revision Both sides next revision | ||
user:zeman:moses [2008/12/15 15:41] zeman vytvořeno |
user:zeman:moses [2008/12/15 23:43] zeman Pentagram, ne dekagram! |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Ondrův návod, jak pouštět Mosese ====== | ====== Ondrův návod, jak pouštět Mosese ====== | ||
- | <code bash>svn co https:// | + | ===== Instalace ===== |
+ | <code bash>svn co https:// | ||
- | # stahni si srilm, treba takto: | + | Poznámka Dan: mám to v ''/ |
+ | |||
+ | <code bash># stahni si srilm, treba takto: | ||
cd moses_playground/ | cd moses_playground/ | ||
- | ln -s / | + | ln -s / |
+ | Je to tam. | ||
- | # ostatni komponenty jsou bud v svn nebo se stahnou | + | <code bash># ostatni komponenty jsou bud v svn nebo se stahnou |
# zkompiluj vse | # zkompiluj vse | ||
cd moses_playground | cd moses_playground | ||
- | make workspace | + | make workspace</ |
- | # vyrobi to podadresar workspace.DATUM-CAS, | + | |
- | # nastav cesty v playground/Makefile | + | Pro jistotu pouštím na '' |
+ | |||
+ | < | ||
+ | | ||
+ | |||
+ | <code bash># vyrobi to podadresar workspace.DATUM-CAS, | ||
+ | # nastav cesty v moses_playground/Makefile</ | ||
+ | |||
+ | Nastavuju cesty '' | ||
+ | |||
+ | ===== Příprava korpusů ===== | ||
- | # priprav korpusy: | + | <code bash># priprav korpusy: |
- | cd playground/ | + | cd moses_playground/ |
# co (paralelni) korpus, to adresar | # co (paralelni) korpus, to adresar | ||
Line 28: | Line 42: | ||
mujkorpus/ | mujkorpus/ | ||
- | Priklad viz / | + | Priklad viz / |
- | Pak nechas vyrobit alignment, bud rucne, nebo napr.: | + | Nějaké podsložky už tam jsou. Vytvářím novou '' |
+ | |||
+ | **Před dalšími operacemi raději přepínám z tcsh do bashe, který používá Ondra.** | ||
+ | |||
+ | <code bash>Pak nechas vyrobit alignment, bud rucne, nebo napr.: | ||
cd augmented_corpora | cd augmented_corpora | ||
Line 42: | Line 60: | ||
(Vystup viz napr. / | (Vystup viz napr. / | ||
- | Princip je ten, ze pro kazdy korpus K maji vsechny soubory augmented_corpora/ | + | Princip je ten, ze pro kazdy korpus K maji vsechny soubory augmented_corpora/ |
+ | mit stejny pocet radek. Mohou mit ruzny pocet tokenu na radce.</ | ||
- | Pak je skript augment.pl, ktery podle navodu z daneho korpusu vyreze potrebne faktory, napr.: | + | Cíl '' |
+ | |||
+ | Pozor, tady už některé věci vyžadují úpravy, např. se tam přistupuje k '' | ||
+ | |||
+ | Vyžaduje se také perlový modul '' | ||
+ | |||
+ | <code bash>Pak je skript augment.pl, ktery podle navodu z daneho korpusu vyreze potrebne faktory, napr.: | ||
cd augmented_corpora | cd augmented_corpora | ||
./ | ./ | ||
- | Pozor: v soucasne dobe stale jeste nefunguji zamky v augment.pl a NFS je debilni. Muze se tedy stat, ze kdyz ma augment vyrobit nejakou novou kombinaci, ktera se sklada z take vyrabenych soucastek, tak se vyrobi neuplne gzipy! | + | Pozor: v soucasne dobe stale jeste nefunguji zamky v augment.pl a NFS je debilni. |
+ | Muze se tedy stat, ze kdyz ma augment vyrobit nejakou novou kombinaci, | ||
+ | ktera se sklada z take vyrabenych soucastek, tak se vyrobi neuplne gzipy! | ||
- | To byla priprava. :-) | + | To byla priprava. :-)</ |
+ | Z tohohle to skoro vypadá, že se augment má pouštět před alignem, a ne až po něm. Z Makefilu je ale vidět, že se volání augmentu předává jako parametr alignu, který si ho zřejmě obsluhuje sám. | ||
- | Samotne pokusy pak pripravuji a spoustim takto: | + | ===== Pouštění pokusů ===== |
- | cd playground | + | <code bash> |
+ | |||
+ | cd moses_playground | ||
SRCCORP=icon-eilmt \ | SRCCORP=icon-eilmt \ | ||
SRCAUG=enR+lc \ | SRCAUG=enR+lc \ | ||
Line 83: | Line 113: | ||
Kdyz das RUN=yes, tak to i rovnou submitne. | Kdyz das RUN=yes, tak to i rovnou submitne. | ||
- | Princip tech seeds je, ze seed je bashovy skript, ktery neco obratem pripravi, a zejmena pripravi bashovy skript ' | + | Princip tech seeds je, ze seed je bashovy skript, ktery neco obratem pripravi, |
+ | a zejmena pripravi bashovy skript ' | ||
+ | Cili kdyz se nejaky experiment nedari spustit (nebo dokoncit) | ||
+ | vlezes do jeho adresare exp.NAZEV.TIMESTAMP, | ||
+ | treba si ho spustis rucne atp. | ||
- | Cili kdyz se nejaky experiment nedari spustit (nebo dokoncit) vlezes do jeho adresare exp.NAZEV.TIMESTAMP, | + | Snazim se o to, aby adresare experimentu obsahovaly uplne vsechny vstupy, |
- | + | proto hojne v priprave experimentu pouzivam / | |
- | Snazim se o to, aby adresare experimentu obsahovaly uplne vsechny vstupy, proto hojne v priprave experimentu pouzivam / | + | ktery podle situace dela bud symlink, hardlink, nebo i kopii, a taky tam |
+ | pripise md5 sumu, abych mohl i zpetne hlidat, ze jsem neco spoustel na tom, | ||
+ | na cem jsem to spoustet chtel. | ||
Postup pres experimenty je tento: | Postup pres experimenty je tento: | ||
Line 101: | Line 136: | ||
Take byvalo make exp.align.prepare, | Take byvalo make exp.align.prepare, | ||
- | |||
Nejspis se v tom ale nevyznas :-( | Nejspis se v tom ale nevyznas :-( | ||
- | Dej mi vedet, kdybys zacal citit nejakou nadeji. </ | + | Dej mi vedet, kdybys zacal citit nejakou nadeji.</ |
+ | |||
+ | |||
+ | ===== Výroba jazykového modelu ===== | ||
+ | |||
+ | Pokouším se použít výše popsaný Ondrův postup pro korpus '' | ||
+ | |||
+ | <code bash> | ||
+ | CORPAUG=hi+form \ | ||
+ | ORDER=5 \ | ||
+ | RUN=yes \ | ||
+ | make exp.lm.prepare</ | ||
+ | |||
+ | Neustále narážím na volání Ondrových nástrojů, které nemám v cestě (např. '' |