买家售后意图识别模型

面向电商售后场景,针对人工客服依赖经验进行买家需求确认、响应效率较低的问题,构建买家意图识别模型,对退款退货、物流查询等 8 类高频售后需求进行自动分类,实现客服消息智能分流,并通过模型压缩与推理优化满足线上低延迟部署需求。
Python PyTorch MacBERT Scikit-learn ONNXRuntime Flask

项目背景

电商售后客服依赖人工经验确认买家需求,面对退款退货、物流查询等高频诉求时响应效率较低。项目围绕 8 类售后意图建立从数据治理、模型选型与训练,到知识蒸馏、推理压缩、在线服务和人工复核的完整处理链路。

个人职责

  • 数据治理与样本构建:完成 JSONL 数据解析、EDA、数据清洗、买家发言抽取及意图标签标准化,并通过分层抽样划分训练集、验证集和测试集。
  • 模型选型:搭建 TF-IDF + Logistic Regression、FastText、MacBERT 等分类模型,对比分类效果、模型体积及推理延迟,确定 MacBERT + Dropout + Linear 作为基础方案。
  • 模型训练与泛化控制:基于 PyTorch 完成模型训练,使用 AdamW、CrossEntropyLoss 和 Early Stopping,以验证集 Macro-F1 为指标保存最优模型,控制模型过拟合。
  • 知识蒸馏:设计 Teacher-Student 知识蒸馏方案,以 MacBERT 为 Teacher、5 层 Transformer 为 Student,采用 CE + KL 联合损失进行训练。
  • 推理压缩优化:完成 Student 模型 ONNX 导出及 ONNXRuntime 动态 INT8 量化,优化模型体积和单条请求推理耗时。
  • 在线服务与人工兜底:基于 Flask 开发在线推理接口,返回意图类别、预测置信度及推理耗时,设计低置信度样本人工复核机制。

成果展示

  • 构建覆盖退款退货、物流查询等 8 类售后意图的数据集,形成 16 万条有效标注样本;MacBERT 测试集 Accuracy 达到 95.2%,Macro-F1 达到 94.6%,较最佳 Baseline 提升约 3 个百分点。
  • 通过知识蒸馏、ONNXRuntime 推理优化及动态 INT8 量化,将模型体积由 480 MB 压缩至 120 MB,单条推理耗时由 42 ms 降至 18 ms,Macro-F1 仅下降 1.3 个百分点。
  • 基于 Flask 完成在线推理服务,CPU 下接口 P95 延迟达到 23 ms,自动处理覆盖率达到 95%,自动处理样本 Accuracy 达到 96.4%,满足线上使用需求。