免注册制作网站,百度搜索如何去广告,在阿里国际站做的网站,哪个网站可以做微信引导图DCN是DeepFM的升级版#xff0c;后者是只能做二阶交叉特征#xff0c;随着阶数上升#xff0c;模型复杂度大幅提高#xff0c;且FM网络层较浅#xff0c;表达能力有限。google团队通过构建深度交叉网络来自动进行特征的高阶交叉#xff0c;且时空复杂度均为线性增长…DCN是DeepFM的升级版后者是只能做二阶交叉特征随着阶数上升模型复杂度大幅提高且FM网络层较浅表达能力有限。google团队通过构建深度交叉网络来自动进行特征的高阶交叉且时空复杂度均为线性增长极大提升了模型性能。 模型结构
整体网络结构跟DeepFM类似 特征交叉细节 代码实现
代码其实非常简单
def cross_net(self, inputs):# 进行特征交叉时的x_0一直没有变变的是x_l和每一层的权重x_0 inputs # B x dims x_l x_0for i in range(self.layer_nums):# 将x_l的第一个维度与w[i]的第0个维度计算点积xl_w tf.tensordot(x_l, self.W[i], axes(1, 0)) # B, xl_w tf.expand_dims(xl_w, axis-1) # 在最后一个维度上添加一个维度 # B x 1cross tf.multiply(x_0, xl_w) # B x dimsx_l cross self.b[i] x_lreturn x_l这里的 cross 其实是相当于学习残差。
实验结果
就随便看看吧baselines提到了FM、LR但只字不提跟它们的性能比较无语。。。WideDeep依赖于大量人工先验来选择交叉特征DCN只跟自动交叉特征的方法比例如FM等 参考
DCN.mdDeep Cross Network for Ad Click Predictions