《统计机器翻译简明教程.ppt》由会员分享,可在线阅读,更多相关《统计机器翻译简明教程.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、统计机器翻译简明教程 兼谈相关工具的使用何中军2007年11月提纲系统结构前处理词语对齐短语抽取解码后处理参数训练评测 词语对齐训练语料库训练语料库为双语语料库格式不固定,可以是文本格式,xml格式等等要求必须句子对齐back语料预处理目的:将各种格式不同的生语料进行加工,形成格式统一的语料库,以便进行词语对齐步骤:汉语分词汉语分词工具:ICTCLAS汉语全半角转换汉语全半角转换 功能:将A3区的全角字符转换为半角字符程序:A2B命令行:A2B input output英语分词英语分词工具:Brill英语首字母小写还原英语首字母小写还原功能:将英语语料库中的句首字母进行大小写转换。如果首单词在
2、语料库中出现的次数小写多于大写,则将首字母变为小写。程序:Truecase命令行:Truecase input output处理后训练语料库双语语料库汉语切词高新技术 产品 出口.亿 美元。全半角转换高新技术 产品 出口 37.6 亿 美元。英语切词The export of High-tech Products Reached 3.76 billion US dollars.the export of High-tech Products Reached 3.76 billion US dollars.大小写转换back词语对齐GIZA+词语对齐词语对齐后处理添加句首句尾标记词语对齐 GIZ
3、A+训练输入:汉语文本,英语文本,一行一句,句子对齐chineseenglishplain2sntchinese.vcbenglish.vcbchinese_english.sntmkclschinese.vcb.classesenglish.vcb.classeschinese.vcb.classes.catsenglish.vcb.classes.catsGiza+*.A3.final plain2snt:统计单词数,格式转换命令行./plain2snt.out chinese english2 上海 7383 浦东 764 开发 3895 与 3724chinese.vcbFormat:
4、单词编号 单词 单词出现次数12 3 4 5 6 7 8 2 3 4 5 6 7 8 9 10 11 2 12 4 13 14 15chinese_english.sntFormat:每个句对占3行 句子出现次数 汉语句子 英语句子mkcls:单词聚类命令行:./mkcls-n1-pchinese-Vchinese.vcb.classes opt-n:表示训练迭代的次数,一般迭代1次-p:要聚类的文本,一行一句(已分词)-V:输出信息opt:优化运行1925年 171925日 47chinese.vcb.classesFormat:单词 词类2:1月份,83%,AmocoCadiz,_,百分之
5、三十九点四3:+,TC,百二十万,百六十万,百五十万chinese.vcb.classes.catsFormat:词类:单词,单词GIZA+:词语对齐命令行:./GIZA+-S chinese.vcb-T english.vcb-C chinese_english.snt-O c2e -S:源语言单词表 -T:目标语言单词表 -C:源语言目标语言句子对 -O:输出文件夹 运行结束后,输出很多文件到c2e/文件夹中,主要是产生的对齐文件:#Sentence pair(1)source length 7 target length 16 alignment score:4.99368e-28the
6、 development of Shanghai s Pudong is in step with the establishment of its legal system NULL(1 3 8 11 13)上海(4)浦东(5 6)开发(2)与(10)法制(15 16)建设()同步(7 9 12 14)*.A3.final,每句对3行:对齐概率目标句子源语言句子GIZA+对齐几点说明一般双向训练,汉语-英语,英语-汉语训练流程:./plain2snt.out chinese english./mkcls-n1-pchinese-Vchinese.vcb.classes opt./mkcls-
7、n1-penglish-Venglish.vcb.classes opt./mkdir c2e./mkdir e2c./GIZA+-S chinese.vcb-T english.vcb-C chinese_english.snt-O c2e./GIZA+-S english.vcb-T chinese.vcb-C english_chinese.snt-O e2c词语对齐后处理对GIZA+的词语对齐进行优化工具:WordAlign 命令行:WordAlign c2e.A3.final e2c.A3.final output输入:汉语到英语方向的.A3.final文件和英语到汉语方向的.A3.
8、final文件输出:.xml格式的对齐文件词语对齐后处理(续)(/完/)/(/end/)/1:1/1 2:2/1 3:3/1句对以bead表示,包括源语言词,目标语言词,以及对齐信息。单词后面的/是词性的位置,如有需要,可以将/替换为相应的词性对齐后面的/1表示对齐概率,目前默认是1添加句首句尾标记命令行:命令行:AddHeadTail input output功能:为对齐后的句子加上开始结束符,/(/完/)/(/end/)/1:1/1 2:2/1 3:3/1 4:4/1 5:5/1back短语抽取从词语对齐的语料库中得到短语翻译工具:phraseExtractor功能:抽取短语,统计短语出现
9、次数phraseScoring功能:计算短语的词汇化翻译概率phraseExtractor.pl功能:驱动以上两个程序的脚本文件银行 和 保险 公司|banks and insurance companies|1 0.105599 1 0.0257825坚持 改革 开放|of reform and opening up|0.333333 0.00103337 1 0.014045短语抽取(续)phraseExtractor.pl corpus-dir.corpus-file align.xml extract-file-name my-separator tab读取corpus-dir目录下的
10、align.xml对齐文件,最终生成my.bp文件,分隔符为制表符 参数说明:-debug,if debug then the middle files will not be deleted,default is false;-corpus-dir,set the corpus dir;-corpus-file,the word aligned file from which phrases are extrated;-capacity,how many phrases in a file when extracting,default is 1000000;-extract-file-na
11、me,the phrase table name,default is extract;-max-phrase-length,max source phrase length,default is 7;-separator,the separator between phrases,default is tab;-reorder-types,lexical reordering type,default is msd-fe;-fertility,how many words can a word aligned,default is 9;-orientation,extract lexical
12、 reordering table or not,default is 0;短语表过滤根据测试文件对短语表进行过滤我是一个学生我I0.1 0.1 0.1 0.1我是I am 0.1 0.1 0.1 0.1我是 学生 I am a student0.1 0.1 0.1 0.1一个 学生a student 0.1 0.1 0.1 0.1一个 小孩a child 0.1 0.1 0.1 0.1我I0.1 0.1 0.1 0.1我是I am 0.1 0.1 0.1 0.1一个 学生a student 0.1 0.1 0.1 0.1测试文件源短语表过滤后短语表短语表过滤(续)SelectBP bpfil
13、e testfile outfile c2ebpfile:短语文件testfile:输入文件(文本文件,一行一句),如果是汉语文件,不用分词。如果是英语文件,需要做tokenize。(注意:如果在短语抽取的时候,汉语英语进行了预处理,这里对输入文件也要做相应的预处理。例如,在短语抽取时,汉语做了A3区半角转换,则SelectBP的输入文件也要做半角转换;英语作了tokenize,输入文件也要做tokenize。如果加入了句首句尾标记,则测试文件也要加句首句尾标记)outfile:过滤后的短语表c2e:1,表示汉英翻译,根据汉语文件过滤。0表示英汉翻译,根据英语文件过滤back语言模型训练ngr
14、am-count-text english-lm lm.gz-unk-kndiscount -order 4-write-arpa-text:要训练的文本,一行一句-lm:输出文件名-unk:未登录词-kndiscount:平滑-order:语言模型的元数(n-gram)-write-arpa:apra格式backConfucius的解码 基于短语的解码器解码器的配置文件Log-linear模型的训练过程结果评测BPTABLE_LIMIT 10 /短语表的剪枝参数NBEST_LIST 1000 /每句话产生Nbest的个数MAX_STACK_SIZE 100 /搜索栈的剪枝参数TT bp/iw
15、slt07-bpsmall.txt /短语表的路径POSTABLE*bp/L_0612_pos_p.txt /用于相似度模型的文件路径LM lm/english.m2.bo4.gz /语言模型1LM2 lm/iwslt.small.order5.lm.gz /语言模型2LMNGRAM 3 /语言模型的元数PARA#/下面是log-linear模型的权重p(e|c)1 /短语翻译概率p(c|e)1 /短语翻译概率 lex(e|c)1 /词汇化概率lex(c|e)1 /词汇化概率phrase 0 /短语概率(如果是精确匹配,为1,否则,为0)len 1 /目标句子长度pos_prob 0 /词性概
16、率sim_prob 0 /相似度lm 1 /语言模型lm2 1 /语言模型END#TST corpus/iwslt06.dev-src /测试文件REF corpus/iwslt06.dev-ref /参考译文FORMAT nist /输出格式,NIST评测使用nist ISTRAIN 1 /如果进行最小错误率训练,则为1,表示输出NBest信息PRINT_NBEST 1 /如果需要nbest输出,设为1,训练过程一定要设为1FEATPATH nbestfeat/特征文件的输出路径RESULTPATH result/结果文件的输出路径SUFFIX 0 /结果文件的输出后缀名ENTITY bp/
17、nist0216_0712.dev-src/命名实体文件 INFO 0 /是否输出翻译过程的信息,用于调试说明:红色部分表示大家不需要使用的,不用改动蓝色部分表示在进行最小错误率训练后,大家需要改动的部分如果想屏蔽掉某项功能,例如命名实体,只需要改动第一列的标记,例如:ENTITY-ENTITY+Log-linear模型训练过程1 初始化lambda,进行解码,产生Nbest特征文件f12 最小错误率训练得到新的lambda3 利用新的lambda进行解码,产生Nbest特征文件f24 合并f1、f2,生成新的特征文件f1,如果f1与f1相等,即没有新的Nbest产生,结束,否则 转55 f1
18、=f1,参数训练得到lambda,转3训练过程./confucius.pl root-dir.corpus nist first-loop 0 total-loop 10-root-dir 路径名,一般为本目录下-corpus 开发集名字,程序自动到corpus/目录下寻找nist.dev-src和nist.dev-ref,所以,一定要在corpus/下存在这两个文件-first-loop 从第几轮开始迭代,默认第0轮-total-loop 迭代到第几轮,默认10程序创建三个文件夹:results/存放产生的结果文件nbestfeats/存放用于最小错误率训练的nbest特征文件config/
19、存放最小错误率训练的得到的参数,和Confucius的配置文件 result/result0.txt,result1.txt 分别对应由配置文件searchconfig0.txt searchconfig1.txt 产生的结果文件result0.nist.eval result1.nist.eval分别是result0.txt result1.txt的评测文件,从中可以看到它们的bleu值nbesetfeat/cands0.txt cands1.txt对应每句话的nbest个数transfeat0.txt,transfeat1.txt对应特征文件 0 16411 1617第0句有1641个候选
20、译文第1句有1617个候选译文60.7487 64.5208 59.9104 58.6422 0 128.144-15 0 0 0 80.8994 12 13 6 12 2 11 0 10 17 62.4069 66.3365 59.1713 58.6422 0 129.803-16 0 0 0 77.7209 12 14 6 13 2 12 0 11 17 分为两部分:蓝色部分:log-liear模型的特征值,-log,红色部分:n-gram 的个数N-gram格式:(对一句话而言)1-gram匹配个数 1-gram系统译文个数 4-gram匹配个数 4-gram系统译文个数最后是最短参考译
21、文的长度(从4个参考译文中,选长度最短的)config/lamda0.txt,lamda1.txt对应训练得到的log-linear模型的权重searchconfig1.txt searchconfig2.txt对应解码器要用到的配置文件注意事项searchconfigi.txt 对应 resulti.txt transfeati.txt,candsi.txt lambdai.txt用于产生searchconfigi+1.txt训练完成后(参数收敛),检查result/目录下的resulti.nist.eval,找到bleu值最高的那个resultx.nist.eval,表示它由searchc
22、onfigx.txt产生,意味着最好的参数在searchconfigx.txt(lambdax-1.txt)修改searchconfigx.txt,运行Confucius进行评测修改配置文件,运行测试集TST corpus/iwslt06.dev-src REF corpus/iwslt06.dev-refFORMAT nist ISTRAIN 1PRINT_NBEST 1 FEATPATH nbestfeat/RESULTPATH result/SUFFIX 0ENTITY bp/nist0216_0712.dev-srcINFO 0TST corpus/nist05.tst-srcREF
23、NOFILEFORMAT nist ISTRAIN 0PRINT_NBEST 0 FEATPATH nbestfeat/RESULTPATH result/SUFFIX nist05ENTITY bp/nist05.entityINFO 0命令行:./Confucius产生的结果文件在result/resultnist05.txt评测程序 mteval-v11b.pl比较系统译文和参考译文,进行打分命令行./mteval-v11b.pl c s source.sgm r reference.sgm t result.txt-c:区分大小写(大小写敏感)-s:源文件-r:参考译文-t:系统译文文
24、件格式不同的评测对应的文件格式不太一致,但是有一些共同部分:源文件一般包含:参考译文包含:系统译文格式必须与源文件一致,且将 改为,并添加相应的系统id 今年前两月广东高新技术产品出口亿美元 Export of High-tech Products in Guangdong in First Export of High-tech Products in Guangdong in First sourcereferencesystem词语对齐参考文献Peter.F.Brown,Stephen A.Della Pietra,Vincent J.Della Pietra,Robert L.Merc
25、er,The Mathematics of Statistical Machine Translation:Parameter Estimation,Computational Linguistics,Vol 19,No.2,1993http:/www-i6.informatik.rwth-aachen.de/Colleagues/och/software/GIZA+.html短语抽取参考文献Philipp Koehn.2004.Pharaoh:a beam search decoder for phrase-based statistical machine trnaslation mode
26、ls.In Proceedings of the Sixth Conference of the Association for Machine Translation in the Americas,pages 115-124.Philipp Koehn,Franz J.Och,and Daniel Marcu.2003.Statistical phrase-based translation.In Proceedings of HLT-NAACL 2003,pages 127-133.http:/www.isi.edu/publications/licensed-sw/pharaoh/最小
27、错误率训练参考文献Franz Josef Och.Minimum Error Rate Training for Statistical Machine Translation.In ACL 2003:Proc.of the 41st Annual Meeting of the Association for Computational Linguistics,Japan,Sapporo,July 2003.Ashish Venugopal,Stephan Vogel,Considerations in Maximum Mutual Information and Minimum Classification Error training for Statistical Machine Translation,In the Proceedings of the Tenth Conference of the European Association for Machine Translation(EAMT-05),Budapest,Hungary May 30-31,2005 http:/www.cs.cmu.edu/ashishv/mer.html谢谢!
限制150内