文本处理核心 20% — 先问”能不能当成分类题”

一句话:90% 的文本需求,都能归约成分类(给一句话打标签)或抽取(从一句话里取字段)。把问题归约清楚,选 BERT 微调还是直接调大模型,答案就唯一了。


🎯 这 20% 能解决哪些问题

常见困惑本质本页答案
中文分词到底要不要做下游任务是否依赖词边界见「中文三个前置处理」
该用 BERT 微调还是直接调大模型数据量、延迟、成本三角见「方案选择表」
准确率 95% 上线却被骂指标与业务目标错位见「评估的四个坑」
同一句话换个说法就判错缺少语义相似度层见「语义相似」
标签只有几百条能用吗少样本可行性与策略见「小样本四条路」

一、中文三个前置处理

处理何时必须做何时可以跳过
分词关键词统计、词性分析、规则匹配用子词/字符级模型(BERT、LLM)时通常不需要
全半角与繁简统一搜索、去重、匹配原文展示
去除噪声(emoji、HTML、多余空白)几乎所有模型输入情感分析需保留 emoji 作信号

分词的两个坑:

  1. 歧义:“南京市长江大桥”可切为”南京市/长江大桥”或”南京/市长/江大桥”。
  2. 未登录词:品牌名、人名、网络新词,统计分词器常切错。

实用结论:做模型就用子词,不做模型才需要分词。分词主要是给规则、搜索、统计场景用的。


二、四类基础任务

任务输入 → 输出典型方法主要难点
文本分类文本 → 标签微调 BERT / LLM 零样本类别不均衡、多标签
信息抽取文本 → 结构化字段NER + 关系抽取 / LLM 结构化输出边界模糊、嵌套实体
语义相似两句 → 相似度句向量 + 余弦 / 交叉编码器否定与反讽
文本纠错文本 → 修正文本序列标注 / LLM 改写过度纠正专有名词

归约示例:

  • “判断这条评价是不是投诉” → 二分类
  • “从合同里提取甲乙方与金额” → 抽取
  • “找出重复工单” → 语义相似 + 阈值

三、方案选择表

条件推荐方案
有 1000+ 标注样本、量大、要求低延迟微调小模型(BERT 级)
样本 < 500 条、需求常变大模型 + 少样本提示
需要输出结构化 JSON大模型 + Schema 约束校验
数据不能出域私有化开源模型微调
需要解释为什么这么判小模型 + 关键词证据 / 规则兜底

成本直觉:微调小模型推理成本约是大模型的 1/10–1/100;但一次微调需要数据、算力与验证,需求未稳定前先用大模型验证可行性更划算。


四、评估的四个坑

坑表现纠正
只看准确率99% 负样本中全判负也有 99%看 Precision / Recall / F1 与混淆矩阵
训练测试同源线上分布一变就崩按时间切分、留出跨领域测试集
标签不一致两人对同一句标不同类写标注规范 + 双人交叉校验
忽略业务代价漏检与误检代价不同用业务权重计算期望损失

小样本四条路:零样本提示 → 少样本示例 → 规则 + 模型兜底 → 主动学习(挑最不确定的样本标)。


五、信息抽取的实操要点

环节建议
定义 Schema字段名、类型、允许值、是否必填,先写清再标注
边界明确”含不含修饰语”,如”约 500 万元”取 500 万元
嵌套是否允许实体嵌套,决定用序列标注还是 Span 抽取
兜底抽取不到时返回空而非编造,配合人工复核队列

LLM 抽取的关键设计:要求输出 JSON、给出字段缺失时的表示方式、提供 2–3 个示例、对输出做 Schema 校验并重试。


六、语义相似与去重

方法优点局限
字面相似(编辑距离、Jaccard)快、可解释换词就失效
句向量 + 余弦语义泛化对否定、数字不敏感
交叉编码器重排精度最高慢,只适合小候选集

实用组合:向量召回 Top-50 → 交叉编码器精排 → 阈值判定。这套结构在去重、FAQ 匹配、工单归并上都通用。


📋 一页速查

问题答案
先用模型还是先分词用模型就不必分词
最常见的归约分类或抽取
有标注数据选什么微调小模型
没数据选什么大模型 + 少样本
主要评估指标分组看 P/R/F1,不只看准确率
去重的标准做法向量召回 + 精排 + 阈值

🔗 相关链接

主题链接
自然语言处理概览自然语言处理
语言模型语言模型核心 20%
机器翻译机器翻译核心 20%
语音识别语音识别核心 20%
提示工程实践提示工程实践