收藏 分销(赏)

结合注意力机制和图神经网络的CTR预估模型_夏义春.pdf

上传人:自信****多点 文档编号:283770 上传时间:2023-06-30 格式:PDF 页数:9 大小:3.86MB
下载 相关 举报
结合注意力机制和图神经网络的CTR预估模型_夏义春.pdf_第1页
第1页 / 共9页
结合注意力机制和图神经网络的CTR预估模型_夏义春.pdf_第2页
第2页 / 共9页
结合注意力机制和图神经网络的CTR预估模型_夏义春.pdf_第3页
第3页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、计算机与现代化JISUANJI YU XIANDAIHUA2023年第3期总第331期0引言在计算广告、搜索、排序等推荐任务中,点击率(CTR)预测是核心算法,直接影响着互联网公司最后的盈利。大多数CTR预估模型由2个核心组件构成:一个是嵌入层组件,它将原始的输入数据转换成低维稠密的嵌入向量;另外一个是特征学习组件,它用来学习有效的特征交叉组合并计算模型的最终输出。然而,之前的研究主要集中在特征学习组件的自动化设计,很少关注嵌入层组件。这是因为大部分研究者都是在理解图像的基础上进行算法设计,其中学习组件对模型性能非常重要,而输入组件则微不足道,因为图像像素已经是浮点形式。与图像领域不同的是大量

2、离散项(如产品、广告或视频)的推荐问题在工业环境中普遍存在,当类别特征作为输入时需要把one-hot编码的特征向量转为低维稠密向量,人工启发式选择嵌入维度会严重影响模型的准确性。基于此,本文借鉴AutoEmb1模型的思想,给出一个端到端的可微框架,该框架可以根据特征的受欢迎程度自动选择不同的嵌入维度,对于流行度高的物品特征嵌入选择大的维数,反之选择一个小的嵌入维数。在特征学习组件中,寻找原始特征的有效转换是结合注意力机制和图神经网络的CTR预估模型夏义春,李汪根,李豆豆,葛英奎,王志格(安徽师范大学计算机与信息学院,安徽 芜湖 241002)文章编号:1006-2475(2023)03-002

3、9-09摘要:大多数CTR预测的算法都是将特征嵌入初始化为一个固定的维度,忽略了长尾物品特征的流行度不高。把它和头部物品的嵌入向量设置为相同长度会导致模型训练不平衡,影响最后的预测结果。基于此,本文首先使用一个端到端的可微框架,该框架可以根据特征的流行度自动选择不同的嵌入维度。其次,引入挤压激励网络机制和具有残差连接的多头自注意力机制,分别从不同角度动态地学习特征的重要性以及识别重要的特征组合,然后使用图神经网络代替传统内积和哈达玛积显式建模二阶特征交互。最后为了进一步提高性能,将DNN组件与浅层模型相结合形成深度模型,利用贝叶斯优化算法为深度模型选择一组超参数,避免复杂的调参过程,并且在2个

4、基准数据集上实验,结果验证模型的有效性。关键词:点击率预测;自动嵌入搜索;挤压激励网络;多头自注意力机制;图神经网络;贝叶斯优化中图分类号:TP391文献标志码:ADOI:10.3969/j.issn.1006-2475.2023.03.006CTR Prediction Model Combining Attention Mechanism and Graph Neural NetworkXIA Yi-chun,LI Wang-gen,LI Dou-dou,GE Ying-kui,WANG Zhi-ge(School of Computer and Information,Anhui Nor

5、mal University,Wuhu 241002,China)Abstract:Most CTR prediction algorithms initialize the feature embedding as a fixed dimension,ignoring the low popularity ofthe long tail feature.Setting it to the same length as the head object embedding vector will lead to unbalanced model training andaffect the fi

6、nal recommendation results.Based on this,this paper first uses an end-to-end differentiable framework,which canautomatically select different embedded dimensions according to the popularity of features.Secondly,this paper introducessqueeze excitation network mechanism and multi-head self-attention m

7、echanism with residual connection to dynamically learnthe importance of features and identify important feature combinations from different angles,and then uses graph neural networkto explicitly model the second-order feature interaction instead of traditional inner product and Hadamard product.Fina

8、lly,in order to further improve the performance,this paper combines the DNN component with the shallow model to form the depthmodel,uses the Bayesian optimization algorithm to select a set of super parameters for the depth model to avoid the complex parameter adjustment process,and the experimental

9、results on two benchmark datasets verify the effectiveness of the model.Key words:CTR prediction;automatic embedded search;squeeze excitation network;multi-head self-attention mechanism;graph neural network;Bayesian optimization收稿日期:2022-04-14;修回日期:2022-05-25基金项目:高校领军人才引进与培育计划项目(051619)作者简介:夏义春(1996

10、),男,安徽肥西人,硕士研究生,研究方向:推荐系统,计算广告,深度学习,E-mail:;李汪根(1973),男,安徽太湖人,教授,博士,研究方向:生物计算,智能计算,E-mail:;李豆豆(1996),男,安徽淮北人,硕士研究生,研究方向:图像处理,深度学习,E-mail:;葛英奎(1997),男,安徽马鞍人,硕士研究生,研究方向:推荐系统,深度学习,E-mail:;王志格(1997),男,安徽宣城人,硕士研究生,研究方向:推荐系统,深度学习,E-mail:。计算机与现代化2023年第3期一种常用提高模型的预测能力的手段。特征组合是最主要的特征转换类型,大量文献表明高阶特征组合对模型准确的预测

11、是至关重要的。例如,向一个8岁的男孩推荐魂斗罗游戏,三阶组合特征对预测是非常有用的。然而,寻找这种有意义的高阶组合特征很大程度上依赖于领域专家。此外,手工制作全部有意义的特征组合几乎是不可能的。因此为了对不同阶次的特征组合进行自动化建模,研究者们做出了许多探索。各种基于因子分解机2(FM)的模型被开发出来用于建模特征交互,并被证明对各种任务都是有效的3-7。随着深度学习在计算机视觉、自然语言处理等许多研究领域取得巨大成功,近年来提出了许多基于深度学习的CTR 模型。例如 FNN8、Wide&Deep9模型、注意因子分解机10(AFM)、DeepFM11、xDeepFM12等。本文在寻找交叉特征

12、的基础上,使用 SENet(Squeeze-and-Excitation Networks)注意力机制对嵌入向量加权得到特征的重要性,使用多头注意力机制得到新的特征表达,通过图神经网络学习二阶特征交互,最后经过几层全连接网络得到高阶非线性的特征交互并预测结果。本文提出一种新的模型 AE-Attention-GNNET,用于自动搜索不同特征域的嵌入维度,动态学习特征重要性和更加细致的二阶特征交互。考虑不同特征字段在推荐系统中受欢迎程度不同,模型嵌入层应该允许不同的嵌入维度。另外,不同的特征对于目标任务有不同的重要性,例如,当模型预测一个人的收入时,职业特征比爱好特征更为重要。考虑这一点,本文 借

13、 鉴 FiBiNET13模 型 引 入 挤 压 激 励 网 络(SENet)14机制动态学习特征的权值。多头自注意力机制是Vaswani等人15提出来的一种基于普通注意力机制的变形,它减少了对外部信息的依赖,更擅长捕捉词向量之间的内部相关性。本文引入多头自注意力机制,建模不同特征域之间的相关性,得到线性加权后的组合特征。最后本文把特征字段之间的复杂交互转化为对特征图上的节点交互进行建模,通过一次 GRU 网络更新自己的状态得到二阶特征交互,比之前的内积、哈达玛积更加细粒地捕捉特征之间的组合。本文主要工作如下:1)提出一个端到端的可微框架,该框架可以根据不同特征域的受欢迎程度以线性加权的方法自动

14、选择不同的嵌入维度最后和目标CTR一起优化。2)结合SENet机制,抑制贡献少的特征,增强贡献多的特征,动态地学习特征的权值,并且使用带残差结构的多头自注意力机制,自注意力机制能够得到不同特征域的相关性,多头可以学习不同空间的交叉特征,残差结构则保留原始一阶特征。基于此,模型可以得到更高阶特征的非线性交互。3)使用图神经网络,用更灵活有效的方式显式建模二阶特征交互,利用贝叶斯优化算法给模型一组超参数组合,避免复杂的调优过程。4)在2个基准数据集上做多次实验,实验结果表明,AE-Attention-GNNET 的各项性能优于其他最先进的深度模型。1相关工作本章讨论确定特征嵌入维数的常用策略以及梳

15、理相关的CTR预估算法。1.1自动嵌入搜索算法大多数CTR预估算法都遵循着输入层-嵌入层-特征交叉学习层-预测层的模型结构,把重点放在特征交叉学习层,思考如何设计一种自动化建模高阶特征交互的算法。但是这样做法忽略了嵌入层的表达能力,因为在CTR预估中不同流行度的特征所需要的嵌入维数不同,对于那些高流行度的特征,更大的嵌入维数会有更好的预测效果。相反,对于那些低流行度的特征,更大的嵌入维数预测效果会变差。嵌入维数的大小一般根据经验值确定一个范围,然后不断尝试出合适的嵌入维数,但是这种做法很浪费时间和计算资源。目前学术界和业界常采用降维方法和监督学习方法合理地设计嵌入维数的大小。FM216模型对数

16、据集的特征字段进行PCA17降维,通过控制协方差矩阵的阈值得到不同特征域的嵌入维数。自从NAS18发表以来,以自动化的、数据驱动的方式设计神经网络的架构吸引了大量研究者的兴趣。比如AutoEmb 模型利用 darts算法构建一个控制器,为不同的特征字段选择合适的嵌入维数。谷歌NIS19论文提出了多尺度嵌入,对于同一个特征不同的item分配不同的嵌入维度。NIS模型在ENAS19策略的基础上设计了新的搜索空间,用来选择多尺度嵌入向量。FaceBook的MDE20模型提出了混合维(MD)嵌入层,其中特定对象的嵌入维数随该对象的流行度而变化,而不是保持固定的嵌入维数。1.2CTR预估浅层模型CTR预

17、估模型中,最开始是逻辑回归21(LR)算法,它捕捉特征之间的线性关系,在工程上易于大规模并行化训练和部署。但是线性拟合缺少特征交叉,因此需要做大量的特征工程。因子分解机通过2个嵌入向量的内积建模二阶特征交叉,近些年许多基于FM的模型被提出。域因子分解机21(FFM)在FM的基础上引入了filed的概念,把相似的特征划分为一个域,对不同域各自建模,但带来了参数量过大的问题,模型容易过拟合。GBFM22和 AFM 考虑了不同域特征相互作用的重要性。由于FM仅是对二阶特征交叉建模,在它基础上的模型性能也被极大限制了。1.3CTR预估深层模型随着深度学习的发展,研究者们对设计 CTR预测的深度模型越来

18、越感兴趣。NFM23模型舍弃了FM算法用嵌入向量的内积做特征交叉的方法,而是使用了Bi-interaction Pooling 层,通过2个嵌入向量的哈达玛积做特征交叉,最后通过堆叠DNN来捕捉302023年第3期夏义春,等:结合注意力机制和图神经网络的CTR预估模型高阶非线性的特征交叉。DeepFM 的架构类似于Wide&deep,它初始化 2 组嵌入向量分别送入 FM 组件和DNN组件,最后并行预测结果。DCN24明确了特征交叉的阶数,xDeepFM通过一种明确的方式在特征字段上生成特征交互,改进了 DeepFM 和 DCN。FGCNN25利用卷积神经网络生成新的特征,在增强的特征空间上建

19、立深度分类器。AutoInt26引入多头注意力机制,通过叠加多个交互层可以实现不同阶交叉特征的建模。自适应因子分解网络27(AFN)引入对数神经网络将特征组合的幂转换为系数乘法的累加,用来建模交叉特征的组合。Fi-GNN28首次引入图结构,将复杂的特征交互转化为对特征图上的节点进行显式建模。还有其他模型以隐式方式学习高阶特征交互,如PNN29、FNN、DeepCrossing30等。2CTR预估模型这章具体介绍各个模块的实现以及推导,本文提出的模型结构如图1所示。.输入层嵌入层11e21e.1ke.12e22e2ke.1me2mekme.线性变换层11e?21e?1ke?.12e?22e?2k

20、e?.1me?2me?.kme?线性加权层软性注意力机制软性注意力机制软性注意力机制.变换嵌入层1e2eme.变换嵌入层向量多头注意力机制挤压激励网络机制GNN特征交互层DNNDNN1 y2 y y2k112k12k图1AE-Attention-GNNET模型结构图2.1输入层在 CTR预估领域中,特征字段一般都是由类别特征和数值特征组成,首先将所有特征字段表示为一个稀疏向量,将所有特征字段连接。具体表示为:x=x1,x2,xn,xn+1,xm(1)其中,m是所有特征字段的总数,xi是第i个特征字段的特征表示。其中前n个是类别特征,后m-n+1个是数值特征,则类别特征使用one-hot向量表示

21、,数值特征是归一化01之间的标量值。2.2嵌入层输入层的类别特征经常用one-hot向量表示,但在大规模推荐系统中这些输入会变成高维稀疏的向量。由于高维稀疏的向量非0值特别少,在进行特征组合时大部分0值会造成特征组合的权重系数无法学习,最后严重影响到模型的性能。所以模型需要将高维稀疏的one-hot编码用嵌入层转为低维稠密的向量。具体来说,本文分别对类别特征和数值特征进行如下转换:ei=Vixi(2)ej=vjxj(3)其中,Vi是第i个类别特征的嵌入矩阵,xi是one-hot向量。为了实现类别特征和数值特征之间的相互作用,模型把数值特征也嵌入到相同的低维空间,其中vj是第j个数值特征的嵌入向

22、量,xj是标量值,嵌入维度设为d。最后得到所有特征的一个串联表达式为:e=e1,e2,em(4)其中,eRmd。以上步骤是一般 CTR算法嵌入层的处理过程,缺点是预设了嵌入维度,导致所有特征嵌入维度都是固定的,模型应该让流行的特征嵌入维度更大,非流行的特征嵌入维度更小。因此,本文在嵌入层对上述方法进行改进,在预定的嵌入维度d之内,让所有特征选择适合自己的嵌入维度。首先,本文对每一个输入特征设置一组不同的嵌入向量,然后经过线性变换层和线性加权层用每个特征不同嵌入向量的加权和替代固定嵌入维度的嵌入向量。在嵌入层本文的具体做法为:ei=e1i,e2i,eki(5)其中,k是每一个特征设置不同嵌入向量

23、的总数,ei是第i个特征字段不同嵌入向量的串联。2.3线性变换层由于为每一个特征字段设置了多个不同嵌入维度的嵌入向量,因此需要将所有的嵌入向量转换为同一个嵌入维度d,计算方法用全连接来实现,具体为:eij=F(eij,wij)=relu(wijeij)(6)其中,F()是全连接函数,eji代表第i个特征字段设31计算机与现代化2023年第3期置的第j个嵌入向量,eij Rdj;wij是对应的权重参数,wij Rd dj。最后第i个特征字段的嵌入向量可以表示为:e?i=e?1i,e?2i,.,e?ki(7)这里,e?i Rk d。2.4线性加权层和变换嵌入层本节主要采用了一种软编码的方式给每个特

24、征字段选择合适的嵌入向量,本文通过计算不同嵌入向量之间的相似性,用它们的加权和来替代固定维度的嵌入向量。本文使用的软性注意力机制模型如图2所示。图2软性注意力结构图这里,首先给定目标任务的查询向量Query,根据 Query 计算第 i个特征字段不同嵌入向量的相关性,得到每个嵌入向量对应Value的权重系数,然后对Value进行加权求和,得到最后的Attention值。本文采用双线性打分模型,因为在计算相似度时比点积模型多了非对称性有利于平滑分数,计算方法为:s(eij,q)=(eij)TWq(8)然后根据双线性打分机制,得到第i个特征的第j个嵌入向量和查询向量的内积,W是额外引入的学习参数,

25、在学习过程中参与优化为:ij=softmax(s(ei,q)(9)在这里用softmax函数得到不同嵌入向量的注意力分布,最终得到第i个特征字段的嵌入向量表示为:att(ei,q)=jkijeij(10)综上,对每个特征字段都使用注意力模块,最后得到变换后的嵌入矩阵表示为:e=e1,e2,em(11)此时,从软性注意力机制加权后得到的嵌入向量具有良好的泛化性能,可以根据特征的流行度选择适合自己的嵌入维数。最后把此时的嵌入矩阵作为输入,模型在训练的时候会加强这种正反馈,实验结果也表明模型在AUC和Logloss上都得到了显著提升。2.5多头注意力机制近年来,多头自注意力机制在复杂关系建模方面取得

26、了显著的成绩。多头自注意机制能够在多个语义子空间中建模词对之间的复杂依赖关系。自注意机制不同于普通的key-value注意力机制,它没有用到外部的查询向量去计算词向量之间的相关性,而是把词向量通过Q,K,V这3个转换矩阵映射到不同空间,然后根据Q矩阵和K矩阵计算词向量内部的相关性,得到词向量之间的相互注意力权重,最后对V矩阵进行加权求和得到词对之间的依赖关系。本文应用多头注意力机制捕捉不同语义子空间特征场之间的复杂依赖关系。模型使用自注意力机制建模不同特征域之间的相关性,得到有意义的特征组合。特征之间的相关性计算如图3所示。图3特征间的相关性计算图模型通过自注意力机制的相关性计算决定哪些特征组

27、合是有意义的,进一步在GNN网络得到高阶特征的交叉。本文以特征i为例,具体介绍如何得到特征i有意义的高阶特征组合。首先定义特征i和特征j在特定注意力头h下的相关性:(h)i,j=exp(att(h)(ei,ej)l=1mexp(att(h)(ei,el)(12)att(h)(ei,ej)=(13)其中,att(h)(.,.)是注意力打分函数,本文采用内积计算特征i和特征j之间的相似性。W(h)Query,W(h)Key Rd d是2个转化矩阵,分别将原始的特征嵌入从空间Rd投影到新空间Rd,(h)i,j代表的是在子空间h中特征i和特征j之间的相关性权重。接下来,在子空间h中通过权重系数(h)i

28、,l以线性加权的方式组合所有相关特征来更新特征i的表达式:e?(h)i=l=1m(h)i,l(W(h)valueel)(14)其中,W(h)valueRdd,e?(h)i建模了特征i和其余特征之间的复杂依赖关系,相当于一种有意义的高阶特征交互。由于e?(h)i Rd是特征 i和其他特征的相关组合,它表示学到了一种新的特征交叉。同时,为了让一个特征学习到不同方式的特征组合,本文通过多头的创建,在不同子空间内各自学习不同的特征交互。最后将每个头学习到的组合特征表示为:e?i=e?i(1)e?i(2)e?i(H)(15)其中,是拼接操作,H是多头的数量。为了保留原始特征,在神经网络中增加了残差连接,

29、即:eresi=relu(e?i+Wresei)(16)其中,Wres R(dH)d是解决原始嵌入向量和转换后嵌入向量维度不匹配时的映射矩阵。由此每个特征经过多头注意力机制后会更新成一个新的特征表达eires,这是一种有意义的特征组合,最后将所有特征得到的转换特征表达为:eres=eres1,eres2,.,eresm(17)其中,eres Rm (dH)。2.6挤压激励网络本文模型融合了SENet机制。SENet的核心是由一组SE-block构成,它是一个轻量级的门控机制,用0.20.70.01emW(h)valueW(h)keyW(h)queryeie(h)ie?1ie?2ie?kiQue

30、ryValue1Value2Value4AttentionValueSource322023年第3期夏义春,等:结合注意力机制和图神经网络的CTR预估模型来建模特征图通道之间的相互依赖关系。不同通道的权重系数通过乘法逐通道加权到原始特征图,可以增强信息量大的特征并抑制无用特征的干扰。本文借鉴SENet注意力机制的思想,使用SE-block建模不同特征字段之间的依赖关系,动态增加重要特征的权值,减少无用特征的权值。本文的 SE-block结构如图4所示。图4SE-block结构图从图4可以看出,SE-block由3个步骤组成:挤压步骤、激励步骤和重加权步骤。这些步骤详细描述如下:1)挤压。用于计

31、算每个字段嵌入的平均信息,将原始的嵌入e=e1,e2,em 压缩为一个统计向量z=z1,z2,zm,其中zi是一个标量值,代表第i个特征的全局平均信息。计算方法如下:zi=Fsq(ei)=1dt=1deti(18)2)激励。这个步骤可以利用统计向量z来学习每个字段嵌入的权值。本文使用2个全连接层来学习权值。全连接第一层是参数W1的降维层,降维比r为超参数,采用relu作为非线性函数。全连接第二层通过参数W2增加维数。在公式上,字段嵌入的权重计算为:s=Fex(z)=relu(W2relu(W1z)(19)其中,s Rm是一个向量,relu是激活函数,学习参数W1 Rm mr,W2 Rmr m,

32、r是缩放比例。3)重加权。在SE-block中的最后一步是对原始特征嵌入进行加权,将原来的特征嵌入与得到的特征加权向量s进行field级别的乘法,输出新的场嵌入v=v1,vi,vm。具体计算公式为:v=Fre(s,e)=s1.e1,sm.em=v1,vm(20)其中,si是标量值是第i个特征域的权重,ei,vi Rd。综上所述本文使用SE-block通过2个全连接动态学习特征的重要性。对于CTR预估任务,它增加了重要特征的权重,降低了无用特征的干扰。2.7GNN特征交互层这一层是计算二阶特征交互的一层。交叉层特征交互的经典方法是内积和哈达玛积。内积广泛应用于浅层模型,如FM和FFM,而哈达玛积

33、则广泛应用于深层模型,如AFM和NFM。内积和哈达玛积计算可以表达为(eiej)xixj和(eiej)xixj,这里代表内积,代表哈达玛积。具体计算为:内积的计算过程:a1,a2,a3b1,b2,b3=a1b1+a2b2+a3b3哈达玛积的计算过程:a1,a2,a3b1,b2,b3=a1b1,a2b2,a3b3受到Fi-GNN模型的启发,本文模型采用图结构和GRU网络代替传统的二阶建模方法,在对比实验中发现用图结构建模二阶交叉确实优于另外2种建模方法。这里以SENet机制得到的嵌入向量v为计算符号,下面具体介绍实现步骤。2.7.1 特征图图是一种数据结构,它对一组节点及其边进行建模。这里将特征

34、字段连接在一起,形成一个加权完全连通图。图中的节点代表不同的特征,边权重反映了不同特征相互作用的重要性。特征图可以定义为G=(N,B),其中N代表特征的个数,|N|=m,而B代表不同节点的边关联。因此,建模特征交互的任务可以转换为在特征图上建模节点交互。特征交互示意图如图5所示,图中节点假设为3个。2.7.2基于图神经网络的特征交互图中的每一个节点与一个隐藏状态向量Vti相关联,初始状态可以表示为:图5特征交互结构图v1=v11,v12,v1m(21)其中,t代表特征图交互的步骤,当t为2时代表特征的二阶交互。特征交互示意图如图5所示,特征节点以循环的方式交互和更新其状态。在下一个交互步骤中,

35、节点与邻居聚合转换后的状态信息通过GRU31和残差连接,根据聚合的信息和历史节点更新自身的状态向量。1)状态聚合:在下一个交互步骤中,每个节点将聚合来自邻居的状态信息。形式上,节点ni的聚合信息是其邻居转换后的状态信息之和,计算第2次状态聚合方法为:a2i=nj ni BAnj niWjoutWiinh1j+bp(22)w(ni,nj)=exp(LeakyRelu(Ww vi vj)k=1Kexp(LeakyRelu(Ww vi vk)(23)Ani,nj=w(ni,nj),i j0,i=j(24)其中,Ww R2d是权重矩阵,是串联操作,Ani,nj是节点i和j之间的注意力权重,节点自身和自

36、身之间的权重系数为0,Anj ni代表i的周围节点对节点i的权重,Wjout和Wiin表示对i周围节点做的线性变换,k是节点i周边节点的个数,即总特征个数m-1个。1v2v11v12v13v21v22v23v12v13v0.40.62outW3outW1inW21aGRU11v11v21vFsq()Fex(,W)1mFre()V1V2Vme1e2em33计算机与现代化2023年第3期2)状态更新:第i个节点通过周围节点得到聚合状态信息后,节点i通过GRU网络和残差连接更新状态向量。第2次状态节点更新公式为:v2i=GRU(v1i,a2i)+v1i(25)图6GRU状态更新图GRU网络结构如图6

37、所示,具体公式描述为:z2i=(Wza2i+Uzv1i+bz)(26)r2i=(Wra2i+Urv1i+br)(27)v2i=tanh(Wva1i+Uv(r2iv1i)+bv)(28)v2i=v2iz2i+v1i(1-z2i)(29)其中,Wz、Wr、Wv、Uz、Ur、Uv是GRU网络的权重,bz、br、bv是GRU网络的偏置,z2i和r2i分是更新门向量和重置门向量。通过状态聚合和状态更新显式得到二阶特征交互,本文将自动嵌入框架得到的原始嵌入e、多头注意力机制得到的eres和挤压激励网络得到的v用图神经网络建模二阶特征交互并且用、p、q集合来表示特征 交 互 矩 阵。最 后 分 别 得 到=

38、1,2,m,p=p1,p2,pm,q=q1,q2,qm,其中i,qi Rd,pi RH d。d代表初始嵌入维度,H代表多头数量,d代表自注意力机制转换维度。通过消融实验发现这3个模块均能提升实验精度,组合起来性能达到最优。2.8DNN层深度网络由几个全连接层组成,隐式地捕捉高阶特征交互作用,模型使用了 2 个 DNN 层,一个用在GNN特征交叉层之后,另外一个直接用于转化后的嵌入层,得到深层模型并捕捉高阶非线性的特征组合。最后将 2 个预测结果相加,得到并行预测的结果。首先计算第1个DNN层,将特征交叉层得到的组合特征在列向量维度拼接,即:c=Fconcat(,p,q)=1,qm=c1,cm(

39、30)其中,ci R(d+d+H d)。设a(0)=c1,cm,表示第 1个DNN的输入。其次,将a(0)输入深度神经网络,前馈过程为:a(l)=relu(W(l)a(l-1)+b(l)(31)其中,l为深度,relu为激活函数。W(l)、b(l)、a(l)为第l层的模型权值、偏置和输出。最后得到第L层的输出:a(L)=W(L)a(L-1)+b(L)(32)其中,L是DNN的深度。同样计算第2个DNN层,设z(0)=e1,e2,em,表示第2个DNN的输入。其次,将z(0)输入深度神经网络,前馈过程为:z(h)=relu(W(h)a(h-1)+b(h)(33)其中,h为深度,relu为激活函数

40、。W(h)、b(h)、a(h)为第h层的模型权值、偏置和输出。最后得到第H层的输出:a(H)=W(H)a(H-1)+b(H)(34)其中,H是第2个DNN的深度。最后将2个预测结果求和,通过sigmoid函数得到CTR预测的值,即:y?=sigmoid(a(L)+a(H)(35)2.9模型训练在CTR预估领域中,损失函数常用对数损失,计算表达式为:Logloss=-1Q(y?i)+(1-yi)log(1-(y?i)(36)其中,yi和y?i分别是第i个样本的真实值和预测值,Q是样本总数,优化过程中只要最小化Logloss即可。2.10贝叶斯优化算法众所周知,基于深度学习的模型有许多超参数需要调

41、节,而且对模型性能的影响也十分巨大。设计者一般只关心设计模型的结构是否精妙,没有太多精力去寻找超参数,所以本文模型用贝叶斯优化算法给模型一组超参数,并且性能优于大部分主流CTR预估模型。2.10.1贝叶斯优化算法理论基础首先假设需要优化的函数是f:R其中 X 是超参数集合。现在需要求解的优化问题即x*=argmaxx Xf(x),贝叶斯优化为 f(x)构造了一个概率模型,然后利用该模型寻找最优值。执行贝叶斯优化时,必须做出2个主要选择。首先,需要初始化一个代理函数的先验分布。为此,本文选择高斯过程先验,因为它的高灵活性和可扩展性。其次,需要选择一个采集函数来解决 exploration-exp

42、loitation trade-off问题,平衡exploitation和exploration便于选择下一个超参数组合。下面简要介绍高斯过程和基于高斯过程的UCB算法。2.10.2高斯过程(GP)通俗地说,高斯过程就是先给定先验值,再根据观测值推导出后验值。假定概率模型函数形式为f:R,GP由任意有限 N个点集 xn X Nn=1导出了一个多元高斯分布。GP是观测值出现在一个连续域的随机过程,假设经过 t-1 个贝叶斯优化算法的迭代,则t个时刻f(xn)函数的结果分布由后验均值函数mt-1:X R和协方差函数Kt-1:X X R决定,这里协方差函数采用径向基RBF函数。2.10.3采集函数(

43、GP-UCB)为平衡exploration-exploitation trade-off问题,使用基于置信上限的UCB算法,选择下一次迭代的超参数公式定义为:xt=argmaxx Xt-1(x)+kt-1(x)(37)其中,k是超参数根据经验设置,t-1和t-1是t-1时刻x的均值和方差。2.10.4算法流程算法1 贝叶斯优化算法Input:f,X,UCB,M1tanh2iv2ia1iv2iv2ir2iz342023年第3期D InitSample(f,X)for t=1,2,n dop(y|x,D)FitModel(M,D)xt argmaxx XUCB(x,p(y|x,D)yt f(xt)

44、D D (xt,yt)End for其中,f 是 CTR 预估的模型函数,X 是超参数集合,UCB是采集函数,D由若干对数据组成的数据集,D InitSample(f,X)表示初始化数据集,每一对数据表示为(x,y),x是一组超参数,y表示该组超参数对应的结果。M是对数据集D进行拟合得到的高斯过程概率模型,D D (xt,yt)表示更新数据集。通过若干次迭代,为模型选取最好的一组超参数对测试集进行评估。2.10.5贝叶斯优化和反向传播优化对比反向传播算法是梯度下降法在神经网络的具体实现方式。具体来说,通过对目标函数的链式求导,得到权重的梯度后利用梯度下降算法由深到浅地在神经网络的每一层进行参数

45、更新。之后通过更新后的权重重新计算预测值与目标值之间的差距,反复使用反向传播算法更新权重求得最接近目标值的权重。随着深度学习的发展,网络的层数不断加深,网络结构也越来越复杂。深度模型除了需要优化网络的权重值之外还有许多超参数需要调整,由于无法获得超参数的梯度信息使得反向传播算法难以对超参数进行优化。通常深度模型的评估函数代价十分昂贵,若本文对模型的超参数进行一组一组的尝试,然后对比所有结果得到最优解,这无疑会耗费巨大的时间成本。贝叶斯优化不同于反向传播优化算法,它是一种超参数优化算法。它在每次迭代的时候会根据观测到的历史信息来进行下一次优化,通过不断的更新先验信息来逼近一组最优的超参数组合。因

46、此,本文可以在有限的时间内获取一个符合目标期望的解,节省了计算资源和时间成本。3实验本文在实验环节主要探究2个问题:1)内积、哈达玛积和图神经网络进行二阶特征交叉对本文模型的影响。2)分析消融实验中各个子模块的贡献。3.1数据集本文使用 2 个公开可访问的数据集进行实验:Criteo和Avazu。对于每个数据集,本文按8:1:1随机分割实例,分别用于训练、验证和测试。数据集如表1所示。表1数据集介绍DatasetCriteoAvazuinstances4584061740428967fields3922features208693615442501)Criteo:这是一个主流的CTR预测基准数

47、据集,包含13个数值特征字段和26个类别特征字段。获取地址为 http:/ P10024Python 3.6模型的学习率设置为 0.001,batchsize 设置为1024,使用Adam优化器。对于Criteo数据集,GNN特征交互层后面的DNN层使用3个隐藏层,每层神经元数目为600,多头注意力机制head设置为2个,转化空间设置为8,SE-block的缩放比设置为13,自动搜索嵌入使用的注意力机制转化空间的维度设置为8,每个特征初始化嵌入向量的维度范围设置为410。对于 Avazu数据集,GNN 特征交互层后面的 DNN 层使用 1个隐藏层,神经元数目为 566,多头注意力机制head设

48、置为3个,转化空间设置为8,SE-block的缩放比设置为3,自动搜索嵌入使用的注意力机制转化空间的维度设置为8,每个特征初始化嵌入向量的维度范围设置为910。为了避免模型训练过拟合,模型根据验证集上的AUC进行早停。在所有模型中,本文设置特征嵌入的维度为10,所有涉及与DNN融合的模型使用相同的的神经网络结构(即 3 层,400-400-400)进行公平比较,HOFM中最大阶数设置为3,所有其他超参数都在验证集中进行调优。3.4实验结果及分析本节基于3.3节的实验基础给出了本文模型和当前主流模型的性能的比较,2个数据集的实验结果如表3和表4所示。夏义春,等:结合注意力机制和图神经网络的CTR

49、预估模型35计算机与现代化2023年第3期表3CTR模型在Criteo数据集调参后最优值ModelAFMHOFMNFMPNNAFN+Deep&CrossDeepFMxDeepFMFiBiNETAutoInt+Fi-GNNAE-Attention-GNNETAUC0.79540.79600.79680.80260.80740.80590.80250.80700.80640.80720.80620.8108Logloss0.45540.45510.45370.45090.44510.44630.45010.44430.44470.44420.44530.4408表4CTR模型在Avazu数据集调参

50、后最优值ModelAFMHOFMNFMPNNAFN+Deep&CrossDeepFMxDeepFMFiBiNETAutoInt+Fi-GNNAE-Attention-GNNETAUC0.74540.75160.75310.75260.75550.75500.75350.75350.75550.75640.75710.7602Logloss0.37660.37560.37610.37370.37180.37210.37420.37370.37230.37170.37270.3689从表3和表4的实验数据可以看出,本文提出的AE-Attention-GNNET 模型在 2 个数据集上性能最优,并从

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服