2025-06-25 04:03来源:本站
本节介绍了设计我们的语言标识系统和Bitext挖掘协议所采取的步骤。
为了培训语言标识模型,我们使用了FastText33,51,该模型由于其简单性和速度而被广泛用于文本分类任务。我们从输入文本嵌入了字符级n-gram,并利用了顶部的多类线性分类器。FastText的轻量级性质使我们的盖子模型可以处理网络尺度数据。此外,线性模型具有易于解释的好处,使我们可以将任何分类错误追溯到其根本原因。这有助于解决在Web Corpora32上检测语言时出现的常见陷阱。
我们尝试了两种不同的设计。首先,我们使用了多个二进制分类器的组合,其中通过在应用阈值后选择最高分的语言来获得最终决定。我们应用了阈值优化,以便当分类器的置信度较低时,不考虑相应的语言来进行最终决定。如果没有分类器超过其阈值,则将句子过滤掉。其次,我们在所有可能的语言上使用SoftMax构建了一个多类分类器。在这种情况下,阈值优化是在SoftMax之后完成的。
我们的结果指示我们专注于第二种方法,该方法具有多种优势。首先,更改一种语言的阈值不会影响另一种语言的性能(在第一个设置中不正确)。其次,这种方法可以更好地概括到室外数据,这是我们的主要用例(Wikipedia→Web数据)。最后,单个分类器在计算上更简单,从而简化了语言标识过程。
我们使用公开可用的数据集训练我们的盖子系统,部分涵盖了我们感兴趣的语言。部署的公共数据集主要是由CommonCrawl等网页构建的。然后,我们为任何缺失语言的NLLB种子数据(补充信息b)补充了这些数据。但是,这种补充不足以确保原始培训数据32,30。例如,仅英语代表我们的培训数据的10.1%,而Minangkabau(拉丁文脚本)仅占0.06%。以下参考。10,我们对代表性不足的语言进行了多种温度上升的设置,其中代表PL百分比数据集的语言的句子是按比例取样的。以1/t = 0.3获得最佳性能(有关更多详细信息,请参见参考文献34的第5.1节)。
我们表现最佳的模型在两个时期的学习率为0.8且嵌入256个维度的训练中,对超级损失进行了训练。我们丢弃了在上采样后不到一千个出现的单词,并分别选择了两个和五的最小和最大字符n-gram长度(在1,000,000个尺寸为1,000,000的桶中分配了一个插槽)。(在fastText中,我们指的是“单词”在被空间分开时。当它是一种非分段语言时,整个句子只有一个“单词”(我们采用字符n-grams))。所有超参数均在Flores-200 DEV上调整(请参阅参考文献34的5.1.2节)。
语言身份是一项具有挑战性的任务,其中存在大量故障模式,通常会因训练盖子模型的清洁数据与应用盖子模型的嘈杂数据之间的差距而加剧。换句话说,对流利的书面句子进行了监督训练的盖子模型可能难以识别从网络中提取的语法错误和不完整的字符串。此外,模型可以轻松学习对任务本身没有意义的虚假相关性。考虑到这些挑战,我们与整个盖子开发不同阶段的语言学家团队紧密合作,以确定适当的重点领域,减轻问题并探索解决方案(请参阅参考文献34的第5.1.3节)。
Bitext挖掘的总体方法集中在大量多语言编码器教师模型开始,并将其调整为几个不同的低资源学生模型。这种方法使我们能够添加低资源语言,而无需与高资源语言竞争能力。这样做可以规定需要从头开始重新审阅整个模型,同时保持与多语言嵌入空间以进行后续采矿的兼容性。扩展数据图1总结了教师研究方法的整体体系结构。老师Laser2是开源激光编码器(https://github.com/facebookresearch/laser)的改进版本。原始的培训程序36适用于包括句子令牌化(包括7,000个令牌的词汇)和低资源语言的提升。
五层Bilstm编码器的架构和获得句子嵌入的最大池化方法的架构保持不变。然后,使用从Opus52获得的公共资源进行培训,以相同的93种语言进行。参见参考。36有关原始激光训练程序的详细信息。对学生的培训遵循参考文献中更详细描述的方法。21,以下总结:
我们的学生编码器使用了12层变压器,隐藏的大小为1,024,四个注意力头和约2.5亿个参数。所有学生都接受了各自语言的可用bitext培训,并接受了200万英语/英语和英语/西班牙语的句子。这种方法背后的动机是将学生固定在英语嵌入空间上,从而通过包括CCMATRIX的英语/西班牙语bitexts来提高鲁棒性,并允许联合学习新语言。当仅有限的bitexts可以培训学生时,此技术特别有用。在16 GPU,Adam Optimizer,学习率为0.0005和批次大小为10,000的16 GPU上进行了教师培训。我们培训了148种语言的学生编码器,并命名了这些模型Laser3。
随后,挖掘的bitexts用于改善NLLB-200语言的翻译质量。但是,采矿和NMT培训在计算上是昂贵的,对于许多不同的句子编码变体进行系统地执行此评估是很棘手的。作为评估代理,我们使用了基于采矿的多语言相似性搜索错误率,此处称为XSIM。与余弦的精度相反,余弦的精度是基于最高余弦得分对齐的嵌入,XSIM基于最高的余量分数对源和目标嵌入对齐,这已被证明在采矿中有益53。基于保证金的分数定义为
其中x和y是源句子和目标句子,而nnk(x)表示另一种语言的k最近邻居。我们将K设置为4。所有XSIM结果均在Flores-200 DevTest上计算,使用比率余量,其中余量(a,b)= a/b。此外,所有分数均计算为翻译为英语的分数(即XXX→ENG)。英语由老师编码,另一种语言由Laser3学生编码。为了促进使用XSIM的进一步研究,我们还将这种评估方法作为开源资源(https://github.com/facebookresearch/laser/)。
一旦我们使用XSIM分数确定了每种语言的最佳句子编码器,我们就进行了采矿,就将挖掘的数据添加到了现有的bitexts中,并训练了双语NMT系统。最初的实验表明,在大多数语言的精确度和回忆之间,边缘的阈值似乎是最佳折衷。对于这些NMT基准,我们不会在Bitexts上应用额外的过滤,而是将其保留给我们大量多语言NMT系统的训练程序。
我们没有试图将双语NMT系统的体系结构和参数优化为每个语言对的特征,而是为所有人使用相同的体系结构。因此,在可用资源的情况下,报告的结果不应被解释为最好的结果,它们主要是为了验证挖掘的bitexts。我们使用了12层编码器和解码器,并进行了100个时期的训练。此外,我们在Flores-200开发集合中寻找最佳性能,并在Flores-200 DevTest上报告了Bleu。
在本节中,我们首先描述多语言机器翻译任务设置,其中包括令牌化和基本模型体系结构。然后,我们概述了如何利用条件计算,以使用EOM调节和我们的低资源语言课程学习(CL)策略进行大规模多语言的机器翻译。
我们将多语言NMT建模为序列到序列任务,在该任务中,我们使用编码器以源语言的输入序列为条件,并使用解码器进行了预期的目标语言中的输出序列。54。借助源句s,源语言和目标语言ℓT,我们训练了目标语言t中翻译的概率,即p(ts,ℓs,ℓT)。在下面,我们讨论了源和目标语言中文本序列的(1)标记的详细信息;(2)具有专门为多语言机器翻译设计的输入和输出的模型体系结构。有关任务设置的更多详细信息,例如每个语言对的培训数据量,请参阅参考文献的补充信息f或第8节。34。
为了使我们的文本序列进行象征,我们为所有语言培训了单个句子模型(SPM)55。我们从主要的bitext数据中抽样了1亿个句子。为了确保低资源语言在词汇量中的代表性很好,我们以五个采样温度为5(参考文献10),对高资源的采样并提高了低资源语言。值得注意的是,词汇大小是涉及低资源语言的多语言翻译模型中的重要超参数。56,57,58。我们训练的SPM型号的词汇尺寸为256,000。如此大的词汇确保了我们支持的各种语言的足够代表。
我们的序列到序列多语言机器翻译模型基于变压器编码器– Decoder架构59。编码器将源令牌序列转换为一系列令牌嵌入。然后,解码器会参与编码器输出,并自动加入为代币生成目标句子令牌。更准确地说,编码器采用令牌w =(W1,…,WS)和源语言的序列,并产生嵌入的序列H =(H1,…,…,HS),然后将其提供给与目标语言的解码器,以生成目标令牌V =(V1,…,Vt),VT,VT)。总而
请注意,我们将源序列与源语言相结合,而不是目标语言,如先前的工作10,60所做的那样。我们之所以这样做,是因为我们优先考虑在任何200对200语言上优化模型的零拍摄性能,而监督性能的费用很小。从经验上讲,我们发现在针对目标语言的编码器调节编码器时,零射击性能会受到负面影响。当源仅以源语言为条件时,编码器会更好地概括到训练过程中未遇到的一对源和目标语言。
大型多语言翻译(MMT)模型使用相同的共享模型容量同时在多个翻译方向上训练。虽然这样做可以导致相关语言之间有益的跨语性转移,但它也可以增加无关语言之间的干扰风险1,61。MOE模型是一种有条件的计算模型62,63,该模型可激活每个输入的模型参数的子集,而不是激活每个输入的所有模型参数的密集模型。MOE模型解锁了明显的代表能力,同时与核心密集体系结构相比,在拖船方面保持相同的推理和训练效率。
但是,随着我们增加模型容量和每次更新的计算成本,低资源语言过度提高的倾向会增加,从而导致性能恶化。在本节中,我们研究了如何使用稀疏的专家型号型号2,3,4,5,6,7,以实现跨语言转移和干预之间的最佳权衡,并提高低资源语言的性能。
为了构建我们的MOE模型,我们用MOE层的编码器和解码器馈电网络层代替了MoE层,每个网络层都具有不同的专家。我们遵循了参考文献中的顶级门口算法。4并将每个令牌派遣到最多k = 2个专家。有关MOE模型培训的更多详细信息,请参见补充信息。
在此提出的正则化策略中,我们掩盖了输入令牌的随机分数(PEOM)的专家输出。对于使用专家输出降低的输入令牌,有效跳过了第一和/或第二专家。如第二个扩展数据图2所示,我们掩盖了两个专家的第一个令牌(x1为红色),选择不掩盖第二个令牌(X2 in Blue)的任何专家输出,在最后的情况下,只掩盖了一个专家,仅将一个专家掩盖了最后一个令牌的专家(绿色为x3)。
与模型侧正规化方法(例如辍学),我们通过CL探索了MMT模型的正规化。我们提出了首先使用高资源对开始培训,然后在以后的阶段引入低资源对(容易过度拟合)。为了得出课程的阶段,我们首先训练了一个香草萌模型(无CL),然后将翻译方向分配到n箱中{b1,…,bn}。如果T是培训更新的总数,则在T -KI更新后我们介绍了每个BIN BI。当我们观察到一个开始过度拟合的语言对时,我们何时以及在步骤的每个阶段都要添加哪些方向。在参考文献中查看基于步骤的CL算法。64有关如何分区方向的更多信息。有关每个阶段添加的方向列表,请参见补充信息E.2。
存在许多自动翻译质量评估指标,包括基于模型的comet65和bleurt66。尽管基于模型的指标在最近共享WMT43的指标中表现出与人类判断的更好相关性,但它们需要培训,并且不容易扩展到大量的低资源语言。在这项工作中,我们依靠BLEU(以及它的变体)和CHRF ++。这两种措施都取决于可以根据人翻译器与人类翻译产生的类似机器翻译输出进行量化翻译质量的想法。
自二十年前成立以来,BLEU Score44一直是机器翻译评估的标准指标。它通过将1克的精度与4克的精度结合在一起,衡量机器和人类翻译之间的重叠。BLEU的主要缺点是它依赖于象征化。Sacrebleu67之类的努力已朝标准化迈进,支持在引擎盖下使用社区标准的令牌。但是,这些引物器不会扩展到多种语言。参考文献41提出SPBLEU,这是一种基于标准化句子模型(SPM)的BLEU度量,该模型涵盖了101种语言,并与Flores-101一起发布。在这项工作中,我们提供SPM-200与Flores-200,以实现SPBLEU的测量。(我们的分析表明,在测量Flores-101语言时,SPM-200与Flores-200和SPM-100之间的SPM-200之间存在较小的差异。SPM-200的主要优点是它涵盖了200种语言。在第84卷第34节中,SPM-200的更多详细信息报告了SPM-200的更多详细信息。
CHRF ++得分38克服了BLEU得分的限制,该得分要求句子可以分解为单词令牌。但是,某些语言(例如中文或泰语)不会使用空间来分开单词,并且单词分割工具可能不容易获得。对高度凝集性语言也有一个关注,其中BLEU未能将任何信用归因于形态学变体。CHRF ++通过将重叠计算基于字符级别的n-grams f-评分(n范围从1到6)来克服这些弱点,并补充单词umigram和bi-grams。在这项工作中,我们主要使用CHRF ++使用Sacrebleu的设置进行了评估。但是,在与其他已发表的工作进行比较时,我们在适当的情况下使用了BLEU和SPBLEU。
当建造数千种不同语言对的机器翻译系统时,一个核心问题是哪个对达到一定水平的质量。因此,我们需要在语言对之间相当的有意义的分数。
我们改编了最近提出的XSTS方法论48。简而言之,XST是一种人类评估方案,侧重于含义在流利度上方。请参阅补充信息F中的该协议的详细信息。有关低资源语言,翻译通常的质量较差,因此我们将更多地关注可用的(即具有意义的)翻译,即使它们并不完全流利。与直接评估68(原始直接评估使用100分制)相比,发现XSTS产生较高的通道间协议47。XSTS以5分制评为每个源句子及其机器翻译,其中1是最低,5是最高的。
为了使有意义的分数跨语言对可比,我们要求每个评估者使用XSTS量表在完全相同的句子对上提供评估。这旨在确定具有系统性趋势的注释者在评分方面更加苛刻或更慷慨并纠正这种效果。校准集由机器翻译输出组成,仅与英语相结合。根据评估者在此校准集上使用XSTS量表的方式,我们调整了他们对实际评估任务的原始分数,以确保评估者之间的一致性。尽管这项单语校准任务并不能准确地模仿双语XSTS任务,但它是一个合理的第一个近似值,已被证明可以增加人类和自动指标之间的相关性,主要是通过减少人类评估中的“噪声”来源 - 缺乏评分校准者之间的“噪声”来源。
为了在评估研究中获得每个语言方向的人类质量指标,我们将每个句子的大多数XSTS分数(即平均得分)和所有评估句子的平均得分。在给定的研究中,任何翻译方向的人类评估评分LS→LT为
LS和LT分别表示源语言和目标语言;表示ITH评估者的XSTS分数,后者在给定翻译方向ls→lt评估句子的句子s和source句子s和目标句子t;表示评估(源,翻译)句子对(s,t)的评估者的总数(s,t)用于翻译方向ls→lt;是评估翻译方向LS→LT的(源,翻译)句子对的集合。
还要求给定研究中的每个评估者提供校准集的所有或部分的评级。SS,K表示评估研究的校准设置中的KTH源句子;s,ts,k表示对应于ss,k的翻译句子;并且是用于评估研究的校准设置中的句子对数。
对于在一项研究中评估的每个语言方向,我们在校准集上获得了多数分数,如下所示:
其中表示ITH评估者在研究s校准集中为给定的源句子和翻译句子t的语言方向ls→lt提供的XSTS分数。
为了在语言方向层面上获得汇总的校准XSTS分数,我们探索了几种不同的校准方法。我们研究的校准方法均未显示与自动分数的相关性明显差异,并且我们探索的所有校准方法与未校准的XSTS分数相比提供了更高的相关性。有关这些校准方法的更多详细信息,请参见参考文献第7.2节。34。
为了使毒性大规模检测,我们根据单词列表使用了检测器。在本节中,我们提供有关我们毒性定义的更多详细信息,并描述检测器(ETOX)和相关的单词列表。
由于毒性的主观性质,毒性语言的定义可能会有所不同。我们包括了通常称为庸俗或亵渎语言的项目。(请注意,粗俗或亵渎语言并不总是有毒。例如,某些常见的语可能被认为是庸俗的,但不一定是有毒的)。此外,我们还包括了与描述色情内容或性行为的描述相关的项目,一些经常使用的仇恨言论表达方式以及与欺凌相关的一些表达。我们还提供了是否庸俗的项目,指的是通常与性实践相关的身体部位。
我们首先假设通用机器翻译系统应保持忠实于源内容,并且在翻译过程中不添加任何有毒元素。我们将有毒元素定义为列表中存在的单词令牌或简短短语。ETOX使用以下两个标准确定了毒性:毒性项目的数量以及匹配或不匹配的毒性。如果有毒物品存在在线中并被空间或线的起点或末端包围,则考虑到有毒物品。Etox跟踪一条线中发现的独特有毒物品的数量,但如果该短语有多次出现,则不会再次计算短语。匹配的毒性表明,在源和翻译含量(即没有添加毒性)中,有毒物品的数量相同。添加的毒性是不匹配的毒性的一个例子,在这种毒性中,翻译输出中发现的毒性多于来源。对于非细分语言或使用复杂的变音符号的某些语言,空间令牌化不足以将单词彼此区分开。在这种情况下,我们使用了句子和毒性单词列表的句子令牌化。
列表基于英语的专业翻译,然后通过语言学家启发,以更好地使用目标语言。由于毒性在文化上是敏感的,因此试图在很大程度上多语言环境中找到等效物是从一种源语言开始时构成的挑战。为了解决这个问题,允许翻译人员放弃翻译一些源项目,并添加更多与文化相关的项目。
在最初发布毒性-200列表中,毒性检测列表中的平均项目数量为271个条目,而中位数的条目中位数为143个。后者可能比平均平均水平更好地衡量核心趋势,因为具有丰富的拐点形态的语言构成了极端异常(例如,Czech构成了2,534列表2,534列表)和004的czech列表,并构成了2,534的czech列表。最短的列表有36个条目,最长的6,078条。