文件perl教程
perl教程 时间:2021-04-05 阅读:(
)
Moses操作手册冯洋2016-12-15Moses是用于机器翻译的工具,其他所有的从源端序列生成目标端序列的问题也可以看成是机器翻译问题,比如问题改写,从而使用Moses进行建模.
下面笔者着重介绍两个模型:短语模型和层次短语模型.
短语模型主要是通过查找与源端匹配的短语,进而将短语进行拼接从而生成目标译文.
比如,对于一个等价的问题对短语模型会抽取以下短语这样,如果给定『什么是成人高考』,通过应用以上两条规则,就可以得到『成人高考介绍』.
短语模型存在一个问题是,它并不知道『成人高考』和『介绍』的位置关系,只能靠语言模型来对排序进行弱指导,从而使得生成正确的句子排序有一定的挑战.
相比于短语模型,层次短语模型引入了占位符X,从而能学习一些特殊的句型变换.
对于以上的问题对,层次短语就能学到以下规什么是à介绍成人高考à成人高考什么是成人高考|||成人高考介绍则这样,如果给定『什么是成人高考』,通过应用以上两条规则,就可以得到『成人高考介绍』1.
编译将Moses文件夹存放在某个目录下,进入Moses目录,在命令行输入以下命令:1.
1依赖1.
1.
1gcc请保证gcc的版本不要太低,最好是gcc4.
81.
1.
2boostboost版本需要至少是1.
48,我用的是1.
62export$BOOST=$MOSES/usr/boost1.
1.
3bzip2什么是XàX介绍成人高考à成人高考.
/bootstrap.
sh.
/b2--prefix=$BOOST--libdir=$BOOST/lib64--layout=taggedlink=static,sharedthreading=multiinstallexportMOSES=$PWD需安装bzip2,请参考http://www.
bzip.
org/修改~/.
bashrc的PATH,LD_LIBRARY_PATH,以包括以上工具的bin和对应的lib或者lib64目录.
1.
2SRILM进入$MOSES/srilm目录.
首先修改Makefile文件的SRILM的路径,改成为现在srilm的根目录,为最后运行命令至此,srilm编译完成,检查$MOSES/srilm/bin/i686-m64/ngram-count是否可以运行,如果可以运行,证明编译成功.
1.
3GIZA++进入$MOSES/giza-pp目录,运行make直接进行编译,检查GIZA++-v2目录下是否有以下可执行文件:将这些可执行文件拷贝到giza-pp目录下.
GIZA++,plain2snt.
out,snt2cooc.
out,snt2plain.
outSRILM=$MOSES/srilmmakeWorld1.
4Moses进入$MOSES/mosesdecoder目录,运行以下命令进行编译:如果编译成功,在$MOSES/mosesdecoder/bin目录下有moses和moses_chart可执行程序,如果运行会输出相应的命令选项.
2.
运行短语模型2.
1数据准备创建以下目录data目录用来存放训练集.
源句子和目标句子分别一个文件,一个句子一行.
dev_test目录用来存放开发集、测试集.
开发集和测试集都是一个句子一行,不加任何标记,对于参考译文,一个参考译文一个文件,后缀从0开始算起.
这里开发集选定dev,测试集选定test,所以用到的文件为dev.
src,dev.
ref.
0,dev.
ref.
1,dev.
ref.
2,dev.
ref.
3,test.
src,test.
ref.
0,test.
ref.
1,test.
ref.
2,test.
ref.
3.
.
/bjam-aq-j4--with-boost=$BOOST--with-srilm=$MOSES/srilm$MOSES/workplace,$MOSES/workplace/data,$MOSES/workplace/dev_test2.
2训练语言模型创建语言模型目录并进入该目录用srilm训练语言模型,运行以下命令或者.
/train_demo.
sh2.
1抽取短语2.
1.
1从头开始执行进入$MOSES/workplace_demo目录,运行.
/train.
sh或者以下命令mkdir$MOSES/lm.
.
/srilm/bin/i686-m64/ngram-count-textdemo_lm_plain.
txt-order5-unk-interpolate-wbdiscount-lmdemo.
o5.
lm.
gz其中,每个参数的含义如下:$MOSES/mosesdecoder/scripts/training/train-model.
perl\--external-bin-dir$MOSES/giza-pp\--root-dir$MOSES/workplace_demo/train\--corpus$MOSES/workplace_demo/data/training\-fsource\-etarget\--first-step1\--last-step9\--alignmentgrow-diag-final-and\--reorderingmsd-backward-fe\--lm0:5:$MOSES/lm/demo.
o5.
lm.
gz运行完以后会自动生成$MOSES/workplace_demo/train目录,如果运行成功,在$MOSES/workplace_demo/train/model目录下会有以下三个文件供mert训练阶段使用:其中,moses.
ini文件中会给出训练阶段的参数值.
--external-bin-dir:为引入的外部程序库的bin目录,此处为GIZA++对齐的目录--root-dir:为生成的文件的存放目录--corpus:为训练文件的前缀-fsource:为源端的训练文件的后缀-etarget:为目标端的训练文件的后缀--first-step:为开始的步骤--last-step:为结束的步骤--alignment:为生成的对齐的种类--reordering:为调序模型的种类--lm:为使用的语言模型,有三个参数,用冒号隔开,为语言模型种类:语言模型元数:语言模型文件,srilm对应的种类为0.
phrase-table.
gz(短语表)reordering-table.
wbe-msd-backward-fe.
gz(排序模型文件)moses.
ini(配置文件)2.
2mert训练抽取完短语表之后,就可以进行mert训练来训练参数.
运行.
/mert.
sh或者输入以下命令:其中每个参数的含义如下:$MOSES/mosesdecoder/scripts/training/mert-moses.
pl\--working-dir$MOSES/workplace_demo/mert\--rootdir$MOSES/mosesdecoder/scripts\--decoder$MOSES/mosesdecoder/bin/moses\--input$MOSES/workplace_demo/dev_test/dev.
src\--refs$MOSES/workplace_demo/dev_test/dev.
ref.
\--config$MOSES/workplace_demo/train/model/moses.
ini\--nbest100--jobs4\--return-best-dev\--filter-phrase-table\--queue-flags"-qwolf.
cpu.
q"如果中断了,要继续进行mert训练,只需要添加选项—continue.
训练的时候会默认的对短语表和重排序表进行过滤,实际用到的是filetered目录下的moses.
ini,phrase-table.
0-0.
1.
1.
gz和reordering-table.
wbe-msd-backward-fe.
训练结束后,得到的$MOSES/workplace_demo/mert/moses.
ini便为训练得到的配置文件.
2.
4测试首先创建目录$MOSES/workplace_demo/test,然后将$MOSES/workplace_demo/mert/moses.
ini拷贝到新创建的目录下.
对--working-dir:存放生成文件的目录--rootdir:使用的脚本文件的目录--decoder:使用的解码器可执行文件--input:开发集的源文件--refs:开发集的参考文件的前缀,系统会自动添加数字0,1,……--config:配置文件--nbest:nbestsize--jobs:并发任务数--return-best-dev:表示返回对应于bleu值最高的轮数的参数--filter-phrase-table:表示对短语进行过滤,只保留与开发集源文件匹配的短语--queue-flags:与机器相关,设置成对应于机器的队列名于大的训练语料,必须对测试集进行短语表的过滤,小的训练语料也可以不进行过滤.
三个参数分别为:过滤后得到的短语表以及配置文件的存放目录,测试使用的配置文件,测试文件.
过滤后的配置文件moses.
ini,短语表以及重排序表存放在目录$MOSES/workplace_demo/test/filtered.
测试运行以下命令其中参数的含义为生成的结果文件result.
txt是一个plain文件,一行一个结果.
如果需-config:测试使用的配置文件-n-best-list:生成的nbest文件以及nbest_size结果文件,一个测试句子对应一个最好的结果$MOSES/mosesdecoder/scripts/training/filter-model-given-input.
pl\.
/test/filtered\.
/test/moses.
ini\.
/dev_test/test.
src$MOSES/mosesdecoder/bin/moses\-config.
/test/filtered/moses.
ini\-n-best-list.
/test/nbest.
txt100\.
/test/result.
txt要测试最终结果的BLEU值,还需要运行其中对应的参数为整个测试过程均写在脚本test.
sh,可直接运行.
3.
运行层次短语模型3.
1抽取规则运行以下命令或者直接运行.
/train_hpb.
sh第一个参数是参考文件,只需要给出前缀,程序会自动加上数字来寻找,即程序会查找test.
ref.
0,test.
ref.
1,…存放评估结果的文件$MOSES/mosesdecoder/scripts/generic/multi-bleu.
perl.
/dev_test/test.
ref.
.
/test/result.
eval其中每个参数对应的含义为$MOSES/mosesdecoder/scripts/training/train-model.
perl\--external-bin-dir$MOSES/giza-pp\--root-dir$MOSES/workplace_demo/train_hpb\--corpus$MOSES/workplace_demo/data/training\-fsource\-etarget\--first-step1\--last-step9\--alignmentgrow-diag-final-and\--lm0:5:$MOSES/lm/demo.
o5.
lm.
gz\--hierarchical\--glue-grammar\--extract-options'--MinHoleSource1'\--extract-options'--NoNonTermFirstWord'\--score-options'--GoodTuring'运行成功,会在$MOSES/workplace_demo/train_hpb/model生成三个文件以供mert训练使用:--external-bin-dir:为引入的外部程序库的bin目录,此处为GIZA++对齐的目录--root-dir:为生成的文件的存放目录--corpus:为训练文件的前缀-fsource:为源端的训练文件的后缀-etarget:为目标端的训练文件的后缀--first-step:为开始的步骤--last-step:为结束的步骤--alignment:为生成的对齐的种类--reordering:为调序模型的种类--lm:为使用的语言模型,有三个参数,用冒号隔开,为语言模型种类:语言模型元数:语言模型文件,srilm对应的种类为0.
--hierarchical:表示抽取层次短语规则--glue-grammar:层次短语模型所需要的glue规则--extract-options:抽取规则的附加参数--score-options:给规则评分所用到的参数phrase-table.
gzrule-table.
gzmoses.
ini3.
2mert训练运行以下命令或者直接运行.
/mert_hpb.
sh其中每个参数的含义如下:$MOSES/mosesdecoder/scripts/training/mert-moses.
pl\--working-dir$MOSES/workplace_demo/mert_hpb\--rootdir$MOSES/mosesdecoder/scripts\--decoder$MOSES/mosesdecoder/bin/moses_chart\--input$MOSES/workplace_demo/dev_test/dev.
src\--refs$MOSES/workplace_demo/dev_test/dev.
ref.
\--config$MOSES/workplace_demo/train_hpb/model/moses.
ini\--nbest100--jobs4\--return-best-dev\--filter-phrase-table\--queue-flags"-qwolf.
cpu.
q"训练好的参数为$MOSES/workplace_demo/mert_hpb/moses.
ini3.
4测试首先创建目录$MOSES/workplace_demo/test_hpb,然后将$MOSES/workplace_demo/mert_hpb/moses.
ini拷贝到新创建的目录下.
此处不进行规则表的过滤.
测试运行以下命令--working-dir:存放生成文件的目录--rootdir:使用的脚本文件的目录--decoder:使用的解码器可执行文件--input:开发集的源文件--refs:开发集的参考文件的前缀,系统会自动添加数字0,1,……--config:配置文件--nbest:nbestsize--jobs:并发任务数--return-best-dev:表示返回对应于bleu值最高的轮数的参数--filter-phrase-table:表示对短语进行过滤,只保留与开发集源文件匹配的短语--queue-flags:与机器相关,设置成对应于机器的队列名其中参数的含义为生成的结果文件result.
txt是一个plain文件,一行一个结果.
如果需要测试最终结果的BLEU值,还需要运行其中对应的参数为整个测试过程均写在脚本test_hpb.
sh,可直接运行.
第一个参数是参考文件,只需要给出前缀,程序会自动加上数字来寻找,即程序会查找test.
ref.
0,test.
ref.
1,…存放评估结果的文件-config:测试使用的配置文件-n-best-list:生成的nbest文件以及nbest_size结果文件,一个测试句子对应一个最好的结果$MOSES/mosesdecoder/bin/moses_chart\-config.
/test_hpb/moses.
ini\-n-best-list.
/test_hpb/nbest.
txt100\.
/test_hpb/result.
txt$MOSES/mosesdecoder/scripts/generic/multi-bleu.
perl.
/dev_test/test.
ref.
.
/test_hpb/result.
eval
BuyVM针对中国客户推出了China Special - STREAM RYZEN VPS主机,带Streaming Optimized IP,帮你解锁多平台流媒体,适用于对于海外流媒体有需求的客户,主机开设在拉斯维加斯机房,AMD Ryzen+NVMe磁盘,支持Linux或者Windows操作系统,IPv4+IPv6,1Gbps不限流量,最低月付5加元起,比美元更低一些,现在汇率1加元=0.7...
VPSMS最近在做两周年活动,加上双十一也不久了,商家针对美国洛杉矶CN2 GIA线路VPS主机提供月付6.8折,季付6.2折优惠码,同时活动期间充值800元送150元。这是一家由港人和国人合资开办的VPS主机商,提供基于KVM架构的VPS主机,美国洛杉矶安畅的机器,线路方面电信联通CN2 GIA,移动直连,国内访问速度不错。下面分享几款VPS主机配置信息。CPU:1core内存:512MB硬盘:...
优林怎么样?优林好不好?优林 是一家国人VPS主机商,成立于2016年,主营国内外服务器产品。云服务器基于hyper-v和kvm虚拟架构,国内速度还不错。今天优林给我们带来促销的是国内东北地区哈尔滨云服务器!全部是独享带宽!首月5折 续费5折续费!地区CPU内存硬盘带宽价格购买哈尔滨电信2核2G50G1M53元直达链接哈尔滨电信4核4G50G1M83元直达链接哈尔滨电信8核8G50G1M131元直...
perl教程为你推荐
小度商城小度智能屏Air哪里可以买?大家都怎么入手的?广东GDP破10万亿广东省城市经济排名百度关键词工具常见百度关键词挖掘方法分别是什么请列举?kb123.netwww.zhmmjyw.net百度收录慢?广告法请问违反了广告法,罚款的标准是什么www.ijinshan.com好电脑要用什么样的软件33tutu.com33gan.com改成什么了222cc.com有什么电影网站啊bihaiyinsha碧海银沙中国十大网页?www.seowhy.com哪里有免费学习seo的
浙江vps 新网域名管理 国外php主机 美国主机论坛 腾讯云数据库 wordpress技巧 sockscap godaddy域名优惠码 轻博 免费个人博客 免费个人网站申请 元旦促销 免费全能主机 稳定免费空间 七夕快乐英语 789 东莞服务器托管 中国linux lamp怎么读 空间申请 更多