本文共 1539 字,大约阅读时间需要 5 分钟。
谷歌提出的 wide&deep 模型为 ctr 预估框架提供了全新的思路。本文将从 wide&deep 和其改进版本 DeepFM、DCN 三个模型入手,序贯阐述它们的核心原理与学习范式。
Google 在 2016 年提出的 wide&deep 模型旨在协调.memorization(记忆)与.generalization(泛化)的关系。在推荐系统领域,这个问题被称为探索与利用(E&E)问题。记忆能力的代表是一致的用户行为模式,而泛化能力则体现了模型对上下文环境变化的适应性。
wide 模块运用传统的线性模型,主要负责记忆功能。通过特征筛选,可以精准捕捉已知的用户行为模式。然而,其局限性在于难以发现长尾模式或未被覆盖的关系,导致泛化能力较弱。
deep 模块则采用业界常见的 embedding + MLP 架构,专注于拓展任务。通过向量表示,可以实现模糊匹配,使得模型不仅能捕捉用户行为模式,还能适应复杂的上下文环境。然而,deep 部分可能会出现泛化过度的问题。
wide 和 deep 部分通过联合训练得到最终预估结果。wide 部分采用 L1 正则化的 FTRL 优化算法,确保模型稀疏性。deep 部分则使用 Adagrad 优化器,能够更好地适应稀疏特征。
DeepFM 是对 wide&deep 模型的改进。它通过将 wide 部分替换为 Factorization Machine(FM),实现自动特征交叉。FM 模块通过隐变量学习稀疏特征嵌入,适合用于离散特征场景。
FM 模块通过因式分解机(Factorization Machine)学习特征间的关系,充分挖掘低阶特征组合特征。
深度部分采用前馈神经网络,输入为特征嵌入向量。通过激活函数(如 ReLU)和隐藏层的非线性变换,学习高阶特征组合。
DeepFM 进行联合学习,输出结果经过 logistic 函数转化为概率形式。
DCN 是对 wide&deep 模型的另一个改进,它将 wide 部分替换为 Cross Network(CROSS!");
Cross Network 主要功能是自动进行有限高阶特征交叉。通过层叠结构,可以处理从一阶到高阶的特征交叉,并通过参数共享降低模型复杂度。
DCN 进行联合训练,通过拼接 Cross Network 和 Deep Network 的输出,得到最终预测概率。
模型 | 特点/.优势点 | 不足点/劣势点 |
---|---|---|
wide&deep | 同时具备记忆与泛化能力;微调灵活性高 | 人工特征交叉,维度膨胀,部署复杂 |
DeepFM | 二阶特征交叉自动化,模型种类数减少 | 对特征稀疏性要求较高,性能优化依赖于特征设计 |
DCN | Cross 模块自动高阶特征交叉,参数共享能力强 | 高阶特征交叉有限,不支持像 FM 那样灵活的特征设计 |
从技术演进来看,wide&deep 为 ctr 预估框架奠定了关键要素。其改进版本——DeepFM 和 DCN——主要通过自动化特征交叉机制,解决了 wide 部分的人工特征设计痛点。未来,随着模型架构的不断进化(如Sparse attention、Graph-based 方法等),ctr 预估框架的技术呈现多元化趋势。建议读者关注我的后续文章,将从经典的高阶模型入手,深入探讨不同预估框架的设计哲学。
转载地址:http://woeyk.baihongyu.com/