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

训练和微调

训练和微调

微调本质上就是在调整(更新)模型的参数。当我们说“调整参数”时,指的是调整神经网络内部数以亿计的权重(Weights)和偏置(Biases)。

  • 全量微调(Full Fine-Tuning):把模型的所有参数全部解锁,用新数据重新训练一遍。

  • 高效微调(PEFT,如 LoRA):把模型原本的参数“冻结”保持不变,只在旁边外挂一小部分新参数,只训练这部分新参数。但无论哪种,改变的都是数学意义上的权重参数。

微调是广义训练的一种。

  • 预训练(Pre-training / 也就是常说的“训练”):从零开始(参数随机初始化),给模型吞下几万亿 Token 的无标订购本(比如整个互联网的网页、图书),让模型学会人类语言的语法、常识和逻辑。这是从无到有的过程,耗资巨大(千万级人民币)。

  • 微调(Fine-tuning):在已经具备通用能力的预训练模型基础上,使用特定领域的精细数据,进行“二次训练”。这是从及格到优秀、从通用到专用的过程。

什么是 LoRA 指令微调?

1. 传统微调的痛点

假设你要微调一个 70B(700 亿参数)的模型。如果做全量微调,你需要同时更新 700 亿个参数。这不仅需要极其恐怖的显存(几百 GB 甚至上 TB),而且训练完后,你每针对一个场景微调,就要存一个 140GB 的完整模型文件,存储成本极高。

2. LoRA 的底层原理:低秩适应(Low-Rank Adaptation)

LoRA 的核心思想是:原模型的底层大矩阵太重了,我们不碰它;我们在它旁边贴两个小矩阵作为“补丁”。

  • 冻结原模型:模型原有的几百亿参数全部锁定,不接收梯度更新,变成“只读”。

  • 旁路降维矩阵:在原模型的矩阵旁边,增加两个低维度的矩阵$A$和$B$。原矩阵如果是$4096 \times 4096$的大小,LoRA 会把它拆解为$4096 \times r$和$r \times 4096$的两个小矩阵(其中$r$通常设得很小,比如 8 或 16)。

  • 数学运算:输入数据同时走原矩阵和 LoRA 矩阵,最后把结果相加:$Y = W_0X + \Delta WX = W_0X + (B \times A)X$。

  • 惊人的优势:需要训练的参数量直接暴降到原来的1% 甚至 0.1%。4090 级别的消费级显卡就能玩得转。 微调完后,产出的模型文件(LoRA 权重)只有几十兆到几百兆,可以像插件一样随时插拔。

3. “LoRA指令微调”的实操指令过程

当你使用上述提到的框架进行 LoRA 指令微调时,底层的核心运行逻辑如下(以命令行脚本为例):LLaMA-Factory

巴什
# 启动 LLaMA-Factory 进行 LoRA 指令微调 llamafactory-cli train \ --stage sft \ # 阶段:SFT(监督微调/指令微调) --model_name_or_path /path/to/Qwen2.5 \ # 基础大模型路径 --dataset my_instruction_data \ # 你的指令微调数据集 --finetuning_type lora \ # 微调类型:明确指定为 LoRA --lora_target q_proj, v_proj \ # 将 LoRA 补丁贴在注意力机制的 Q, V 矩阵上 --output_dir /path/to/lora_weights \ # 训练好后的 LoRA 补丁保存路径 --per_device_train_batch_size 4 \ # 显存控制单卡批次 --learning_rate 5e-5 \ # 学习率(微调参数的步长) --fp16 # 开启半精度加速

训练结束后,你会得到什么?你不会得到一个新的大模型,而是得到一组 和 文件。 在部署上线时,合并脚本会底层的把这两个“小补丁文件”融合进原本只读的大模型中,你的大模型就完成了进化,学会了听懂你特定业务的指令。

http://www.jsqmd.com/news/848966/

相关文章:

  • 如何在3分钟内将缠论分析从复杂理论变为可视化交易利器?
  • AI写论文指南!4款超实用AI论文生成工具,解决论文写作难题!
  • 建模也有Skills了:MWORKS.Sysplorer Skills已开源至MoHub!
  • Perplexity薪资查询失效了?4步紧急修复方案,含Chrome DevTools实时抓包教程
  • MCBSTM32F200开发板LCD显示问题解决方案
  • 不只是重刷固件:深入理解J-Link V7/V8的AT91SAM7S64芯片与SAM-BA通信机制
  • T100开发避坑指南:从模组命名到表格字段,新手必知的命名规范与实战技巧
  • 光子量子计算与MPS结合的机器学习架构解析
  • 深入STM32定时器与ADC的联动:FOC电流采样时序的硬件级解析
  • 避开MediaCodec解码的坑:手把手教你处理Buffer状态、流结束标志与线程安全
  • 2026年推荐长春豪车隐形车衣/长春极氪隐形车衣热门榜单 - 品牌宣传支持者
  • B站季报图解:营收75亿,经调整净利5.85亿 日活用户达1.152亿
  • RT5350 OpenWrt平台DHT11温湿度传感器驱动开发全流程解析
  • 旧电脑别扔!用U盘和OpenWRT 22.03.5把它变成家庭软路由(保姆级图文教程)
  • Perplexity响应不一致?揭秘温度参数、seed控制与缓存机制的底层冲突(附可复现验证脚本)
  • 《星空下的约定》的内容入口:夜空意象如何连接听众
  • Keil C51与8051芯片兼容性开发指南
  • ARMv8-A架构TLB维护指令详解与优化实践
  • 租车宝商户端算法分析
  • 告别硬件I2C:用STM32的GPIO模拟I2C驱动PCF8591模块(光敏/热敏数据采集教程)
  • 超导量子比特与四波混频三量子比特门实现
  • 麒麟V10 SP2服务器mate-indicators内存泄漏?别慌,手把手教你定位和修复(附离线包下载)
  • 2026年新排风厂家TOP5排行:网吧KTV新排风、四川工业恒温恒湿机、四川新排风安装、恒温恒湿机空调、成都新排风选择指南 - 优质品牌商家
  • 别再乱改SystemUI了!手把手教你为Android车机App配置合法的USB设备白名单
  • 别再手动分频了!Vivado Clocking Wizard保姆级教程:5分钟搞定4路时钟输出
  • 【编译原理】核心考点:语法制导翻译(SDD)与自底向上分析硬核图解与方法总结
  • 从LAB色度图到膜厚:用奥林巴斯USPM-W做光学镀膜全流程分析指南
  • TVA视觉新范式:工业视觉的百年未有之大变局(7)
  • 2026年5月更新:绵阳家用电梯专业服务机构综合实力盘点 - 2026年企业推荐榜
  • Java程序员速看!转行AI大模型,高薪风口轻松入局_程序员转行AI大模型教程(非常详细)