有关介绍CVPR‘2024工作《持续学习的无干扰低秩适应》正式实施

一个不知名大学生,江湖人称菜狗
original author: Jacky Li
Email : 3435673055@qq.com

Time of completion:2024.04.03
Last edited: 2024.04.03

代码:GitHub - liangyanshuo/InfLoRA:CVPR'2024 工作 Interference-Free Low-Rank Adaptation for Continual Learning 的正式实现icon-default.png?t=N7T8https://github.com/liangyanshuo/InfLoRA?tab=readme-ov-file

目录

InfLoRA:用于持续学习的无干扰低秩适应

介绍

必要

数据集准备

训练

CIFAR100:

对于 InfLoRA-b5

对于 InfLoRA+CA

ImageNet-R(10 个任务):

对于 InfLoRA

对于 InfLoRA-b5

对于 InfLoRA+CA

ImageNet-R(20 个任务):

对于 InfLoRA-b5

ImageNet-R(5 个任务):

对于 InfLoRA-b5

域名网:

对于 InfLoRA-b5


InfLoRA:用于持续学习的无干扰低秩适应

这是 CVPR 2024 论文“持续学习的无干扰低秩适应”的正式实现。 在本文中,提出了一种新的参数高效持续学习方法,称为无干扰低秩自适应(InfLoRA)。

介绍

持续学习要求模型按顺序学习多个任务。在持续学习中,模型应具有在旧任务上保持其性能的能力(稳定性)和持续适应新任务的能力(可塑性)。最近,参数高效微调 (PEFT) 在持续学习中越来越受欢迎,它涉及冻结预训练模型并注入少量可学习参数以适应下游任务。尽管现有的基于PEFT的持续学习方法与不基于PEFT的学习方法相比表现出了更好的性能,但大多数方法没有考虑如何消除新任务对旧任务的干扰,这阻碍了模型在稳定性和可塑性之间做出良好的权衡。在这项工作中,我们提出了一种新的PEFT方法,称为无干扰低秩适应(InfLoRA),用于持续学习。InfLoRA 注入少量参数来重新参数化预训练的权重,并表明微调这些注入的参数等同于微调子空间内的预训练权重。此外,InfLoRA设计了这个子空间,以消除新任务对旧任务的干扰,在稳定性和可塑性之间做出良好的权衡。实验结果表明,InfLoRA在多个数据集上优于现有的最先进的持续学习方法。

必要

此代码在 PyTorch 中实现,我们在以下环境设置下执行实验:

  • 蟒蛇 = 3.8
  • 火炬 = 1.10.0
  • 火炬视觉 = 0.11.1
  • 蒂姆 = 0.6.7

我认为代码可以在其他版本的环境下运行,但我还没有尝试过。

数据集准备

训练

所有命令都应在项目根目录下运行。目前,该代码针对 1 个 A6000 GPU (48G) 运行。

CIFAR100:

对于 InfLoRA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config configs/cifar100_inflora.json 
</code></span></span></span></span>
对于 InfLoRA-b5
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config configs/cifar100_inflorab5.json 
</code></span></span></span></span>
对于 InfLoRA+CA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config configs/cifar100_infloraca.json 
</code></span></span></span></span>

ImageNet-R(10 个任务):

对于 InfLoRA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg10_inflora.json 
</code></span></span></span></span>
对于 InfLoRA-b5
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg10_inflorab5.json 
</code></span></span></span></span>
对于 InfLoRA+CA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg10_infloraca.json 
</code></span></span></span></span>

ImageNet-R(20 个任务):

对于 InfLoRA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg20_inflora.json 
</code></span></span></span></span>
对于 InfLoRA-b5
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg20_inflorab5.json 
</code></span></span></span></span>

ImageNet-R(5 个任务):

对于 InfLoRA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg5_inflora.json 
</code></span></span></span></span>
对于 InfLoRA-b5
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config mimg5_inflorab5.json 
</code></span></span></span></span>

域名网:

对于 InfLoRA
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config domainnet_inflora.json 
</code></span></span></span></span>
对于 InfLoRA-b5
<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>python main.py --device "1" --config domainnet_inflorab5.json 
</code></span></span></span></span>
  • 19
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羁旅少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值