Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
M
mtbookv2
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
NiuTrans
mtbookv2
Commits
18e78a96
Commit
18e78a96
authored
Jan 03, 2021
by
xiaotong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wording (sec 16)
parent
5ecdd492
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
5 行增加
和
19 行删除
+5
-19
Chapter16/chapter16.tex
+5
-19
没有找到文件。
Chapter16/chapter16.tex
查看文件 @
18e78a96
...
...
@@ -372,6 +372,7 @@
%----------------------------------------------------------------------------------------
\subsection
{
基于枢轴语言的方法
}
\label
{
sec:pivot-based-translation
}
\parinterval
传统的多语言翻译中,广泛使用的是
{
\small\bfnew
{
基于枢轴语言的翻译
}}
(Pivot-based Translation)
\upcite
{
DBLP:conf/emnlp/KimPPKN19,DBLP:journals/mt/WuW07
}
。这种方法会使用一种数据丰富的语言作为
{
\small\bfnew
{
中介语言
}}
\index
{
中介语言
}
或者
{
\small\bfnew
{
枢轴语言
}}
\index
{
枢轴语言
}
(Pivot Language)
\index
{
Pivot Language
}
,之后让源语言向枢轴语言进行翻译,枢轴语言向目标语言进行翻译。这样,通过资源丰富的枢轴语言将源语言和目标语言桥接在一起,达到解决源语言-目标语言双语数据缺乏的问题。比如,想要得到泰语到波兰语的翻译,可以通过英语做枢轴语言。通过“泰语
$
\to
$
英语
$
\to
$
波兰语”的翻译过程完成泰语到波兰语的转换。
...
...
@@ -462,7 +463,7 @@
\end{figure}
%----------------------------------------------
\parinterval
这种方法尽管在某些低资源语言上取得了成功,但在资源极度匮乏或零资源的翻译任务中仍然表现不佳
。具体而言,如果没有任何子模型训练数据,则父模型在子测试集上的性能会很糟糕
\upcite
{
DBLP:conf/wmt/KocmiB18
}
。
\parinterval
这种方法尽管在某些低资源语言上取得了成功,但在资源极度匮乏或零资源的翻译任务中仍然表现不佳
\upcite
{
DBLP:conf/wmt/KocmiB18
}
。具体而言,如果子模型训练数据过少,无法通过训练弥补父模型跟子模型之间的差异,因此微调的结果很差。一种解决方案是先预训练一个多语言的模型,然后固定这个预训练模型的部分参数后训练父模型,最后从父模型中微调子模型
\upcite
{
ji2020cross
}
。这样做的好处在于先用预训练提取父模型的任务和子模型的任务之间通用的信息(保存在模型参数里),然后强制在训练父模型的时候保留这些信息(通过固定参数),这样最后微调子模型的时候就可以利用这些通用信息,减少父模型和子模型之间的差异,使得微调的结果得到提升
\upcite
{
DBLP:conf/emnlp/LinPWQFZL20
}
。
%----------------------------------------------------------------------------------------
% NEW SUB-SUB-SECTION
...
...
@@ -483,26 +484,11 @@
\end{figure}
%----------------------------------------------
\parinterval
多语言单模型系统无需
训练基于枢轴语言的翻译系统,而是共享多个语言的编码器和解码器,因此极大地提升了训练效率,同时更适用于某些语言翻译方向训练数据极度稀缺的情况
。
\parinterval
多语言单模型系统无需
显性训练基于枢轴语言的翻译系统,而是共享多个语言的编码器和解码器,因此极大地提升了数据资源的利用效率。其适用的的一个极端场景是零资源翻译,即源语言和目标语言之间没有任何平行数据。以法语到德语的翻译为例,假设此翻译语言方向为零资源,即没有法语到德语的双语平行数据,但是有法语到其他语言(如英语)的双语平行数据,也有其他语言(如英语)到德语的双语平行数据。这时直接运行图
\ref
{
fig:16-15
}
所示模型,可以学习到法语到英语、英语到德语的翻译能力,同时具备了法语到德语的翻译能力,即零资源翻译能力。从这个角度说,零资源神经机器翻译也需要枢轴语言,只是这些枢轴语言数据仅在训练期间使用
\upcite
{
DBLP:journals/tacl/JohnsonSLKWCTVW17
}
,而无需生成伪并行语料库。这种使用枢轴语言的方式也被称作
{
\small\bfnew
{
隐式桥接
}}
\index
{
隐式桥接
}
(Implicit Bridging
\index
{
Implicit Bridging
}
)
。
%----------------------------------------------------------------------------------------
% NEW SUB-SUB-SECTION
%----------------------------------------------------------------------------------------
\subsubsection
{
3. 零资源翻译
}
\parinterval
零资源翻译是一种较为特殊的情况:源语言和目标语言之间没有任何平行数据。这时,需要学习一个模型,即使在没看到这个翻译任务中的训练数据的情况下,它仍然能通过这个模型得到这个翻译任务上的译文结果。本质上,零资源翻译也是一种迁移学习
\upcite
{
DBLP:books/crc/aggarwal14/Pan14,DBLP:journals/tkde/PanY10
}
,只是迁移的目标任务没有直接可以用的双语平行数据。
\parinterval
以德语到西班牙语的翻译为例,假设此翻译语言方向为零资源,即没有德语到西班牙语的双语平行数据,但是有德语到其他语言的双语平行数据,也有其他语言到西班牙语的双语平行数据。在模型训练时,训练数据的源语言句子可以增加一个语言标签。若没有语言标签,具有相同拼写但属于不同源语言的不同含义的单词可能难以翻译,但整个多语言翻译的流程更简单。假设,多语言单模型系统已经学习到了德语到英语和英语到西班牙语的翻译能力,那么这个系统也可以进行德语到西班牙语的翻译。从这个角度说,零资源神经机器翻译也需要枢轴语言,只是这些枢轴语言数据仅在训练期间使用
\upcite
{
DBLP:journals/tacl/JohnsonSLKWCTVW17
}
,而无需生成伪并行语料库。
\parinterval
需要注意的是,零资源翻译中多个语言共享同一个表示模型这个假设并不是永远成立。比如,汉语和英语的文字符号不同,因此用同一个表示模型对其进行表示会产生较大的偏差。因此,对于语言差异较大,且数据量不充分的情况,使用多语言单模型方法仍然有较大挑战,具体体现在两个方面:
\parinterval
另外,使用多语言单模型系统进行零资源翻译的一个优势在于,它可以最大程度上利用其它语言的数据。还是以上面提到法语到德语零资源翻译为例,除了使用法语到英语、英语到德语的数据之外,所有法语到其它语言、其它语言到德语的数据都是有价值的,这些数据可以强化对法语句子的表示能力,同时强化对德语句子的生成能力。这个优点也是
\ref
{
sec:pivot-based-translation
}
节所介绍的传统基于枢轴语言方法所不具备的。
\begin{itemize}
\vspace
{
0.5em
}
\item
父模型和子模型之间的语言空间不匹配问题:父模型使用的语言跟子模型使用的语言的数据很少甚至没有(零资源)的情况下,无法通过训练弥补父模型跟子模型之间的差异,因此微调的结果很差。一种解决方案是先预训练一个多语言的模型,然后固定这个预训练模型的部分参数后训练父模型,最后从父模型中微调子模型
\upcite
{
ji2020cross
}
。这样做的好处在于先用预训练提取父模型的任务和子模型的任务之间通用的信息(保存在模型参数里),然后强制在训练父模型的时候保留这些信息(通过固定参数),这样最后微调子模型的时候就可以利用这些通用信息,减少父模型和子模型之间的差异,使得微调的结果得到提升
\upcite
{
DBLP:conf/emnlp/LinPWQFZL20
}
。
\vspace
{
0.5em
}
\item
脱靶翻译问题:多语言单模型系统经常出现脱靶翻译问题,即把源语言翻译成错误的目标语言,比如要求翻译成英语,结果却是汉语或者英语夹杂其他语言的字符。这是因为多语言单模型系统对所有语言都使用一样的参数,导致不同语言字符混合时不容易让模型进行区分。针对这个问题,可以在原来共享参数的基础上为每种语言添加额外的独立的参数,使得每种语言拥有足够的建模能力,以便于更好地完成特定语言的翻译
\upcite
{
DBLP:conf/acl/ZhangWTS20,DBLP:journals/corr/abs-2010-11125
}
。
\vspace
{
0.5em
}
\end{itemize}
\parinterval
不过,多语言单模型系统经常面临脱靶翻译问题,即把源语言翻译成错误的目标语言,比如要求翻译成英语,结果却是汉语或者英语夹杂其他语言的字符。这是因为多语言单模型系统对所有语言都使用一样的参数,导致不同语言字符混合时不容易让模型进行区分。针对这个问题,可以在原来共享参数的基础上为每种语言添加额外的独立的参数,使得每种语言拥有足够的建模能力,以便于更好地完成特定语言的翻译
\upcite
{
DBLP:conf/acl/ZhangWTS20,DBLP:journals/corr/abs-2010-11125
}
。
%----------------------------------------------------------------------------------------
% NEW SECTION 16.4
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论