限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

爱奇艺多语言台词机器翻译技术实践

  • 2021-07-24
  • 本文字数:5394 字

    阅读完需:约 18 分钟

爱奇艺多语言台词机器翻译技术实践

近日,爱奇艺技术产品团队举办了“i 技术会”第 16 期技术沙龙,本次技术会的主题是“NLP 与搜索”。我们邀请到了来自字节跳动、去哪儿和腾讯的技术专家,与爱奇艺技术产品团队共同分享与探讨 NLP 与搜索结合的魔力。


其中,来自爱奇艺的技术专家张轩玮为大家带来了爱奇艺多语言台词机器翻译技术实践的分享。以下为“爱奇艺多语言台词机器翻译技术实践”分享精华内容,根据【i 技术会】现场演讲整理而成。


本次分享的第一部分是爱奇艺多语言台词机器翻译实践开展的相关背景,第二部分是爱奇艺针对多语言台词机器翻译模型的一些探索和优化,最后是该模型在爱奇艺的落地与应用情况

爱奇艺多语言台词机器翻译实践的相关背景

2019 年 6 月,爱奇艺正式推出服务全球用户的产品 iQIYI App,并通过中台系统为 iQIYI App 提供全球化运营支持,由此开启了海外市场布局之路。作为影视内容服务商,其中必然涉及大量长视频,而长视频的出海,重要的一环就是台词翻译。


目前,爱奇艺已在多个国家布局,涉及多种语言的台词翻译,主要有泰语、越南语、印尼语、马来语、西班牙语、阿拉伯语等等语言,这就使得多语言翻译成为了迫在眉睫的现实需求。


此外,与通用翻译相比,台词翻译有一些独有的特点如:


(1)台词一般句子较短,上下文信息不足,歧义性大;

(2)很多台词来源于 OCR 或 ASR 识别的结果,会有错误,可能影响翻译质量;

(3)在台词对话中往往会涉及很多人物的指代,故而角色名和代词的翻译对于台词翻译来说尤为重要;

(4)部分台词需要结合视频场景信息才能进行语义消歧。


正是爱奇艺海外多国布局的现实需要以及台词翻译的独有特点这两大因素使得台词场景下多语言机器翻译实践成为现实。

多语言台词机器翻译模型的探索和优化

1.one-to-many 翻译模型优化

首先介绍一下什么是 one-to-many 模型


One-to-many 顾名思义,即通过不同语言翻译之间的参数共享,通过一种模型来达到翻译多种目标语言的目的。


这个模型设计的初衷是节约维护和训练成本。前面已经讲到,目前,爱奇艺已经布局到海外多个国家,这就涉及到多种语言的翻译,如果采用一种语言一个模型的方法,随着目标语言的增多,我们需要训练、部署和维护的模型也会越来越多,导致运营成本的增加。


经调研,我们发现了 one-to-many 模型,它极大地减轻了模型的训练和部署维护的成本,可以充分利用不同语言之间迁移学习的特点,起到相互促进的作用,从而提高模型效果。


图 1 是 transformer 架构,是目前大多数机器翻译模型优化的主流框架,我们也是以此为基础,在上面进行优化。

图 1:transformer 模型


而针对 one-to-many 模型,我们借鉴近期大家较为熟悉的预训练模型 BERT,设计了一个特定的输入形式。


图 2


每个输入的 token 的表达都是由三种 embedding 组成,分别是:token embeddings、segment embeddings、 position embeddings。我们把语言类型 token 作为单独的一个域,那它具有不同于内容的 segment embeddings。


segment embeddings 由两部分组成,一个叫 EA,一个叫 EB。EA 相当于前面语言的 token 的 segment,后面的 EB 就是内容的 embeddings,不同语言的 L 是不同的。


另外语言 token 表达也会作为 decoder 的第一个输入作为指导模型的解码。

2.融合台词上下文信息

刚才提到,台词翻译第一个显著特点就是文本较短,上下文信息不足,容易产生歧义。


这里举个例子,比如“我想静静”就可能有两种意思,一是 let me alone,二是 I miss Jingjing。


仅凭文本,我们很难区分究竟是哪一个意思。


但我们如果能够结合台词的上句和下句,就可以减少这种歧义性。比如,上下句分别是“你走吧”、“再见”,我们就可以知道他想说的是 let me alone。


因此,我们设计了用 BERT style 的方式融合台词上下文的模型,输入时将上文和下文分别与中心句进行拼接,以特定的分隔符做分隔,而在 encoder 输出,我们还会对上句和下句进行 mask,因为在解码这个时候,由于上下句在编码时已经被中心句吸收了相关信息,上句和下句已经不起太多作用。并且,如果不进行 mask,有可能还会引来一些翻译错位的问题。


那么我们是如何融合上下文的呢?


图 3


也是在输入端,我们可以看到图 3 和图 2 的不同就在于我们除了把语言 token 和中心句用三种 embedding 向量融合之外,还会将上句“你走吧”和下句“再见”放在中心句的前后,然后以同样的方式,每个 token 也是三种 embedding 的相加融合,把上下文作为辅助信息,帮助中心句进行消歧。


我们把语言、上句、中心句、下句分别标记为 EA、EB、EC、ED 四种,对这四种信息进行区分,每一种标记都对应一种 segment embedding。


这个输入经过 encoder 之后,我们会对“你走吧”和“再见”进行 mask,也就是在解码的时候隐藏上句和下句,减少它对解码的影响。

3.增强编码能力

除此之外我们还对编码端做了一些提高。


Transformer 里面一个比较主要的组件就是 attention其中 base 版本包含 8 个 head。我们为了强化 attention,鼓励不同的 head 学习不同的特征,从而丰富模型的表征能力。


下图是这 4 种 attention 的示意图。我们通过不同的 mask 策略实现不同的 attention,图中黑色的方块代表 mask 掉的部分。


图 4


global attention:建模任意词之间的依赖关系;


local attention:强制模型发掘局部的信息特征;


forward and backward attention:代表建模模型序列顺序信息。forward 只能看到前面,backward 只能看到后面。


通过人为设定特点的 attention,我们强制不同的 head 学习不同的特征,避免产生冗余的情况。


除此之外我们还借鉴 bert,使用 Masked LM 任务增强模型对文本的理解能力。


首先将输入的某一个词进行 mask,然后在输出端进行恢复。比如“你走吧”,“我想静静”,“再见”,其中,“走”,“见”,都会被 mask,输出的时候再被恢复。这就使得 encoder 在这种任务中充分地学习到文本的表达,增进它对文本的理解。同时将 mlm loss 乘以一定的权重加到总体的 loss 上,进行联合训练。


图 5:MLM 模型

4.增强解码能力

为了增强模型解码端的能力,在训练阶段,我们要求解码端在预测每个 token 的同时,增加对全局信息的预测,同时增强模型解码端的全局前瞻能力。


图 6


比如这里的 G 代表 let me alone 的 embedding 的平均向量,每个 token 都会预测这个向量,从而产生 GLOBAL loss。


这个好处就是你在解码每个 token 的时候,我们可以让模型也预计我们将要解码的信息,而不会过分依赖于我们前面已经解码的信息,这样就使得模型具有一定的未来规划的能力。同样这也会产生一个 loss,这个 loss 会和总体 loss 进行加权求和,用了一个β,也是小于 1 的权重,和整体的模型进行联合训练。

5.欠翻译和过翻译问题的解决

欠翻译和过翻译是模型在做翻译时可能会经常遇到的一些问题。


欠翻译是指翻译的目标语言词语缺失,过翻译指的是目标语言词语冗余。


比如上文提到的“你走吧、我想静静、再见”这个案例,就有可能在模型训练不到位的时候产生 let alone,缺少了 me,这就是所谓的欠翻译。


另外,也有可能翻译成 Let me me alone, 重复翻译 me, 这就是所谓的过翻译。


这些都是我们不希望在翻译结果中出现的,而产生这两大问题的一个本质原因就在于解码生成的信息和编码的信息不够对等。


图 7


所以我们增加了一个重建的模块,对其进行约束。


重建模块对解码端的输出通过一个反向翻译的 decoder 翻译成 source,也就是恢复输入,从而使得解码端的信息和编码端的信息保持一致,约束解码端,从而减轻欠翻译和过翻译问题,同样它也会产生一个 loss,和之前一样也是加到总体 loss,进行联合训练。

6.增强容错能力

除了以上的探索优化之外我们刚才也提到了一点,就是我们的台词字幕有很大一部分是来源于 OCR 或者 ASR 识别的结果, 难免会出现一些词识别错误的问题,如果我们不进行特定处理有可能影响最后的翻译质量。


所以我们针对这个台词识别错误的问题,设计了一个容错模块。这个容错模块可以认为是纠错模块。我们借鉴了去年发表的一篇论文所提出的一个模型——T-TA 模型


这个模块类似大家应该很熟悉的 transformer 结构,但是我们在里面做了一些特定的处理:


首先是它使用了一种叫做 language autoencoding 的方式,输出的每个 token 只能看到其他的 token,但看不到它自己。


也就是说,它输出的表达是由它周边的 token 的意思来产生的。比如 X1 是错的,但 X2,X3,X4 是对的,在你经过大量的数据训练之后,可以通过 X2、X3、X4 去生成正确的 X1,从而达到一种纠错的能力。


那要怎么才能让每个 token 看不到它自己而只能看到周边呢?

图 8


其实也很简单,就是使用了一个对角线 mask 的方式。这样,每次它就只能看到他其他的 token,中间的黑色对角是看不见的,也就看不到它自己。通过这个方式,对深黄色那部分进行这样的特定处理,从而实现一种纠错能力。


我们可以注意到它的 Q 也只是用到 position embedding,因为如果 QKV 和 Self attention 是一样的,再残差连接的话就会把 token embedding 给加到输出,相当于把你刚刚挖掉的部分又填补上了,会产生信息泄露的问题,这样就训练不出一种纠错的模块。所以 Q 只是 position embedding。

这个模块大致就是这样,但是它们是怎么融合到机器翻译模型中呢?


图 9


其实,只要直接和我们之前介绍的那些 encoder 进行相加融合,两个 encoder 输入都是一样的,输出进行相加融合,融合之后再进入后面的两个 decoder 的处理,这样就可以对原始 encoder 的错误进行纠正。比如这里的“静”错输成了“净”,但 T-TA 的 encoder 却能输出正确结果,起到了纠错的作用。

7.代词翻译

刚才我们也提到,在台词翻译领域另一个重要问题就是代词的翻译。


因为在对话中我们会涉及到很多人物之间的指代,比如提到你、我、他等等,在不同的场景下,对应的翻译是不同的,这就大大提高了台词翻译的难度。


遇到这种情况我们该怎么办呢?


针对这个问题,我们首先可以看一下它的表达数量以及表达场景。因为代词在中文里面可能很简单,就是你、我、他,可能也就最多 3、4 种或者 4、5 种,但在其他语言中未必是这样。


比如泰语的代词第一人称就有 12 种表达,第二人称代词有 15 种表达,第三人称有 5 种表达。对于第一人称,这 12 个表达还会随着性别和使用场合的不同而发生变化。


此外,对话人身份之间的差异,也会使得这种代词表达有所区别。这对于台词机器翻译来说,是一个巨大的挑战。所有这些不同场合都需要我们将其区分出来,而这项工作很难仅仅只通过文本来完成。


图 10:中文-泰语人称代词对应表


因此,我们做了一个融合视频场景信息的代词的语义增强。


首先我们通过人脸识别和声纹识别对齐台词和角色,通过这种对齐可以使得每一句台词定位到它所处的场景。再将角色人物属性比如性别,年龄,人物关系,身份等标注好,使角色的信息更丰富、更加立体。


图 11


左边的模型里面有两个代词,就是“你”和“我”,右边的模块是对“我”和“你”的一些信息的编码。比如“我”就属于男性,年龄是青年,“我”和对话人之间的关系是朋友等等。这样分别对“我”和“你”进行编码,编码后用这些信息做一个变换和降维,分别加到对应的代词上,使得解码的时候,知道这个代词所处的场景及人物关系,从而使它能够解码出正确的代词翻译。

8.成语翻译

除代词外,成语的翻译在台词机器翻译中也是比较困难的一个部分。这是因为:


(1)随着多年演变,很多成语都不再只是它字面的意思,而是包含了很多引申义。


这时候如果我们不做特定处理的话,极有可能仅将字面意思翻译出来,影响翻译准确度。所以,我们需要其他的辅助信息,比如释义等。


(2)有些成语具有语义独立的特点,也就是说某个成语的含义和上下文没有那么大的关联。


针对这两个特点,我们设计了针对成语翻译的模块,使用预训练的 BERT,对中文以及中文释义进行编码,直接替换 encoder 的成语输入和添加到 encoder 的输出,来确保成语真正含义的表达能够在模型中学习得到。


图 12

9.角色名翻译

针对这一部分,我们是通过增加特殊标识以及数据增强的方式,使得模型学习到特定的拷贝能力。大部分的台词从中文翻译到对应的语言的时候,角色名都是以拼音作为翻译的。当然在一些不适宜拼音的语言中,也会有一些其他的对应关系,在这里我们暂且以拼音为例。


我们首先将人名替换成拼音,因为这时候它的真正的文本已经不重要了,最重要的是它将要翻译的目标语言。


比如在图 13 这个例子中,“你认识李飞吗?”,我们首先将李飞中文替换成拼音 li fei,对其增加一个特殊的标识,这也就是想告诉模型:这部分是要拷贝过去的。


图 13


另外,为了增加模型见过的拼音输入表达的数量,我们通过训练集挖掘了人名和姓氏的模板将其与伪名字合并成增强的数据,将增强数据和原来的数据串在一起进行训练,使得模型能学到足够的拷贝能力。


这种方式通过训练模型,使得机器能够识别这种标识以及里面的拼音,将其复制到对应的位置。

多语言台词机器翻译在爱奇艺的落地应用

我们在多语言台词机器翻译模型上做了一些优化探索后,也对优化后模型的质检差错率做了一些评测,这里列举一部分。


图 14:各语言质检差错率


图中的每种语言都有第三方机器、人工、自研机器三种翻译,其中,自研的机器翻译就是我们自己经过模型探索、优化后的效果。


从图 14 可以看出,我们自研的翻译差错率已经明显低于第三方,这个第三方指的目前市场上最好的第三方。在泰语、印尼语、英语等语言中,我们自研的机器翻译已经接近于人工,而在马来语、西班牙语、阿拉伯语的翻译中,自研翻译甚至已经超过人工。


此外,我们做的翻译主要应用在国际站长视频出海的项目中,目前已经支持从简体中文到印尼语,马来语,泰语,越南语,阿拉伯语,繁体中文等多种语言的翻译。


本文转载自:爱奇艺技术产品团队(ID:iQIYI-TP)

原文链接:爱奇艺多语言台词机器翻译技术实践

2021-07-24 08:002741

评论

发布
暂无评论
发现更多内容

Acrobat DC弹窗:“未找到IMSlib,Acrobat服务将无法正常工作”,如何解决?

Rose

Acrobat DC 服务将无法正常工作

远程控制软件RayLink助力畅玩爆火双人游戏

RayLink远程工具

远程控制软件

DrawerLayout(官方侧滑菜单)的简单使用

芯动大师

ViewPager DrawerLayout SlidingMenu

给程序加个进度条吧!1行Python代码,快速搞定~

程序员晚枫

Python pip 进度条

好用的远程控制桌面连接工具有哪些?

RayLink远程工具

远程桌面连接

内网渗透之某后渗透利用

网络安全学海

黑客 网络安全 安全 信息安全 渗透测试

Bitmap、RoaringBitmap原理分析

京东科技开发者

数据结构 算法 存储 BitMap 企业号 3 月 PK 榜

数据库+chatGPT3.5 优化、索引、注释、SQL就是一句话的事了

非喵鱼

Java 数据库 openai ChatGPT ChatGPT4

Error:SyntaxError:JSON Parse error:Unexpected EOF 解决办法

Rose

adobe 安装报错

Ableton Live 11 Suite 音乐制作软件v11.2.11中文版安装教程

Rose

音乐制作 Ableton Live 11 Suite Ableton Live

窄带高清画质增强之生成式细节修复

阿里云CloudImagine

云计算 窄带高清

远程桌面和远程协助的区别,选择哪个方式连接更好?

RayLink远程工具

远程协助 远程桌面连接

华为全新发布2023春季旗舰新品,智慧生活再进化

最新动态

远程桌面连接是什么?远程桌面连接使用教程

RayLink远程工具

循序渐进讲解负载均衡vivoGateway(VGW)

vivo互联网技术

负载均衡 网关

尤大:不会说 Rap 的前端不是好前端!写一个 v-rap 指令!

泰罗凹凸曼

JavaScript 有趣的技术知识

2万字60道MySQL经典面试题总结(附答案)

程序员大彬

MySQL 数据库 java面试

Movist Pro for mac播放流畅、观影愉悦!

Rose

苹果电脑 视频播放器 Movist Pro Mac Movist Pro 中文版

Nautilus Chain主网上线在即空投规则公布,如何获得更多的空投?

鳄鱼视界

火山引擎边缘渲染,驱动游戏体验升级

火山引擎边缘云

边缘计算 火山引擎 渲染 边缘云

远程桌面连接如何设置?远程桌面连接的设置方法

RayLink远程工具

远程桌面连接

深入浅出RPC服务 | 不同层的网络协议

京东科技开发者

网络协议 RPC调用 应用层 jsf 企业号 3 月 PK 榜

ChatGPT编程秀-2:最小元素的设计

仝键

JavaScript 编程 架构 java ChatGPT

远程桌面连接有哪些方式?远程桌面工具推荐

RayLink远程工具

远程桌面连接 远程桌面工具

如何针对多租户 SaaS 使用案例扩展机器学习推理

亚马逊云科技 (Amazon Web Services)

Amazon SageMaker

如何将「知识」体系化管理

Java 架构 职场 知识管理

中国量子产业集结,用知识产权助力量子应用化

脑极体

Docker 开始清退开源组织,不付费就删除所有私镜像怎么看

HoneyMoose

Nautilus Chain主网上线在即空投规则公布,如何获得更多的空投?

股市老人

爱奇艺多语言台词机器翻译技术实践_AI&大模型_爱奇艺技术产品团队_InfoQ精选文章