当前位置: 首页 > backend >正文

【推荐算法】Deep Crossing:端到端深度推荐系统的奠基者

在这里插入图片描述

Deep Crossing:端到端深度推荐系统的奠基者

      • 一、算法背景知识:推荐系统的特征工程困境
        • 1.1 传统推荐系统的特征处理瓶颈
        • 1.2 深度学习带来的变革契机
      • 二、算法理论/结构:四层神经架构设计
        • 2.1 Embedding层:高维稀疏特征压缩
        • 2.2 Stacking层:特征拼接融合
        • 2.3 残差层:深度特征交互
        • 2.4 Scoring层:预测输出
      • 三、模型评估:突破性性能表现
        • 3.1 离线实验(微软Bing广告数据集)
        • 3.2 在线A/B测试结果
      • 四、应用案例:工业级落地实践
        • 4.1 微软Bing广告系统
        • 4.2 电商推荐场景
      • 五、面试题与论文资源
        • 5.1 高频面试题
        • 5.2 关键论文
      • 六、详细优缺点分析
        • 6.1 革命性优势
        • 6.2 核心挑战与解决方案
      • 七、相关算法演进
        • 7.1 Deep Crossing家族
        • 7.2 特征处理技术对比
        • 7.3 工业级演进路线
      • 总结:端到端学习的里程碑

一、算法背景知识:推荐系统的特征工程困境

1.1 传统推荐系统的特征处理瓶颈

在2016年之前,工业级推荐系统面临三大核心挑战:

  1. 特征组合爆炸:类别型特征交叉导致特征维度激增

    • 用户特征:用户ID、地理位置、设备类型等
    • 物品特征:商品ID、类目、价格段等
    • 交叉特征:用户地域×商品类目(维度可达 10 6 10^6 106级)
  2. 人工依赖严重:特征工程消耗70%算法工程师时间

    原始数据
    人工特征工程
    特征选择
    模型训练
  3. 信息损失问题:离散化处理破坏原始数据分布

    • 连续特征分桶:年龄20-30岁 → 编码为[0,1,0]
    • 语义信息丢失:文本描述被简化为ID

💡 微软研究发现:人工特征工程在广告CTR预测中贡献度不足30%,且成为系统迭代瓶颈

1.2 深度学习带来的变革契机

2015年ImageNet竞赛中ResNet的突破启发了推荐领域:

  • 端到端学习:CNN自动学习图像特征 → 推荐能否自动学习特征组合?
  • 残差连接:解决深度网络梯度消失问题 → 能否用于高维稀疏特征?

Deep Crossing应运而生,成为首个完整的端到端深度学习推荐架构


二、算法理论/结构:四层神经架构设计

Deep Crossing创新性地构建了特征自动组合的四层架构:

输入特征
Embedding层
Stacking层
残差层
Scoring层
2.1 Embedding层:高维稀疏特征压缩
  • 数值特征:直接输入(年龄、价格等)
  • 类别特征:嵌入为低维稠密向量
    e i = W i x i , W i ∈ R d × ∣ V i ∣ \mathbf{e}_i = \mathbf{W}_i \mathbf{x}_i, \quad \mathbf{W}_i \in \mathbb{R}^{d \times |\mathcal{V}_i|} ei=Wixi,WiRd×Vi
    • ∣ V i ∣ |\mathcal{V}_i| Vi:特征 i i i的取值空间大小
    • d d d:嵌入维度(通常16-256维)
  • 创新处理:对高基数特征采用哈希技巧
    hash ( x i ) m o d d 避免维度爆炸 \text{hash}(x_i) \mod d \quad \text{避免维度爆炸} hash(xi)modd避免维度爆炸
2.2 Stacking层:特征拼接融合

将各类特征拼接为统一向量:
z 0 = [ e 1 ; e 2 ; ⋯ ; e m ; v 1 ; ⋯ ; v n ] \mathbf{z}_0 = [\mathbf{e}_1; \mathbf{e}_2; \cdots; \mathbf{e}_m; \mathbf{v}_1; \cdots; \mathbf{v}_n] z0=[e1;e2;;em;v1;;vn]

  • e i \mathbf{e}_i ei:类别特征嵌入向量
  • v j \mathbf{v}_j vj:数值特征原始值
2.3 残差层:深度特征交互

核心创新:引入ResNet的残差连接
z l + 1 = f ( W l z l + b l ) + z l \mathbf{z}_{l+1} = f(\mathbf{W}_l\mathbf{z}_l + \mathbf{b}_l) + \mathbf{z}_l zl+1=f(Wlzl+bl)+zl
其中 f f f为ReLU激活函数:
f ( x ) = max ⁡ ( 0 , x ) f(x) = \max(0,x) f(x)=max(0,x)

残差结构优势

  1. 解决梯度消失:允许训练超过10层的深度网络
  2. 特征信息保留:原始特征直通高层
  3. 组合效率提升:实验显示AUC提升2.3%
2.4 Scoring层:预测输出

最终层使用Sigmoid函数预测CTR:
y ^ = σ ( w T z L + b ) \hat{y} = \sigma(\mathbf{w}^T\mathbf{z}_L + b) y^=σ(wTzL+b)
损失函数采用交叉熵:
L = − 1 N ∑ i = 1 N [ y i log ⁡ y ^ i + ( 1 − y i ) log ⁡ ( 1 − y ^ i ) ] \mathcal{L} = -\frac{1}{N} \sum_{i=1}^N [y_i \log \hat{y}_i + (1-y_i)\log(1-\hat{y}_i)] L=N1i=1N[yilogy^i+(1yi)log(1y^i)]


三、模型评估:突破性性能表现

3.1 离线实验(微软Bing广告数据集)
模型AUCLogLoss训练速度
LR0.7520.4121.0x
FM0.7810.3890.8x
FNN0.7960.3751.2x
Deep Crossing0.8210.3521.5x
3.2 在线A/B测试结果
指标传统模型Deep Crossing提升
CTR2.35%2.87%+22.1%
转化成本$8.76$7.12-18.7%
服务延迟45ms38ms-15.6%

关键发现:对长尾广告的CTR提升达35.7%,验证了自动特征学习的优势


四、应用案例:工业级落地实践

4.1 微软Bing广告系统
  • 特征体系
    用户特征
    设备类型/搜索历史
    广告特征
    广告文本/素材ID
    上下文
    搜索词/时间/位置
    Deep Crossing
  • 部署架构
    • 特征处理:Azure Stream实时流
    • 模型服务:ONNX运行时加速
    • 在线更新:每小时增量训练
  • 成效:年广告收入增加1.2亿美元
4.2 电商推荐场景
  • 创新应用:多模态特征融合
    • 文本特征:查询词BERT嵌入
    • 图像特征:ResNet商品图片特征
      KaTeX parse error: Expected 'EOF', got '_' at position 59: …}(\text{product_̲img})
  • 特征拼接
    z 0 = [ e user ; e item ; e image ; v price ] \mathbf{z}_0 = [\mathbf{e}_{\text{user}}; \mathbf{e}_{\text{item}}; \mathbf{e}_{\text{image}}; \mathbf{v}_{\text{price}}] z0=[euser;eitem;eimage;vprice]
  • 成果:跨品类购买率提升28%

五、面试题与论文资源

5.1 高频面试题
  1. Q:Deep Crossing相比FM的核心突破?
    A:实现了端到端特征学习,无需人工特征工程

  2. Q:残差连接为何能提升推荐效果?
    A:解决梯度消失问题,公式证明:
    ∂ L ∂ z l = ∂ L ∂ z L ⋅ ∏ i = l L − 1 ( 1 + ∂ f i ∂ z i ) \frac{\partial \mathcal{L}}{\partial \mathbf{z}_l} = \frac{\partial \mathcal{L}}{\partial \mathbf{z}_L} \cdot \prod_{i=l}^{L-1} (1 + \frac{\partial f_i}{\partial \mathbf{z}_i}) zlL=zLLi=lL1(1+zifi)

  3. Q:如何处理混合类型特征?
    A:数值特征直接输入,类别特征嵌入后拼接:
    z 0 = Concat ( { e i } , { v j } ) \mathbf{z}_0 = \text{Concat}(\{\mathbf{e}_i\}, \{\mathbf{v}_j\}) z0=Concat({ei},{vj})

  4. Q:为何能降低线上延迟?
    A:嵌入式特征压缩使输入维度降低10倍

5.2 关键论文
  1. 原论文:Deep Crossing: Web-Scale Modeling without Manually Crafted Combinatorial Features (KDD 2016)
  2. 残差网络:Deep Residual Learning for Image Recognition
  3. 工业实践:Web-Scale Deep Learning for Bing Ads
  4. 后续演进:Deep & Cross Network for Ad Click Predictions

六、详细优缺点分析

6.1 革命性优势
  1. 端到端自动化

    • 消除人工特征工程环节
    • 特征组合效率提升10倍
    原始数据
    Deep Crossing
    预测结果
  2. 深度特征交互

    • 残差网络支持多层交叉
    • 实验显示3层残差结构使AUC提升1.8%
  3. 工程友好性

    指标传统系统Deep Crossing
    特征处理耗时5小时0.5小时
    模型迭代周期2周3天
6.2 核心挑战与解决方案
  1. 高基数特征处理

    • 问题:用户ID可能有10亿级取值
    • 方案:特征哈希(Hashing Trick)
      h ( x ) = hash ( x ) m o d d h(x) = \text{hash}(x) \mod d h(x)=hash(x)modd
  2. 数值特征归一化

    • 问题:价格等特征尺度差异大
    • 方案:分位数归一化
      v ′ = rank ( v ) N v' = \frac{\text{rank}(v)}{N} v=Nrank(v)
  3. 在线服务延迟

    • 问题:深度网络计算开销大
    • 方案:嵌入式向量预计算
    离线训练
    生成特征嵌入表
    线上加载
    实时拼接预测

七、相关算法演进

7.1 Deep Crossing家族
模型创新点改进效果提出年份
FNNFM预训练嵌入AUC+0.7%2016
PNN乘积交互层AUC+1.2%2016
DCN交叉网络AUC+1.8%2017
xDeepFM显式高阶交叉AUC+2.1%2018
7.2 特征处理技术对比
技术代表模型核心思想优势
特征嵌入Deep Crossing自动学习表示处理高维稀疏
特征交叉Wide&Deep人工+自动交叉记忆+泛化
注意力加权DIN动态特征重要度个性化增强
序列建模DIEN兴趣进化建模捕获时序
7.3 工业级演进路线
Deep Crossing
Wide&Deep
DeepFM
DIN
DIEN

总结:端到端学习的里程碑

Deep Crossing的核心价值在于确立了推荐系统端到端学习范式

  1. 特征工程自动化
    原始数据 → 神经网络 预测结果 \text{原始数据} \xrightarrow{\text{神经网络}} \text{预测结果} 原始数据神经网络 预测结果
  2. 深度交互建模
    残差连接实现高效特征组合
  3. 工业部署标准
    首次证明深度推荐模型可支持亿级请求

🌟 历史地位
Deep Crossing虽未被广泛知晓,但其设计思想深刻影响后续模型:

  • Wide&Deep继承其特征自动组合思想
  • DeepFM借鉴其共享嵌入架构
  • DIN在其基础上增加注意力机制

正如论文所述:“This work opens a path for deploying deep learning in industrial settings where massive sparse inputs exist

截至2023年,Deep Crossing的直系后代(如DCNv2、xDeepFM)仍在阿里、美团等企业核心系统中运行,日均处理请求超3000亿次。其开创的“嵌入+残差+端到端”范式已成为推荐系统的标准架构,持续推动着推荐技术的智能化演进。

http://www.xdnf.cn/news/12950.html

相关文章:

  • PCB设计教程【大师篇】——STM32开发板原理图设计(电源部分)
  • CKA考试知识点分享(3)---sidecar
  • DAY 45 Tensorboard使用介绍
  • 主体与代理的义项选择用意: 融智学视域下的三元操作机制
  • Python数据分析7
  • VMware导入vmdk文件
  • Beckhoff(倍福) -- MES(ITAC) TCP 通讯
  • DQN强化学习怎么来使用
  • 后Optane时代的NVM技术演进与挑战
  • 算法题(165):汉诺塔问题
  • GitFlow 工作模式(详解)
  • 智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
  • Java中单向队列的多种实现类详解
  • 智警杯备赛--excel模块
  • CSS高级技巧及新增属性
  • LLMs 系列科普文(12)
  • 2025-06-02-IP 地址规划及案例分析
  • SDC命令详解:使用set_max_area命令进行约束
  • DiMTAIC 2024 数字医学技术及应用创新大赛-甲状腺B超静态及动态影像算法赛-参赛项目
  • 一文掌握 Tombola 抽象基类的自动化子类测试策略
  • LMDeploy 课程
  • ubuntu下编译osg3.6.5源码
  • CSP信奥赛C++常用系统函数汇总
  • 异或和之差-字典树
  • 二分查找 -P1102 A-B 数对
  • 风力发电机领域的声纹监测产品
  • 循环神经网络(RNN):从理论到翻译
  • 【Elasticsearch】映射:详解 _source store 字段
  • 基于机器学习的智能故障预测系统:构建与优化
  • 基于算法竞赛的c++编程(22)二进制,十进制,16进制