论文部分内容阅读
随着机器学习技术和神经网络的发展,基于深度学习的神经机器翻译逐渐兴起。自2014年开始,它在短短几年内已经在大部分任务上取得了明显的优势。在神经机器翻译中,词串被表示成实数向量,即分布式向量表示。这样,翻译过程并不是在离散化的单词和短语上进行,而是在实数向量空间上计算,因此它对词序列表示的方式产生了本质的改变。通常,机器翻译可以被看作一个序列到另一个序列的转化。在神经机器翻译中,序列到序列的转化过程可以由编码器-解码器(Encoder-Decoder)框架实现。在多语言神经机器翻译领域中,目前主流的模型均为多语种数据混合训练的单编码器-解码器模型,这种模型不仅降低了企业训练多个语向的训练成本,同时通过语言间的共性,多资源的语向会弥补低资源语向的劣势;由于只存在一个模型,企业的存储压力也大大减少。为了实现一个多语言互译神经机器翻译系统,并在准确性和实时性达到企业调用标准,本文首先调研了神经机器翻译系统所采用的前沿技术,通过开源方式获取高质量多语言数据,并设计了数据处理流程、模型搭建训练流程以及前端微服务展示流程;针对多语言模型在测试时生成的错误,本文在数据层面针对性优化了多语言数据切词算法,在模型层面优化了隐层空间中不同语种的区分度,使最终实现的多语言翻译系统在准确性方面比肩单语种翻译模型;针对模型在生成阶段延迟较高的问题,本文设计并实现了 cache缓存机制极大降低生成所需时间,使模型在实时性方面也达到毫秒级的生成速度,确保前端调用翻译接口低延迟。