【EMNLP 2023】基于知识迁移的跨语言机器阅读理解算法

2023-12-08 19:45

本文主要是介绍【EMNLP 2023】基于知识迁移的跨语言机器阅读理解算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

近日,阿里云人工智能平台PAI与华南理工大学朱金辉教授团队、达摩院自然语言处理团队合作在自然语言处理顶级会议EMNLP2023上发表基于机器翻译增加的跨语言机器阅读理解算法X-STA。通过利用一个注意力机制的教师来将源语言的答案转移到目标语言的答案输出空间,从而进行深度级别的辅助以增强跨语言传输能力。同时,提出了一种改进的交叉注意力块,称为梯度解缠知识共享技术。此外,通过多个层次学习语义对齐,并利用教师指导来校准模型输出,增强跨语言传输性能。实验结果显示,我们的方法在三个多语言MRC数据集上表现出色,优于现有的最先进方法。

论文:

Tingfeng Cao, Chengyu Wang, Chuanqi Tan, Jun Huang, Jinhui Zhu. Sharing, Teaching and Aligning: Knowledgeable Transfer Learning for Cross-Lingual Machine Reading Comprehension. EMNLP 2023 (Findings)

背景

大规模预训练语言模型的广泛应用,促进了NLP各个下游任务准确度大幅提升,然而,传统的自然语言理解任务通常需要大量的标注数据来微调预训练语言模型。但低资源语言缺乏标注数据集,难以获取。大部分现有的MRC数据集都是英文的,这对于其他语言来说是一个困难。其次,不同语言之间存在语言和文化的差异,表现为不同的句子结构、词序和形态特征。例如,日语、中文、印地语和阿拉伯语等语言具有不同的文字系统和更复杂的语法系统,这使得MRC模型难以理解这些语言的文本。

为了解决这些挑战,现有文献中通常采用基于机器翻译的数据增强方法,将源语言的数据集翻译成目标语言进行模型训练。然而,在MRC任务中,由于翻译导致的答案跨度偏移,无法直接使用源语言的输出分布来教导目标语言。

因此,本文提出了一种名为X-STA的跨语言MRC方法,遵循三个原则:共享、教导和对齐。共享方面,提出了梯度分解的知识共享技术,通过使用平行语言对作为模型输入,从源语言中提取知识,增强对目标语言的理解,同时避免源语言表示的退化。教导方面,本方法利用注意机制,在目标语言的上下文中寻找与源语言输出答案语义相似的答案跨度,用于校准输出答案。对齐方面,多层次的对齐被利用来进一步增强MRC模型的跨语言传递能力。通过知识共享、教导和多层次对齐,本方法可以增强模型对不同语言的语言理解能力。

算法概述

X-STA模型框架图如下所示:

给定上下文C和问题Q, MRC任务是从上下文C提取子序列作为问题Q的正确答案。将输入序列表示为

\mathbf{X} = \{Q, C\} \in \mathbb{R}^{N}其中N是序列长度。我们使用\textbf{p}_\text{start} \in \mathbb{R}^{N}\textbf{p}_\text{end} \in \mathbb{R}^{N}表示答案的起始位置和结束位置概率分布。为了简单起见,我们可以将两者连接到一起\textbf{p} \in \mathbb{R}^{N\times 2}。类似地,\mathbf{y} \in \mathbb{R}^{N\times 2}表示一个序列的one-hot标签。

具体流程如下:

  1. 先将源语言的目标数据翻译到各个目标语言,目标语言的测试数据也翻译回源语言。
  2. 每项数据包含问题Q和上下文段落C。
  3. 构建并行语言对={源语言训练数据,目标语言训练数据}送入模型并使用反向传播进行模型训练。
  4. 将并行语言对={源语言测试数据,目标语言测试数据}送入模型获取答案的预测。

算法精度评测

为了验证X-STA算法的有效性,我们在三个跨语言MRC数据集上进行了测试,效果证明X-STA对精度提升明显:

我们也对算法的模块进行了详细有效性分析,我们可以发现各模块均对模型有一定贡献。

为了更好地服务开源社区,这一算法的源代码即将贡献在自然语言处理算法框架EasyNLP中,欢迎NLP从业人员和研究者使用。

EasyNLP开源框架:GitHub - alibaba/EasyNLP: EasyNLP: A Comprehensive and Easy-to-use NLP Toolkit

参考文献

  • Chengyu Wang, Minghui Qiu, Taolin Zhang, Tingting Liu, Lei Li, Jianing Wang, Ming Wang, Jun Huang, Wei Lin. EasyNLP: A Comprehensive and Easy-to-use Toolkit for Natural Language Processing. EMNLP 2022
  • Rajpurkar, Pranav, et al. "SQuAD: 100,000+ Questions for Machine Comprehension of Text." Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing. 2016.

论文信息

论文标题:Sharing, Teaching and Aligning: Knowledgeable Transfer Learning for Cross-Lingual Machine Reading Comprehension
论文作者:曹庭锋、汪诚愚、谭传奇、黄俊、朱金辉
论文pdf链接:https://arxiv.org/abs/2311.06758

这篇关于【EMNLP 2023】基于知识迁移的跨语言机器阅读理解算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

基于Python实现多语言朗读与单词选择测验

《基于Python实现多语言朗读与单词选择测验》在数字化教育日益普及的今天,开发一款能够支持多语言朗读和单词选择测验的程序,对于语言学习者来说无疑是一个巨大的福音,下面我们就来用Python实现一个这... 目录一、项目概述二、环境准备三、实现朗读功能四、实现单词选择测验五、创建图形用户界面六、运行程序七、

golang字符串匹配算法解读

《golang字符串匹配算法解读》文章介绍了字符串匹配算法的原理,特别是Knuth-Morris-Pratt(KMP)算法,该算法通过构建模式串的前缀表来减少匹配时的不必要的字符比较,从而提高效率,在... 目录简介KMP实现代码总结简介字符串匹配算法主要用于在一个较长的文本串中查找一个较短的字符串(称为

使用Go语言开发一个命令行文件管理工具

《使用Go语言开发一个命令行文件管理工具》这篇文章主要为大家详细介绍了如何使用Go语言开发一款命令行文件管理工具,支持批量重命名,删除,创建,移动文件,需要的小伙伴可以了解下... 目录一、工具功能一览二、核心代码解析1. 主程序结构2. 批量重命名3. 批量删除4. 创建文件/目录5. 批量移动三、如何安

通俗易懂的Java常见限流算法具体实现

《通俗易懂的Java常见限流算法具体实现》:本文主要介绍Java常见限流算法具体实现的相关资料,包括漏桶算法、令牌桶算法、Nginx限流和Redis+Lua限流的实现原理和具体步骤,并比较了它们的... 目录一、漏桶算法1.漏桶算法的思想和原理2.具体实现二、令牌桶算法1.令牌桶算法流程:2.具体实现2.1

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

SQL Server数据库迁移到MySQL的完整指南

《SQLServer数据库迁移到MySQL的完整指南》在企业应用开发中,数据库迁移是一个常见的需求,随着业务的发展,企业可能会从SQLServer转向MySQL,原因可能是成本、性能、跨平台兼容性等... 目录一、迁移前的准备工作1.1 确定迁移范围1.2 评估兼容性1.3 备份数据二、迁移工具的选择2.1

Go语言利用泛型封装常见的Map操作

《Go语言利用泛型封装常见的Map操作》Go语言在1.18版本中引入了泛型,这是Go语言发展的一个重要里程碑,它极大地增强了语言的表达能力和灵活性,本文将通过泛型实现封装常见的Map操作,感... 目录什么是泛型泛型解决了什么问题Go泛型基于泛型的常见Map操作代码合集总结什么是泛型泛型是一种编程范式,允