APP下载

基于特征加权与自动交互的点击率预测模型

2023-11-22陈海青蔡江辉杨海峰贺艳婷

计算机技术与发展 2023年11期
关键词:对模型高阶向量

陈海青,蔡江辉,杨海峰,贺艳婷

(太原科技大学 计算机科学与技术学院,山西 太原 030024)

0 引 言

点击率(CTR)预测,旨在预测用户点击推荐项目(如音乐、广告)的概率,在推荐系统中发挥着重要作用。在CTR预测任务中,原始输入特征起着重要作用。由于直接使用原始特征很少能获得理想的预测结果,数据科学家一般会对原始特征进行交互获得更加全面的数据信息,以生成最佳预测系统。但并非所有的特征交互都对预测任务有用,无用的特征交互可能引入噪声信号,进而导致过度拟合。同时,模型的输入特征大多都是类别特征,而且数量在几十到数百,不同的特征对预测目标影响不同。

在早期阶段,Polynomial-2 (Poly2)[1]模型将输入特征进行两两组合并为每一个交叉项设置一个权重参数。但由于数据稀疏,模型无法很好地学习参数。于是,Steffen[2]提出了因子分解机(Factorization Machine,FM),它在具备高效计算性能的同时又具备良好的可解释性,但主要缺点是,它对所有特征交互进行建模,包括有用和无用的组合。与无用特征的交互可能会引入噪声并降低性能。近年来,随着深度神经网络的发展,出现了许多基于深度学习的预测模型,如Factorization-Machine Supported Neural Networks(FNN)[3]、Product-based Neural Networks(PNN)[4]、Higher-Order Factorization Machines(HOFM)[5]等。这些模型的主要缺点是,它们更多地关注高阶特征交互,而很少捕捉低阶交互。上述模型都利用深度神经网络(Deep Neural Network,DNN)来学习高阶特征交互,然而DNN以隐式建模来模拟高阶特征交互,因此缺乏关于哪些特征组合是有意义的良好解释。而Attentional Factorization Machines(AFM)[6]、深度因子分解机DeepFM[7]、极深因子分解机XdeepFM[8]、Automatic feature interaction learning via self-attentive neural networks(AutoInt)[9]等模型,使用显式建模来寻求不同阶的特征组合,将整个特征表示到低维空间中,同时提供良好的模型解释性。但是显式特征交互的缺点是:(1)对非线性的建模能力有限;(2)很难扩展到更高阶的特征交互;(3)数据稀疏性很大时,模型训练比较困难;(4)对所有特征交叉项一视同仁,可能会限制模型的表达能力。为了弥补显式和隐式模型的不足,该文用多头自注意网络[10]和深度神经网络去自动学习显式和隐式的特征交互,它能同时以显式和隐式的方式自动学习任意低阶和高阶的特征交互。

同时,在广告推荐场景中,输入数据不仅数量多而且特征维度很高,在特征选择时容易存在信息干扰或丢失等问题,限制了模型的表达能力。虽然AFM将attention机制引入到特征交叉模块进行加权,进而学习每种交互特征的重要性。但这种方式没有考虑到在特征交互时会引入干扰信息并且只考虑了特征两两交互的情况,因此预测准确度的提升十分有限。而Feature Importance and Bilinear feature Interaction(FiBiNET)[11]利用了挤压提取网络来获取特征重要性。但这种网络在挤压信息时会造成大量特征信息的丢失,进而影响模型性能。

综上,以往方法在对特征进行选择时存在信息干扰和丢失问题,另外在进行特征交互时不同的交互方式也会影响预测性能。为此,该文提出了一种基于特征加权与自动交互的点击率预测模型(Automatic feature interaction prediction model based on feature weighting,FWAI)。首先,引入Efficient Channel Attention for Deep Convolutional Neural Networks(ECANet)模块[12]对输入特征进行加权,该模块通过一维卷积有效地提取特征权重,解决了在特征选择时存在信息干扰和丢失的问题。然后,分别用多头自注意网络和深度神经网络(DNN)去自动学习显式和隐式的特征交互,从而有效挖掘有用的交互信息。

1 相关工作

1.1 点击率预测

CTR预测任务中的关键挑战是如何有效地建模特征交互。在该领域已经提出了许多模型[13-15],如逻辑回归(LR)[16]、多项式-2(Poly2)、DeepFM、XdeepFM、AutoInt等模型。随着深度学习在计算机视觉和自然语言处理等许多研究领域的巨大成功,近年来提出了许多基于深度学习和神经网络的CTR模型,如:DeepFM、DCN[17]、AFM。

1.2 ECANet模块

ECANet是2020年在CVPR上提出的一种通道注意力模块,并在很多任务中被引用。例如,Gera等人[18]利用ECANet来消除面部识别过程中的冗余特征,显著提高了模型的鲁棒性。基于该模块在特征重要性提取上的优势,该文提出的FWAI通过ECANet对输入特征进行动态加权,以提高模型的准确率。在后文将重点介绍该模块的理论知识和实现机制等。

1.3 多头自注意网络和残差网络

提出的模型利用了深度学习文献中的最新技术:注意力机制[19]和残差网络[20]。注意力最早是在视觉图像领域提出的,并在各种任务中被证明是有效的,如问答、文本摘要和推荐系统。Vaswani等人进一步提出了多头自注意模型,以模拟机器翻译中单词之间的复杂依赖关系。该文利用它来建模不同特征之间的交互。残差网络在当年的ImageNet竞赛中取得了最优的表现。它在解决神经网络中的梯度消失、梯度爆炸以及网络退化等问题中具有突出作用。

2 模型介绍

本节介绍FWAI模型,模型结构如图1所示。。

FWAI主要包含以下部分:输入层(Input Layer)、嵌入层(Embedding Layer)、ECANet层(ECANet Layer)、交互层(Interacting Layer)和输出层(Output Layer)。接下来,介绍该方法的细节。

2.1 Input Layer

在CTR预测任务中,数据中的特征通常分为类别特征和数值特征。将所有特征输入用稀疏向量表示:

x=[x1;x2;…;xm]

(1)

其中,m是总特征字段的数量,xi是第i个字段的特征表示。如果第i个字段是分类的,xi是一个热编码向量(one-hot vector)。如果第i个字段是数值的,xi是一个标量值。

2.2 Embedding Layer

由于分类特征都是稀疏高维的,所以采用最常见的Embedding方法,将它们表示到低维空间。用低维向量表示每个分类特征,即:

ei=Vi·xi

(2)

其中,Vi是场i的嵌入矩阵,xi是一个热编码向量。在真实数据中,分类特征可能拥有多个值,xi是一个多值热编码向量(multi-hot vector)。为了与多值输入兼容,对式(2)进行修改,并将多值特征表示为相应特征嵌入向量的平均值:

(3)

其中,n是第i个特征字段的值的数量,xi是该字段的多个热向量表示。因为数据中也会存在数值特征,为了允许分类特征和数值特征之间的相互作用,必须将数值特征也表示在同一低维特征空间中,即:

el=Vl·xl

(4)

其中,Vl是字段m的嵌入向量,xl是标量值。

最后,嵌入层的输出是多个特征嵌入向量的串联,E=[e1,e2,…,em]。

2.3 ECANet Layer

在真实应用场景和数据中,不同的特征对于预测任务的重要性是不同的。比如在预测一条音乐广告是否会被点击时,显然演唱者这个特征比其他特征更重要。受ECANet在计算机视觉领域取得重大成功的启发,将ECANet机制引入到模型中。对于特定的CTR预测任务,可以通过ECANet机制动态增加重要特征的权重,降低干扰特征的权重。用嵌入特征作为输入,ECANet为嵌入特征生成权重向量A={a1,…,ai,…,am},然后用向量A新缩放原始嵌入E,得到新的嵌入V=[v1,…,vi,…,vm],其中ai∈R是一个标量,表示第i个特征的Vi的权重。 如图2所示,ECANet由三个步骤组成:特征压缩、权重提取、特征加权。

(1)特征压缩(FGAP)。

第一步用于获取每个特征向量的统计信息,使用的方法是平均池化,将嵌入特征E=[e1,…,em]转化为统计向量Z=[z1,…,zm],其计算方法如式(5)所示:

(5)

图2 ECANet层

(2)权重提取(Ew)。

第二步用来学习基于统计向量Z的每个字段嵌入的权重。通过考虑每个特征及其k个邻居来捕获局部跨通道交互信息。可以通过大小为k的1D卷积来有效实现,其中卷积核大小为k代表了局部跨信道交互的覆盖率,即,该特征附近有多少邻居特征参与了这个特征的注意力预测。形式上,字段嵌入的权重可以计算如下:

A=σ(conv1Dk(Z))

(6)

其中,conv1D表示一维卷积,A∈Rm是一个向量,K表示卷积核的大小,σ是激活函数。

(3)特征加权(Fw)。

ECANet最后一步是特征加权,这一步将原始嵌入向量E和学习到的权重向量A进行相乘,得到加权后的嵌入向量V=[v1,…,vi,…,vm]。计算过程如公式(7):

V=F(A,E)=[a1·e1,…,am·em]=

[v1,…,vm]

(7)

其中,ai∈R,ei∈Rk,vi∈Rk,i表示第i个特征域,k表示嵌入向量的维度。

2.4 Interacting Layer

2.4.1 隐式高阶交互

文中在特征嵌入向量v上使用前馈神经网络对隐式特征交互进行建模,其计算公式为:

x1=σ(W(1)v+b1)

(8)

xn=σ(W(n)v(n-1)+bn)

(9)

其中,n表示神经网络层的深度,σ是激活函数,xn是第n层神经网络的输出。

2.4.2 显式高阶交互

文中用多头自注意网络进行显示特征交互。以特征j为例,将解释如何识别涉及特征j的多个有意义的高阶特征。首先定义特定注意头h下特征j和特征k之间的相关性,如下:

(10)

(11)

(12)

(13)

其中,⊕是串联运算符,H是总头数。

为保留以前学习到的组合特征和原始特征,在网络中添加了标准的残差网络,即:

(14)

2.5 Output Layer

模型FWAI将隐式与显式高阶特征交互结合起来。其模型输出为:

(15)

2.6 Training

文中损失函数是交叉熵损失,定义如下:

(16)

3 实 验

本节将介绍实验数据以及参数设置,通过在四个真实的公开广告数据集上进行实验,对FWAI模型的预测性能进行评价。实验内容包括:

(1)FWAI与目前常见的模型对比;

(2)ECANet层对模型性能的提升;

(3)不同交互方式对模型性能的影响;

(4)超参数设置对模型性能的影响。

3.1 实验数据集及设置

3.1.1 实验数据集

使用4个公开的真实数据集。表1总结了数据集的统计数据。在二值化过程中,将评分小于3的样本视为负样本。Criteo、Avazu和KDD12原始数据集的规模都超过了4 000万条,由于实验条件限制,该文对每个数据集都只选取了前1 000万条数据,然后通过均匀随机抽样方式将数据集按8∶1∶1划分为三部分:80%用于训练,10%用于验证,10%用于测试。

表1 实验数据集统计

3.1.2 实验超参数设置

所有方法都在TensorFlow中实现。对于所有深度模型,根据经验将嵌入维度d设置为16,batch size设置为1 024,Drop Out Ratio设置为0.7,学习率设置为0.000 1层深度设置为3,最后,使用Adam优化所有基于深度神经网络的模型。

3.1.3 评价指标

AUC:ROC曲线下的面积(AUC),衡量的是CTR预测因子对随机选择的正样本项目的评分高于随机选择的负样本项目的概率。AUC越高,性能越好。

LogLoss:是基于概率的最重要的分类度量,也是二分类问题中经常使用的评价标准,用来表示预测值与真实值之间的差距。当LogLoss的下限为0时,表示预测值与真实值完全相同。在实验中,较小的 LogLoss值表示预测模型具有更好的性能。

3.2 FWAI模型与基线模型性能对比

表2总结了在四个数据集上5次不同运行的平均结果。观察实验结果可以看出:(1)二阶特征组合和高阶特征交互的模型在所有数据集上的表现都大大优于LR,这表明单个特征在CTR预测中是不够的,挖掘高级特征交互对于模型至关重要。(2)FWAI模型在四个数据集上的性能始终优于其他模型。这是因为模型引入了注意力机制对输入特征进行加权,而且分别用多头自注意网络和深度神经网络(DNN)去自动学习显式和隐式的特征交互。使得FWAI能够通过加权对输入特征进行重要性选择,使得模型可以有选择性地学习重要特征,并抑制不太有用的特征, 同时以显式和隐式的方式自动学习高阶特征交互,从而有效挖掘特征间的交互信息,显著提升了模型的预测能力。

表2 四个数据集上不同模型的性能对比

3.3 ECANet层对模型性能的提升

本节将讨论ECANet机制对模型性能的影响。为了方便起见,用NO-ECA表示从模型中删除ECANet层。实验结果如表3所示。

表3 ECANet层对模型性能的提升

从实验数据可以发现,当模型加入ECANet机制后,预测效果有很大提升。这说明,ECANet层对于提升模型的性能是十分必要的,它通过对输入特征加权来进行重要性选择,能够有效增强模型能力并使基线模型获得更好的性能。

3.4 不同交互方式对模型性能的影响

本节讨论了显式和隐式交互方式对模型性能的影响。使用E和I来表示使用哪种交互方式。“E”表示使用显式特征交互(该文使用的是多头自注意网络),“I”表示使用隐式特征交互(即深度神经网络),而“EI”表示同时使用显式和隐式交互。在四个不同数据集上进行了实验,并将结果总结在表4中。根据实验结果可以观察到,将显性特征交互和隐性特征交互相结合的效果优于单个交互方式,证明了模型的有效性。

3.5 超参数设置对模型性能的影响

本节讨论了FWAI模型的一些超参数对算法性能的影响,重点放在嵌入层和DNN部分。具体包括:嵌入维度;网络深度。

表4 不同交互方式的模型性能

表5 嵌入维度对模型AUC和LogLoss的影响

(1)研究了嵌入层的输出维度d对FWAI预测性能的影响。该文将嵌入维度大小按照16,32,64进行实验并在表5总结了实验结果。通过实验结果观察到了以下信息:从四个数据集上可以看到,随着维度大小的增加,性能不断提高。但当维度达到32后,性能开始下降。原因是当参数太多时,模型拟合过度。

(2)网络深度对模型预测性能的影响。

表6展示了隐藏层数量对模型性能的影响。可以观察到,FWAI的性能在开始时随着网络深度的增加而增加。然而,当网络深度大于3时,模型性能会下降。这是由于过度拟合造成的。

表6 网络深度对模型AUC和LogLoss的影响

4 结束语

该文提出了一种新的基于特征加权与自动交互的点击率预测模型(FWAI),该模型旨在动态学习特征重要性并自动构建有效的特征交互。一方面,FWAI能够通过加权对输入特征进行重要性选择;另一方面,它能同时以显式和隐式的方式自动学习高阶的特征交互。在四个真实数据集上的实验结果证明了该模型的有效性。对于未来的工作,将继续对模型进行优化,以降低模型的时间复杂度,并改进其在线推荐的性能。

猜你喜欢

对模型高阶向量
向量的分解
有限图上高阶Yamabe型方程的非平凡解
聚焦“向量与三角”创新题
高阶各向异性Cahn-Hilliard-Navier-Stokes系统的弱解
滚动轴承寿命高阶计算与应用
光源对模型贴图的影响——3种人造光源在三维数字化采集中的应用
一类完整Coriolis力作用下的高阶非线性Schrödinger方程的推导
蒙药特润舒都乐对模型小鼠脾脏NK细胞活性的影响
向量垂直在解析几何中的应用
蒙医开窍补肾针刺法对模型大鼠胸腺、脾脏指数的影响