论文部分内容阅读
机器翻译是自然语言处理领域的一个重要课题,具有巨大的科研价值和广阔的商业应用前景。当今机器翻译领域效果最好的方法是自2014年首次提出的神经机器翻译模型,其中最主流的是基于注意力机制seq2seq模型。现有seq2seq模型主要在印欧语系上进行优化与评测,少有针对中文的优化,且现有模型没有考虑到不同语言间语法的变换。本文针对中文特点,使用了不同的文本预处理和嵌入层参数初始化方法,并改进了 seq2seq模型结构,在编码器和解码器之间添加了一层用于语法变化的转化层。本文主要工作如下:1.提出不同的文本预处理方法。在自然语言处理任务中,需要先通过预处理将非结构化的文本数据转换为计算机可识别的数据格式。翻译系统中传统的中文预处理方法是通过分词将中文句子转换为词语序列,但这种方法依赖分词的准确率且会导致中文词汇量过大。本文针对中文字符种类多、字符信息熵大、表意能力强等特点,提出通过命名实体识别,将中文句子转换成字符+命名实体序列的预处理方法。通过实验发现,使用该预处理方法,在英汉翻译任务中,能缩减翻译模型的参数规模和训练时间18%以上,且翻译性能有0.3~0.5BLEU的提升。2.提出不同的嵌入层参数初始化方法。嵌入层是用于文本处理的神经网络模型中的第一层,将预处理后的字符序列转换为数值向量序列,以支持后续的数值计算。深度学习中参数初始化方法的选择对模型的收敛位置至关重要,现有的翻译模型中,通常会选择预训练的词向量作为嵌入层参数的初始化值。但由于翻译系统中需要使用两种不同语言的词嵌入表示,而预训练的词向量在不同语言的语料中训练,导致不同语言的词向量语义上并不契合。因此,本文提出在英汉翻译模型中,英文端使用GIoVe进行嵌入层参数初始化,中文端使用随机初始化。通过实验发现,使用该参数初始化方法训练的英汉翻译模型,在中小型规模的语料上翻译性能有0.3~0.6BLEU的提升。3.改进seq2seq模型结构,提出转换层。现有seq2seq模型中,源语言序列通过编码器生成一个表示向量,然后表示向量直接作为解码器的初始状态,生成目标语言序列。但这一结构没有考虑到不同语言之间语法的变化。因此,本文改进了 seq2seq模型的结构,在编码器和解码器之间添加了一层用于语法变化的转换层。该转换层由两层前向神经网络、残差连接和一层规范化层组成。通过实验发现,使用了转换层的seq2seq模型翻译性能上有0.7~1.0BLEU的提升。