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

AI技术-监督微调SFT

监督微调SFT

监督微调的本质是采用少量的高质量的"指令-回答",针对仅有续写功能的Base模型改造成会对话的小助手。因为模型的知识和能力全部依靠预训练,SFT算法可以激发响应指令分布。所以,这个阶段,提示词的质量远远比数量要重要的多,1000条高质量的精选词条远高于一万条参差不齐的词条所产生的效果好。

核心操作

  1. 使用ChatTemplate拼接多轮对话

  2. 通过LossMask确保模型只进行学习生成回复功能,不去浪费容量来拟合用户提问的分布

Q&A

Q1:SFT的Loss和预训练有什么区别?为什么要Mask掉Prompt部分?

Loss和预训练的目标函数都是NextTokenPrediction的交叉熵,但是SFT算法仅在Response回复部分计算Loss。

具体实现是将Prompt的TokenLabel设置为-100,因为这样就可以让模型不会自发的学习生成用户问题的分布,仅让模型关注于在给定问题下生成回复。

如果不进行Mask的话,模型就会浪费参数容量来拟合用户输入的分布,导致训练集被稀释,严重的可能会造成角色模糊。

Q2:为什么SFT的学习率要比预训练小1-2个数量级?

一般预训练的数据量都是T级别的,需要很大的学习率来快速学习通用的基本知识。但SFT算法的训练数据量比较小,一般就数万条到数百万条并且分布很窄不宽泛,如果学习率比较高,模型就会迅速拟合到SFT的数据上,并冲淡预训练阶段学习掌握到的通用能力,这就会导致灾难性遗忘。因此,SFT学习率通常要比预训练低1到2个数量级,这样就可以采用温和的调整模型行为。

Q3:为什么SFT有时反而会加重模型的"幻觉"?

产生这个问题的主要原因是,如果SFT数据中存在模型在预训练阶段没有接触过的知识,这就相当于告诉模型要在不知道的时候也要给出一个回答,但这个回答肯定是一本正经的胡说八道。因此,SFT的数据尽量落在模型已存在的知识边界内。对于超出边界的问题,SFT数据应该告知模型回答"我不知道",而不是强行胡编乱造答案,否则就会加重幻觉。

SFT算法代码/公式示例

import torch import torch.nn as nn # 假设 input_ids 已通过 Chat Template 拼接完成 labels = input_ids.clone() # 核心:将 prompt (system + user) 部分的 label 设为 -100 prompt_length = len(prompt_tokens) labels[:prompt_length] = -100 # 注意:EOS token 必须保留计算 loss,否则模型学不会停止生成 loss_fct = nn.CrossEntropyLoss(ignore_index=-100) loss = loss_fct(logits.view(-1, vocab_size), labels.view(-1))

文章转载自:

AI技术-监督微调SFThttps://mp.weixin.qq.com/s/Mm0Yl2PEKnIp4Wd5Ykc8Yg

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

相关文章:

  • 2026年7月深圳crm系统/医药crm系统服务公司哪家权威_深圳市咨微信息科技有限公司 - 行业平台推荐
  • Sim2Real技术解析:从仿真训练到现实部署的完整指南
  • 从零搭建TensorRT C++开发环境:g++、CMake与VS Code实战指南
  • 自动化巡检工具的设计:让规范自己检查自己
  • Java后端程序员收藏:大模型应用开发,你的“第二条曲线”已上线!
  • 医院病房订餐系统架构设计与一床一码技术实现详解
  • 2026年7月食堂智能炒菜机/后厨数智化厂家实力推荐_珠海优特智厨(陕西分部) - 品牌宣传支持者
  • 2026年7月西安工业用油/西安抗磨液压油公司靠谱推荐_陕西金好易石化有限公司 - 品牌宣传支持者
  • 2026年7月弯头厂家/沧州无缝弯头公司推荐测评_沧州誉守管件制造有限公司 - 品牌宣传支持者
  • Hutool 库中使用 Pair类返回键值对
  • 2026年7月海南建材灰沙砖/海口加气砖和灰沙砖厂家推荐排行_海南重力建材有限公司 - 品牌宣传支持者
  • 大模型上下文长度:原理、挑战与RAG等主流扩展方案详解
  • png转jpg最简单方法:素材库格式混乱时的一条时间线 - 办公小帮手
  • 【单片机毕业设计推荐】基于 STM32 的超声波测距与智能声光报警监测系统设计,基于 STM32 的带温度补偿超声波测距 WiFi 监测 APP 系统设计(014204)
  • Cursor上安装agent skills --- MAC版本
  • 2026年7月佛山医疗自助终端机/佛山自助终端机机柜行业实力厂家_佛山市锐铠智能科技有限公司 - 行业平台推荐
  • 2026年7月_9.6米冷链车/昆明厢式冷链车厂家怎么选_云南鲜丰达冷链设备有限公司 - 品牌宣传支持者
  • 塔能两相液冷:单CDU支持30+机柜稳定并联,打破两相液冷规模化部署瓶颈**
  • Unity WebGL全屏自适应解决方案:从画布到UI的完整实践
  • 放大器非线性失真研究装置:从原理到实践的硬件设计与算法实现
  • 2026年7月沧州异型法兰定制/碳钢异型法兰厂家口碑榜_沧州誉守管件制造有限公司 - 品牌宣传支持者
  • jpg格式转换:设计稿要透明png时的实测记录 - AI测评专家
  • 新盛公司科技工程开户项目指南
  • 位图结构在集合操作中的性能优势与局限7
  • 2026年7月美国签证/探亲签证公司哪家服务好_济南凯盛商汇商务咨询有限公司 - 行业平台推荐
  • 上海崇明区防水补漏_2026上海生态岛漏水维修避坑指南与五大正规团队推荐 - 雨婺虹房屋维修
  • 嵌入式代码极致优化三板斧:查表法替代计算、循环展开与数据预取的正确姿势
  • 如何在浏览器中免费解锁QQ音乐、网易云加密文件:完整音乐解密指南
  • 【单片机毕业设计推荐】基于 STM32 的红外测温语音报警系统设计与实现 ,基于 STM32 的 GY906 非接触测温阈值预警装置设计(014704)
  • 南安市防水补漏_2026福建闽南侨乡漏水维修攻略与五大正规团队推荐 - 雨婺虹房屋维修