1、原理
Deep&Cross Network模型我们下面将简称DCN模型:
一个DCN模型从嵌入和堆积层开始,接着是一个交叉网络和一个与之平行的深度网络,之后是最后的组合层,它结合了两个网络的输出。完整的网络模型如图:
1、the Deep & Cross Network嵌入和堆叠层
我们考虑具有离散和连续特征的输入数据。在网络规模推荐系统中,如CTR预测,输入主要是分类特征,如“country=usa”。这些特征通常是编码为独热向量如“[ 0,1,0 ]”;然而,这往往导致过度的高维特征空间大的词汇。为了减少维数,我们采用嵌入过程将这些离散特征转换成实数值的稠密向量(通常称为嵌入向量):
然后,我们将嵌入向量与连续特征向量叠加起来形成一个向量:
拼接起来的向量X0将作为我们Cross Network和Deep Network的输入
Cross Network
交叉网络的核心思想是以有效的方式应用显式特征交叉。交叉网络由交叉层组成,每个层具有以下公式:
一个交叉层的可视化如图所示:
2、Visualization of a cross layer可以看到,交叉网络的特殊结构使交叉特征的程度随着层深度的增加而增大。多项式的最高程度(就输入而言)为层交叉网络。如果用表示交叉层数,表示输入维度。然后,参数的数量参与跨网络参数为: (w和b) 。
交叉网络的少数参数限制了模型容量。为了捕捉高度非线性的相互作用,模型并行地引入了一个深度网络。
Deep Network
深度网络就是一个全连接的前馈神经网络,每个深度层具有如下公式:
Combination Layer
链接层将两个并行网络的输出连接起来,经过一层全链接层得到输出:
如果采用的是对数损失函数,那么损失函数形式如下:
总结
DCN能够有效地捕获有限度的有效特征的相互作用,学会高度非线性的相互作用,不需要人工特征工程或遍历搜索,并具有较低的计算成本。
论文的主要贡献包括:
1)提出了一种新的交叉网络,在每个层上明确地应用特征交叉,有效地学习有界度的预测交叉特征,并且不需要手工特征工程或穷举搜索。
2)跨网络简单而有效。通过设计,各层的多项式级数最高,并由层深度决定。网络由所有的交叉项组成,它们的系数各不相同。
3)跨网络内存高效,易于实现。
4)实验结果表明,交叉网络(DCN)在LogLoss上与DNN相比少了近一个量级的参数量。
网友评论