替代方案分析
用户要完成的事情是“把一批零散反馈整理成能统计、能排优先级的结构”。完成这件事不一定需要 FeedLens。下面比较几类可行方案,说明各自适合谁,以及本项目选择微调小模型的理由和代价。
说明:本文比较的是方案类型,没有对具体商业产品做功能或价格的实测,因此不点名评价某一款产品。
方案对比
| 方案 | 怎么做 | 优点 | 局限 | 适合谁 |
|---|---|---|---|---|
| A. 人工阅读 + 表格 | 人读每一条,手动填类别和备注 | 判断最准;零成本起步;能读出弦外之音 | 耗时随数量线性增长;标准因人而异;难以坚持 | 每周不到几十条的团队 |
| B. 关键词规则 | 维护一份“关键词→类别”的表 | 极快、可解释、无需训练 | 换一种说法就失效;规则越写越多、互相冲突;做不了摘要 | 问题类型很固定的场景 |
| C. 调用通用大模型接口 | 写一段提示词,把反馈发给大模型 | 理解能力强,几乎不用准备数据,能处理长文本和复杂语境 | 按量付费;数据要发给第三方;输出格式和判断口径需要靠提示词约束,可能随模型版本变化 | 量不大、对数据外发不敏感、想最快上线的团队 |
| D. 微调 BERT 类编码器做分类 | 用标注数据训练分类头 | 分类任务上通常是小模型里最稳的选择;推理很快 | 需要真实标注数据;每个标签一个头;不能生成摘要 | 只要分类、不要摘要,且有标注数据的团队 |
| E. 客户之声 / 工单系统自带的智能分类 | 购买成套平台 | 功能完整:多渠道接入、聚类、趋势、权限 | 采购和接入成本高;分类体系通常要适配平台 | 反馈量大、有预算的团队 |
| F. 微调小型生成模型(本项目) | 在 64M 的 MiniMind 上微调,一次生成四个字段 | 本地运行、单次调用成本近似为零;一个模型同时输出分类和摘要;口径由训练数据固定 | 理解能力远弱于大模型;效果完全取决于训练数据;目前只有合成数据 | 想本地运行、任务窄而稳定的小团队;以及想弄清楚小模型能做到什么程度的人 |
与规则基线的实测对比
方案 B 不是假想敌,本项目把它实现了出来(feedlens/baseline_rules.py,约 90 行),并和模型放在同一份测试集上比较。结果见 评测报告。
实测结果:两者打平。 在三标签全对率上,微调后的模型与规则在所有测试集上都没有可分辨的差别(同分布 66.8% 对 71.9%,分布外同为 58.1%)。模型只在情感判断和同分布摘要上明确更好。也就是说,在目前只有合成数据的条件下,“用微调小模型替代规则”这个方案没有被证明成立。
这样做有两个用处:
- 给模型一个必须跨过的门槛。如果微调后的模型在分布外数据上还不如几十行规则,这个项目的技术方案就不成立。
- 帮助判断数据是否太简单。规则在某份测试集上得分很高,说明那份测试集的标签几乎由关键词决定,不足以说明模型的理解能力。
为什么没有选 C(大模型接口)
诚实地说,如果目标只是尽快给团队提供一个可用的反馈整理工具,方案 C 很可能是更好的选择:它不需要训练数据,理解能力更强,上线更快。
本项目选择 F 的理由是:
- 项目目标本身包含“训练一个模型”。我想完整走一遍从任务定义、造数据、训练、评测到上线的流程,并能解释每一步。
- 成本结构不同。大模型按调用量付费,小模型是一次性训练成本加上自有机器的运行成本。调用越频繁、越稳定,小模型越划算。
- 数据不出本机。反馈里常有手机号、订单号、截图中的个人信息。
- 输出口径固定。类别和紧急度的定义由训练数据决定,不会因为换了模型版本而漂移。
代价也很明确:
- 需要自己造数据,而合成数据的质量直接决定了上限。
- 遇到训练中没见过的说法,小模型会比大模型差得多。
- 类别体系一改,就要重新生成数据并训练。
为什么没有选 D(BERT 分类)
如果只做分类,D 在技术上更合适。没有选它是因为:
- 任务里包含摘要,这是生成任务。用编码器的话需要再接一个生成模型,系统变成两个。
- 项目约束是基于 MiniMind,而 MiniMind 是仅解码器的生成模型。
- 一个生成模型同时输出四个字段,接口和部署都更简单。
这是一个取舍而不是结论。合理的下一步是加一个 BERT 类分类器作为对照,看生成式方案在分类指标上损失了多少。这一项记在 项目复盘 的待办里。
可以组合的地方
这些方案并不互斥。一个务实的组合是:
- 先用 F(或 B)在本地做第一遍整理;
- 对格式校验失败、或者模型与规则基线判断不一致的那一小部分,再交给大模型或人工处理。
FeedLens 的接口已经同时返回模型结果和规则基线结果,“两者不一致”可以直接作为“需要人工看一眼”的信号。事后分析支持这个想法:两者三个标签完全一致的样本约占一半,这部分的准确率在同分布测试集上是 94.3%,分布外是 86.5%(评测报告 第 5.1 节)。但这是在合成数据上、看到结果之后才做的分析,还需要用真实数据验证。
本页由 docs/03-alternatives.md 生成。