Deep & Cross Network(DCN)在 2017 年由 google 和 Stanford 共同发表的一篇论文中被提出,类似于Wide & Deep Network(WDL),是用复杂网络预估CTR的一种方法。

特征工程一直是许多预测模型成功的关键。许多有效的特征都来自于原始特征的交叉组合。在WDL中,wide侧的交叉组合特征依然需要依靠hand-craft来完成。而DCN能对sparse和dense的输入自动学习特征交叉,可以有效地捕获有限阶(bounded degrees)上的有效特征交叉,无需人工特征工程或暴力搜索(exhaustive searching),并且计算代价较低。

DCN是一个可以同时高效学习低维特征交叉和高维非线性特征的深度模型,不需要人工特征工程的同时需要的计算资源非常低。

DCN网络结构

DCN模型以一个嵌入和堆叠层(embedding and stacking layer)开始,接着并列连一个cross network和一个deep network,接着通过一个combination layer将两个network的输出进行组合。

[深度学习] Deep & Cross Network (DCN)

 

可以看到DCN分成4部分。最底下是“Embedding and stacking layer”,中间部分是“Cross network”和“Deep network”,最上面是“Combination output layer”。下面分别对每个部分进行讲解

 

嵌入和堆叠层 Embedding and stacking layer

这一层是模型的输入层。我们知道输入的特征分为稠密和稀疏特征。

考虑具有稀疏和稠密特征的输入数据。在网络规模推荐系统的CTR预测任务中,输入主要是分类特征,如“country=usa”。这些特征通常是编码为独热向量one hot encoding 如[0,1,0];然而,这通常会产生超高维度的特征空间。为了减少维数,我们采用嵌入过程将这些二进制特征转换成实数值的稠密向量(通常称为嵌入向量)

最后,将稠密特征和经过转换的稀疏特征对应的稠密向量concat起来组成模型的最终输入,也就是图中的x0

 

交叉网络 Cross Network

在cross network里面我们主要使用以下的公式进行一层一层的叠加:

[深度学习] Deep & Cross Network (DCN)

假如我们要叠加3层,则每一层计算如下

[深度学习] Deep & Cross Network (DCN)

在完成一个特征交叉f后,每个cross layer会将它的输入加回去,借鉴了残差网络的思想。

[深度学习] Deep & Cross Network (DCN)

w和b是我们要学习的参数,可以看到在cross network里面,输入和输出的维度是一样的。

为什么这么设计?

cross network为1层的时候,我们可以得到的最高是2维的特征交叉;cross network为2层的时候,我们得到的是最高3维的特征交叉;cross network为3层的时候,我们得到的是最高4维的特征交叉;以此类推。。。

特征的高阶交叉(high-degree interaction):cross network的独特结构使得交叉特征的阶(the degress of cross features)随着layer的深度而增长。对于第l层layer,它的最高多项式阶(在输入 x0上)是 l+1。

因此cross network以一种参数共享的方式,通过对叠加层数的控制,可以高效地学习出低维的特征交叉组合,避免了人工特征工程。

 

深度网络

交叉网络的参数数目少,从而限制了模型的能力(capacity)。为了捕获高阶非线性交叉,我们平行引入了一个深度网络。

深度网络就是一个全连接的前馈神经网络,每个深度层具有如下公式:

[深度学习] Deep & Cross Network (DCN)

 

Combination Layer

最后,将cross network和deep network的输出concat起来,通过一个logit层,对于一个二分类问题,公式如下图所示

[深度学习] Deep & Cross Network (DCN)

 

总结

DCN主要有以下几点贡献:

  • 提出一种新型的交叉网络结构,可以用来提取交叉组合特征,并不需要人为设计的特征工程;
  • 这种网络结构足够简单同时也很有效,可以获得随网络层数增加而增加的多项式阶(polynomial degree)交叉特征;
  • 十分节约内存(依赖于正确地实现),并且易于使用;
  • 实验结果表明,DCN相比于其他模型有更出色的效果,与DNN模型相比,较少的参数却取得了较好的效果。

 

 

参考:

  1. https://zhuanlan.zhihu.com/p/43364598
  2. https://zhuanlan.zhihu.com/p/138358291

分类:

技术点:

相关文章: