返回
Featured image of post DeepFM:异构模型 Wide 侧引入 FM

DeepFM:异构模型 Wide 侧引入 FM

基于Wide & Deep架构改进的CTR预测模型

DeepFM: A Factorization-Machine based Neural Network for CTR Prediction

核心创新

DeepFM通过以下创新解决传统模型的局限性:

  1. Wide侧升级:用FM替代Wide & Deep中的LR
    • 自动学习二阶特征交叉(原始Wide侧需人工特征工程)
    • 保留FM的强记忆能力:$$y_{FM} = \langle w, x \rangle + \sum_{i=1}^{d}\sum_{j=i+1}^{d}\langle V_i, V_j \rangle x_i x_j$$
  2. 参数共享机制:FM与DNN共享Embedding
    • 正则化作用:Embedding需同时满足低阶和高阶特征交互需求
    • 参数效率:相比并行训练FM+DNN减少50%参数
    • 端到端训练:无需FNN式的FM预训练阶段

模型架构

双通道结构

  1. FM通道(低阶特征交互)

    • 一阶项:线性特征权重(特征存在性判断)
      • 表达特征间"或"的关系:每个特征的独立贡献
      • 数学形式:$$\langle w, x \rangle = \sum_{i=1}^d w_i x_i$$
    • 二阶项:隐向量内积(特征共现强度建模)
      • 表达特征间"且"的关系:需要两个特征同时出现
      • 计算优化:$$ \sum_{i=1}^{d}\sum_{j=i+1}^{d}\langle V_i, V_j \rangle x_i x_j = \frac{1}{2}[\left(\sum_{i=1}^d V_i x_i\right)^2 - \sum_{i=1}^d (V_i x_i)^2] $$
  2. DNN通道(高阶特征交互)

    • 全连接网络自动学习高阶特征组合
    • 输入层:与FM共享的Embedding拼接结果
    • 隐藏层:3层ReLU网络(论文实验最优配置)

联合训练

$$ \hat{y} = \sigma(y_{FM} + y_{DNN}) $$

  • 损失函数:交叉熵损失 $$ \mathcal{L} = -\frac{1}{N}\sum_{i=1}^N [y_i\log\hat{y}_i + (1-y_i)\log(1-\hat{y}_i)] $$
  • 优化策略:两通道联合梯度下降(非交替训练)
  • 论文实现细节:对稀疏特征使用Field-aware Embedding

工程实现细节

  1. Embedding层优化

    • Field-aware处理:对不同特征域(field)使用独立Embedding矩阵
    • 稀疏特征压缩:对高频特征进行哈希分桶
  2. 训练策略

    • 优化器:FM和DNN部分统一使用Adam算法
    • 梯度裁剪:设置阈值5.0防止梯度爆炸
    • Dropout:在DNN的最后一层前应用(rate=0.5)

技术优势

维度 Wide & Deep FNN DeepFM
特征工程需求 需要人工二阶特征
参数共享 顺序依赖 完全共享
训练方式 联合训练 分阶段 端到端
特征交互能力 二阶+高阶 高阶 全阶
参数初始化依赖 FM预训练

实验结论

Licensed under CC BY-NC-SA 4.0
© 2023 - 2025 壹壹贰捌· 0Days
共书写了258.6k字·共 93篇文章 京ICP备2023035941号-1