📌 一、为什么商品审核如此重要?
美团平台上架的商户超过 700 万家,日均新增图片/文本内容超过 千万条。如果不进行有效审核,将引发:
- 违规词、敏感图流入曝光,影响平台信誉
- 冒充品牌、恶意导流,干扰商户经营秩序
- 黄色/暴力/低俗内容影响未成年用户
📌 二、审核系统全貌(架构图)
graph TD
U[用户提交商品信息] --> F[内容接入平台]
F --> P[内容分类与预处理]
P --> I[图像识别服务]
P --> T[文本NLP审核]
I --> D[多模态融合引擎]
T --> D
D --> R[审核策略引擎]
R --> A[人工复审 / 自动处理]
📌 三、图像审核引擎
🔍 场景识别模型(DetectFood / DetectScene)
用于识别违规图像场景,比如:
- “色情诱导图”
- “外链二维码图”
- “无实物图”、“低清晰度”
示例模型(PyTorch FasterRCNN)代码:
import torchvision
from torchvision.models.detection import fasterrcnn_resnet50_fpn
model = fasterrcnn_resnet50_fpn(pretrained=True)
model.eval()
def detect_objects(image_tensor):
output = model([image_tensor])[0]
boxes = output["boxes"]
labels = output["labels"]
return boxes, labels
示例图片检测结果(模拟):
- 输入:商品图(含二维码)
- 输出:
{'type': 'QR_CODE', 'confidence': 0.98, 'action': 'block'}
📌 四、文本NLP审核系统
使用场景:
- 商品名、描述、营销文案的合规检测
模型类型:
- 文本分类 + 关键字匹配 + 自定义规则引擎
示例代码:敏感词检测 + 业务规则识别
import re
SENSITIVE_WORDS = ["色情", "私聊", "低俗"]
PATTERNS = [r"加微信\S+", r"扫码领红包"]
def detect_text_violations(text):
for word in SENSITIVE_WORDS:
if word in text:
return f"敏感词:{word}"
for pattern in PATTERNS:
if re.search(pattern, text):
return f"命中规则:{pattern}"
return "合规"
示例输入:
“扫码加我微信送福利!”
→ 输出:命中规则 r"加微信\S+"
📌 五、多模态审核融合:图文联动风控
背景:
很多违规内容 图像+文字联动 出现,如:
- 图上二维码 + 描述诱导加好友
- 实物图配色情暗示文案
处理策略:
- 图文匹配打分
- 异常内容关联标记
- 特征融合建模(BERT + 图像向量拼接)
多模态模型结构简述(伪代码):
img_feat = ResNet50(image)
txt_feat = BERT(text)
fusion = concat([img_feat, txt_feat])
score = MLP(fusion)
📌 六、审核策略引擎:分级处理
| 识别内容类型 | 风险等级 | 审核策略 |
|---|---|---|
| 色情诱导图 | 高 | 自动拦截 +封号 |
| 营销文案违规 | 中 | 进入人工复审流程 |
| 图片质量低 | 低 | 自动打标签提醒商家 |
📌 七、上线效果与性能评估
⚙️ 系统性能指标
| 指标 | 数值 |
|---|---|
| 日均处理图像 | 1200 万张 |
| 平均处理耗时 | 83ms |
| 误拦率 | 0.9% |
| 漏检率 | 1.2%(持续下降) |
📌 八、总结
亮点:
- 🚀 实时多模态审核:图文结合判断,减少误判
- 📦 可插拔策略引擎:支持灵活配置规则/模型组合
- 📈 自学习机制:人工审核反馈用于模型持续训练
- 🔐 风控闭环:自动拦截 → 商户提示 → 工单复审 → 数据回流
📌 九、附录:部署架构简述
- 图像审核:基于 TensorRT 部署,批处理并行处理
- 文本审核:基于 RPC / 服务 Mesh 调用 NLP 服务
- 审核流转:Kafka → Flink 实时路由 → Redis/DB 暂存
- 可观测性:接入 Prometheus + Grafana + Sentry