• 全国 [切换]
  • 深圳市鼎达信装备有限公司

    扫一扫关注

    当前位置: 首页 » 新闻动态 » 真空技术 » 正文

    一个以注意力机制结合隐式和显式的特征交叉的CTR预估模型

    放大字体  缩小字体 发布日期:2021-11-01 08:46:50    浏览次数:289    评论:0
    导读

    摘 要:随着深度学习的发展,近年来CTR预估模型的研究往往基于深度学习使用不同的特征交叉方式来实现CTR预估模型的性能提升.目前最新最有效的研究成果是xDeepFM,它综合了进行隐式和显式的高阶特征交叉方式的子模型.但经实验发现xDeepFM的子模型选择并不完美,而且子模型的组合策略过于简单.对此,本文提出了一种新模型,不

    摘 要: 随着深度学习的发展,近年来CTR预估模型的研究往往基于深度学习使用不同的特征交叉方式来实现CTR预估模型的性能提升.目前最新最有效的研究成果是xDeepFM,它综合了进行隐式和显式的高阶特征交叉方式的子模型.但经实验发现xDeepFM的子模型选择并不完美,而且子模型的组合策略过于简单.对此,本文提出了一种新模型,不仅改进了子模型的选择,而且用注意力机制改进子模型组合方式.为了方便,在本文中将提出的新模型叫做Attentional-xDeepFM-C.在Avazu和Criteo数据集上进行实验,新模型在两组数据集下的AUC得分分别比xDeepFM模型高2.17%和4.97%.本文已在公开网站(1)上发布了Attentional-xDeepFM-C模型的源代码.

    关 键 词: 因子分解机;CTR预估;推荐系统;注意力机制;深度神经网络

    1 引 言

    CTR(Click-Through-Rate)预估模型是推荐系统的核心,它的任务是预测用户对某个给定条目的点击可能性.推荐系统通过以点击可能性来对推荐项进行排序,从而最大化整个推荐系统的点击数.随着网络购物、社交网络等应用的发展,CTR预估的应用场景越来越多,模型训练所用的数据也急速膨胀,如何用这些巨量数据来对用户和用户行为之间的关系进行建模,是CTR预估模型研究领域的新挑战.

    过去的一些工作已经有了尚可接受的结果.LR(Logistic Regression)、FM(Factorization Machine)等传统技术已经被应用到工业场景中很多年了,它们的特点是简单、快速、资源消耗少.然而这些线性模型缺乏学习特征之间复杂的相互作用的能力,并且难以处理高维度的稀疏特征.随着数据量的不断增大和深度学习在其他如图像、自然语言处理等领域的成功应用,当前CTR预估模型领域研究的重点在于基于不同的深度学习成果,寻找更加多样化的特征交叉方式.

    最近的一些工作通过将深度学习最新最热的研究成果应用到传统的CTR预估模型的改进中,从而提升传统模型的性能.注意力机制在NLP领域大获成功[1,2],所以将注意力机制引入传统模型中也是一个研究的热点,而且已经得到了相当可观的成果.AFM[3]将注意力机制引入改进的FM模型,通过对特征向量间叉积得到的向量进行赋权并添加注意力层的方式进行学习,它用注意力网络更新权重来实现对某些回归性的子任务中性能的提升;Autoint[4]在AFM的基础上用多头自注意力层替代原本的注意力层;DIN[5]和DIEN[6]分别用自注意力和多头自注意力机制层替代嵌入层进行模型的学习,这两个方案在一些数据杂乱的复杂场景下有很好的效果;Air[7]用注意力机制配合RNN处理序列推荐问题;HoAFM 等[8,9]工作将注意力机制层加在交叉网络中解决CTR预估问题;FAT-DeepFFM等工作[10-12]都通过将注意力机制加在embedding层学习更强有利的表示;Sain[13]用注意力机制取代传统embedding层.CNN(Convolutional Neural Networks)是基于深度学习的图像处理模型的基础,所以一些工作用CNN来改进传统的CTR预估模型[14].其中CFM[15]引入了自注意力对嵌入层输出进行池化后用一个CNN来学习特征间的关系,而Liu Bin的两项工作[16,17]考虑用CNN来进行特征构造.传统机器学习领域的一些成果比如基于树的集成模型,也通过结合深度神经网络来改进CTR预估模型.其中,Deepforest[18,19]等工作用集成模型替代DNN来构建整个网络;另一个工作[20]用DNN的思路来改进用于CTR预估的提升树模型.

    大多数工作通过尝试改变特征交叉方式,配合DNN(Deep Neural Networks)进行特征间关系的建模.一些方法通过改变以往的交叉方式来对FM进行改进,比如NFM[21]在原本FM算法的基础上抛弃了以往的FM的特征向量互相做内积的特征交叉方式,改用一个Bi-Interaction Pooling层,通过用特征向量互相做叉积的方式进行特征交叉.而且添加了一个DNN用于对特征的高阶交叉之间的关系以类似做内积的方式进行建模.这种交叉方式是隐式的;ONN[22]在DNN和embeding层之间添加二阶隐式交叉层来改进模型;FWFM等工作[23-26]通过将低阶交叉结果与高阶交叉结果相交叉来改进模型;IFM[27]通过取embedding层输出和原始输入二者进行隐式交叉的方式来改进模型;AFN等工作[28,29]通过在原始模型基础上添加一整个权重模型来实现进一步的交叉;一些工作[30,31]结合隐式的特征交叉和图学习来改进模型.另一些方法通过将DNN与FM进行并列来改进传统模型,其中Wide & Deep[32]、DeepFM[33]以及[34-36]的思路相同,它们在FM的基础上,将嵌入层输出直接作为DNN的输入,对以嵌入向量表示的特征之间的关系进行建模.还有一些方法通过用深度学习的思路来延伸FM的特征交叉方法,从而提升CTR预估模型的性能.Deep & Cross[37]以及[38,39]的思路相同,使用与DNN相对的,构建交叉网络的方法来改进.网络中每一层都用特征向量互相做点积的方式来实现的显式的高阶的特征交叉.xDeepFM[40]提出的CIN网络在Deep & Cross的基础上,参考卷积神经网络(CNN)和递归神经网络(RNN)的计算方式,每一层添加池化求和操作来改进Deep&Cross的交叉网络.从当前CTR预估模型的整体性能来看,xDeepFM是最新的可靠的研究成果.它希望组合隐式和显式的高阶特征交叉来把两种被实验证明有效的方法,以便让两种方法互补.xDeepFM这种新的复合式的网络结构,让它多次在各类CTR预估算法竞赛中大放异彩.

    xDeepFM模型的愿景是美好的,然而,在实验中发现,xDeepFM并不是那么完备.这个模型结构如图1所示.

    图1 xDeepFM 模型的整体结构

    Fig.1 Overall structure of the xDeepFM model

    1) 它对子模型的选择并不完美.xDeepFM[40]模型可以看做是DNN、CIN和LR共3个子模型的组合,其中DNN和CIN是主要部分,DNN子模型负责用特征向量互相做点积的方式进行特征交叉,CIN子模型负责用特征向量互相做叉积的方式进行特征交叉.但是在我们的实验中发现,如果我们将FM模型与DNN和CIN子模型并列,可以得到性能更强的模型.

    2) xDeepFM在子模型的结合方式上没有做其他工作,它只是简单地并列这子模型.但是从理论上说,子模型各自结构不同,不同场景下性能也必定不同,但是xDeepFM模型并没有考虑这一点,它对各个子模型一视同仁.

    针对上面的问题,本文提出相对于xDeepFM的两个创造性的提升点,并用实验证实提升效果.

    1) 提出一个新的基于深度学习的CTR预估模型Attentional-xDeepFM-C,这个模型相比于xDeepFM模型,额外添加FM子模型与CIN和DNN模型进行组合,它不但可以同时学习显式和隐式的高阶的特征交叉以减少手动的特征工程,而且可以用FM来进一步地提升隐式的二阶特征交叉的重要性.我们在实验中证明添加FM部分之后的模型性能上会强于原始的xDeepFM模型.

    2) 在子模型组合的最后添加注意力网络,来学习模型组合的注意力分数,以便表示各个子模型在模型组合时的重要性.经改进后的注意力网络能够给对当前场景来说更加重要的子模型赋以更高的分数,达到了在不提升模型算法复杂度的条件下提升模型性能的目的.我们会在实验中纵向比较,证明这种模型是最佳选择.

    2 CTR预估模型

    本文将在这一节给出本文提出的模型的所需推导,并解释一些所需的基础知识以便理解本文的模型.本文提出的模型结构如图2.

    图2 Attentional-xDeepFM-C模型的整体结构

    Fig.2 Overall structure of the Attentional-xDeepFM-C model

    可以将本文提出的模型与图1相对比来看这两个模型的区别.一方面,新增了一个FM子模型来强调二阶隐式特征交叉的重要性.因为即使DNN可以看作一种包含二阶的高阶的隐式特征交叉手段,它的整体结构也是未知的——只能知道一个DNN有多少层,各层多少神经元,而具体的隐式特征交叉方式是未知的.所以任何人都难以从理论上明确DNN在网络较深的情况下是否足够强调了二阶的隐式的特征交叉的重要性.而从实验结果来看,二阶的隐式的特征交叉的影响是决定性的.另一方面,在输出层之前添加一个注意力网络,以便学习各个子模型所对应的注意力分数.这种方式可以在不增加整体的算法复杂度的情况下,主动赋予性能更高的子模型更高的注意力分数.它比起xDeepFM在模型组合上的毫无作为,有了较好的自适应性.

    基于下面的表示方式进行推导:一个包括n个样本、m个特征的数据集可以表示为(Xy)的形式.这里的X是特征集合.X的每一行与y的每一行相对应,构成一个样本.X可以表示成特征向量的集合X=[x1x2,…,xi,…,xm],xiRn.通常Xm个特征中包含数值型特征和类别型特征.对于数值型特征只需要进行归一化,而类别型特征需要进行onehot编码.y是一个n维向量,作为标签集合.y表示为式(1):

    y=[y1y2,…,yi,…,yn]T

    (1)

    其中yi∈{0,1},i=1,2,…,Nyi=1表示当前样本被点击,反之yi=0.

    2.1 embedding层

    在计算机视觉或者自然语言处理领域中,输入数据通常是图像或是文本信号,已知它们在空间/时间上相关,那么DNN可以直接应用于稠密的的原始数据.但是CTR预估所用的数据往往样本与样本之间没有清晰的时间和空间的相关性,所以在处理类似数据的时候,往往先对数据进行onehot编码.这样做有两个好处:

    二是网络结构通用化。通用的网络界否是保障现场控制设备与企业管理系统两者之间通讯畅通的关键。通过通用的网络结构,企业管理层能够实现对现场设备的监管,这也正是当前和未来电气自动化所追求的目标。

    2)对数据进行onehot编码可以提高模型对异常数据的容忍力.比如,一个特征age用于表示用户的年龄,通常来讲它的值应该是0-120之间,但实际数据中很有可能出现一个age=300的异常值.而如果进行onehot编码,可以将异常的稠密值转化为离散的0和1.

    但是对数据进行onehot编码往往会使数据维度过高,而且从实际应用情况来看,数据量的增大会加重这个问题带来的负面影响.考虑到这一点,CTR预估模型往往都不会在数据处理的时候进行onehot编码,而是用一个embedding层来实现离散的特征取值到对应向量的映射.embedding层是受到NLP领域的启发,以表示学习的方式为特征的每一个取值学习一个用以表示这个取值的特性的一个D维向量,其中D是一个超参数.这样做的好处是将一个特征进行onehot编码后得到的n×M的一个矩阵,用一个n×D的矩阵来表示.这里的M是当前特征的取值数目.就一般情况而言,总是有MD.这样大幅度降低了模型训练所用数据量和时间.每个特征经过embedding层处理后会变成一个n×D的矩阵,而embedding层的输出可以表示为式(2):

    e=[e1e2,…,ei,…,em]

    (2)

    其中,eiRn×Dm是数据集的特征数.embedding层的输出会作为后续各个子模型的输入.

    2.2 特征交叉层

    2.2.1 FM式的二阶隐式的特征交叉.

    FM(Factorization Machine)是一个被广泛使用的监督模型.通常将FM模型分成两个部分,其中特征交叉部分是FM模型相对于LR模型的改进.传统的FM的模型结构可以表示为式(3).

    (3)

    表示特征i与特征j的取值相乘的结果的权重.它通常可以表示成其中Vi是一个对应特征i的向量.参照式,整个FM子模型的输出可以表示成式(4).

    (4)

    而实际应用的时候往往将它与embedding层结合,取ei=Vi,其中ei表示式(2)中嵌入矩阵e中任意一个分量.

    将FM模型作为单独的一个子模型与其他子模型并列,并且从式(4)可以看到,FM是包含LR模型的.

    2.2.2 基于内积的隐式特征交叉

    在CTR预估模型领域,通常将把DNN作为一种高阶的隐式的特征交叉来看待,这种特征交叉方式的特点是同一个特征向量的不同分量之间会互相影响.具体来说,因为DNN在处理嵌入层输出的时候,各个嵌入向量ei的各个分量会在与当前层权重的做矩阵乘积的时候互相混合,所以这种方式可以看成是比输入更高一阶的基于内积的特征交叉.所以它能学习到比同样是用内积的方式进行二阶特征交叉的FM更复杂的特征交叉模式.这种在嵌入层后添加DNN层的网络结构被DeepFM[33]、Wide&Deep[32]等工作所采用.DNN模型每一层的输出往往可以用式(5)概括:

    xk=σ(Wk×xk-1+bk)

    (5)

    其中k表示当前是DNN网络的第k层,初始值x0=ek∈[1,2,…,T]是激活函数,xk是第k层的输出.T是整个DNN的深度.最终整个子模型的输出表示为式(6):

    (6)

    2.2.3 基于叉积的显式的特征交叉

    根据NFM[21]的观点,FM采用的交叉方式会将每个特征交叉的结果池化成一个标量值,这会大大降低模型的非线性.因为特征间叉积的结果会是一个矩阵,所以考虑通过将FM模型中特征交叉部分的内积操作改用叉积来实现,然后将外积得到的矩阵用DNN进行进一步的特征交叉的建模.后续的工作往往基于这个思路,通过构建交叉网络来实现用叉积进行特征间交叉.

    本文所用的交叉网络是xDeepFM[40]论文中提出的改进的交叉网络CIN.对于CIN网络的第k层可以表示为式(7).

    (7)

    其中表示第k层输出矩阵xk的每一行.xkRHk×m*D,其中,Hk表示在第k层的特征向量的数量,为权重矩阵Wkh的每个元素.∘符号表示求取两个矩阵的哈达玛积.可以看到式(7)的计算方式与CNN中一个卷积层卷积核为1×1时的计算相同.然后将各层的xk进行求和池化后得到各层的池化向量每层的池化向量再度池化,最终得到每一层的交叉结果形成的向量p+=[p1p2,…,pT],其中T是整个CIN网络的总层数.最终CIN网络的输出可以表示为式(8).

    (8)

    这里的wb表示输出层的回归参数.从直观上说,这一系列计算的目的是,构建一个CIN网络,这个网络的每一层输出都是由上一层的输出矩阵的每个向量与嵌入层输出矩阵的每个向量进行叉积和池化,得到一个新的输出矩阵后,将输出矩阵进行池化得到当前层的输出向量,最后把所有层的输出向量进行求和和回归得到最终结果.这种方式与NFM求取Bi-Interaction Layer的方式是相同的,总的思路是用特征向量间互相叉乘,得到用来描述特征间关系的表示矩阵.

    2.3 注意力机制层

    注意力机制是深度学习领域的前沿突破之一,它已经广泛应用于NLP领域中,而且基于注意力机制的改进方案层出不穷,比如自注意力,多头自注意力等.最近一些研究表明,注意力机制非常适合作用于高度稀疏的数据的表示学习过程之后,比如文献[14,15].本文的改进思路从这个角度出发.

    注意力机制会给予每个输入分量一个注意力分数.这个分数可以看作是一种权重.而学习这个分数用到的是注意力网络,把注意力层放在各个子模型的后面,用各自得注意力分数来体现其重要性.首先合并以上几个模型的输出为一个矩阵表示为式(9),式(9)矩阵的3个分量都是n阶向量.

    O=[OFMODNNOCIN]

    (9)

    a=[aFMaDNNaCIN]来表示注意力网络学习到的各个分量.为了方便,这里用i来表示输出矩阵O的任意一个分量,a的各个分量可用式(10)、式(11)计算得到.

    (10)

    (11)

    将这些注意力分数与输出矩阵O的对应分量相乘后,再添加一个可学习的偏移量b,本文的模型的最终输出可以表示为式(12).

    (12)

    可以简单推演一下添加一层注意力层带来的额外的时间复杂度.原xDeepFM模型的时间复杂度是O(Tn2),其中T的值是CIN网络总层数和DNN网络总层数较大的一方,n是样本量.而注意力层带来的时间复杂度是O(3n2),所以即使添加一层注意力层,总的时间复杂度依然是O(n2)级别.

    2.4 模型训练

    对于CTR预估领域,损失函数常用对数损失函数.最终输出表示为式(13).

    (13)

    yi分别为样本i的真实值和预测值.n为总样本量.优化过程只需要最小化L.

    3 实 验

    本文用实验环节来回答下面3个有价值的问题:

    Q1.CIN和AFM以及经典模型的表现能力究竟如何?是否已经满足需要?

    Q2.最佳的子模型组合方式是什么?

    Q3.本文如何改善不同子模型融合的结果?

    本文将基于回答这3个问题的角度来组织实验.

    3.1 实验数据

    本文采用被广泛认可的CTR预估领域的两个benchmark数据集来进行训练.对于这些数据集的处理,都是分割其中39.6%的数据作为测试集,其他数据作为训练集,同时删除一些不需要的特征后作为原始数据输入.

    1)Criteo数据集.这是一个CTR预估模型研究领域的著名的公开的benchmark数据集,通常用于开发预测广告点击率的模型的训练.它是CTR预估模型研究领域常用的数据集之一.

    2)Avazu数据集.这是一个CTR预估模型研究领域的著名的在2014年的kaggle竞赛Avazu ClickThrough Rate Prediction中被使用的数据集,它是CTR预估模型研究领域常用的数据集之一.

    对于这两个数据集,去掉一些冗余的特征,并对数值型特征进行标准化,对类别型特征进行离散编码.本文并没有做多余的特征工程,以减少人为添加的非线性所造成的实验结果的紊乱.数据集描述如表1所示.

    表1 实验所用数据集的描述 其中M表示百万而K表示千

    Table 1 Description of the data set used in the experiment,where M represents millions and K represents thousands

    3.2 评估指标

    使用两种指标来对模型进行评估:AUC(Area Under the ROC curve)和Logloss(cross entropy).这两个指标用于从两个不同角度体现模型性能:AUC衡量一个阳性样本比随机选择的阴性样本排名更高的概率.它可以综合表现模型的性能,并且对类不平衡问题不敏感.相比之下,Logloss测量了每个样本的预测分数和真实标签之间的距离,也就是一般意义上的准确性.通常实际应用中会更加强调Logloss的作用,但在训练过程中,AUC值更能体现模型的综合性能.

    3.3 实验细节

    用tensorflow实现了所有模型,并调整各超参数以记录各个模型的最佳得分.本文的实验环境如表2所示.

    表2 实验环境

    Table 2 Experimental environment

    另外,为了让低配置机器依然能够运行本文的代码,用迭代器模式实现数据加载.这种方式相比大多数模型实现所采用的的对数据的暴力加载方式,显得对低配置机器更加友好.

    在实验环节中将提出的Attentional-xDeepFM-C模型与其他流行的模型相比较,包括AFM[3],CIN[40],DeepFM[33],xDeepFM[40],同时也尝试过各种不同的对xDeepFM的改进方案:

    ·AFM+xDeepFM:将注意力网络与xDeepFM的3个子模型并列.

    ·xDeepFM-C:将FM与xDeepFM的3个子模型并列Weighted-xDeepFM-C:不光将FM与xDeepFM的3个子模型并列,而且用多个可学习的权重来控制各子模型的重要性

    ·DNN-xDeepFM-C,在xDeepFM-C的基础上,用DNN来完成各子模型输出与标签关系的建模工作.

    ·Attentional-xDeepFM-C,这是最终采用的模型,它在xDeepFM-C的基础上,添加一个注意力网络来完成权重的学习以上所有模型的学习率λ=0.0004、正则化系数L2=0.000002、embbeding层维数为一个定值D=16、学习器使用adam、训练轮数epoch=5.默认状态下,所有DNN的网络深度为3,每层的神经元数目从前到后分别为128、128、128.所有CIN的网络深度为2.每一层的大小从前到后分别为128、128,AFM所用的DNN网络深度为2,每一层的神经元数目从前到后分别为128、128.

    3.4 实验结果及分析

    实验结果可以归纳成表3-表6.

    表3 当前流行的CTR预估模型在Avazu数据集下的表现情况,所有值均取调参后最优值

    Table 3 Performance of the currently popular CTR prediction model in the Avazu dataset,all values are the optimal values after tuning

    表4 当前流行的CTR预估模型在Criteo数据集下的表现情况,所有值均取调参后最优值

    Table 4 Performance of the currently popular CTR prediction model in the Criteo dataset,all values are the optimal values after tuning

    表5 所有xDeepFM模型的改进方案在Avazu数据集下的表现情况,所有值均取调参后最优值

    Table 5 Performance of all the improvement schemes of the xDeepFM model under the Avazu datasets,all values are the optimal values after tuning

    表6 所有xDeepFM模型的改进方案在Criteo数据集下的表现情况,所有值均取调参后最优值

    Table 6 Performance of all the improvement schemes of the xDeepFM model under the Criteo datasets.all values are the optimal values after tuning

    3.4.1 纵向比较各个模型的表现能力(Q1)

    从表3、表4可以看到,CIN以及AFM的单独表现都不好,而DeepFM和xDeepFM的表现相差不大,这说明:

    1)CIN的点积交叉思路单独使用时相对于经典模型基本没有提升.但是xDeepFM取得的成果表示,CIN模型配合DNN子模型使用是非常有效的方式.

    2)AFM的二阶交叉后赋权的思路并不能很好的提升性能,这说明数据的复杂性很强,如果不提供高阶交叉能力是不能提升模型预测性能的.而且从AFM的原文可以知道,AFM的强势领域是回归任务.

    3)结构更简单的DeepFM模型的性能比较出众,它模型结构更加简单、训练速度快,而且性能较高,非常适合应用于实际工业生产,但是正因为模型结构简单,难以适应更复杂的数据,可以从实验中看到,经典模型比本文提出的模型效果要差一些.不过这也一定程度上说明,DeepFM选用FM作为子模型也许是一个正确的选择.

    在对表3、表4的纵向比较之下,本文提出的Attentional-xDeepFM-C模型是表现最好的,在Avazu数据集下新模型的AUC值比xDeepFM模型高4.97%,在Criteo数据集下新模型的AUC值比xDeepFM模型高2.17%.

    3.4.2 选择最佳的子模型组合(Q2)

    从表3、表4可以看出,如同xDeepFM论文中描述的,将CIN和DeepFM两种不同的特征交叉的思路组合起来,其模型性能会超过两者中任一个.而如果在xDeepFM的基础上再组合AFM的,那么反而会导致性能变差.这是因为从结构上分析可以看出,AFM并没有去组合特征,它只是将二阶交叉后的特征直接进行加权输出,而xDeepFM的两部分的作用是寻找有效的高阶的特征交叉方式.

    而本文的创新点在于,在xDeepFM的基础上,把DeepFM中的FM部分也作为单独的一个模型与xDeepFM的两个子模型进行组合.从实验结果中可以看出,这种方式的效果是要比单独用xDeepFM的效果要更好,即从表5、表6的比较中可以看出xDeepFM-C算法的AUC值比xDeepFM的分别高3.72%和1.05%.从理论上讲,DeepFM中的FM部分就是把embbeding层的各特征的输出向量互做内积后的结果,而xDeepFM的两个子模型,都是二阶交叉以及三阶和三阶以上的特征交叉结果的综合.从实验结果可以证明,强调二阶交叉的结果的行为是非常正确的.但是无可否认的是,三阶及三阶以上的交叉结果是对二阶交叉结果的很好的补充.所以应该让这几部分并立.这也是本文的创新点之一.

    3.4.3 最佳的子模型融合方案(Q3)

    本文的实验用了两种方式来实现最后的得分处理环节.这里一共有3种方式,下面来分别解说

    1)直接求和的方式,即xDeepFM-C模型采用的方式.这种方式对模型的各子模型一视同仁.这种方式实现起来简单,也不需要额外的计算.但是这种方式也是实验结果最糟糕的方式.从表5、表6中xDeepFM-C模型的得分和其他改进方案得分的对比可以看出,直接求和的方式的AUC得分是3种方式中最低的.

    2)加权求和的方式,即Weighted-xDeepFM-C模型采用的方式.这种方式相对于上一种方式,模型的每一个部分都用一个独立的参数去控制它的权重.从表5、表6中可以看到,这种方式的AUC得分高于xDeepFM模型得分,但是低于Attentional-xDeepFM-C模型的得分.说明这种机制过于简单而显得性能不佳.

    3)用DNN来建模进行求和,即DNN-xDeepFM-C模型采用的方式.这种方式将各部分的得分看做是一个数据集合,用DNN对这个数据集进行训练最终得到分数.这种做法深度学习领域的研究中的经典方法.而且从表5、表6中可以看出,这种简单的方法比直接求和的方式效果要更好,即DNN-xDeepFM-C模型的得分高于xDeepFM-C模型的得分.而且因为DNN的输入维数是固定的一个值,所以从整个训练过程来看并没有明显地提升整个模型的算法复杂度.但是DNN-xDeepFM-C模型的得分低于Weighted-xDeepFM-C模型的得分.这说明用DNN对输出进行建模的方式可能有学习过度的倾向,因为各个模型的输出结果的集合互相之间关系不会过于复杂,而DNN的学习能力过于强大,可能对这个中间的数据集过度学习.而即使是简单的加权求和已经具备了相当程度的性能.

    4)用注意力机制进行求和,即Attentional-xDeepFM-C模型采用的方式.这种方式是本文的创新点之一.从本质上看,注意力机制实际上是训练一系列的权重,对于各个维度乘上不同的权重后进行求和.从实验数据上可以看到,这种方式是3种方案中最好的方案.从结果上看,从表5、表6中可以看出,Attentional-xDeepFM-C模型的得分是所有改进方案中最高的.从理论上说,基于注意力机制的权重学习方式比起朴素的权重学习来讲,注意力网络能够更有效地学习.

    综上所述,从表5、表6中可以明显看出,本文提出的Attentional-xDeepFM-C模型的总体性能是同类模型的最优解,相对于xDeepFM模型,在Criteo和Avazu数据集下的AUC得分分别高2.17%和4.97%

    4 结 论

    本文提出了一种新颖的特征组合方式,即用注意力网络对各个体现隐式和显式的特征交叉的分模型进行基于注意力分数的组合,旨在正确评价模型中各个子模型的重要性程度.其优势在于在不提高整体算法复杂度的条件下提升性能.同时本文在xDeepFM算法的基础上通过增加二阶特征交叉项提升了原算法的性能.本文将新模型命名为Attentional-xDeepFM-C.它不仅具有xDeepFM算法所具有的能自动学习显性和隐性的高阶特征交互的特点,而且能够对不同子模型进行评估操作.对于本文提出的新模型,在两个benchmark数据集上进行实验,证明新模型的性能始终优于xDeepFM模型.


     
    (文/小编)
    打赏
    免责声明
    • 
    本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:https://2024.dingdx.com/news/show.php?itemid=1572 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
    0相关评论
     

    © Copyright 深圳市鼎达信装备有限公司 版权所有 2015-2022. All Rights Reserved.
    声明:本站内容仅供参考,具体参数请咨询我们工程师!鼎达信作为创新真空产品研发制造商,我们提供海绵吸具,海绵吸盘,真空吸盘,真空发生器,真空泵,真空鼓风机,缓冲支杆,真空配件,真空吊具等等产品

    粤ICP备17119653号