AI 大模型系统实战
Tyler
前亚马逊应用科学家,头部大厂 AIGC 算法技术负责人
6826 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 38 讲
结束语&结课测试 (2讲)
AI 大模型系统实战
15
15
1.0x
00:00/00:00
登录|注册

26|模型工程(二):算力受限,如何为“无米之炊”?

你好,我是 Tyler。
上节课,我们学习了如何对特定领域的问题进行训练数据增强。在 Alpaca 的原文中,虽然已经大幅减少了模型微调所需的计算资源,但仍然需要相当大的算力开销。
Alpaca 论文的作者,使用了 8 块 80GB 的 A100 显卡,进行了 3 小时的微调,才完成训练。不难发现,这样的成本仍然很高,所以业界也一直在探索更具性价比的训练方法,其中最经典的方法莫过于 LoRA。
我们这节课将重点介绍 LoRA 技术的原理和使用方法,通过理论讲解和实践练习,帮助你掌握 LoRA 技术,并且在下一节课中用 LoRA 技术来微调自己的预训练大语言模型。

LoRA:低秩适应

如果你对文生图的领域有所关注,那么你一定对 LoRA 模型一定不陌生,它似乎已经成为自动定制二次元小姐姐的代名词。
然而,实际上 LoRA 是一种通用的模型训练方法。它最早本就是用来加速大语言模型训练的,这点你从它的全称 “Low-Rank Adaptation of Large Language Models” 就能看出来。
为了进一步降低微调的成本,来自斯坦福大学的研究员 Eric J. Wang 采用了 LoRA(低秩适应)技术复制了 Alpaca 的结果。
具体来说,Eric J. Wang 使用了一块 RTX 4090 显卡,仅用了 5 个小时就成功训练出了一个与原版 Alpaca 相媲美的模型,成功将这类模型对计算资源的需求降低到了消费级显卡的水平。此外,这个模型甚至可以在树莓派上运行,非常适合用于小型的研究团队。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

LoRA技术是一种用于加速大语言模型训练的方法,通过低秩适应实现了对计算资源的高效利用。相比传统的微调方法,LoRA技术在模型适应特定任务时,仅依赖于较低的“内在维度”,从而有效降低了模型训练的成本。具体而言,LoRA使用低秩分解的方法来表示预训练的权重矩阵的更新,通过在微调过程中,使用全连接层的秩分解矩阵,间接训练神经网络中的一些全连接层,同时保持预先训练的权重不变。这种方法使得模型可以在消费级显卡上进行训练,并且甚至可以在树莓派上运行,非常适合用于小型的研究团队。LoRA技术的应用范围广泛,可以帮助以更低的成本完成模型训练,为算力受限的情况提供了解决方案。 LoRA技术让我们在充分利用了预训练模型的知识的前提下,大幅降低了微调训练的计算和内存开销,是一种高效的方法。 当然,LoRA技术并不仅仅适用于大语言模型,它可以应用在深度模型的各个模块,通过减少可训练参数的数量来提高效率。 举个例子,比如在 Transformer 模型中的在 Self-attention(自关注) 模块中通常包含四个权重矩阵(wq、wk、wv、wo),而在 MLP 模块(多层的神经网络)中通常包含两个权重矩阵。 LoRA技术允许将适应下游任务的注意力权重限制在自关注 Self-attention模块中,并冻结MLP模块,以简化和提高参数效率。 LoRA技术的另一个优点是,它可以在部署时以更低的成本切换任务。只需要交换LoRA权重即可。与完全微调相比,GPT-3 175B训练速度提高了25%,这是因为LoRA技术不需要计算绝大部分参数的梯度。 总的来说,LoRA技术通过精简信息更新参数,极大地减少了计算和内存的开销,提高了训练效率,同时在切换任务时的成本也很低。虽然在推理上会带来一定的开销增长,但在微调中带来了极大的算力节省。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 大模型系统实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • Zachary
    对于不典型的任务类型,LoRA这么做应该影响很大,因为不知道该换上哪套BA参数了?而GPT3/4的能力看起来是连续的,也就是能胜任很多我们无法明确指名道姓的非标准任务(尽管有强化学习和MoE来增强特定任务的能力),LoRA在这些非标准任务上也许就不太行了,能力比较离散。考虑到这一点后,用一些优化方法也许可以改善。
    2023-11-14归属地:广东
    1
  • 顾琪瑶
    1. 猪脑过载, 想不到 3. 内在联系, 就像介绍LORA时说的, "较低的内在纬度", 也就是说在针对特定任务微调时, 只需要关注一个子空间中的参数即可, LORA和ANN都是只关注部分向量即可, 也就是分而治之
    2023-10-18归属地:上海
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部