增强PLMs可塑性!MetaAI | 提出主动遗忘机制,加快模型收敛,准确率高出21.2%!

引言

在自然语言处理领域,预训练语言模型(PLMs)扮演着至关重要的角色,它可以根据任务需求,可迁移至各种下游任务中。然而,PLMs在适应新语言时面临挑战,尤其是在数据和计算资源受限的情况下。本文提出了一种通过「主动遗忘机制」,可在预训练期间增强PLMs语言可塑性的方法。实验结果表明,采用该机制的预训练模型在低数据环境下表现出更快的收敛速度,并且相比标准PLMs准确率高出21.2%。

图片

https://arxiv.org/pdf/2307.01163.pdf

背景介绍

预训练语言模型(Pretrained Language Models, PLMs)在自然语言处理(Natural Language Processing, NLP)领域的应用上存在一定的局限性。具体来说,预训练语言模型的核心是通过汲取大型数据集来获取知识,并在预训练期间将这些知识存储在参数中,然后通过微调(fine-tuning)或提示(prompting)将这些知识应用于各种下游任务,如语义分析、问答等。

尽管 PLM 取得了成功,但仍然存在许多缺点。特别是「在适应新语言」时仍面临挑战,它需要大量数据和计算来对其进行预训练,并且重新训练一个新的 PLM 来适应每一次语言空间的转变付出的代价可谓是非常昂贵。在此情况下限制了它们的普遍适用性。

在实际应用过程中,虽然模型遗忘被认为是一些负面的事情,例如模型的灾难性以往,但凡事都有两面性。最近的研究表明对于人工神经网络来说,遗忘也可以增加模型的“可塑性”。例如可以提高模型在未见数据上的泛化能力、在低数据状态下的学习能力,亦或者有利于模型偏见的消除。为此本文作者拟探索利用模型的遗忘机制来改进预训练模型。

众所周知,当前模型很难在没有干预的情况下进行跨语言泛化,尤其是对于缺乏数据集的语言。本文将重点放在PLM的输入层,即Token嵌入层。具体来说,作者引入了一种主动遗忘机制,该机制定期重置令牌嵌入,同时在整个预训练过程中保持所有参数不变,以创建能够快速适应新语言的PLMs。

重置预训练模型

「重置预训练即重新学习新语言的嵌入层,同时保持所有其他参数不变」。基本假设是,Token嵌入层和Transformer主体存在责任划分,即Token嵌入层处理特定于语言的词汇含义,而后者Transformer主体主要处理高级推理。因此,为新语言重置英语PLM可以归结为分别使用新语言中的未标记数据调整Token嵌入层,并用英语任务数据调整Transformer主体。如下图所示,大概可以分为4个步骤

图片

「预训练」 选择一个基于Transformer(如RoBERTa)的模型,并在一个主要语言(如英语)的大型数据集上进行预训练。预训练的目标是使模型学习到丰富的语言知识,并将其存储在模型参数中。

「语言适应」 利用新语言的未标记数据对模型的词嵌入层进行微调,同时保持其他所有参数(即Transformer主体)冻结。这一步骤的目的是让模型学习新语言的词汇表示,而不影响模型已经学到的通用知识。

「任务适配」 使用下游任务的数据(仍使用预训练语言的数据)对Transformer主体进行微调。这一步骤旨在优化模型在特定任务上的表现,同时保持对新语言适应的能力。

「组装」 将适应后的新语言词嵌入层和优化过的Transformer主体结合起来,形成一个可以在新语言上执行任务的最终模型。

主动遗忘机制

在预训练阶段,研究者引入了一种主动遗忘机制,即每隔K次更新重置词嵌入层。这种机制迫使模型在预训练过程中多次学习并遗忘词嵌入,从而培养模型快速适应新嵌入表示的能力。这种遗忘过程类似于元学习中的“遗忘”策略,旨在提高模型的泛化能力和适应性。具体如下图所示:

图片

这种方法类似于元学习(meta-learning)中的“遗忘”策略,目的是让模型学会如何在有限的数据和更新次数内适应新的嵌入表示。反观传统的PLMs在适应新语言时,可能会依赖于特定的嵌入初始化(即“捷径”),这在数据有限的情况下可能会导致性能下降。通过在预训练期间引入遗忘,模型被迫学会不依赖这些捷径,而是在Transformer主体中编码更通用、更高层次的推理能力。这样的模型在适应新语言时,能够更快地学习新的词嵌入,并且在整个适应过程中需要的数据更少。

实验结果

在推理方面,如下图所示,采用遗忘机制的预训练模型(PLMs)在XNLI任务上的平均准确率比要标准PLMs高出21.2%

图片

在跨语言QA方面,如下图所示,采用遗忘机制的PLMs的平均F1分数比标准PLMs高出33.8%

图片

在收敛速度方面,采用遗忘机制的PLMs在语言适应阶段的收敛速度显著快于标准PLMs。

图片

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试官:web常见的攻击方式有哪些?如何防御?

一、Web攻击是什么 Web攻击(WebAttack)是针对用户上网行为或网站服务器等设备进行攻击的行为 如植入恶意代码,修改网站权限,获取网站用户隐私信息等等 Web应用程序的安全性是任何基于Web业务的重要组成部分 确保Web应用程序安全…

数据结构与算法----复习Part 14 (树与二叉树)

本系列是算法通关手册LeeCode的学习笔记 算法通关手册(LeetCode) | 算法通关手册(LeetCode) (itcharge.cn) 目录 一,树(Tree) 树的相关术语 节点间关系 树的其他术语 二,二叉…

【深度学习笔记】8_1 命令式和符号式混合编程

注:本文为《动手学深度学习》开源内容,部分标注了个人理解,仅为个人学习记录,无抄袭搬运意图 8.1 命令式和符号式混合编程 本书到目前为止一直都在使用命令式编程,它使用编程语句改变程序状态。考虑下面这段简单的命令…

比较JavaScript中的for...in和for...of循环

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

linux解析域名指令 nslookup 或者 host

host www.baidu.com 第二种方法 nslookup www.baidu.com 注意:ns是name server之意

【包邮送书】Elasticsearch 通过索引阻塞实现数据保护深入解析

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。关…

运维工程师面试题

1. CPU性能指标中,以下指标代表什么意思? 外频:CPU的基准频率,CPU与主板之间同步运行的速度,它决定整个主板的运行速率。 前端总线频率:直接影响CPU和内存数据交换的速度。 2. 主板的两个芯片分别是什么…

uView Upload 上传

该组件用于上传图片场景 #平台差异说明 App&#xff08;vue&#xff09;App&#xff08;nvue&#xff09;H5小程序√√√√ #基础用法 可以通过设置fileList参数(数组&#xff0c;元素为对象)&#xff0c;显示预置的图片。其中元素的url属性为图片路径 <template>&l…

面试经典-9-跳跃游戏

题目 给你一个非负整数数组 nums &#xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标&#xff0c;如果可以&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff…

回收小程序系统后台管理功能

会员管理&#xff1a;管理员可以查看和管理会员的基本信息&#xff0c;如姓名、联系方式、寄送地址和订单记录等。 产品管理&#xff1a;对回收物品进行管理&#xff0c;包括分类、规格设定、数据统计等。 订单管理&#xff1a;对所有订单进行追踪和管理&#xff0c;确保订单处…

Leetcode 543. 二叉树的直径

题目描述&#xff1a; 给你一棵二叉树的根节点&#xff0c;返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的 长度 由它们之间边数表示。 示例 1&#xff1a; 输入&#xff1a;ro…

汽车屏类产品(五):仪表Cluster常用芯片i.MX117x

前言: 仪表一般就是指方向盘前面那个表盘。做仪表的芯片最主要需要支持显示Display,而仪表的主要排版布局多种多样,但是主旨显示内容不尽相同。 仪表需求: 1、rpm转速表盘 仪表Cluster一般会有转速表盘rpm,单位一般是x1000,大部分汽车仪表范围就是0~8,也就是最高8000…

MySQL安装使用(mac、windows)

目录 macOS环境 一、下载MySQL 二、环境变量 三、启动 MySql 四、初始化密码设置 windows环境 一、下载 二、 环境配置 三、安装mysql 1.初始化mysql 2.安装Mysql服务 3.更改密码 四、检验 1.查看默认安装的数据库 2.其他操作 macOS环境 一、下载MySQL 打开 MyS…

用 Qt 不怕被告吗?

用 Qt 不怕被告吗? 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「Qt 的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01; 收律师函不…

Gitea相关漏洞

Go代码审计&#xff1a;Gitea远程命令执行漏洞链_新闻中心-网盾网络安全培训学校 Vulhub靶场gitea-1.4远程代码执行漏洞复现_gitea 漏洞-CSDN博客

java Lambda表达式如何支持实例方法引用

java Lambda表达式如何支持实例方法引用 在Java中&#xff0c;Lambda表达式确实支持实例方法引用。实例方法引用允许你引用一个对象实例的某个方法&#xff0c;并将其作为Lambda表达式的实现。这提供了一种简洁的方式来表示Lambda表达式&#xff0c;特别是当Lambda表达式仅仅是…

云浮肇庆三维扫描钣金铸件抄数逆向设计外观画3D图上门抄数服务

钣金铸件抄数逆向设计画图是一项精密而富有挑战性的工作&#xff0c;它要求工程师具备深厚的专业知识和丰富的实践经验。3D抄数&#xff0c;即是通过精密测量设备获取钣金铸件的三维数据&#xff0c;为后续的逆向设计提供基础。逆向设计则是指根据已有的实物或模型&#xff0c;…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:StepperItem)

用作Stepper组件的页面子组件。 说明&#xff1a; 该组件从API Version 8开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 支持单个子组件。 接口 StepperItem() 属性 参数名参数类型参数描述prevLabelstring设置左侧文本按钮内…

2024年软考计划开始了,你准备好了吗?

目录标题 2024年度计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试工作计划计算机软考中级科目哪个含金量最高&#xff1f;报考流程和说明 2024年度计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试工作计划 一、2024年度计算机软件资格考试(初级…

每日一面——成员初始化列表、移动构造和拷贝构造

写前声明&#xff1a;参考链接 C面经、面试宝典 等 ✊✊✊每日一面——成员初始化列表、移动构造和拷贝构造 一、类成员初始化方式&#xff1f;构造函数的执行顺序&#xff1f;为什么用成员初始化列表会快一些&#xff1f;二、final和override关键字三、拷贝初始化和直接初始化…