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

显式 + 隐式特征交叉融合模型

Wide&Deep

wide部分是一个广义的线性模型。y是预测值,x=[x1,x2,....,xd]是特征向量,w=[w1,w2,.....,wd]为模型参数,b为偏差。特征集包括原始输入特征和转换后的特征。 Wide部分的作用是让模型具有较强的“记忆能力”。

DCN模型

DCN = 显式交叉(Cross)+ 隐式非线性(Deep)

(1)DCN分成4部分。最底下是“Embedding and stacking layer”,中间部分是“Cross network”和“Deep network”,最上面是“Combination output layer”。

(2)DCN模型的显著优缺点是:

  • 优点:提供了显式的高阶交叉特征 (Cross Network);
  • 优点:使用了残差的方式保证交叉特征的有效学习;
  • 优点:特征交叉通过模型自动学习来实现,免去了人工特征工程。
  • 缺点1: 隐式特征交叉,解释性不足。
  • 缺点2: 低效率的特征交叉学习,并不是所有的特征组合都是有效的。

(3)残差连接的具体公式:CrossNet

从上述公式中:是输入,可以看作常数,可以看作是函数F,那么我们换一种写法

上面的写法是不是比较熟悉,他就类似于残差连接的公式。

(4)DCN模型结构如下图所示,主要的模块为:

  • Embedding and Stacking Layer:输入特征的处理,包括embedding处理和concat操作;
  • Cross Network:特征交叉网络,对特征进行显式的有限阶的高阶交叉;
  • Deep Network:DNN层网络,对特征进行隐式的高阶交叉;
  • Combination Layer:结合特征交叉层和DNN层的隐层输出,并输入到预测层。

辅助学习参考:https://zhuanlan.zhihu.com/p/27296033305

DCN-V2模型

DCN-V2模型结构有串行(Stacked)与并行(Parallel/MoE)两种,实际落地时,并行结构(MoE 版)在工业界更为常见,尤其适合大规模推荐与广告排序场景。

(1) DCN-V2 真正的核心改进

原版 DCN 的 Cross Net 有个致命问题:表达能力太弱,交叉方式太受限。

原版 DCN 每层参数是向量 w

​这本质是低秩、线性、受限的交叉

DCN-V2 只改了一件关键事:

把向量 w 换成了矩阵 W,(或矩阵乘法形式)

带来三个真正的提升:

1.交叉不再是简单线性加权,变成更灵活的双线性交互

2.特征之间的交互权重不再共享,表达能力大幅提升

3.仍然保持显式高阶交叉,没有变成黑盒 MLP

(2)对参数矩阵W进行低秩分解

(3)使用MOE结构

当使用矩阵分解的思想降低其参数量后,激发了作者使用MOE进一步增强特征提取能力。MOE通常由两个部分组成:Expert(专家);Gate(门控网络)。DCN-V2利用多个专家分别在不同子空间中学习特征交叉,并使用依赖于输入x的门控机制 自适应 地组合学习到交叉特性。

Expert(专家)部分:在每一层的特征交叉中,由k个转化,每个专家都会经过一个小网络,即组成,其各自的维度可见上图的维度变化,在专家网络计算时,作者没有立即从维度投影回 d(<< d),而是进一步在投影空间中应用非线性变换 来 优化表示,非线性变换即为非线性激活函数,常使用tanh(),所以在计算之间都有一个tanh() 函数。
参考:https://zhuanlan.zhihu.com/p/1922700531165558733

Gate(门控网络)部分:不用把门控网络想的非常高大上,实际就是用来生成每个专家的权重,常使用的Linear 线性网络。

http://www.jsqmd.com/news/609919/

相关文章:

  • Linux:入门开发工具--Git和GDB调试器
  • 电力电子Matlab/Simulink仿真:模块化多电平变换器(MMC)及其控制策略
  • 六种基于AI技术的文献引用生成方案及其在智能管理中的应用分析
  • 从TLS握手到指纹识别:用Wireshark分析Python爬虫的JA3特征
  • 天地图开发实战:批量添加和删除节点的完整代码示例(附效果图)
  • 基于Cruise 2019版及Matlab 2018a的燃料电池功率跟随仿真模型及控制模型搭建
  • 利用AI优化论文引用的六种智能文献管理方法详解
  • 电子系统中电气隔离(Galvanic Isolation)的实现技术与应用场景解析
  • 用Python手把手教你解四皇后问题:从暴力破解到回溯算法的保姆级实现
  • 忍者像素绘卷应用场景:微信小程序‘火影知识问答’+像素答案卡片生成
  • 高薪招聘!13-40K!AI大模型应用工程师,带你玩转AI前沿技术!
  • Linux-Shell算术运算
  • FastAPI单元测试实战:别等上线被喷才后悔,TestClient用对了真香!盒
  • (论文速读)基于信号-图像映射和深度Gabor卷积自适应池化网络的旋转机械智能故障诊断方法
  • Java学习笔记_Day22
  • AKConv卷积模块深度评测:在YOLOv8n/s/m/l/x全系列模型上的涨点效果与推理速度实测
  • 5分钟上手libhv:用自带httpd和curl工具快速搭建本地测试服务
  • 锅炉智能控制系统:西门子PLC与昆仑触摸屏协同工作,CAD电气图纸指导下的技术实现
  • 【UE5】数字人实战:从动捕到物理发型的全链路搭建
  • MyString类的常见面试问题
  • 破解GitHub访问难题:Fast-GitHub 3大核心引擎实现开源项目访问加速
  • Claude Code fileHistory 文件编辑快照与回滚机制深度解析
  • Python 数据处理封神篇:CSV+JSON 全解析,从入门到天气 API 实战
  • 别再只用threshold了!Halcon二值化8大算子保姆级对比(附实战避坑指南)
  • 六种AI驱动的文献引用生成策略在学术研究中的高效应用
  • 【信息科学与工程学】【管理科学】第十六篇 利益设计与分配:从静态薪酬到动态激励生态系统的工程化重构
  • 面向法律文书 Agent 的 Harness 条款冲突检测
  • HJ168 小红的字符串
  • Kali+PHPStudy搭建红日靶场:那些教程里没提的玄学问题解决方案
  • 状态对写题很重要