核心内容摘要
爱情岛独家论坛:解锁心灵的隐秘花园,遇见未知的浪漫
SFT的作用如果没有 SFT监督微调你面对的不是一个“助手”而是一个“复读机”或者“复印机”。
举个例子假如你给一个仅经过预训练Base Model的模型发指令你的输入 “请帮我写一首关于红豆的诗。
”❌ 没有 SFT 的模型可能会这样回答情况 A自动续写 “请帮我写一首关于绿豆的诗。
请帮我写一首关于黄豆的诗。
” 因为它觉得你在玩排比句它在模仿你的文本模式继续往下排。
情况 B补全考卷“答红豆生南国春来发几枝。
愿君多采撷此物最相思。
填空题本诗的作者是____。
” 它在互联网上看过太多试卷以为你是在做考题于是自动补全了后面的填空。
情况 C胡言乱语 “红豆的价格在 2023 年波动较大主要产区位于黑龙江……” 它只是在根据‘红豆’这个关键词提取它脑子里的统计概率知识完全不理会‘写诗’这个指令。
✅ 经过 SFT 后的模型会这样回答“红豆生南国春来发几枝……”或者是它原创的一首诗。
Base Model无 SFT 它的逻辑是“根据你给的上文后面最可能出现的词是什么”。
如果你给它一个问题它可能觉得后面应该出现另一个问题。
SFT Model 它的逻辑是“用户给了我一个指令我应该按照‘问答模式’给出答案”。
SFT训练
1 SFT 训练的本质是什么SFT 的本质是 “分布偏移”。
将模型从“海量知识的概率模拟”转换为“特定交互模式的指令遵循”。
预训练阶段模型学习的是“整个互联网的概率分布”包括废话、错话、排比句。
SFT 阶段模型被强制限定在“高质量回复的分布”里。
概率分布的“强行纠偏”a. 预训练本质学习“世界的语言模型学习互联网上所有文本的概率分布。
在互联网上指令后面往往跟着的是更多的讨论、重复的问题或广告。
在海量无标注数据上进行的预训练其目标是让模型学习并模拟互联网文本的整体概率分布。
这时模型学会的是“如何让一段文本看起来合理、合乎语法和常识”但其行为模式是无目的的续写。
例如给定提示“请解释一下人工智能”模型可能会续写成“请解释一下人工智能是否会在未来取代人类工作”因为它学习到的分布是“解释人工智能”后面经常跟着讨论其影响b. SFT 本质塑造“助手的语言模型通过人类提供的“正确示范”强行改变模型预测下一个词的概率。
它告诉模型当出现“指令”这种特定的模式时后续文本的概率分布必须坍缩到“答案”上。
SFT则使用高质量的“指令-回答”对数据将模型的语言生成分布强行修正并聚焦到一个特定且有用的子集上——即“高质量助手的回答分布”。
它通过一个简单的机制实现在训练时只计算模型输出的“回答”部分与标准答案之间的损失而忽略“指令”部分的损失称为Loss Masking。
这相当于不断告诉模型“当看到这种指令模式时你后续文本的概率分布必须无限逼近我们提供的高质量答案。
”
从“续写”到“对齐”• 续写Completion 只要逻辑自洽后面写什么都行。
• 对齐Alignment 必须符合人类的意图。
SFT 的本质是建立一种契约让模型理解“对话”这种特定场景的逻辑规则。
它并不产生新知识而是激活模型在预训练阶段已经学到、但不知道如何按需输出的知识。
a. 激活而非注入知识模型在训练过程中本质上不是在背诵具体的问答对而是在学习“如何理解指令”。
SFT的核心目标不是向模型注入新的世界知识这些知识主要在预训练阶段获得而是教会模型如何根据指令调动和组织其已有的知识并以人类期望的格式进行输出。
这就像一个博学的学者预训练让他掌握了知识而SFT则教会他如何成为一名优秀的讲师能清晰、有条理地回应学生的问题。
b. 格式化与指令遵循即使你问了一个 SFT 数据集中没有的问题因为模型在 SFT 过程中已经理解了“理解意图 - 提取知识 - 组织语言”的这种工作流程它也能照葫芦画瓢给出像样的回复。
为了实现这一点SFT数据会被处理成特定的对话格式包含如 |im_start|user、|im_end|等特殊标记。
这些标记作为“场景信号”帮助模型识别对话的轮次、角色和边界从而学习到“对话”这一特定任务的交互规则和输出格式。
2 SFT训练流程SFT 的训练过程就是“命题作文”“标准答案”。
它的核心流程分为以下三步
准备“人类精选”数据集这是最关键的一步。
开发者会找成百上千个专业的标注员人类编写数万条高质量的“指令-回复”对。
指令 (Prompt) “请帮我写一段 Python 排序代码。
”答案 (Response) def quick_sort(arr): ...这是由专家写出的、完美的、符合格式要求的回答。
这些数据涵盖了各种场景翻译、创意写作、代码编写、逻辑推理等。
初始化模型我们会把那个“博学但混沌”的预训练模型 (Base Model) 搬过来。
它虽然懂很多词汇但现在我们要把它全身的“经脉”按照上面的标准答案重新梳理。
有监督的学习训练过程把第一步准备好的数据集喂给模型模型会开始玩一个“猜字游戏”但这次有标准答案在旁边盯着输入指令 把“请帮我写一段 Python 代码”喂给模型。
模型预测 模型可能会吐出“Python 是一门...”计算误差 (Loss) 训练算法会对比模型吐出的内容与人类给的标准答案差了多少。
调整权重 (Backpropagation) 如果模型猜错了算法就通过“反向传播”微调模型内部的参数告诉它“下次不许这么写要往标准答案那个方向靠”。
如果模型猜对了就加强这个连接。
训练数据集格式
1 提示-完成格式 (Prompt-Completion)这是最基础的格式适用于输入是单段文本、输出是其延续或转换的任务。
{prompt: 翻译成法语: Hello, world!, completion: Bonjour le monde!} {prompt:
总结以下文本: [长文本输入]..., completion: [简洁摘要]...}训练期间prompt 和 completion 通常会被连接起来有时会带有一个分隔符标记模型学习预测属于 completion 的标记。
2 指令微调格式 (Instruction Format)为了明确训练模型遵循指令数据集通常会进一步细分输入将指令本身与它应操作的任何特定输入数据分开。
这有助于模型更好地泛化到新指令。
{instruction: 识别主要情感。
, input: 这部电影太棒了, output: 积极} {instruction: 写一个关于勇敢骑士的短篇故事。
, input: , output: 吉迪恩爵士调整了头盔山谷中回荡着巨龙的咆哮声……} {instruction: 提取电子邮件地址。
, input: 请通过 infoexample.com 或 supportexample.org 联系我们。
, output: infoexample.com, supportexample.org}• instruction: 具体的任务描述。
• input: 任务的可选补充背景信息若不需要可为空字符串。
• output: 期望模型生成的标准答案。
为模型准备这些数据时这些字段通常使用预定义模板组合成单个提示字符串。
例如以下是描述任务的指令以及提供更多背景信息的输入。
请编写一个适当的回复来完成请求。
### 指令 {instruction} ### 输入 {input} ### 回复 {output}模型随后被训练生成### 回复:后面的文本。
具体模板结构可以不同但数据集内部的一致性很重要。
3 对话格式 (Chat/ShareGPT Format)用于训练聊天模型或助手时数据需要表示多轮对话。
这通常被结构为回合列表每个回合都有指定角色例如user、assistant、system。
{messages: [ {role: system, content: 你是一个乐于助人的助手。
}, {role: user, content: 法国的首都是哪里}, {role: assistant, content: 法国的首都是巴黎。
} ]} {messages: [ {role: user, content: 编写一个计算阶乘的 Python 函数。
}, {role: assistant, content: python\ndef factorial(n):\n if n 0:\n return 1\n else:\n return n * factorial(n-
\n} ]}为 SFT 处理这种格式需要将对话历史序列化为单个线性序列。
这通常需要特殊标记来划分回合和角色。
例如模型可能期望格式化的输入例如|im_start|system\nYou are...|im_end|\n|im_start|user\nWhat is...?|im_end|\n|im_start|assistant\nThe capital is...|im_end|. 模型随后被训练只预测对应assistant消息的标记。
学习资源推荐如果你想更深入地学习大模型以下是一些非常有价值的学习资源这些资源将帮助你从不同角度学习大模型提升你的实践能力。
全套AGI大模型学习路线AI大模型时代的学习之旅从基础到前沿掌握人工智能的核心技能因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取
640套AI大模型报告合集这套包含640份报告的合集涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。
无论您是科研人员、工程师还是对AI大模型感兴趣的爱好者这套报告合集都将为您提供宝贵的信息和启示因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取
AI大模型经典PDF籍随着人工智能技术的飞速发展AI大模型已经成为了当今科技领域的一大热点。
这些大型预训练模型如GPT-
BERT、XLNet等以其强大的语言理解和生成能力正在改变我们对人工智能的认识。
那以下这些PDF籍就是非常不错的学习资源。
因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取