AI 产品必看的大模型微调的劝退指南丨数据成本到底有多吓人?实战笔记

哈喽,大家好👏🏻
我是阿星!
接上回啥时候上RAG?啥时候上微调?丨实战笔记里说到的——
📈 CFGPT: Chinese Financial Assistant with Large Language Model


这只是量级上的吓人,况且微调对数据的要求比 rag 要严。
下面就是几种常见的微调方式(不严谨地暂且这么分类),为什么会让工程难度增加。
不管你是不是 AI 产品经理,都应该过一眼,了解清楚这些东西的原理,
这样别人跟你说微调的时候,你就可以根据这些分类,做到心中有数。
CPT:
CPT 是通过引入更多垂直概念对应的解释文本,来让模型学会新知识
先说成本,数据量、数据质量要求都很高,可能你都找不到这么多数据
1000 万 token 约 1500 万字的训练数据集起步
需要是纯文本段落,段落长短大概是 2k-128k,不能太长也不能太短,需要根据你的底模来选
训练时长上,看模型和硬件水平,短的话几十个小时,多的话好几天也有
示例代码如下,来自百炼云
SFT-文本模型微调
简单说 SFT 是通过 QA 对来引导模型按制定结构和风格生成
至少 1000 个 jsonQA 对,不能低于这个数,可以是单轮也可以是多轮
回答文案质量要求非常高
不能只是用垂直领域的资料,需要有通用的知识,防止过拟合只是专注于你的问题把别的忘了以至于无法回答通识问题了
我们可以在每个 QA 对进行 system 提示词约束角色
SFT 有全参也有 LoRA,全参质量好但是慢,后者快但是效果弱
时间上,少的几十分钟也可以训练完
示例代码如下,来自百炼云。不同微调工具的数据集要求可能有点区别
SFT-视觉理解微调
视觉理解比文本的微调现在更是急需的,因为文本类模型已经比较成熟了,而且可以用 rag 代替一部分文本微调。但是高参的图像模型没有文本类的模型那么多,所以现在图像理解的微调反而是重要的一部分。
比如 LaTeX 的图像识别,需要极高的准确性,所以我们需要微调来实现,禁止模型自由发挥公式。
基本最少 1000 多个提问+回答对(也看规模像这个公式识别项目的微调要 10 万条)
你可以是单轮也可以是多轮问答对
可以是单张,也可多张作为问答对象
不是所有模型都支持图片最大分辨率 1024,有的只支持 512
最需要注意的是,图片的很多内容是人类语言没法概括的。比如笑里藏刀,把笑里藏刀提供给了模型,模型把笑里藏刀对应到了普通的微笑上。属于特殊 case 需要另外处理。

DPO
DPO 就是通过负面回复教会模型不该做什么。
只用一两百条数据也可以进行微调。对比 SFT 有的大一点图像理解项目可能达到十万条、手写体 100k 的完整数据集这种数量。
主要考验你给的 QA 对质量,先看字段 chosen、rejected。你看下面的 rejected 其实不是正面拒绝,你可以自己设置成更直接的。
但是 DPO 比结构化提示词里的 constrain 要更加好一些,模型看提示词的时候受模型注意力机制的影响,不一定能识别你的 constrain,甚至可能事得其反。但是放在微调里就会好一些,但是错误回答的示例也是需要你花时间成本设计的。。我们之前看到的提示词工程、提示词微调,其实是比较过渡的做法。
版权声明: 本文为 InfoQ 作者【阿星AI工作室】的原创文章。
原文链接:【http://xie.infoq.cn/article/25a6242e0284e0eeab07efaf2】。未经作者许可,禁止转载。
评论