当前位置: 首页 > article >正文

【NLP高频面题 - 高效微调篇】LoRA微调时有哪些可配置的参数?

【NLP高频面题 - 高效微调篇】LoRA微调时有哪些可配置的参数?

重要性:★★★

LoRA 微调示例:

from peft import LoraConfig, get_peft_model

# LoRA 配置
config = LoraConfig(
    r=16,
    lora_alpha=16,
    target_modules=["query", "value"],
    lora_dropout=0.1,
    bias="none",
    modules_to_save=["classifier"],
)

model = get_peft_model(model, config)
model.print_trainable_parameters()

"trainable params: 667,493 || all params: 86,543,818 || trainable%: 0.7712775047664294"

LoraConfig(PeftConfig)源码

lora 主要参数解读:

r
解读: LoRA低秩矩阵中rank的大小,需要在模型复杂性、适应能力以及欠拟合、过拟合的风险之间进行权衡。

较小的 r 对应的是更简单的低秩矩阵,模型在训练中学习的参数更少。这可以加快训练速度,并可能降低计算需求。
但是,随着 r 越小,低秩矩阵捕获特定任务信息的能力就会降低,模型在新任务上的表现可能不如较高的r。
实际训练中需要尝试不同的 r 值,以找到合适的平衡点,以在新任务上实现所需的性能。

lora_alpha
解读: 一个比例因子,用于在前向传播过程中将 LoRA参数以一定的缩放比例应用于模型之中,用于调整原始模型输出加上低秩适应两者组合结果的大小。正如下面公式所示,此比例因子值越大,Lora参数的影响就越大。

scaling = alpha / r
weight += (lora_B @ lora_A) * scaling

lora_dropout
解读: 用于控制在训练过程中应用于 LoRA 层的 dropout参数比例,取值在0-1之间。0.1表示丢弃10%的神经元,这部分被丢弃的神经元不参与计算。

注:Dropout 是一种正则化技术,只用于训练过程,通过随机丢弃一部分神经元来,来减少训练过程中模型对特定特征的依赖,从而防止模型过拟合,尤其适用于数据量较小或模型较复杂的情况下。

inference_mode
解读:是否为推理模式,设置为False表示训练模式。

target_modules
解读:用于指定模型中具体哪些模块将应用 LoRA 适配器,这里的模块与具体模型的结构有关,一般都需要包括注意力部分的q、k、v模块。


NLP 大模型高频面题汇总

NLP基础篇
BERT 模型面
LLMs 微调面

http://www.kler.cn/a/506240.html

相关文章:

  • Java并发编程——线程池(基础,使用,拒绝策略,命名,提交方式,状态)
  • VUE学习笔记4__安装开发者工具
  • 【JavaEE进阶】SpringMVC 响应
  • 【RDMA学习笔记】1:RDMA(Remote Direct Memory Access)介绍
  • centos安装golang
  • 漫话架构师|什么是系统架构设计师(开篇)
  • vscode——如何让标点总是成对出现
  • 启航数据结构算法之雅舟,悠游C++秘境——单链表之美妙构筑
  • Docker PG流复制搭建实操
  • GIS大模型:三维重建与建模
  • C# .NetCore 使用 Flurl.Http 与 HttpClient 请求处理流式响应
  • 狼毒大戟中TPS新型二萜合酶的发现-文献精读99
  • vue组件学习(一)
  • 前端项目打包体积的分析和优化
  • 聊一聊 vPC Peer-gateway 网关增强功能
  • 从Web3到元宇宙:去中心化网络如何改变虚拟空间的体验
  • salesforce在opportunity的opportunity products页面增加一个按钮,可以批量删除products
  • 前端主流Web3D引擎详解大公司现Web3D业务所用引擎分析
  • UDP报文格式
  • 32单片机综合应用案例——基于GPS的车辆追踪器(三)(内附详细代码讲解!!!)
  • 【网络安全】FortiOS Authentication bypass in Node.js websocket module
  • Gtk-WARNING **: 18:50:42.615: cannot open display:
  • 多态(3)
  • Web3与加密技术的结合:增强个人隐私保护的未来趋势
  • C# 特性(Attributes)详解
  • paimon使用腾讯云cosn作为仓库存储的使用方式