今日arXiv最热大模型论文:北大发布,通过上下文提示,让大模型学习一门新的语言

在人工智能领域,大语言模型(LLMs)的发展已经取得了显著的进步,它们在处理高资源语言方面表现出色。然而,对于资源较少的语言,尤其是极低资源语言,这些模型的支持却显得力不从心。这些语言往往缺乏足够的训练数据来有效地更新模型参数,从而使得模型难以学习和理解这些语言。这一挑战引发了一个有趣的研究问题:LLMs是否能够仅通过提示(prompting)即时学习一种新的低资源语言?

为了探索这一问题,研究者选择了壮语作为研究对象,这是一种目前没有任何LLM支持的极低资源语言。通过收集壮语的研究套件ZHUANGBENCH,包括字典、平行语料库和机器翻译测试集,研究者引入了DIPMT++框架,旨在通过上下文学习(in-context learning)来适应未见过的语言。仅使用字典和5K平行句子,DIPMT++显著提高了GPT-4在中文到壮语翻译上的表现,从0提升到16 BLEU分,并在壮语到中文翻译上达到了32 BLEU分。此外,研究还展示了该框架在帮助人类翻译完全未见过的语言方面的实际效用,这可能有助于语言多样性的保护。

论文标题:Teaching Large Language Models an Unseen Language on the Fly

论文链接:https://arxiv.org/pdf/2402.19167.pdf

壮语言的挑战与ZHUANGBENCH研究套件的介绍

1. 壮语言的背景和NLP中的地位

壮语是中国南部壮族人使用的语言,拥有超过1600万使用者。它属于Kra–Dai语系,是一种孤立语言,具有很少的屈折变化。尽管使用人数众多,壮语在自然语言处理(NLP)领域却鲜有研究,目前没有开源的壮语NLP数据集,流行的多语言模型如mBERT、BLOOM和NLLB也未包含对壮语的支持。即便是商业模型如GPT-3.5和GPT-4,在处理壮语时也几乎没有能力,这凸显了对低资源语言开发NLP解决方案的挑战。

2. ZHUANGBENCH的组成和目的

为了研究模型如何通过提示学习一种全新的语言,研究者策划了ZHUANGBENCH研究套件,它包括Zhuang-Chinese字典、平行语料库和机器翻译测试集。ZHUANGBENCH不仅是壮语这一极低资源语言的宝贵语言资源,也是一个对LLMs来说具有挑战性的基准测试,可以用来探究模型如何通过提示学习一种全新的语言。

DIPMT++框架的创新之处

1. DIPMT++与传统DIPMT的对比

DIPMT++ 是基于DIPMT的改进框架,旨在通过上下文学习有效地适应未见过的语言。DIPMT是一种基于提示的低资源语言翻译方法,它通过查找源句中罕见词汇的字典条目,并将其直接添加到提示中。然而,DIPMT主要适用于LLMs已经具备基本能力的语言,对于完全未见过的语言,LLMs需要从头学习其词汇和语法,传统的提示方法几乎无效。DIPMT++通过两项关键改进,使LLMs能够利用有限的资源理解一种全新的语言。

图片

2. 提高词汇覆盖率的策略

DIPMT++通过回顾传统统计方法和语言资源来增强提示中的词汇覆盖率。具体策略包括:

  • 复合词处理:对于在字典中直接找不到的词汇,可以使用字符串匹配算法从字典中快速找到相关条目。

  • 双语词典归纳:即使是小规模的平行语料库也可能包含字典中没有的词汇。传统的统计方法如GIZA++可以高效地从语料库中挖掘双语词汇,补充字典。

  • 同义词扩展:在高资源语言中翻译一个词时,可能找不到字典中的直接翻译,但字典可能包含该词的同义词条目。通过扩展字典来包含同义词列表,可以缓解这个问题。

3. 通过例句提升语法学习的方法

在DIPMT中,示例句子是固定的,与测 试实例的相关性有限,仅用于演示任务。当LLMs对未见过的语言的语法知之甚少时,这种方法几乎无效。DIPMT++尝试动态选择与测试实例更相关的示例句子,并鼓励模型从示例中推断基本的句法信息。

对于测试实例,其示例句子是从平行语料库中检索出来的。尽管有如DPR这样的高级检索器,但它们需要训练且不支持像状语这样的极低资源语言。因此,研究者们采用BM25,一种语言无关的检索算法。

实验设置:模型选择与基准线

1. 选择的模型和它们的特点

在实验中,研究者们选择了三种类型的模型作为DIPMT++ 框架的基础:LLaMA-2-chat,Qwen-chat,以及GPT-3.5-Turbo和GPT-4 。

  • LLaMA-2-chat是一个开源的以英语为中心的模型;

  • Qwen-chat是一个双语模型,支持英语和中文;

  • GPT-3.5-Turbo和GPT-4则是商业化的多语言模型。

    图片

这些模型的选择是为了评估DIPMT++在不同能力和规模的模型上的适用性和效果。2. 实验中使用的基准线和评价指标

实验中采用了多种基准线,包括直接微调模型、直接使用LLMs进行翻译(不提供ICL示例),以及使用原始DIPMT进行提示。评价指标方面,使用了BLEU和chrF两种指标,分别关注词级和字符级的翻译质量。

实验结果与分析

1. DIPMT++在ZHUANGBENCH上的表现

DIPMT++ 在ZHUANGBENCH上的表现显著优于其他提示基线和微调的较小模型。特别是当与GPT-4配对时,DIPMT++从几乎零的基线性能提升到了15.7的BLEU分数,用于中文到壮语的翻译,并且在壮语到中文的翻译中达到了31.9的BLEU分数。

2. DIPMT++在MTOB上的表现

在MTOB上,DIPMT++ 在大多数设置中都超过了原始论文中的基线,进一步证明了DIPMT++作为一个语言不可知的框架,能够适应不同的低资源语言,无需额外的努力。

3. 模型规模对性能的影响

在模型规模方面,研究者们观察到,随着模型参数的增加,性能稳步提升。

由于Qwen比以英语为中心的LLaMA-2具有更好的中文处理能力,一个14B的Qwen模型就能胜过一个70B的LLaMA-2。GPT-4在所有模型中表现最好,展示了其出色的推理能力。

值得注意的是,开源的Qwen-72B-chat在中文到壮语的任务上与封闭源的GPT-4表现相当,这对于更透明的研究是一个鼓舞人心的结果。

讨论:提高词汇覆盖率和语法学习的深入分析

教授LLMs语法规则的可能性

对于极低资源语言,如壮语,既没有大规模单语语料库用于语言建模,也没有现成的形式语法如上下文无关文法(CFG)可供使用。但是,考虑到LLMs强大的推理能力,研究者们探索了通过提示来教授LLMs语法规则的可能性。

DIPMT++通过检索与测试实例高度相关的示例来动态选择示例,希望模型能从示例中推断出基本的句法信息。除了BM25检索算法外,研究者们还尝试了基于词性序列的检索和随机采样,发现BM25检索的示例能够大幅提高翻译质量,因为它们包含与当前测试实例相关的更丰富的句法信息。

人类翻译辅助实验

1. 实验设计与参与者信息

研究者们进行了一项用户研究,以调查DIPMT++在现实场景中的适用性。他们招募了6名没有壮语知识的研究生,并要求他们使用给定的语言资源进行翻译。实验比较了三种设置:仅LLM、仅人类和人类+LLM。使用的模型是Qwen-14B-chat,选择了ZHUANGBENCH的简单子集作为测试实例。

2. 翻译质量和效率的比较

实验结果表明,与提供的语言资源相比,参与者能够正确翻译简单的未知语言句子。LLM在提高人类翻译质量方面表现出了增强效果

  • 例如,在zh2za翻译中,LLM帮助提高了人类性能2.5 BLEU分,而在za2zh翻译中,提高了2.9 BLEU分。

此外,LLM在zh2za翻译的效率上有显著提升,参与者平均节省了17%的时间。

图片

(图为使用Qwen-14B-chat在ZHUANGBENCH上提高词汇覆盖率的三种策略的消融研究)

3. 参与者在翻译过程中的行为分析

在za2zh翻译中,参与者平均每个实例进行了2.1次字典搜索和1.3次语料库搜索。对于更困难的zh2za翻译,搜索频率更高,平均每个实例进行了3.5次字典搜索和5.4次语料库搜索。许多参与者表现出在两种语言之间切换搜索的模式,旨在找到支持特定单词或短语翻译的n-gram证据。

这种策略与检索增强生成(RAG)框架内在一致,后者涉及交替进行检索和生成阶段。这些观察为即时语言学习提供了创新解决方案的见解。

总结与未来展望

1. DIPMT++的贡献和对未来研究的启示

DIPMT++ 作为一种新型的框架,通过上下文学习(ICL)有效地适应了未见过的语言,尤其是资源极其匮乏的壮语。通过使用字典和仅5000个平行句子,DIPMT++显著提高了GPT-4在中文到壮语翻译上的BLEU得分,从0提升至16,并在壮语到中文翻译上实现了32 BLEU的成绩。

此外,DIPMT++在协助人类翻译完全未见过的语言方面展现出了实际应用价值,这对于语言多样性的保护可能具有重要贡献。

DIPMT++的成功为未来的研究提供了启示,表明即使是对于极低资源语言,只要通过合理设计的提示(prompting),大语言模型也有能力进行有效学习。这一发现鼓励研究者们继续探索如何利用有限的资源来提升语言模型对低资源语言的支持,特别是在语言保存和教育等领域

2. 对评估规模和研究方法的限制进行反思

尽管DIPMT++在实验中取得了显著的成果,但评估规模相对较小,主要基于200个中壮双语测试实例和50个英卡拉曼格语测试实例。未来的工作计划扩大测试集的规模,以便更全面地评估模型性能。

此外,尽管壮语和中文存在许多相似之处,但它们仍属于不同的语言家族,这可能导致对模型性能的过于乐观的结论。未来的研究应该涵盖更多差异性更大的语言对,以便获得更全面的理解。

研究方法方面,目前对于显式学习句法信息的探索仅限于分析特定的句法现象,并使用链式推理(CoT)来辅助模型学习。尽管这种方法在某些情况下有效,但可能还有其他方法,如使用外部语法书,对于更强大的语言模型可能更为适合。由于预算限制,这些方法尚未得到充分探索。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/440075.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C++庖丁解牛】C++内存管理 | new和delete的使用以及使用原理

📙 作者简介 :RO-BERRY 📗 学习方向:致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 📒 日后方向 : 偏向于CPP开发以及大数据方向,欢迎各位关注,谢谢各位的支持 目录 1. C/C内存分布2. C语…

方法中单独使用return关键字

一、return关键字的单独使用 二、示例代码 public class ReturnDemo {public static void main(String[] args) {chu(10,0);chu(10,2);}public static void chu(int a,int b){if (b 0) {System.out.println("除法出错,除数不能为零");return;}System.ou…

无处不在的便捷:D咖无人售卖咖啡机在公共场所的应用探索

在繁忙的现代生活中,无人售卖咖啡机作为一项便捷的服务,正逐渐在公共场所得到广泛应用。本文将探讨D咖无人售卖咖啡机在公共场所的应用场景和优势。 一、无人售卖咖啡机的应用场景 写字楼:写字楼内工作人员需要在繁忙的工作中寻找便捷的饮品解…

【center-loss 中心损失函数】 参数与应用

文章目录 前言简单总结一下参数对比解释参数权重衰减(L2正则化)动量其他参数运行 前言 之前我们已经完全弄明白了中心损失函数里的代码是什么意思,并且怎么用的了,现在我们来运行它。 论文:https://ydwen.github.io/…

【数学+前缀和】第十四届蓝桥杯省赛C++ A组《平方差》(c++)

【问题描述】 给定 L,R,问 L≤x≤R 中有多少个数 x 满足存在整数 y,z 使得 xy的平方−z的平方。 【输入格式】 输入一行包含两个整数 L,R,用一个空格分隔。 【输出格式】 输出一行包含一个整数满足题目给定条件的 x 的数量。 【数据范围】 对于 40% 的…

创建RAID0,RAID5并管理,热备盘,模拟故障

目录 1. RAID介绍以及mdadm安装 1.1 安装mdadm工具 2. 创建raid0 2.1 环境准备 2.2 使用两个磁盘创建RAID0 2.3 查看RAID0信息 2.4 对创建的RAID0进行格式化并挂载 2.5 设置成开机挂载 2.6 删除RAID0 3. 创建raid5 3.1 环境准备 3.2 用3个磁盘来模拟R…

【C++杂货铺】详解string

目录 🌈前言🌈 📁 为什么学习string 📁 认识string(了解) 📁 string的常用接口 📂 构造函数 📂 string类对象的容量操作 📂 string类对象的访问以及遍历操…

(MATLAB)应用实例13-时域信号的频谱分析

采用傅里叶变换来计算存在噪声的适于信号频谱。 假设数据采样频率为1000Hz,一个信号包含两个正弦波,频率50Hz、120Hz,振幅0.7、1,噪声为零平均值的随机噪声,采用FFT方法分析其频谱。 clearFs 1000; …

分享axios+signalr简单封装示例

Ajax Axios Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。 它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生 node.js http 模块, 而在客户端 (浏览端) 则使用 XMLHttpRequests。 从浏览器创建 XMLHttpReque…

kafka 可视化工具

kafka可视化工具 随着科技发展,中间件也百花齐放。平时我们用的redis,我就会通过redisInsight-v2 来查询数据,mysql就会使用goland-ide插件来查询,都挺方便。但是kafka可视化工具就找了半天,最后还是觉得redpandadata…

一招教你优化TCP提高大文件传输效率

在当今企业的数据传输实践中,传统的传输控制协议(TCP)在处理大型文件传输时,其固有的可靠性和复杂性有时会导致效率不足。为了提升大文件传输的效率,对TCP进行优化成为了一个关键任务。 TCP传输的可靠性是其核心优势&a…

Kubernetes-2

Kubernetes学习第二天 k8s-21、Kubernetes的核心组件2、pod2.1、什么是pod 3、3种启动pod的方式3.1、命令行启动pod3.1.1、执行下面命令,背后发生了什么? 3.2、启动一个pod背后发生了什么3.3、使用yml文件3.3.1、标准的pod3.3.2、使用部署控制器启动pod3…

windows部署腾讯tmagic-editor01-Hello world

之前写过一篇使用yarn实现的https://blog.csdn.net/qq_36437991/article/details/133644558,后面的两个没有写,这次准备重新实现 环境 pnpm 8.15.1 node 18.19.0 创建vue项目 pnpm create vitecd hello-world pnpm install执行pnpm dev启动项目 安…

[PTA] 分解质因子

输入一个正整数n(1≤n≤1e15),编程将其分解成若干个质因子(素数因子)积的形式。 输入格式: 任意给定一个正整数n(1≤n≤1e15)。 输出格式: 将输入的正整数分解成若干个质因子积的形式&#…

TypeScript 基础(一)

目录 一、概述 二、开发环境 三、数据类型 1.boolean 2.number 3.string 4.Array 5.type 6.tuple 7.enum 8.any 9.null / undefined 10.never 11.object 结束 一、概述 TypeScript 是一种由微软开发的开源编程语言。它是 JavaScript 的一个超集,这意…

正则表达式-分组

1、oracle-正则表达式:将09/29/2008 用正则表达式转换成2008-09-29 select regexp_replace(09/29/2008, ^([0-9]{2})/([0-9]{2})/([0-9]{4})$, \3-\1-\2) replace from dual; 解析:regexp_replace-替换, 第一个参数:需要进行处…

5个实用的PyCharm插件

大家好,本文向大家推荐五个顶级插件,帮助开发人员提升PyCharm工作流程,将生产力飞升到新高度。 1.CodiumAI 安装链接:https://plugins.jetbrains.com/plugin/21206-codiumate--code-test-and-review-with-confidence--by-codium…

项目的搭建与配置

vue create calendar_pro 选择如下配置选项 安装 vue3 支持 vue add vue-next package.json 关闭 eslint 检测。 vue.config.js 配置跨域同源策略。 const { defineConfig } require(vue/cli-service) module.exports defineConfig({transpileDependencies: true,devServe…

【uni-app】condition 启动模式配置,生产环境无效,仅开发期间生效

在小程序开发过程中,每次代码修改后,都会启动到首页,有时非常不方便,为了更高效的开发,有时需要模拟直接跳转到指定的页面, 操作方法如下: 在pages.joson里面配置下列代码: "…

【自然语言处理六-最重要的模型-transformer-上】

自然语言处理六-最重要的模型-transformer-上 什么是transformer模型transformer 模型在自然语言处理领域的应用transformer 架构encoderinput处理部分(词嵌入和postional encoding)attention部分addNorm Feedforward & add && NormFeedforw…