易歪歪四级分类体系怎么建
建立易歪歪四级分类体系,先明确业务范围与用户画像,按“域—场景—意图—细粒度标签”搭建四层框架;以样本驱动、制定标注规范、人工与模型并行、规则补冷启动、建立治理与版本策略,循环迭代线上验证并用指标把控质量与覆盖度。

为什么需要四级分类体系
简单来说,分类体系不是越细越好,也不是越简单越省事。四级结构既能兼顾宏观导航(哪类业务、哪个领域)又能支持微观决策(具体意图和属性判断)。对易歪歪这样的多场景、跨语种产品而言,四层把问题分解得足够清晰,既能满足搜索、路由、统计,又能为下游模型或规则提供高质量信号。
总体设计思路(用费曼法则来思考)
费曼法告诉我们:要让别人理解,就得把复杂问题拆成最简单的几块,然后逐块讲清楚。构建分类体系的思路也一样:
- 拆解目标:把产品要解决的问题分解为“要识别什么”“识别到什么粒度”“供谁使用”。
- 先粗后细:从宏观域开始,再一步步细化到场景、意图,最后到可执行的标签。
- 样本为王:以真实语料驱动设计,先找真实问题再定义标签,而不是凭空设概念。
- 混合策略:规则+人工+模型并行,利用各自优点应对不同阶段需求。
- 治理与迭代:把版本控制、评估指标和复审流程嵌入体系。
四级结构详解
下面把每一层当成一层“思想楼梯”,一步一步往下看:
一级:领域(Domain)
做什么的整体归类。这是最高层,用来区分不同业务线或大类主题,例如“客服咨询”、“内容投诉”、“商家运营”、“交易纠纷”等。一级决定了后续分类的边界与资源分配。
二级:场景(Scenario)
场景细化了用户触达的具体环境或流程节点。例如在“客服咨询”领域下可以有“下单问题”、“物流查询”、“退款流程疑问”等。场景通常与用户路径或产品模块一一对应,便于路由与埋点。
三级:意图(Intent)
用户想要达到的目的。这层回答“用户想要什么”,例如“查询订单状态”、“申请退货”、“投诉商家”。意图是自动化响应、话术选择、流程触发的核心输入。
四级:细粒度标签(Attributes / Slots)
最底层记录可执行的属性或槽位,如“是否含敏感词”、“退款金额区间”、“是否要求发票”等。四级标签既是训练数据的目标,也是业务规则的判断维度。
| 层级 | 含义 | 示例 |
| 一级(域) | 业务与主题大类 | 客服咨询 / 商家运营 / 内容审核 |
| 二级(场景) | 流程或模块级别场景 | 下单问题 / 物流查询 / 申请退款 |
| 三级(意图) | 用户核心目的 | 查询订单 / 发起退货 / 投诉商家 |
| 四级(标签) | 可执行属性或槽位 | 退款金额、是否补偿、是否含发票 |
如何从零开始一步步建(实操流程)
真实可操作的步骤,像做一道菜,一步一步来:
- 第0步:确定目标与范围。明确要覆盖的业务线、时间窗口、语言与优先级。
- 第1步:抽取代表性样本。从历史日志、客服对话、投诉单、社区帖子中抽样,保证长尾和高频样本都被覆盖。
- 第2步:初步聚类与主题分析。用简单聚类、关键词或主题模型做探索,找出常见话题与边界。
- 第3步:草拟四级结构并征求业务意见。把领域、场景、意图、标签草拟出来,和产品、客服、运营开会调整。
- 第4步:编写标注规范与举例集。详细到每个标签的定义、示例、反例、优先级与冲突解决规则。
- 第5步:小批量标注并测评一致性。进行试标注,计算互标率(Cohen’s Kappa或F1),修正规则与定义。
- 第6步:扩大标注、训练初版模型并上线AB测试。结合规则与模型进行线上小流量验证。
- 第7步:治理、版本控制与常态化采样。定期回溯误判样本并进行迭代。
标注规范要包含什么(关键要点)
- 标签定义:一句话定义+适用范围。
- 正反例:至少5个正例与5个反例,覆盖歧义场景。
- 优先级规则:当一条语句同时匹配多个标签时如何决策。
- 多标签策略:是否允许多标签(多意图),及其合并规则。
- 槽位约定:格式、单位、取值范围与缺失处理。
- 标注者反馈循环:遇到不确定样本有明确上报路径与仲裁人。
规则与模型如何并行(冷启动与长期演进)
我常用的思路是“规则先行,模型追上,规则修正”。
- 冷启动阶段:用高置信度规则覆盖高频用例,保证系统可用性。
- 模型训练阶段:把人工标注的高质量数据用来训练分类器或序列标注模型(如BERT微调),模型覆盖模糊与长尾。
- 混合决策:对高优先级标签采用“规则优先+模型复核”的策略,对低风险采用“模型优先”。
- 主动学习:把模型不确定的样本回流到人工标注池,提升数据效率。
评估与上线验证(哪些指标要看)
别只看一个准确率,那很容易被频繁但无价值的标签欺骗。建议同时看这些:
- Per-label Precision / Recall / F1:关注重要标签的召回和精确度。
- Macro / Micro F1:均衡与整体表现。
- Confusion Matrix:常见混淆对的可视化,找标签边界问题。
- 覆盖率:模型或规则能处理的请求占比(未识别比例需关心)。
- 在线指标:路由准确率、自动化解决率、人工干预率、用户满意度。
- 标注一致性:持续监测Kappa或IAA,保证数据质量。
治理、版本与协同
体系不是一次性工程,建议把治理做成常态化流程:
- 版本管理:每次标签调整都打版本,保持回滚能力与变更记录。
- 变更评审:新标签或废弃标签需通过跨部门评审(产品/运营/客服/法务)。
- 映射策略:当外部系统或第三方数据源更新时,提供标签映射表。
- 退役规则:对于低频标签设立退役门槛并归档示例。
工程落地与工具链建议
实现上可以借助现成工具和自研组合:
- 数据仓库:集中存储原始会话与标签(建议支持多语言、版本字段)。
- 标注平台:支持多标注者、多轮仲裁、导出格式(JSON/CSV)与API接入。
- 训练流水线:自动化从数据到模型到评估到部署的闭环(CI/CD)。
- 监控仪表盘:实时监控覆盖率、在线准确率与误报样本抽样。
常见问题与应对策略
- 标签爆炸:如果四级后标签过多,优先合并低频同义标签,并建立层级聚合查询。
- 语义漂移:随产品变更或季节性事件,语义会变,需定期回采训练集并复训模型。
- 歧义句子:引入多标签与置信度阈值,或触发人工审阅。
- 标注成本高:使用主动学习与弱监督方法优先标注信息量大的样本。
举个真切的例子(把抽象变具体)
想象有一条用户留言“我想退货,但卖家不给我发退货单”,我们按四级来打标签会是:
- 域:客服咨询
- 场景:售后/退货
- 意图:发起退货请求 & 投诉卖家不配合(双意图)
- 标签(细粒度):是否有退货单(否)、是否要求平台介入(可能)、涉金额(小于100元)
这种多层次的描述方便后端分别走自动退货流程、人工介入或投诉转接,并能在统计层面给出更细的指标。
最后的一点工作习惯(我自己常用的小方法)
- 每次新增标签都补5到10个典型示例并写入规范库。
- 把模型不确定样本做定期抽查,优先用于下一轮标注。
- 设立“标签守门人”角色,负责仲裁和保管版本变更记录。
写到这里,我想到构建体系其实很像整理家里的工具箱:先把大类抽屉分好,再把小工具按用途放进去,常用的放容易拿的位置,生僻的打包归档;最重要的是每隔一段时间翻一翻,别让灰尘挡住了好用的工具。
