XLM跨语言模型-论文笔记

2023-11-10 08:20
文章标签 语言 笔记 模型 论文 xlm

本文主要是介绍XLM跨语言模型-论文笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 简介

跨语言模型XLMs。本文根据2019年Facebook AI Research的《Cross-lingual Language Model Pretraining》翻译总结。

XLMs有如下贡献:
1) 我们介绍了一个新的非监督方法,可以使用跨语言模型学习跨语言表述(TLM),同时研究了两个单语言的预训练,CLM和MLM。
2) 当并行数据(双语数据)可以获得时,我们引入了一个监督学习,来改善跨语言预训练。
3) 我们在跨语言分类、非监督机器翻译、监督机器翻译方面,显著超过了以前的优秀模型。
4) 跨语言模型可以显著改善低资源语言的困惑度perplexity。(低资源语言由于缺乏足够的标注数据及相关的专家知识,使得传统的基于大词汇量语音识别系统的关键词检测技术无法使用.)(perplexity是自然语言处理领域NLP中,衡量语言模型好坏的指标。它主要是根据每个词来估计一句话出现的概率,并用句子长度作normalize)。

2 Cross-lingual language models

我们将描述3个语言模型。其中两个仅需要单语言数据(非监督学习),CLM和MLM;第3个模型需要并行语句-双语数据(监督学习),TLM。

2.1 Shared sub-word vocabulary

参考文章:https://blog.csdn.net/sinat_25394043/article/details/104190431

通常在英文NLP任务中,tokenization(分词)往往以空格为划分方式,但这种传统的分词方法还是存在一些问题,如:
• 传统词表示方法无法很好的处理未知或罕见的词汇(OOV问题)
• 传统词tokenization方法不利于模型学习词缀之间的关系
• E.g. 模型学到的“old”, “older”, and “oldest”之间的关系无法泛化到“smart”, “smarter”, and “smartest”。
• Character embedding作为OOV的解决方法粒度太细
• Subword粒度在词与字符之间,能够较好的平衡OOV问题
针对这些缺点,越来越多人开始使用subword的相关tokenization方法,具体方法主要有BPE,WordPiece等。
XLMs应该是先tokenizer,再BPE。

BPE,(byte pair encoder)字节对编码,也可以叫做digram coding双字母组合编码,主要目的是为了数据压缩,算法描述为字符串里频率最常见的一对字符被一个没有在这个字符中出现的字符代替的层层迭代过程。具体在下面描述。该算法首先被提出是在Philip Gage的C Users Journal的 1994年2月的文章“A New Algorithm for Data Compression”。

在XLMs所有的实验中,我们使用Byte Pair Encoding (BPE)创建的共享的词汇表。当跨语言间共享相同的字母表、数字、专有名称时,BPE会显著改善跨语言embedding空间的对齐,

我们通过在单语言库中随机采样的语句的级联来学习BPE分割。语句是通过一个概率的多项式分布采样的,其中每个概率q公式如下:
在这里插入图片描述

比如在α=0.5时,采样会增加低资源语言的token数量,而减轻向高资源语言的偏差。实际上,这防止了低资源语言被分割到字符级水平。

2.2 Causal Language Modeling (CLM)

非监督学习、单语言。
CLM采用Transformer,预测给定前面单词情况下预测下一个单词的概率。

2.3 Masked Language Modeling (MLM)

非监督学习、单语言。
将BPE tokens的15%随机替换掉,其中80%采用[MASK]替换,10%采用一个随机的token,10%保持不变。

2.4 Translation Language Modeling (TLM)

TLM是MLM的扩展,将单语文本流替换成concatenate的并行语句。在源语句和目标语句都采用随机mask。比如英语-法语翻译,为了预测一个英语语句中被mask的单词,模型会既利用已有的英语单词,也会利用输入的法语(尤其是当英语上下文不足时)。模型会尝试对齐英语和法语的表述。

MLM和TLM模型如下图:
在这里插入图片描述

3 实验结果

对于汉语、日语、泰语,我们分别使用的tokenizer of Chang et al. (2008)、the Kytea4 tokenizer,
and the PyThaiNLP5 tokenizer。其他语言使用的the tokenizer provided by Moses (Koehn et al., 2007),当必要时,会使用默认的English tokenizer。

然后使用fastBPE(https://github.com/glample/fastBPE)学习BPE,分割单词到subword 单元。

3.1 Cross-lingual classification

在预训练的Transformer的第一个隐藏单元的顶部,增加一个线性分类器,然后微调所有参数。

实验结果如下,可以看到XLM成绩最优。
在这里插入图片描述

3.2 Supervised machine translation

BT:back translation,反译。
在这里插入图片描述

3.3 Low-resource language model

Nepali:尼泊尔语,Hindi:印地语。
不同语言间可能有些类似的锚定点(n-grams anchor points),所以跨语言模型可以利用英语、印地语的这些,来改善尼泊尔语。实验结果如下:

在这里插入图片描述

这篇关于XLM跨语言模型-论文笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/381466

相关文章

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了