Redian新闻
>
梯度视角下的LoRA:简介、分析、猜测及推广

梯度视角下的LoRA:简介、分析、猜测及推广

科技


©PaperWeekly 原创 · 作者 | 苏剑林

单位 | 追一科技

研究方向 | NLP、神经网络


随着 ChatGPT 及其平替的火热,各种参数高效(Parameter-Efficient)的微调方法也“水涨船高”,其中最流行的方案之一就是本文的主角 LoRA 了,它出自论文《LoRA: Low-Rank Adaptation of Large Language Models》[1]。LoRA 方法上比较简单直接,而且也有不少现成实现,不管是理解还是使用都很容易上手,所以本身也没太多值得细写的地方了。

然而,直接实现 LoRA 需要修改网络结构,这略微麻烦了些,同时 LoRA 给笔者的感觉是很像之前的优化器 AdaFactor [2],所以笔者的问题是:能否从优化器角度来分析和实现 LoRA 呢?本文就围绕此主题展开讨论。



方法简介

以往的一些结果(比如《Exploring Universal Intrinsic Task Subspace via Prompt Tuning》[3])显示,尽管预训练模型的参数量很大,但每个下游任务对应的本征维度(Intrinsic Dimension)并不大,换句话说,理论上我们可以微调非常小的参数量,就能在下游任务取得不错的效果。

LoRA 借鉴了上述结果,提出对于预训练的参数矩阵 ,我们不去直接微调 ,而是对增量做低秩分解假设:

其中  之一用全零初始化, 固定不变,优化器只优化 。由于本征维度很小的结论,所以  我们可以取得很小,很多时候我们甚至可以直接取 1。所以说,LoRA 是一种参数高效的微调方法,至少被优化的参数量大大降低了。



梯度分析
正如《Ladder Side-Tuning:预训练模型的“过墙梯”》所提到的,很多参数高效的微调实际上只是降低了显存需求,并没有降低计算量,LoRA 其实也不例外。为了认识到这一点,我们只需要观察  的梯度:


这里  是损失函数,并且约定参数的 shape 跟其梯度的 shape 一致。在训练过程中,求模型梯度是主要的计算量,如果全量更新,那么所用的梯度是 ,而 LoRA 所用的梯度则是  和 ,它们是建立在全量更新的梯度  基础上的,所以理论上 LoRA 的计算量比全量更新还大。
那为什么实际使用时 LoRA 的训练速度也会变快呢?有如下几个原因:
1. 只更新了部分参数:比如LoRA原论文就选择只更新Self Attention的参数,实际使用时我们还可以选择只更新部分层的参数; 
2. 减少了通信时间:由于更新的参数量变少了,所以(尤其是多卡训练时)要传输的数据量也变少了,从而减少了传输时间; 

3. 采用了各种低精度加速技术,如FP16、FP8或者INT8量化等。



这三部分原因确实能加快训练速度,然而它们并不是 LoRA 所独有的,事实上几乎都有参数高效方法都具有这些特点。LoRA 的优点是它的低秩分解很直观,在不少场景下跟全量微调的效果一致,以及在预测阶段可以直接把  合并成单个矩阵从而不增加推理成本。



优化视角

事实上,梯度(2)也告诉了我们如何从优化器角度来实现 LoRA。优化器可以直接获取到全量梯度 ,然后我们只需要按照公式(2)对梯度进行投影,就得到  的梯度,接着就可以按照常规的优化器实现  的更新了。
假如优化器是 SGD,那么就是

如果是 Adam 之类的带滑动变量的优化器,则只需要滑动投影后的梯度,因此是降低了优化器的参数量,节省了一定的显存。模型越大,这部分参数所占的显存比例也就越大。
LoRA 约定  或  之一使用全零初始化,这是为了保证初始状态模型跟预训练一致,但同时也带来了不对称问题(一个全零,一个非全零)。事实上, 都使用非全零初始化也是可以的,只需要事先将预训练权重减去  就行了,或者等价地说,将  参数化为:

这样同时保持了初始状态一致,同时允许  都用非全零初始化,增强了对称性。



随机投影

如果我们将 SGD 场景下的更新量  展开,结果将是

假设  项是可以忽略的高阶项,那么就剩下

从这个角度来看,相比全量微调的 SGD,LoRA 就是用括号中的结果替代了全量的梯度 
简单起见,接下来我们只关心  的情形,留意到在上式中, 时刻的投影向量  是依赖于  的,如果我们将它们换成不依赖于  的随机向量(每步训练都重新随机生成),那么会发生什么呢?我们考虑 ,其中 ,那么更新量就变为

可以证明的是

这里的  分别指  的单位矩阵。因此,跟“零阶梯度”类似,在平均意义下,这种每步都重新初始化的 LoRA 事实上等价于满秩的 SGD。然而,真要按照这个方式实现的话,其速度甚至可能比满秩的 SGD 都要慢,所以它的目的不是提速,而是希望能缓解灾难遗忘问题——通过对单个(batch)样本使用低秩矩阵(而不是满秩)更新量的方式,减少对整个模型权重的影响。当然,这只是猜测,实际效果如何,笔者还没有实验过。

一个变体

同样还是先只考虑  的情形,LoRA 相当于假设了 ,我们能不能做其他低秩分解假设呢?比如 ?写成矩阵形式就是

其中  分别指  的全 1 矩阵。容易求出它的梯度是:

其实就是原本梯度的行求和与列求和。相比原版 LoRA,这个加性分解有两个优点:1)加比乘计算量更低,梯度形式也更简单;2)UV 的秩一定是 1,但是  的秩可能是 2,如果秩代表了模型能力的话,那也就是说同样的参数量,加性的表达能力可能还更强。至于具体效果如何,后面笔者用到 LoRA 的时候,再做对比实验吧。
那么,加性分解能不能推广到  的情形呢?自然是可以的,但稍微有些技巧。这里约定  都能被  整除,那么我们只需要将参数化方式改为

这里的  分别指  的分块矩阵,每一块则是  的单位阵。这个形式说白了,就是分别将  看成是  的分块矩阵,然后套用  的思路来操作。



文章小结


本文介绍了从梯度角度来理解 LoRA,除了基本的介绍外,还包含了笔者的一些猜测和推广,供读者参考。

参考文献

[1] https://arxiv.org/abs/2106.09685

[2] https://kexue.fm/archives/7302

[3] https://arxiv.org/abs/2110.07867



更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:[email protected] 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



·
·

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
周迅18岁半裸出镜,46岁经历9段爱情,如今婚姻名存实亡商业分析、量化金融、机器学习、经济管理背景提升项目实战5月开课安排!百度视频质量评测的实践之路超模刘雯晒照,穿着三角裤出镜!网友:尺度不小但很时尚求职干货 | 拼多多 2023春招倒计时!海归求职:数据(数据分析、数据科学、工程)直播分享 | 全域视角下的人效体系建设六度智囊:全球化视角下,企业如何与信息差博弈?东方文化视角下,接纳承诺疗法(ACT)的本土化应用|祝卓宏时序分析五边形战士!清华提出TimesNet:预测、填补、分类、检测全面领先|ICLR 2023教你用Graphpad Prism做统计学分析、数据作图和论文配色,一键掌握高分密码!从火车脱轨事件谈饮水安全、监测及处理产业链分析视角下,如何看待光伏细分行业投资机遇?适应未来世界的“法宝”——国际视角下的“共同富裕”(三)王一博文盲风波越闹越大,大批粉丝攻击央媒,圈内大咖纷纷发声!全球视角下的美元周期及对A股影响CVPR 2023 | 移动传感器引导的跨时节六自由度视觉定位,准确且高效山西父女“病态”行为曝光,大尺度视频引争议:畸形审丑,何时休?视频 | 警方视角下,在Plano街上执行赶牛任务,体验感如何系列直播|吕晓玲教授:数据科学视角下,机器学习中科院出手!1000亿参数全模态大模型发布,能看懂视频、绘画作曲、分析信号不一样的看法——中国航天视角下的星舰爆炸政治经济学视角下的医保改革悼念老家老同学许振保南开学者刷新口令猜测成功率,为口令密钥研究带来新视角和新方法检察视角下“刑事合规”业务的新动态、新解法求职干货 | 拼多多 2023春招已开!海归求职:数据(数据分析、数据科学、工程)4月预告!商业分析、机器学习、数学建模、量化金融项目实战开课!媒介、内容与社交爱一个人,很不容易中科院深圳先进院合成所 马英新 课题组诚聘合成生物学、微生物学、分析化学、噬菌体等方向-博士后/研究助理5月预告!数学建模、商业分析、量化金融、机器学习、经济管理项目实战开课!动画制作效率提升80%!这个AI软件一键实现高精度视频动捕商业分析、机器学习、量化金融背景提升项目实战4月开课!提前还贷这件事上,房主、中介、银行谁更心塞?求职干货 | 京东 2023春招补录已开!海归求职:数据(数据分析、数据科学、工程)
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。