大语言模型---LoRA简介;LoRA的优势;LoRA训练步骤;总结

文章目录

  • [1. 介绍](#1. 介绍)
  • [2. LoRA的优势](#2. LoRA的优势)
  • [3. LoRA训练步骤:](#3. LoRA训练步骤:)
  • 4.总结

1. 介绍

LoRA(Low-Rank Adaptation)是一种用于高效微调大模型的技术,它通过在已有模型的基础上引入低秩矩阵来减少训练模型时所需的参数量和计算量。具体来说,LoRA在训练模型时将模型中的某些权重矩阵分解为两个低秩矩阵A和B,并对这些矩阵进行微调(finetune),而模型的其他部分保持冻结不变。

2. LoRA的优势

  1. 它冻结了预训练的模型权重,并将可训练的秩分解矩阵注入到 Transformer 架构的每一层中,大大减少了下游任务的可训练参数的数量。
  2. 与使用 Adam 微调的 GPT3-175B 相比,LoRA 可以将可训练参数数量减少10,000,GPU内存需求减少3倍。

3. LoRA训练步骤:

  1. 选择目标层:首先,在预训练神经网络模型中选择要应用LoRA的目标层。这些层通常是与特定任务相关的,如自注意力机制中的查询Q和键K矩阵。

  2. 初始化映射矩阵A和逆映射矩阵B:映射矩阵A一般用随机高斯分布初始化,当然实际代码实现时,比如微软的deepspeedchat在用到LoRA时,一开始通过0矩阵占位,然后调用搭配ReLU激活函数的kaiming均匀分布初始化;逆映射矩阵B用0矩阵初始化。

  3. 微调模型:用新的参数矩阵替换目标层的原始参数矩阵,然后在特定任务的训练数据上对模型进行微调。

  4. 参数更新:在微调过程中,计算损失函数关于映射矩阵A和逆映射矩阵B的梯度,并使用优化算法(如Adam、SGD等)对矩阵A和B进行更新。(注意,在更新过程中,原始参数矩阵W保持不变,只训练降维矩阵A与升维矩阵B)

  5. 重复更新:在训练的每个批次中,重复步骤3-5,直到达到预定的训练轮次(epoch)或满足收敛条件 。

  6. 合并权重参数 :将训练好的映射矩阵A和逆映射矩阵B,跟模型预先训练的权重矩阵进行合并。

4.总结

相关推荐
带电的小王3 分钟前
【动手学深度学习】3.1. 线性回归
人工智能·深度学习·线性回归
谢尔登8 分钟前
结合 AI 生成 mermaid、plantuml 等图表
人工智能
VR最前沿22 分钟前
【应用】Ghost Dance:利用惯性动捕构建虚拟舞伴
人工智能·科技
说私域39 分钟前
内容力重塑品牌增长:开源AI大模型驱动下的智能名片与S2B2C商城赋能抖音生态种草范式
人工智能·小程序·开源·零售
l1t43 分钟前
三种读写传统xls格式文件开源库libxls、xlslib、BasicExcel的比较
c++·人工智能·开源·mfc
AI浩1 小时前
【Block总结】EBlock,快速傅里叶变换(FFT)增强输入图像的幅度|即插即用|CVPR2025
人工智能·目标检测·计算机视觉
Vertira1 小时前
Pytorch安装后 如何快速查看经典的网络模型.py文件(例如Alexnet,VGG)(已解决)
人工智能·pytorch·python
Listennnn1 小时前
信号处理基础到进阶再到前沿
人工智能·深度学习·信号处理
老歌老听老掉牙1 小时前
使用 SymPy 进行向量和矩阵的高级操作
python·线性代数·算法·矩阵·sympy
奔跑吧邓邓子1 小时前
DeepSeek 赋能智能养老:情感陪伴机器人的温暖革新
人工智能·机器人·deepseek·智能养老·情感陪伴