目录 · 1 节
1DS-MLP 深度解读:用知识蒸馏把特征交互压进纯 MLPDS-MLP 深度解读:用知识蒸馏把特征交互压进纯 MLP
1. 问题与动机
CTR 预估里主流是"双流"架构(一路显式特征交互、一路隐式 DNN),但人大 RUCAIBox 指出两个毛病。其一高复杂度:直接枚举预定义阶数内的所有特征组合,特征空间随阶数指数膨胀,高阶交互建模代价极高且易过拟合。其二两路融合失衡:显式交互的输出数值范围会随参与特征数增多而被放大,隐式交互的输出则趋于衰减,导致某一路在特定情形下主导最终预测、压制另一路。作者由此质疑:是否真的需要专门的复杂交互算子,还是可以用结构最简单、工业最友好的 MLP 把交互能力"学过来",从而在保住精度的同时大幅简化 serving。
2. 方法详解
DS-MLP 两阶段训练。阶段一 知识蒸馏:用一个强 teacher(GDCN,门控深度交叉网络,φ_GDCN=φ_GCN+φ_DNN)去教一个轻量主 MLP(student,三层 [600,600,600])。蒸馏损失在 teacher 与 student 的目标知识间最小化 BCE,联合目标 L=L_CTR+λ·L_KD,λ 在 {0.1,0.5,1.0,1.5,10} 搜索。这一阶段把"显式特征交互"的归纳偏置注入主 MLP,teacher 冻结、只更新 student。阶段二 双 MLP 对齐:再加一条并行 MLP 捕获主流忽略的隐式交互,预测 ŷ_dual=σ((y_M+y_P)/2)。为防一路主导,设计两类对齐:(a) 隐状态对齐——对中间层做 batch normalization,把两路隐状态拉到可比尺度;(b) 预测对齐——分支各自的 CTR 损失强制一致性。组合损失 L=L_CTR+α·L_M+β·L_P,α,β∈[0.5,1.5]。梯度流上,主 MLP 只在阶段一更新(teacher 冻结),两路都在阶段二对齐阶段更新,利于分布式训练。整体框架 teacher-agnostic,可换任意 SOTA CTR 模型当 teacher;论文还给理论:在光滑性与过参数化假设下,MLP 可通过蒸馏以有界近似误差恢复显式特征交互——这是"MLP is all you need"标题的支撑。
3. 核心技术贡献
(1) teacher 无关框架:可插任意 SOTA CTR 模型作 teacher,保证方法不过时(future-proof)。(2) 知识固化:用蒸馏把显式交互模式搬进主 MLP,不引入额外结构复杂度,单 embedding 表即可。(3) 双流对齐损失:用隐状态 BN + 分支预测一致性两类对齐,解决输出主导、保证两路互补(主 MLP 学蒸馏来的显式交互,并行 MLP 学数据驱动的隐式交互)。(4) 理论支撑:给出 MLP 在光滑性假设下恢复显式交互的有界误差论证。
4. 实验结果分析
三个公开基准:Criteo(4580 万样本、39 域、210 万特征)、Avazu(4040 万、22 域、150 万)、MovieLens(200 万、3 域、9 万),对比 20+ 方法(DCNv2、FinalMLP、GDCN、xDeepFM、AutoInt+、WuKong、SFG 等)。AUC/LogLoss:Criteo DS-MLP 0.8152/0.4366 优于 FinalMLP 0.8147、GDCN 0.8137;Avazu 0.7670/0.3657 优于 FinalMLP 0.7659;MovieLens 0.9752/0.1971 优于 FinalMLP 0.9716、GDCN 0.9685。绝对 AUC 增益 +0.0015(Criteo)/+0.0022(Avazu)/+0.0036(MovieLens)——在 CTR 领域 0.001 AUC 即被视为显著。消融(MovieLens):去对齐损失 −0.49% AUC(影响最大)、去 student MLP −0.83%、去并行 MLP −0.62%、去 KD −0.37%,四个组件都不可省,对齐损失最关键,说明"防两路失衡"比"加一路"更重要。兼容性实验换 5 个 teacher(AutoInt 0.9688→0.9734、DCNv2 0.9690→0.9728、FinalMLP 0.9716→0.9752 等)均稳定提升(RelaImpr 0.4–3.6%)。效率上 DS-MLP 延迟 59.43ms(Criteo)/25.89ms(Avazu),与 FinalMLP(56.71/21.03ms) 同量级,相对 teacher GDCN(45.02ms) 仅小幅开销。可扩展性上 GDCN 随参数增长饱和甚至下降,DS-MLP 通过加宽/加深隐层持续提升,显示更抗过拟合、scaling 更可控。
5. 局限与未来方向
作者未明列局限。可见约束:效果上界受 teacher 容量限制(teacher 弱则 student 弱);λ、α、β 需按数据集调(Criteo/Avazu/MovieLens 各不同);两阶段训练 + 并行 MLP 推理带来一定开销;理论保证依赖"充分光滑"与过参数化假设,实际不一定满足;缺少工业大规模在线 A/B 验证,目前为公开数据集结果。
6. 工业实践意义
对延迟敏感的排序链路,这是一条务实简化路径:先用复杂 teacher(GDCN 等)训出交互能力,再蒸馏到纯 MLP student 上线。纯 MLP 主干在现代深度学习库里高度优化、算子简单、易量化、易上 GPU/CPU,单 embedding 表即可,实现与维护成本低,延迟≤60ms(4580 万样本级),对社区搜索这种 QPS 高、特征维度大的排序场景尤其友好。可直接复用的设计点:用 teacher-agnostic 蒸馏替代手工设计交互算子,未来换更强 teacher 即可平滑升级;用隐状态 BN + 分支预测一致性两类对齐防止显式/隐式两路失衡——后者是很多双流模型上线后效果不稳的常见根因。代码已开源 RUCAIBox/DS-MLP,可低成本复现验证。落地需注意 λ/α/β 要在自有数据上重搜,且两阶段训练流程比单模型略重,需在训练管线里预留 teacher 训练与蒸馏两步。