4. 传统分类方法回顾

在机器学习与深度学习模型大规模应用于采购品类分类之前,企业普遍依赖基于规则的分类方法。这些方法以人工定义的逻辑为核心,通过关键字匹配、正则表达式或脚本自动化实现品类映射。虽然实现成本低、可解释性强,但在复杂采购场景下存在明显的性能瓶颈。

4.1 基于关键字匹配的分类

关键字匹配是最直观的分类方式:为每个品类预定义一组触发词,当采购物料描述中包含这些词时,直接分配对应品类。

示例规则(伪代码):
IF 物料描述包含 "笔记本电脑" OR "台式机" OR "显示器" THEN 品类 = "IT硬件"
IF 物料描述包含 "A4纸" OR "文件夹" OR "订书机" THEN 品类 = "办公用品"
IF 物料描述包含 "轴承" OR "齿轮" OR "液压泵" THEN 品类 = "MRO备件"

这种方法的优点在于规则透明、部署迅速,但存在以下致命缺陷:

  • 语义盲区:无法处理同义词(如“笔记本”可能指电脑也可能指纸质笔记本)
  • 规则爆炸:随着品类数量增加,规则数量呈指数级增长,维护成本急剧上升
  • 零泛化能力:遇到未在规则中出现的新物料描述时,直接分类失败

4.2 基于正则表达式的分类

正则表达式(Regex)在关键字匹配基础上增加了模式匹配能力,可以处理更复杂的文本结构,如型号、规格、尺寸等。

典型正则规则示例:
# 匹配CPU型号
品类_CPU = r'\b(i[3-7]-\d{4,5}[A-Z]?|Ryzen\s[3-9]\s\d{3,4}[X]?)\b'

# 匹配内存规格
品类_内存 = r'\b(DDR[4-5]\s?\d{1,2}GB)\b'

# 匹配工业阀门规格
品类_阀门 = r'\b(闸阀|截止阀|止回阀)\s?DN\d{2,3}\b'

正则表达式相比纯关键字匹配,在以下方面有所提升:

  • 支持通配符、量词、分组,能匹配型号变体
  • 可提取结构化信息(如尺寸、容量、电压)辅助分类
  • 减少部分规则数量,提高匹配精度

但正则表达式仍然无法解决语义歧义问题,且编写和调试成本高,非技术人员难以维护。

4.3 基于Excel/VBA的自动化分类

在缺乏专业分类系统的企业中,Excel VBA(Visual Basic for Applications)常被用作自动化分类工具。通过编写宏,实现批量物料描述的规则匹配与品类赋值。

VBA分类宏核心逻辑(简化):
Function ClassifyItem(desc As String) As String
    If InStr(1, desc, "轴承", vbTextCompare) > 0 Then
        ClassifyItem = "MRO-机械备件"
    ElseIf InStr(1, desc, "电缆", vbTextCompare) > 0 Then
        ClassifyItem = "电气材料"
    ElseIf desc Like "*DN*mm*" Then
        ClassifyItem = "管阀件"
    Else
        ClassifyItem = "未分类"
    End If
End Function

Excel/VBA方案的优势在于零额外成本、业务人员可自行维护。但其局限性同样显著:

维度 Excel/VBA方案 理想方案要求
处理规模 通常 < 10万条,超过则卡顿 百万级/千万级实时处理
规则维护 硬编码在宏中,修改需懂VBA 可视化规则引擎或自动学习
版本控制 文件散落,无版本管理 中心化规则库+版本回滚
错误处理 无日志,出错难追溯 全链路日志+异常告警
扩展性 新增品类需重写宏 增量学习,自动适配

4.4 传统方法的局限性分析

综合以上三种传统分类方法,其核心局限性可归纳为以下五个方面:

  1. 语义理解缺失:无法区分一词多义(如“笔记本”)、上下文依赖(如“泵”在化工vs水务中的差异)
  2. 规则维护成本高:采购物料描述变化快,规则需持续人工更新,大型企业规则数量可达数千条
  3. 泛化能力为零:对未见过的描述、新供应商、新品类完全失效,分类覆盖率通常仅60%-75%
  4. 无法处理拼写/格式噪声:实际采购数据中,物料描述常包含拼写错误、缩写、单位混用等噪声
  5. 缺乏置信度评估:规则匹配只有“是/否”结果,无法给出分类置信度,导致错误分类难以识别
传统规则分类方法局限性全景图 传统规则分类 语义理解缺失 一词多义 / 上下文依赖 规则维护成本高 数千条规则 / 持续人工更新 泛化能力为零 未见描述 / 新品类失效 无法处理噪声 拼写错误 / 缩写 / 单位混用 缺乏置信度评估 只有是/否 / 错误难识别 结论:传统规则方法仅适用于品类少、描述规范的静态场景 复杂采购数据需引入机器学习分类模型
实践警示:某制造企业曾维护超过1200条VBA分类规则,每年因物料描述变更导致约15%的规则失效,需投入2人月进行规则修复。切换到机器学习模型后,分类准确率从72%提升至93%,规则维护工作量下降80%。传统方法在数据量小、品类稳定时仍可应急使用,但不应作为长期战略方案。

4.5 传统方法与机器学习方法的对比

为更直观地理解传统方法的定位,下表从多个关键维度进行对比:

对比维度 基于规则的传统方法 基于机器学习的现代方法
分类准确率 60% - 75%(受规则覆盖度限制) 85% - 95%(持续优化可达更高)
维护工作量 高(规则需人工持续更新) 低(模型可增量学习)
对新描述适应能力 无(必须预先定义规则) 强(基于语义相似度泛化)
可解释性 高(规则透明) 中等(需借助SHAP/LIME等工具)
实施成本 低(Excel/VBA即可) 中高(需标注数据+算法开发)
适用场景 品类少(<50)、描述规范、数据量小 品类多、描述复杂、数据量大