邹雨菲 杨欣 胡陈陈
摘 要:随着用户行为数据和商品数据呈指数级增长,互联网平台面临严重的信息过载问题。可以在推荐算法中引入点击率预测模型,有效提升用户的购物体验。将特征协同交互网络(Co-Action Network, CAN)与深度兴趣演化模型(Deep Interest Network, DIN)相融合,挖掘用户与商品的深层次关系,模拟真实场景下用户与商品的交互情况,得到商品点击率预估模型CAN-DIN。在公开数据集Amazon-beauty上的实验表明,与相关基模型相比,CAN-DIN算法的准确率有一定的提升,可以应用于电商推荐场景。
关键词:特征交互;点击率预估;深度神经网络
中图分类号:TP391.3 文献标识码:A 文章编号:2096-4706(2023)19-0145-06
Product Click-through Rate Prediction Based on Co-Action Network
ZOU Yufei, YANG Xin, HU Chenchen
(Lanzhou Jiaotong University, Lanzhou 730070,China)
Abstract: With the exponential growth of user behavior data and goods data, internet platforms are facing serious information overload issues. A click-through rate prediction model can be introduced into recommendation algorithms to effectively improve users' shopping experience. By integrating the Co-Action Network (CAN) with the Deep Interest Network (DIN), explore the deep relationships between users and goods, simulate the interaction between users and goods in real scenarios, and obtain the goods click-through rate prediction model CAN-DIN. Experiments on the publicly available dataset Amazon-beauty have shown that the CAN-DIN algorithm has a certain improvement in accuracy compared to relevant base models and can be applied to E-commerce recommendation scenarios.
Keywords: feature interaction; click-through rate estimation; deep neural network
0 引 言
点击率预测模型广泛应用于推荐系统中,为用户推荐符合其兴趣和需求的商品或服务。采用基于机器学习、深度学习的算法,通過学习用户历史行为、偏好和隐式反馈数据,预测用户对尚未看到商品或服务的兴趣程度,并将推荐结果按照吸引用户的程度大小进行降序排列。通过对不同推荐结果进行不同权重的排序,提高满足用户需求推荐结果的展示率,对于提升电商平台的客户满意度和企业盈利能力具有重要意义。
点击率预测模型的一个核心问题是如何更好地学习用户和表示商品[1]。推荐技术从递归神经网络[2]、注意力机制[3]发展到图神经网络,这些技术通常根据用户的历史反馈为用户推荐物品。
因式分解机(FM)[4]是浅层模型时代的代表性方法。在FM中,特征的交互被建模为特征潜在向量的内积。FM在不同类型的相互作用下,使用相同的潜向量。DeepFM[5]不再需要手动构建笛卡尔积特征。PNN模型[6]提出一种Product Layer的思想,以捕捉特征的互动以及邻域间的互动。DCN模型[7]中的Cross网络是FM过程在高阶特征组合的推广,Cross部分在增强高阶特征组合的同时减少了参数的个数,并省去了非线性激活函数。ONN模型[8]通过一些不同的操作来学习特征间互动。尽管上述方法与普通DNN相比性能上有所提高,但每个ID的嵌入都承担了表示学习和交互建模的责任。同时,它们之间的相互干扰可能损害各自的性能。
本文将特征协同交互网络(Co-Action Network, CAN)[9]与深度兴趣演化模型(Deep Interest Network, DIN)[10]相结合,得到融合特征协同网络的深度兴趣演化模型(CAN-DIN)。通过实验对比分析,找到最优的模型和参数组合,实现了提升推荐准确率的目的。
1 算法概述与模型建立
1.1 算法概述
1.1.1 DIN算法
DIN模型是推荐算法中的一种深度兴趣网络模型,它通过引入注意力机制来捕捉用户对某个商品的历史行为的兴趣,并随着候选商品的变化而变化,从而有效提升模型的表达能力。
1)输入层。输入x:K维高维稀疏二值型向量通常是由多个group特征拼接而成的。假设有M个group,每个group特征ti的维度为Ki,ti每个元素取值为0或1,i的个数大于等于1。
2)模型设计。相比于DNN,DIN引入了local activation unit,用以学习用户兴趣和当前候选商品的关联程度。在DNN中,假设ti有k个元素值为1,则需要将这k个元素对应的k个embedding特征进行pooling,使得不同样本之间group拼接完的特征长度是一致的,即:
其中,E(s)和Var(s)分别表示每个mini-batch中激活函数输入的均值和方差。
1.1.2 CAN算法
特征协同交互网络(Co-Action Network, CAN)是一种新的特征交互方法,主要是利用共现网络来学习物品和用户之间的特征关联,并将其应用于个性化推荐和CTR预测。
CAN通过采用协同作用单元(Co-Action Unit)和多阶增强等技术,有效处理用户和物品特征的拼接和互动,提升模型的非线性拟合能力和表达能力。
1)架构概述。用户和目标物品的特征U和M以两种方式输入CAN。在第一种方式下,它们使用的embedding编码为稠密向量{E(u1),L,E(u1)}和{E(m1),L,E(mJ)},进一步拼接为eitem和euser。在第二种方式下,从U和M中选择一个子集Ufeed和Minduction,使用co-action unit来建模特征交互 ,mj ∈ Minduction。CAN的计算式为:
其中, 表示矩阵乘法,σ表示激活函数,H表示具有向量输入的共同作用单元。对于像用户历史行为 这样的顺序特征,共同作用单元应用于每个点击行为,然后对序列进行求和池化:
Pinduction从商品特征中获取信息,而Pfeed从用户特征中获取信息,Pfeed也可作为micro-MLP的参数,反之亦然。
3)多阶增强。上述特征是基于一阶特征形成的,特征的交互可以通过高阶来估计。虽然共同作用单元可以隐式地学习高阶特征交互,但考虑到特征交互的稀疏性,学习过程可能会更加困难。为此,在模型中引入多阶信息,以获得多项式输入。其通过将micro-MLP应用于不同阶数的Pfeed来实现:
其中,C表示阶数。利用Tanh函数来避免高阶项引起的数值问题。多次元增强大大提升了模型的非线性拟合能力,并且不会带来额外的计算和存储成本。
4)多层次的独立性。学习的独立性是交互建模特征的主要特征之一。为了保证学习的独立性,模型从不同方面提出了策略。第一,参数独立。通过将表示学习和特征交互建模的更新分离开来,使得参数独立性是CAN的基础。第二,组合独立。随着特征组合数量的增加,特征间的相互作用呈线性增长。该方法使模型的表达能力呈指数级放大。特征交互的组合应满足:
1.2 模型建立
CAN-DIN模型是将co-action模块输出的向量和DIN模块输出的向量以及其他特征通过embedding层,转化为稠密向量的特征拼接,再通过3层MLP获取目标item的CTR预测值。对于Pinduction,使用两层MLP,输入/输出维度设置为16/8和8/4,Pfeed的最高阶数为3。模型参数以高斯分布(平均值为0,标准差为0.01)初始化。模型训练的优化器为Adam,batch_size设置为128,初始学习率设置为0.002,每个epoch学习率折半。co-action模块输出的向量和其他特征通过embedding层转得到的稠密向量进行拼接后通过3层MLP获取目标item的CTR预测值。三层MLP的神经元大小分别设置为200、80、1。模型训练过程中,使用Logloss计算损失,为避免梯度爆炸和梯度消失现象的发生,约束模型输出y值的取值范围设置为[1×10-10,1.0]。
2 实验验证
2.1 数据集
本文选用公开数据集Amazon Review Data的Luxury Beauty子类(简称Amazon-beauty)。当一个用户对某个物品进行评价时,我们将其认定为正样本,并从当前物品列表中随机选择一个其他商品作为负样本,然后将它与当前评价的正样本一起写入文件中,并创建相应的用户行为序列。对于有两次以上点击行为的用户,选择其最后一次点击存入测试集,其余存入训练集;对于只有一次点击行为的用户默认存入训练集。将训练集内数据按照9:1随机划分成模型训练集和验证集,并对训练集和验证集数据进行随机打散。将数据集划分为训练集、验证集、测试集的数据量如表1所示。
深度神经网络模型在拟合高阶复杂特征时有不错的表现。因此,深度学习模型的输入数据不需要过于复杂。本文的研究重点是提取和挖掘用户的历史行为特征,从用户行为历史信息和物品特征等角度考虑,筛选部分缺失率相对较低的特征输入模型。输入数据各字段说明如表2所示。
2.2 评价指标
本文选用AUC、ACC、Logloss三种常用评价标准对CTR排序模型进行评估[11]。
分类准确度是评价推荐算法在分类商品方面准确度的重要指标[12],根据用户对商品的喜好与否和商品是否被推荐,商品分类情况如表3所示。
AUC(Area Under the Curve)代表ROC(Receiver Operating Characteristic)曲线下的面积,表示预测的正样本在负样本之前的概率。AUC的值不受正负样本比例的影响,能够有效评价各种二分类任务的模型。AUC取值的范围通常在0.5到1之间,AUC越高表示模型性能越好。AUC的计算式为:
(18)
其中, 表示正样本预测概率大于负样本预测概率的个数,positiveNum表示正样本数,negativeNum表示负样本数。
推荐结果的准确率(Accuracy, ACC)表示模型预测准确性的比例。ACC值越高,表示模型预测的准确率越高,模型效果越好。ACC的计算式为:
(19)
其中,TP、FP、TN、FN的含義如表3所示。
对数似然损失Logloss(Log-likelihood Loss, Logloss)也被称为交叉熵损失。Logloss反映了预测结果的平均偏差,体现模型的分类能力,通常用于评估分类器性能的优劣。Logloss越低说明模型性能越好。Logloss的计算式为:
(20)
其中,yj表示商品j的真实标签值, 表示商品j的预测值。
2.3 实验结果分析
2.3.1 与经典模型对比实验
本实验的操作系统为Windows 11,编程语言为Python 3.7.16,深度学习框架为TensorFlow-gpu 2.6,GPU加速库为CUDA 11.8。
为评价模型在预测方面的准确性,将融合特征交互的深度神经网络模型与现有效果较好的CTR预测模型(包括经典的FM模型和DNN模型,以及DIN模型)进行对比。
随着训练迭代次数的增加,模型整体的损失函数值呈下降的趋势,其中CAN-DNN、CAN-DIN模型的迭代效率明显优于其他模型,说明CAN架构可以根据特征交互突出有意义的组合特征,相比其他模型能够更高效地学习高阶交互特征,加速了模型的收敛。各模型在测试集上的表现如表4、图1所示。
从表4中的结果可以看出,CAN-DNN和CAN-DIN的表现在各评价指标上都优于其他基模型。CAN-DNN的AUC值为0.855 7,ACC值为0.767 3,Logloss值为0.232 0。对比FM模型,CAN-DNN在AUC上提升了11.23%,在ACC上提升了9.85%;对比DNN模型,CAN-DNN在AUC上提升了3.15%,在ACC上提升了3.62%;
CAN-DIN的AUC值为0.863 6,ACC值为0.778 9,Logloss值为0.236 3。与热门模型DIN相比,CAN-DIN的AUC提高了1.7%,准确率提高了1.7%。以上结果说明,融合有CAN框架的模型都取得了更高的AUC和更低的Logloss,說明预测结果与实际值更为接近。
如图1所示,对比不同模型的参数量和AUC值,可以看出融合有CAN的模型参数量和AUC值均显著高于FM和DNN模型。其中,CAN-DNN模型和CAN-DIN模型的参数量没有明显差距,但相对于CAN-DNN模型,CAN-DIN模型的AUC值提升了0.92%,ACC值提升了1.51%。
从实验结果和模型结构的角度来分析,CAN中的Co-Action Unit是DIN网络中计算历史用户行为与目标商品相似度的Activation Unit的升级。不同的是,DIN中的Activation Unit是对某历史行为与目标商品间的相关度建模,它需要再乘上原历史行为,成为一个新的特征表达。而Co-Action Unit直接生成了历史行为与目标商品的交叉表达,不再需要建模历史行为和目标商品的相似度,减少了信息的折损。相比之下,基于特征协同交互网络的商品点击率模型能够在更上游的位置处理特征交叉,以尽可能地保留原始特征。
2.3.2 模型超参数优化
为了优化CAN-DIN模型的超参数,提高模型在实际应用场景中的准确性和可靠性。本文通过实验,对比不同超参数下的Logloss和AUC值,评判模型的性能,找到模型最优的超参数组合。
实验结果如下:
1)Embedding维度。在表5中,当Embedding向量的维度从8开始增加时,模型的AUC值逐渐增大,这表明Embedding向量中蕴含了更多的特征信息,从而使得模型能够更好地学习到输入数据的特征表示。但是,当Embedding向量的维度增加到12之后,模型的AUC值逐渐下降,这是因为Embedding向量的表达能力也是十分有限的,维度增加到一定程度后就无法继续提高模型的性能。这种情况也称为维度灾难,当Embedding向量的维度过高时,模型需要学习的参数数量会急剧增加,从而导致模型过于复杂,难以训练,并且容易过拟合。因此,通过本次实验,确定Embedding向量的最佳维度为12,此时模型性能最佳。
2)激活函数。在表6中,当使用Tanh作为激活函数时,模型的预测效果明显优于使用Sigmoid和ReLU激活函数的预测效果。这是因为Tanh函数在0附近的导数值更大,因此在输入数据绝对值较小的区域,Tanh函数能够更快地将输入映射到输出,从而加快了模型的收敛速度。与Sigmiod函数相比,Tanh函数的输出范围更广,包含从-1—1区间,因此可以更好地保留输入数据的范围信息,减少了信息损失。与ReLU函数相比,Tanh函数在输入数据为负数时能够提供非零的输出,这样能够更好地处理输入数据中存在的负值信息,使模型具有更好的表达能力。
3)优化器。在表7中,使用Adam优化器时,模型的AUC最大,其次是Momentum和Adagrad。Adam优化器是一种基于梯度的优化器,借鉴了动量和自适应学习率的思想。在Adam优化器中,动量项可以帮助优化器更快地逃离局部最优解,自适应学习率可以使优化器在不同参数和数据的情况下自适应地调整学习率,从而更好地控制参数更新的步长。因此,Adam优化器通常能够更快地收敛,并在较短的时间内达到较高的精度。Momentum和Adagrad优化器也是常用的优化器之一。但Momentum可能会引入振荡,即当优化器在梯度方向上来回摆动时,参数更新的幅度可能会变得非常大,导致训练过程不够稳定。Adagrad在训练过程中,学习率会不断衰减,并可能会逐渐趋于零。这意味着随着训练的推进,Adagrad优化器可能会疏忽一些重要的参数变化信息,从而导致训练结果不佳。
4)学习率。如表8所示,随着学习率的不断减小,模型的预测效果越来越好,学习率为0.000 2时,达到峰值,当学习率继续减小时,模型的预测效果反而下降。这是因为模型参数更新的步长变小,模型能够更准确地探索最优值附近的区域。但学习率过小时,模型的参数更新步长变得非常小,导致模型在最优值附近振荡,很难再进一步优化模型的性能。此时,模型可能会停滞在一个局部最优解中,而无法找到全局最优解。
通过以上实验,最终确定CAN-DIN模型的emdedding维度为12,激活函数为Tanh,优化器为Adam,学习率为0.000 2。最终,CAN-DIN在Amazon-beauty数据集上的AUC值为0.869 9,accuracy值为0.782 2。
3 结 论
综上所述,融合特征交互的深度神经网络模型因其融合了Co-Action Unit结构,将通过点积获得的标量交叉特征转换为向量形式,同时通过确保参数独立性避免了单特征嵌入训练对交叉特征性能的负面影响。使得其在原有结构的基础上将不同特征送入新设计的算子得到特征交互的表达向量,再额外送入全连接层中作为信息补充。因此在与其他模型的对比实验中,能够拥有更快的收敛速度和更高的精度。此外,相比于與DNN的融合,将CAN与DIN融合能够在保证参数量没有明显增加的情况下获得更高的AUC值。实验结果表明,基于特征协同交互网络的商品点击率预测模型CAN-DIN能够应用在推荐算法中,可以有效提升推荐的准确性。
参考文献:
[1] HU L M,XU S Y,LI C,et al. Graph neural news recommendation with unsupervised preference disentanglement [C]//Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics. [S.l.]:Association for Computational Linguistics,2020:4255-4264.
[2] OKURA S,TAGAMI Y,ONO S,et al. Embedding-based news recommendation for millions of users [C]//Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. HalifaxNS:ACM,2017:1933-1942.
[3] ZHU Q N,ZHOU X F,SONG Z L,et al. Dan: Deep attention neural network for news recommendation [C]//Proceedings of the AAAI Conference on Artificial Intelligence. [S.l.]:Open Journal Systems,2019:5973-5980.
[4] RENDLE S. Factorization machines [C]//2010 IEEE International Conference on Data Mining. Sydney:IEEE,2010:995-1000.
[5] GUO H F,TANG R M,YE Y M,et al. DeepFM: a factorization-machine based neural network for CTR prediction [C]//Proceedings of the 26th International Joint Conference on Artificial Intelligence. [S.l.]:AAAI Press,2017:1725-1731.
[6] QU Y R,CAI H,REN K,et al. Product-based neural networks for user response prediction [C]//2016 IEEE 16th International Conference on Data Mining (ICDM).Barcelona:IEEE,2016:1149-1154.
[7] WANG R X,FU B,FU G,et al. Deep & cross network for ad click predictions [J/OL].arXiv:1708.05123v1.[2023-02-16].https://arxiv.org/abs/1708.05123.
[8] YANG Y,XU B L,SHEN S F,et al. Operation-aware neural networks for user response prediction [J]. Neural Networks,2020,121:161-168.
[9] BIAN W J,WU K L,Ren L J,et al. CAN: feature co-action network for click-through rate prediction [C]//Proceedings of the fifteenth ACM international conference on Web Search and Data Mining. New York:ACM,2022:57-65.
[10] ZHOU G R,SONG C R,ZHU X Q,et al. Deep interest network for click-through rate prediction [R/OL].arXiv:1706.06978v3.[2023-02-06].https://arxiv.org/abs/1706.06978v3.
[11] 陈一洲.基于注意力机制的用户点击率预测方法研究[D].上海:东华大学,2022.
[12] 朱彤.基于多种策略的商品推荐系统研究与实现[D].咸阳:西北农林科技大学,2022.
作者简介:邹雨菲(1997—),女,汉族,湖北荆州人,硕士研究生在读,研究方向:深度学习;杨欣(1997—),女,汉族,甘肃天水人,硕士研究生,研究方向:经济统计;胡陈陈(1997—),女,汉族,山东济宁人,硕士研究生在读,研究方向:机器学习。
收稿日期:2023-04-10