自然语言实验报告.docx_第1页
自然语言实验报告.docx_第2页
自然语言实验报告.docx_第3页
自然语言实验报告.docx_第4页
自然语言实验报告.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验报告实验项目名称: 利用Moses搭建中英机器翻译系统 一、 实验目的1 熟悉Moses开发环境2 掌握Moses代码编程方法3 了解如何搭建机器翻译系统4大量实践证明机器翻译技术可以成为科技翻译工作者的得力助手可以帮助他们翻译得更好、更快;5就目前人类的技术和认知水平而言只能是构建一种可称之为“人机智能综合体”的机器翻译系统这也是我们今天可以见到许多系统被冠之以“人助机译”或“机助人译”的原因;6翻译工作者对计算机分析处理语言过程的了解不但有助于提高自己的工作效率也有助于研究开发更好的机器翻译系统。因此翻译工作者了解一些机器翻译的情况只能是有百利而无一害。二、实验仪器及材料1Moses测试平台2来自老师:现代汉语切分、标注、注音语料库-1998年1月份样例与规范(北京大学)1998-01-2003版-带音(已标注语料库)语料库规范三、试验原理主要是通过下面四个方面:1 语料准备首先需要编程将汉语句子和英语句子分别从1500 句对中抽取出来存在两个文本文件中,1500 个汉语句子存放在文件chinese 中,1500个英语句子存放在english 中。每个句子一行,并且汉英对应句子的行号一一对应。然后,您需要对chinese 中的汉语句子进行切分,也就是切成一个个的汉语词。对于english 中的英语句子进行tokenize。之后english 用做语言模型的训练语料,chinese 和english 用做翻译模型的训练语料。2 构建语言模型1语料预处理构建语言模型要用到的语料是english,但是需要对它进行一些改动。由于ISI RewriteDecoder 采用XML 文件格式作为输入文件,有一些标记如和会用到。ISI RewriteDecoder 要求语言模型必须能够识别和,把它当作一个句子的开始。为此,在构建语言模型时我们需要做两件事:(1) 写一个Context Cue File(.ccs),让语言模型知道和是标记,而不是词汇。(2)在训练语料中包含和,这样在语言模型生成的词典中能包含和这两个条件缺一不可。2编译源代码按照下列要求:a)总调用部分(主函数):moses-cmd/src/Main.cpp (The main function)b)解码器初始入口部分(Initialize the decoder): i.参数设置:moses/src/Parameter.cpp (specifies parameters)ii.模型数据加载:moses/src/StaticData.cpp (contains globals, loads tables)c)句子翻译处理部分(Process a sentence):i.解码器算法实现总调度:Manager.cpp (implements the decoding algorithm)ii.翻译选项处理:TranslationOptionCollection.cpp (contains translation options)iii.部分翻译处理:Hypothesis.cpp(represents partial translation)?iv.包含翻译假设,实现剪枝:HypothesisStack.cpp (contain viable hypotheses, implements pruning)d)结果输出:moses-cmd/src/Main.cpp(Output results)i.输出最佳翻译结果:moses-cmd/src/IOStream:OutputBestHypo (print best translation)ii.n-best生成及输出:(n-best lists generated in Manager.cpp, output in IOStream.cpp)3生成语言模型将english 复制到bin 目录中,将其重命名为“a.text”。然后在a.text 中添加“”和“”,最好是分别置于一个句子的首尾。注意和句子中的其他词保持至少一个空格。这样才能保证“”和“”能出现在即将生成的词汇表中。输入命令“./text2wfreq a.wfreq”,这样就会生成a.wfreq 文件。输入命令“./wfreq2vocab a.vocab”,这样就会生成a.vocab 文件。此时查看a.vocab 文件,会发现“”和“”出现在词汇列表里面了。输入命令“./text2idngram -vocab a.vocab -buffer 5 a.idngram”,这样就生成a.idngram 文件。3 构建翻译模型输入命令“./mkcls -c80 -n10 -pchinese -Vchinese.vcb.classes opt”, 生成两个文件:chinese.vcb.classes 和chinese.vcb.classes.cats。输入命令“./mkcls -c80 -n10-penglish Venglish.vcb.classes opt”,生成两个文件:english.vcb.class 和english.vcb.classes.cats。下载GIZA+.2003-09-30.tar.gz,解压后复制到ICTMTES 目录下,进入GIZA+-v2 目录,输入命令“make”,就可以编译生成GIZA+。同时还生成一个plain2snt.out。输入命令“./plain2snt.out chinese english”,生成四个文件:chinese.vcb,english.vcb,chinese_english.snt 和english_chinese.snt。在GIZA+-v2 目录建立一个子目录test,将GIZA+,chinese.vcb,english.vcb,chinese_english.snt,chinese.vcb.classes,chinese.vcb.classes.cats,english.vcb.class 和english.vcb.classes.cats 复制到test 目录里。输入命令“./GIZA+ -S english.vcb -T chinese.vcb -C english_chinese.snt”。4 构建解码器1. 设定环境变量2. 编写配置文件编写配置文件decoder.cfg,内容如下:LanguageModelFile = /home/lonios/research/ICTSMTS/CMU-Cam_Toolkit_v2/bin/a.binlmTranslationModelConfigFile =/home/lonios/research/ICTSMTS/GIZA+-v2/test/104-06-11.161715.lonios.Decoder.configPrintAlignment = truePrintProbabilities = true四、实验设计与实验过程1 安装SRILM在安装之前,先在终端输入:sudo apt-get install g+ make gawk gzip tcl8.4 tcl8.4-dev csh,确保SRILM编译所需要的make、g+、gawk、gzip、tcl8.4、tcl8.4-dev、csh等依赖工具已安装。完成以上工具包的安装后,需要对SRILM的有关脚本进行修改。#SRILM为SRILM所在路径。a、 在命令行输入:cp #SRILM/Makefile #SRILM/Makefile.bak对文件进行备份,输入:gedit #SRILM/Makefile修改文件:去掉SRILM = “XXXX”前面的”#”,引号中的内容是SRILM的绝对路径,即“#SRILM”,MACHINE_TYPE = i686。b、 修改common文件夹下的Makefile.machine.i686文件:输入:cp #SRILM/common/Makefile.machine.i686#SRILM/common/Makefile.machine.i686.bak #备份文件输入:gedit #SRILM/common/Makefile.machine.i686#编辑修改文件修改其中的两项,CC = /usr/bin/gcc $(GCC_FLAGS)CXX = /usr/bin/g+ $(GCC_FLAGS) -DINSTANTIATE_TEMPLATES修改gcc的安装路径:TCL_INCLUDE =-I/usr/include/tcl8.4/TCL_LIBRARY = /usr/lib/libtcl8.4.so完成了以上工作,就可以的对SRILM进行编译。cd #SRILM #进入安装目录sudo make #编译 下面进行环境变量的设置cd /etcvi profileexport PATH=#SRILM/bin:#SRILM/bin/i686:$PATH 2 GIZA+的安装a、 mkcls-v2cd mkcls-v2 #进入目录make #编译b、 GIZA+-v2cd GIZA+-v2 #进入目录#修改Makefile文件,删除“-DBINARY_SEARCH_FOR_TTABLE”make #编译4、 安装Moses1 下载安装moses解码器a、安装所需要的依赖包sudo apt-get install autoconf automaketexinfo zlib1g zlib1g-dev zlib-bin zlibcb、因为需要从网上直接下载moses,故先安装subversionsudo apt-get install subversionc、下载源码包svn co/svnroot/mosesdecoder/trunkmosesdecoderd、moses的编译相关操作cd mosesdecoder ./regenerate-makefiles.sh./configure with-srilm=/#SRILM #SRILMmake -j 42 安装训练脚本a、建立训练脚本目录: mkdir-p bin/moses-scriptsb、修改makefile:TARGETDIR=/full-path-to-workspace/bin/moses-scriptsBINDIR=/full-path-to-workspace/bin # full-path-to-workspace工作目录c、编译:cd moses/scripts/make released、将GIZA,mkcls, snt2cooc.out复制到BINDIR下e、使用时需要声明环境:export SCRIPTS_ROOTDIR=/full-path-to-workspace/bin/moses-scripts/scripts-YYYYMMDD-HHMM3 安装moses附加脚本下载scripts.tgz并解压: tar xzf scripts.tgz ls scripts Tokenizer scripts/tokenizer.perl Lowercaser scripts/lowercase.perl SGML-Wrapper scripts/wrap-xml.perl5、 系统运行a、 准备测试数据 cd /mosesdecoder wget /moses/download/sample-models.tgz tar xzf sample-models.tgz cd sample-models cd phrase-modelb、 修改配置文件Moses.ini中默认的语言模型为KenLM,因为我们要使用SR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论