为什么规则匹配做不好数据分类,AI 原生做法差在哪
正则 + 关键词字典曾是数据分类的主流方案。它在 demo 里完美,在生产库里漏判误判。本文讲清楚规则方案的天花板在哪,以及 AI 原生方案如何越过它。
如果你给数据分类系统做过 POC,大概率经历过这个曲线:demo 阶段准确率 95%,接入真实库直接掉到 60%。
掉的那 35% 不是 bug,是规则方案的结构性天花板。
规则方案为什么会塌
关键词匹配的逻辑是:维护一张 字段名 → 级别 的字典,扫库时查表。它假设了两件在真实世界不成立的事:
假设一:字段名诚实。 真实库里字段名五花八门——usr_idno、cust_credential、f_sfzh(身份证号拼音首字母)。字典再大也覆盖不全。
假设二:字段名足够。 id_card_type 含 "id_card" 关键词,但存的是证件类型枚举,不是号码本身。纯字段名匹配必然误判。
规则方案在字段名规范、schema 受控的内部系统里依然好用、便宜、可解释。问题出在面对异构、历史包袱重、命名混乱的真实数据资产时——而这恰恰是大多数企业的现状。
AI 原生做法的核心差异
DataConnGo 的引擎不查字典,它读懂字段。对每个字段,它综合四类信号:
1. 字段名 id_card_no / usr_idno / f_sfzh —— 都能识别
2. 字段注释 "用户实名身份证号"
3. 样本数据 330102199001011234(脱敏后)
4. 表上下文 同表有 real_name、phone → 实名场景四个信号送进模型,输出不只是级别,还有 判定依据和置信度。字段名混乱时,注释和样本顶上;没注释时,样本和上下文顶上。任何单一信号失效,整体仍然稳。
不是匹配,是理解
这是两种范式的根本区别:
| 规则匹配 | AI 原生理解 | |
|---|---|---|
| 输入 | 字段名 | 字段名 + 注释 + 样本 + 上下文 |
| 字段名混乱 | 漏判 | 靠其他信号补 |
| 输出 | 级别 | 级别 + 依据 + 置信度 |
| 新行业 | 重写字典 | 加知识库规则 |
| 可辩护性 | "字典里是这么写的" | "基于三个信号 + 命中法条" |
AI 不是黑盒
最常见的质疑是:"AI 定级,监管认吗?" 这其实是个可解释性问题,不是 AI 能力问题。
DataConnGo 的设计原则是 每个 AI 结论都附带可复核的依据链:命中了哪条规则、哪条法条、各信号的贡献、可复核的脱敏样本。审计时拿出来的不是"模型说的",而是一条能逐步回溯的证据链。
AI 负责把混乱字段读懂、把依据组织好;人负责审边界 case、定行业口径。这才是 AI 原生该有的分工。
怎么选
- 字段命名规范、库结构受控、预算敏感 → 规则方案够用
- 异构数据源多、历史库命名乱、需要可辩护报告 → AI 原生
大多数做合规的企业属于第二类。规则方案的 60% 准确率,省下的成本最后都还给了人工返工。