SetFit 内容分类:少量标注稿件如何分栏与复核
待审稿件分栏先从栏目边界和标注样本做起,不要直接把预测结果当作发布决定。本文提供标签表、数据模板、训练与预测流程示意,以及误分检查和人工改判规则;现有资料仅含官…
资料边界与材料准备
本题要解决的是:把已有稿件交给固定栏目对应的编辑,同时避免返回标签之外的内容。先做仅供编辑参考的分流原型,不直接修改正式栏目,也不自动发布。
资料包中的 Hugging Face Blog 索引收录了 2022 年 9 月 26 日的《SetFit: Efficient Few-Shot Learning Without Prompts》,可据此定位 SetFit 少样本学习主题。索引没有提供文章正文、安装依赖、模型语言范围、训练接口或性能记录。因此,下文的表格与分流规则是本文设计的业务模板,训练部分只给流程伪代码,不把未经核对的 API 写成可执行示例。
- 准备现行栏目清单、栏目负责人和已确认归属的历史稿件;先移除无权用于建模的内容与敏感信息。
- 为每篇稿件保留稳定稿件 ID、内容版本及同源稿件组 ID,便于追踪改写、转载和拆分版本。
- 从索引定位上述文章,再补充对应版本的官方训练说明。登记 Python、依赖版本、候选模型、模型修订版本与授权条件,未确认项暂不填写具体值。
- 约定输入形式,例如标题加编辑摘要;摘要由人工确认,训练和预测采用同一拼接顺序,不能一边用全文、一边只用标题。
模型文件正式接入前,可按模型下载前接入检查核对来源、版本与隔离运行条件。
栏目定义与标注划分
以下是业务示例,不代表本站当前栏目配置。示例按内容主题分栏,不能把“新闻”“操作指南”等文章形式与主题标签并列,否则一篇绘图操作稿可能同时符合两个标签。
| 标签 ID | 栏目示例 | 纳入范围 | 排除与冲突处理 |
|---|---|---|---|
| 0 | 写作 | 正文组织、改稿、文字资料处理,以文字交付为主要目标 | 仅为图片填写提示词且最终交付图片的稿件不归此类 |
| 1 | 绘图 | 静态图像生成、编辑与素材处理 | 以完整视频为主要交付物的内容排除 |
| 2 | 视频 | 视频生成、镜头安排与动态素材处理 | 只有静态封面制作的内容归绘图 |
先让两位编辑独立判断一批边界稿,再逐条讨论分歧。无法确定主要交付物、同时覆盖多个主题、内容残缺或不在业务范围内的稿件,进入人工复核,不强塞给某个栏目。“人工复核”在这里是队列状态,不是训练标签,也不表示模型已经具备未知类别识别能力。
标注模板与独立数据划分
每行记录一篇稿件的固定输入版本。下面三行是原创格式示例,不是足以训练或验收的数据集;正式数据应覆盖不同来源、表达方式、长度和容易混淆的边界。
draft_id,group_id,text,label,split,label_version
D001,G001,把访谈纪要整理为文章并核对信息归属,0,train,v1
D002,G002,更换商品图片背景并保留产品外形,1,validation,v1
D003,G003,安排短片镜头并检查动态素材连续性,2,test,v1- 按标签定义逐篇标注;另设复核表,保存标注人、裁决结果与理由。存在争议的样本先裁决,再进入有监督数据。
- 把同稿改写、同一来源事件的近似稿和拆分片段归为同组,先按组划分,再分别导出训练集、验证集和测试集。
- 训练集用于拟合;验证集用于选择模型、配置及复核分流条件;测试集在方案冻结后使用,不能拿它反复挑选参数。
- 检查三个集合的稿件 ID、同源组和近重复文本是否交叉,并逐类检查覆盖情况。样本不足时继续补标,不为了凑比例复制样本。
- 单独保留范围外与混合主题稿,用来检查人工复核流程;它们不混入仅含三个已知标签的混淆矩阵。
不设“每类几条就一定够用”的承诺。起步数据量由可用标注与栏目难度决定,是否需要增加样本,要结合验证集中的具体错误判断。
训练与预测衔接
对中文稿件,应先核对候选模型说明是否覆盖中文、输入长度是否适合稿件摘要,以及所选 SetFit 版本是否支持该模型组合。资料包未确认任何具体底模,不能直接把英文示例底模视为中文稿件的推荐方案。
以下为训练与预测的接口无关伪代码,不是 Python 程序,不能直接运行。其中的过程名称由本文定义,不是 SetFit 官方函数名;应在补充官方正文与版本说明后替换成已确认调用。
标签表 = 固定映射(0: 写作, 1: 绘图, 2: 视频)
训练数据 = 读取并校验(train)
验证数据 = 读取并校验(validation)
断言 标签合法、文本非空、同源组不跨集合
候选分类器 = 按已核对版本创建SetFit模型(候选底模)
候选分类器 = 按官方流程训练(候选分类器, 训练数据)
验证结果 = 按官方流程预测(候选分类器, 验证数据的文本)
根据验证错误选择配置与复核规则
保存模型、标签表、预处理规则及版本记录
新稿输入 = 按相同规则组织(标题, 编辑摘要)
预测结果 = 按官方流程预测(已保存模型, 新稿输入)
标签ID = 按已确认的返回类型转换(预测结果)
标签不在标签表内时转入人工复核
合法标签仅写入建议栏目字段- 先用训练数据完成一次小规模训练,记录配置、随机种子与数据版本,不在此阶段接入正式后台。
- 在验证集上检查预测返回类型、批次长度与稿件 ID 的对应关系,再明确标签值如何映射到业务栏目。
- 归档模型后重新加载,使用固定输入检查标签映射与预处理是否保持一致。
- 完成独立评估前,所有输出只作为编辑建议。能返回合法标签,不等于栏目判断正确。
当前交付不包含可执行 SetFit 训练代码,也没有模型预测结果。补齐指定版本的官方安装、训练、保存、加载与预测说明,是把该原型升级为可运行项目的必要前提。
误分分析与待审分流
冻结模型和分流规则后,逐篇对照独立测试集的人工标签与预测标签。混淆表以行为人工标签、列为预测标签,固定按 0、1、2 排列,并同时保留样本总数。某类没有测试样本时,明确标记未覆盖。
下面是人工构造的读表示例,用于说明分析方法,不是任何模型的评估结果。
| 人工标签与预测标签 | 写作 | 绘图 | 视频 |
|---|---|---|---|
| 写作 | 8 | 2 | 0 |
| 绘图 | 1 | 7 | 2 |
| 视频 | 0 | 3 | 7 |
在这个构造示例中,视频行的绘图列为 3,含义是三篇人工判为视频的稿件被分到绘图,应回看它们是否只在标题中强调封面、摘要是否遗漏动态交付目标,或栏目定义是否存在歧义。这些只是排查方向,不能未读原稿就认定原因。
- 导出所有误分项:稿件 ID、人工标签、预测标签、输入版本、模型版本和复核备注。
- 逐栏统计精确率、召回率及样本数。某栏精确率低,表示分进来的稿件中混入较多其他栏目;召回率低,表示该栏稿件较多被分走。
- 将错误区分为标注争议、输入信息不足、同源泄漏、样本覆盖不足与模型判断错误,再指定修正动作。
- 测试集一旦用于指导下一轮改进,就将其视为已查看的回归集;下一次最终验收另留未参与调整的新数据。
待审队列与人工改判
原型阶段采用全量人工确认。下面是本文设计的后台记录示例,建议栏目只表示候选归属,不是已确认的预测输出。
{
"draft_id": "D104",
"input_version": "v3",
"suggested_label": 1,
"label_version": "v1",
"model_version": "candidate-a",
"queue": "manual_review",
"review_status": "pending"
}- 空文本、正文解析失败、范围外内容和混合主题稿直接进入人工复核;业务规则只能发现部分情况,不能保证识别所有范围外稿件。
- 模型加载失败、预测异常或标签映射不合法时,不写入建议栏目,保存失败原因并继续保留原稿状态。
- 合法预测进入对应编辑的待审视图,编辑可确认或改判;人工最终栏目与模型建议分字段保存。
- 保存复核人、时间、改判理由和输入版本。稿件修改后重新评估,不用旧输入的预测覆盖新版本的人工决定。
- 以后需要减少复核量时,只在所用版本确有已核对的评分输出后,用验证集制定分流条件;分数不能直接当作正确率,也不能仅凭高分排除范围外内容。
常见故障与修正
| 故障 | 可能原因 | 修正动作 |
|---|---|---|
| 安装或创建模型时报错 | 旧文章示例与当前依赖、模型组合不匹配 | 核对指定版本说明,在独立环境复现,记录依赖;不盲目混用新旧接口 |
| 大量稿件集中到同一栏 | 标签读取错误、类别失衡或样本表达单一 | 先打印各标签样本数和映射,再抽查原始文本,补充不同表达的代表稿 |
| 离线表现好,待审稿频繁误分 | 同源稿跨集合,或线上输入与训练输入不一致 | 按同源组重新划分,并对照标题、摘要与预处理版本 |
| 绘图与视频互相误分 | 摘要只强调封面,或标签边界未说明最终交付物 | 回看原稿,补全输入并修订边界例句;无法裁决的稿件保持人工复核 |
| 显示栏目与预测 ID 不对应 | 标签表被重排,或模型与后台使用不同版本 | 将模型与标签表成套发布,校验版本,不按显示位置临时推断标签 |
| 无关稿件也得到合法栏目 | 把固定标签选择误当成范围外检测 | 保留范围检查、人工复核与异常回退,不让合法标签自动触发发布 |
发布前验收
- 资料完整:已补齐所用 SetFit 版本的官方操作说明,并确认依赖、底模语言范围、授权与输入限制。
- 标签可解释:栏目定义互斥,边界稿有裁决记录,不适用内容有人工处理入口。
- 数据独立:训练、验证和测试没有同源组交叉,近重复已检查,各栏目测试覆盖与缺口已列明。
- 结果可复查:已归档独立测试的混淆表、逐栏指标和误分清单,不将本文构造示例写成项目成绩。
- 接口可核对:预测批次与稿件 ID 一一对应,模型、标签表和预处理版本一致,重新加载后已核验。
- 复核可操作:编辑能确认和改判,改判理由可追踪,模型建议不会覆盖人工最终决定。
- 故障可回退:加载失败、空输入、非法标签及新稿版本都不会自动改栏或发布,停用模型后仍能人工分流。
当前资料条件下,可先完成栏目表、标注模板与人工队列设计;补齐版本资料并产出独立评估记录后,再决定是否启用模型辅助分流。本文没有准确率、训练时长或节省人工量的结论。
下一步
把这篇的方法练一遍
提示词和步骤可以带到创作里直接试做一版。