BAdam A Memory Efficient Full Parameter Optimization Method for Large Language Models

news/2024/11/17 4:34:23/文章来源:https://www.cnblogs.com/MTandHJ/p/18382137

目录
  • BAdam
  • 代码

Luo Q., Yu H. and Li X. BAdam: A memory efficient full parameter optimization method for large language models. arXiv preprint, 2024.

本文介绍了一种 Block corrdinate descent (BCD) 的训练方式.

BAdam

  • 当模型本身很大的时候, 训练它会成为一个很大的问题, 所以现在会流行一些 LoRA 等低质方法用于更快速地更新模型.

  • 这个问题其实很大程度上是因为常用地 Adam 至少需要缓存 2x 模型的量, 所以本文提出的 BAdam 就是希望能够每次仅更新其中的一个 block.

  • BAdam 将整个模型分成 \(D\) 份: \(\pi_1, \ldots, \pi_i, \ldots, \pi_D\), 并假设其中的参数为 \(\theta = \{\theta_{\pi_1}, \ldots, \theta_{\pi_i}, \ldots, \theta_{\pi_D}\}\).

  • 每一次那个更新, 仅更新其中的某一个 block:

    \[\theta_{\pi_i}^{t+1} \in \mathop{\text{argmin}} \limits_{\theta_{\pi_i} \in \mathbb{R}^{d_i}} \frac{1}{n} \sum_{j=1}^n \ell_j (\theta_{\pi_1}^{t+1}, \ldots, \theta_{\pi_{i-1}}^{t+1},\theta_{\pi_i},\theta_{\pi_{i+1}}^t, \ldots \theta_{\pi_{D}}^t ). \]

  • 具体的算法如下, 注意到, 对每个 block 会更新 K 次:

代码

[official]

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

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

相关文章

Origin2024图表中如何直接移除异常点?

平时我们在使用Origin绘图后,可能会发现有一两个「异常点」,这个时候,我们可能会返回工作表,将异常的数据去除,但可能不知道是哪个数据,因为图和数据有时候不太好对应起来; 本期给大家分享做好图之后直接选择移除异常点功能,并且数据表中的数据也会相应的去除,是一个很…

vue3uniapps使用富文本mp-html插件

1. 实现效果 具体需求:顶部是搜索栏,包括搜索结果个数,目前跳到第几个,包含上一个、下一个按钮。富文本区域关键词高亮黄色,当前关键词为高亮橙色。如图2. 版本号 用到vue3 和 uniapp , mp-html 插件版本是v2.5.0, 插件地址:https://ext.dcloud.net.cn/plugin?id=805 用…

西安电子科技大学2021级计算机科学与技术专业重要成绩排名参考

从个人经历分享,所在计算机科学与技术专业的大学期间的重要成绩排名参考【非官方】,仅供选择方向参考!Hello World本文来自博客园,作者:LZHMS,转载请注明原文链接:https://www.cnblogs.com/LZHMS/p/18382071

OKR 如何激励团队有目标地工作

最近,关于90后和Z一代对为目标驱动的公司工作的渴望已经写了很多。这很可能成为围绕工作场所将如何演变的决定性叙述之一,尤其是在人才争夺战持续的情况下。 “带着目的工作 “需要的不仅仅是一个鼓舞人心的公司使命,它是每个领导者必须积极培养团队的东西。在这里,我将介绍…

查壳工具之Exeinfo PE

简介 Exeinfo PE是一款免费、专业的程序查壳软件,可以查看exe、dll程序的编译信息,开发语言,是否加壳,壳的种类以及入口地址等信息。 Exeinfo PE下载地址:https://github.com/ExeinfoASL/ASL GitHub地址打开后,直接选择Code--Download ZIP下载压缩包即可。 Exeinfo PE使用…

JavaScript 的事件循环、宏任务、微任务

JavaScrtipt 执行顺序 首先,必须要明确,在JavaScript中,所有任务都在主线程上执行。任务执行过程分为同步任务和异步任务两个阶段。异步任务的处理经历两个主要阶段:Event Table(事件表)和 Event Queue(事件队列)。Event Table存储了宏任务的相关信息,包括事件监听和相…

One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024

通过对多样化基准的严格评估,论文展示了现有特定方法在实现跨领域推理以及其偏向于数据偏差拟合方面的缺陷。从两阶段的视角重新审视视觉推理:(1)符号化和(2)基于符号或其表示的逻辑推理,发现推理阶段比符号化更擅长泛化。因此,更高效的做法是通过为不同数据领域使用分…

投标流程

电脑不能安装WPS 国家电网新一代电子商务平台 (sgcc.com.cn) https://sign.utcsoft.com/utcbpc/service/download.html?q=ecp20 下载安装“供应商投标工具”

在Windows上搭建自己的Git服务器的图文教程

一、简介 以前,在别家的公司,一般早就把源代码管理工具搭建好了,很少有机会自己搭建一套。最近,公司也许要把现在不少的源码进行管理,于是我打算自己搭建源代码管理服务器。说起源代码管理,当然有很多中解决方案,我个人偏向搭建一个 Git 服务器。毕竟这个自己用的比较多…

Datawhale AI+X 深度学习入门(一)

一.机器学习的定义和核心 1.机器学习就是让机器具备找一个函数的能力。机器具备找函数的能力以后,它可以做很多事。 2.在机器学习领域里面,除了回归跟分类以外,还有结构化学习(structured learning)。机器不只是要做选择题或输出一个数字,而是产生一个有结构的物体,比如…

浅谈二分算法

浅谈二分算法 二分 首先知道一下二分是什么。 二分,是一种快速处理大型数据的方法。基本逻辑是折半查找。 设有一个共有 \(n\) 个数字的数组,要从中查询某个元素,就可以用二分查找。 注:这里的数组默认其成员数值具有单调性。这个点十分重要。 还记得小时候(我现在才新初一…

推荐

DIN假设 \(V_i^{shop},V_i^{good},V_i^{cate}\) 分别表示历史第 \(i\) 次点击的 shop_id,good_id,cate_id, \(V_a^{shop},V_a^{good},V_a^{cate}\) 分别表示候选商品的 shop_id,good_id,cate_id,则两个不同版本用户兴趣表达 \(V_u\) 计算方式如下 \[\begin{align} g\left…