CN114282687A - 一种基于因子分解机的多任务时序推荐方法 - Google Patents
一种基于因子分解机的多任务时序推荐方法 Download PDFInfo
- Publication number
- CN114282687A CN114282687A CN202111667759.1A CN202111667759A CN114282687A CN 114282687 A CN114282687 A CN 114282687A CN 202111667759 A CN202111667759 A CN 202111667759A CN 114282687 A CN114282687 A CN 114282687A
- Authority
- CN
- China
- Prior art keywords
- time sequence
- embedding
- model
- feature
- result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本发明属于时间序列推荐技术领域,具体为基于因子分解机的多任务时序推荐方法。本发明具体步骤为:根据不同的推荐任务需求处理数据并得到相似性矩阵;将用户静态特征和根据相似性矩阵筛选出的动态特征作为模型静态任务和动态任务的输入;不同任务经过嵌入层、注意力机制、因子分解交互层、线性层得到最终给结果;根据结果和损失更新模型参数,不断训练直至达到收敛停止条件;保存模型,在新数据中加载模型并得到TOPN推荐结果。本发明着力提高因子分解机模型在时序推荐场景中的实用性和准确性,将多任务、注意力机制等与因子分解机相结合,从而提升因子分解机在现实时序推荐任务中的效果。
Description
技术领域
本发明属于时间序列推荐技术领域,具体涉及基于因子分解机的多任务时序推荐方法。
背景技术
因子分解机(Factorization Machine)[1]是推荐领域中最为经典的推荐方法,由Steffen Rendle于2010年提出,解决了大规模稀疏数据的特征组合问题,相较于传统的线性回归(LR)和SVM类[2]算法,其推荐效果有显著提升。为了更好地捕捉特征之间的交互,因子分解机衍生处理许多变体,比如NFM[3]、DeepFM[4]、xDeepFM[5]等。
然而现实应用场景中随着电商行业、音乐娱乐的兴起,用户行为的时序性日趋重要,因此,时序推荐近年来引起业界内外广泛关注,其核心问题是围绕用户行为的时序性进行推荐模型的设计。传统因子分解机以及其对应深度和宽度扩展的方法都没有考虑时序信息,同时,现有的大多数序列推荐算法都将重点放在顺序动作之间的传递结构以及历史事件对当前预测的影响上,比如ARMA[6]、RNN[7]、GRU[8]等经典模型,很大程度上会忽略用户固定的上下文信息、这些信息之间的特征交互以及这些信息和时间特征之间的交互,并且长序列的特征传递需要较大的数据存储空间并造成大规模的计算量。
发明内容
本发明的目的在于提供一种计算量小、推荐效果好的基于因子分解机的时间序列推荐方法。
本发明提出的基于因子分解机的时间序列推荐方法,将原始因子分解机模型[1]的一阶、二阶交互和时序模型[9]相结合,一方面能够学习非时序性特征的上下文信息,另一方面能够学习时间序列所蕴含的时序信息,同时又能够将两部分信息结合进一步学习以提升推荐效果,从广度和深度的多维角度解决原始因子分解机在时序推荐上表现欠佳的问题。具体步骤如下。
步骤1:将原始数据整理并拆分为用户非时序的静态上下文和历史时间序列信息,在此基础上生成用户-物品矩阵;其中,将用户输入特征分为用户静态特征和用户时序特征两部分:[s1,s2,...,sn,d1,d2,...,dm,target];
其中,s为英文static的首字母,总共有n维,表示非时序特征,d为英文dynamic的首字母,代表时序特征,总共有m维,target表示目标物品。
步骤2:根据步骤1中的用户-物品矩阵按照cosine(余弦)相似性对步骤1中分割出的时间序列进行重要性筛选,在有限的时序输入长度内保留最相关的时间序列:
步骤3:对非时序特征和筛选过后的时序特征进行二维特征嵌入:
Estatic=Embedding(Dfeature,Dembedding)
其中,Estatic为非时序特征Embedding的结果,Dfeature表示需要Embedding的特征维度,DEmbedding表示最终需要得到的Embedding结果的维度,f为英文feature的首字母,表示特征,Θ为Embedding过程中的超参,wi为模型需要学习一阶参数,vi为模型需要学习的二阶参数。
步骤4:对于非时序的嵌入结果采用因子分解机进行一阶、二阶特征交互:
步骤5:对于时序特征进行一维嵌入:
Etime=Embedding(Dfeature,Dembedding)
其中,Etime,表示时序特征Embedding的结果,和步骤3中类似,Dfeature和DEmbedding分别表示需要Embedding的特征维度和最终需要得到的Embedding结果的维度,Θ为Embedding的超参,t表示时序特征,u为模型需要学习的参数。
步骤6:使用自注意力机制提取时序各嵌入项的权重,之后推入因子分解机进行交互:
步骤7:将非时序和时序特征的嵌入进行拼接,用自注意力机制和因子分解机获取两者的结合特征:
Ecross=[Estatic,Etime]
步骤8:对步骤4、步骤6、步骤7的结果采用线性层进行整合,最后得到预测结果:
步骤9:对于步骤4、步骤6、步骤7、步骤8的结果与目标结果进行比较,介入辅助损失提升训练效果和效率:
其中,w1,w2,w3分别为模型需要更新的各部分损失Loss1,Loss2,Loss3的权重,最终的损失为Loss。
步骤10:根据步骤9中的损失更新模型超参,不断训练,最后达到训练收敛条件,结束训练保存模型。
步骤11:对于新数据,用步骤1的数理方法得到模型的输入和用户-物品矩阵输入到加载的步骤10里保存的模型中,对得到的结果进行排序得到推荐结果。
本发明采用和多任务学习相似的框架结构,将用户交互时序特征和非时序特征分开学习,避免了时序推荐中常见的噪声问题,同时又通过中间交叉层的学习有效避免了交互信息的丢失。再有,本发明基于因子分解机,充分利用因子分解机的优点,能够融入数据中的上下文特征,提升了推荐结果的准确性,并解决了推荐***中常见的数据稀疏性问题。同时在训练过程中,本发明巧妙使用自注意力机制获取时序数据的重要性,进一步提升了时序推荐的效果。最后,本发明的并行结构能够并行学习时序、非时序以及交叉特征,在时序推荐上有很高的效率。
附图说明
图1为本发明方法框图。
图2为本发明中模型架构图。
图3为本发明中辅助损失示意图。
图4为本发明方法流程图示。
具体实施方式
下面结合附图和发明内容对本发明的方法做进一步说明。
由于推荐涉及到不同的任务,具体的数据处理方法不尽相同,这里首先说明两种情况(Rank和Regression)下的数据输入格式:
格式1:对于Rank任务,数据自带评分所以只需要对数据进行筛选,排除掉历史交互数过少的用户:
[s1,s2,...,sn,d1,d2,...,dm,target]
格式2:对于Regression任务,数据没有label列,通过随机负采样N个样本,将正例本身和N个负样本绑定作为输入的最小单元:
[[s1,s2,...,sn,d1,d2,...,dm,PositiveTarget],
[s1,s2,...,sn,d1,d2,...,dm,NegtiveTarget1],
[s1,s2,...,sn,d1,d2,...,dm,NegtiveTarget2],
…
[s1,s2,...,sn,d1,d2,...,dm,NegtiveTargetn]]
输入数据按照规定的格式生成之后,步骤1中的原始数据拆分,分为非时序特征和时序特征;
在生成输入数据的同时可以得到步骤2中需要得到用户-物品矩阵,然后根据cosine相似性在所有时间序列中选出和用户当前时间所对应的物品最相似的若干个物品;
接下来是模型训练部分,本发明模型架构参见图2所示,图中展示了模型的框架个实现细节。模型架构中,包括非时序特征学习、时序特征学习、交叉学习单元;其中,非时序特征学习部分对于非时序输入Embedding之后的结果采用因子分解机中的交互方法得到非时序特征的结果(即图的最左边部分);时序特征学习部分对于时序特征Embedding后的结果通过自注意力机制学习到注意力权重,然后进一步输入因子分解机进行二阶交互学习,得到时序部分的预测结果(即图的最右边部分);交叉学习单元将时序特征和非时序特征拼接之后先后输入自注意力机制和二阶因子分解机得到交叉学习预测结果(即图的中间部分);最后一层整合三部分结果得到最终的综合预测结果。
所以在训练过程中,对于步骤3中的非时序嵌入,这里和常规因子分解机的One-hot热编码输入不同,将Embedding之后的结果看成是权重,一阶交互使用一阶Embedding,维度为N,二阶交互使用二阶Embedding,维度为N*k(k的选择需要能够挖掘尽可能多的的二阶交互特征信息,同时又能保证模型较强的泛化能力)。
由于在One-hot中只需要将值为1的输入与权重进行计算,步骤4只需要从Embedding结果中提取出对应位置的权重进行计算即可,进一步简化了计算过程,提升模型效率,得到第一个任务的预测结果y1。
步骤5对时序数据进行二维Embedding,将得到的Embedding结果和步骤3中的Embedding进行连接,分别先后输入到各自任务的Self-Attention层和因子分解机层中,得到第二、三个任务的预测结果y2、y3。
模型的最后一层为线性整合层,为了进一步提升训练结果和速度,在线性整合层中加入辅助损失,通过回归得到y1、y2、y3的综合结果y。
模型达到训练结束条件之后会保存模型,对于新的用户数据,进行和步骤1、步骤2一样的数据处理之后,加载模型,得到物品的推荐结果,选取TOPN进行推荐。
参考文献:
[1]Rendle S.Factorization machines[C].2010IEEE Internationalconference on data mining.IEEE,2010:995-1000.
[2]Zhang,Hao,et al.SVM-KNN:Discriminative nearest neighborclassification for visual category recognition[C].2006IEEE Computer SocietyConference on Computer Vision and Pattern Recognition(CVPR'06).IEEE,2006(2):2126-2136.
[3]He,Xiangnan,and Tat-Seng Chua.Neural factorization machines forsparse predictive analytics[C].Proceedings of the 40th International ACMSIGIR conference on Research and Development in Information Retrieval.2017:(355-364).
[4]Guo H,Tang R,Ye Y,et al.DeepFM:a factorization-machine basedneural network for CTR prediction[J].arXiv preprint arXiv:1703.04247,2017.
[5]Lian J,Zhou X,Zhang F,et al.xDeepFM:Combining explicit andimplicit feature interactions for recommender systems[C].Proceedings of the24th ACM SIGKDD International Conference on Knowledge Discovery&DataMining.2018:1754-1763.
[6]Benjamin,Michael A.,Robert A.Rigby,and D.MikisStasinopoulos.Generalized autoregressive moving average models[J].Journal ofthe American Statistical association 98.461(2003):214-223.
[7]Zaremba,Wojciech,Ilya Sutskever,and Oriol Vinyals.Recurrent neuralnetwork regularization[J].arXiv preprint arXiv:1409.2329(2014).
[8]Dey,Rahul,and Fathi M.Salem.Gate-variants of gated recurrent unit(GRU)neural networks[C].2017 IEEE 60th international midwest symposium oncircuits and systems(MWSCAS).IEEE,2017.
[9]Wang S,Hu L,Wang Y,et al.Sequential recommender systems:challenges,progress and prospects[J].arXiv preprint arXiv:2001.04830,2019。
Claims (1)
1.一种基于因子分解机的多任务时间序列推荐方法,其特征在于,将原始因子分解机模型的一阶、二阶交互和时序模型相结合,一方面学习非时序性特征的上下文信息,另一方面学习时间序列所蕴含的时序信息,同时将两部分信息结合进一步学习以提升推荐效果,从广度和深度的多维角度解决原始因子分解机在时序推荐上表现欠佳的问题;具体步骤为:
步骤1:将原始数据整理并拆分为用户非时序的静态上下文和历史时间序列信息,在此基础上生成用户-物品矩阵;其中,将用户输入特征分为用户静态特征和用户时序特征两部分:
[s1,s2,...,sn,d1,d2,...,dm,target];
其中,s表示非时序特征,共有n维,d表示时序特征,共有m维,target表示目标物品;
步骤2:根据步骤1中的用户-物品矩阵按照余弦相似性对步骤1中分割出的时间序列进行重要性筛选,在有限的时序输入长度内保留最相关的时间序列:
步骤3:对非时序特征和筛选过后的时序特征进行二维特征嵌入:
Estatic=Embedding(Dfeature,Dembedding)
其中,Estatic为非时序特征Embedding的结果,Dfeature表示需要Embedding的特征维度,DEmbedding表示最终需要得到的Embedding结果的维度;f表示特征,Θ为Embedding过程中的超参,wi为模型需要学习一阶参数,vi为模型需要学习的二阶参数;
步骤4:对于非时序的嵌入结果采用因子分解机进行一阶、二阶特征交互:
步骤5:对于时序特征进行一维嵌入:
Etime=Embedding(Dfeature,Dembedding)
其中,Etime,表示时序特征Embedding的结果,和步骤3中类似,Dfeature和DEmbedding分别表示需要Embedding的特征维度和最终需要得到的Embedding结果的维度,Θ为Embedding的超参,t表示时序特征,u为模型需要学习的参数;
步骤6:使用自注意力机制提取时序各嵌入项的权重,之后推入因子分解机进行交互:
步骤7:将非时序和时序特征的嵌入进行拼接,用自注意力机制和因子分解机获取两者的结合特征:
Ecross=[Estatic,Etime]
步骤8:对步骤4、步骤6、步骤7的结果采用线性层进行整合,最后得到预测结果:
步骤9:对于步骤4、步骤6、步骤7、步骤8的结果与目标结果进行比较,介入辅助损失提升训练效果和效率:
其中,w1,w2,w3分别为模型需要更新的各部分损失Loss1,Loss2,Loss3的权重,最终的损失为Loss;
步骤10:根据步骤9中的损失更新模型超参,不断训练,最后达到训练收敛条件,结束训练保存模型;
步骤11:对于新数据,用步骤1的数理方法得到模型的输入和用户-物品矩阵输入到加载的步骤10里保存的模型中,对得到的结果进行排序得到推荐结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111667759.1A CN114282687B (zh) | 2021-12-31 | 2021-12-31 | 一种基于因子分解机的多任务时序推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111667759.1A CN114282687B (zh) | 2021-12-31 | 2021-12-31 | 一种基于因子分解机的多任务时序推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114282687A true CN114282687A (zh) | 2022-04-05 |
CN114282687B CN114282687B (zh) | 2023-03-07 |
Family
ID=80879523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111667759.1A Active CN114282687B (zh) | 2021-12-31 | 2021-12-31 | 一种基于因子分解机的多任务时序推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114282687B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111177579A (zh) * | 2019-12-17 | 2020-05-19 | 浙江大学 | 一种集成多样性增强的极深因子分解机模型及其构建方法和应用 |
CN111859142A (zh) * | 2020-07-28 | 2020-10-30 | 山东大学 | 一种基于互联互通家居平台的跨设备迁移推荐***及其工作方法 |
CN112115371A (zh) * | 2020-09-30 | 2020-12-22 | 山东建筑大学 | 一种基于因子分解机的神经注意力机制手机应用推荐模型 |
CN112732936A (zh) * | 2021-01-11 | 2021-04-30 | 电子科技大学 | 一种基于知识图谱和用户微观行为的广电节目推荐方法 |
CN112883288A (zh) * | 2021-03-09 | 2021-06-01 | 东南大学 | 基于深度学习和多Agent优化的软件评审者混合推荐方法 |
CN113139850A (zh) * | 2021-04-26 | 2021-07-20 | 西安电子科技大学 | 一种缓解数据稀疏性和商品冷启动的商品推荐模型 |
CN113420421A (zh) * | 2021-05-28 | 2021-09-21 | 西安邮电大学 | 移动边缘计算中基于时序正则化张量分解的QoS预测方法 |
-
2021
- 2021-12-31 CN CN202111667759.1A patent/CN114282687B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111177579A (zh) * | 2019-12-17 | 2020-05-19 | 浙江大学 | 一种集成多样性增强的极深因子分解机模型及其构建方法和应用 |
CN111859142A (zh) * | 2020-07-28 | 2020-10-30 | 山东大学 | 一种基于互联互通家居平台的跨设备迁移推荐***及其工作方法 |
CN112115371A (zh) * | 2020-09-30 | 2020-12-22 | 山东建筑大学 | 一种基于因子分解机的神经注意力机制手机应用推荐模型 |
CN112732936A (zh) * | 2021-01-11 | 2021-04-30 | 电子科技大学 | 一种基于知识图谱和用户微观行为的广电节目推荐方法 |
CN112883288A (zh) * | 2021-03-09 | 2021-06-01 | 东南大学 | 基于深度学习和多Agent优化的软件评审者混合推荐方法 |
CN113139850A (zh) * | 2021-04-26 | 2021-07-20 | 西安电子科技大学 | 一种缓解数据稀疏性和商品冷启动的商品推荐模型 |
CN113420421A (zh) * | 2021-05-28 | 2021-09-21 | 西安邮电大学 | 移动边缘计算中基于时序正则化张量分解的QoS预测方法 |
Non-Patent Citations (4)
Title |
---|
DUAN LI: "A hybrid intelligent service recommendation by latent semantics and explicit ratings", 《INTERNATIONAL JOURNAL OF INTELLIGENT SYSTEMS》 * |
RAVAKHAH MAHDI: "Balanced hierarchical max margin matrix factorization for recommendation system", 《BALANCED HIERARCHICAL MAX MARGIN MATRIX FACTORIZATION FOR RECOMMENDATION SYSTEM》 * |
刘亦欣: "融合注意力与深度因子分解机的时间上下文推荐模型", 《计算机与现代化》 * |
燕彩蓉: "因子分解机模型的宽度和深度扩展研究", 《软件学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN114282687B (zh) | 2023-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Middlehurst et al. | HIVE-COTE 2.0: a new meta ensemble for time series classification | |
Anderson et al. | Physical representation-based predicate optimization for a visual analytics database | |
Rakotomamonjy | Sparse support vector infinite push | |
Shamsolmoali et al. | High-dimensional multimedia classification using deep CNN and extended residual units | |
CN114186084B (zh) | 在线多模态哈希检索方法、***、存储介质及设备 | |
Mahadevan et al. | Integrated topic modeling and sentiment analysis: a review rating prediction approach for recommender systems | |
Xing et al. | Few-shot single-view 3d reconstruction with memory prior contrastive network | |
CN110727872A (zh) | 基于隐式反馈进行不明确选择行为挖掘的方法及装置 | |
CN116071128A (zh) | 一种基于多行为特征提取与自监督学习的多任务推荐方法 | |
CN111079011A (zh) | 一种基于深度学习的信息推荐方法 | |
Khoshaba et al. | Machine learning algorithms in Bigdata analysis and its applications: A Review | |
Zhao et al. | Binary multi-view sparse subspace clustering | |
CN114282687B (zh) | 一种基于因子分解机的多任务时序推荐方法 | |
CN116071119B (zh) | 一种基于多行为推荐模型的模型不可知反事实解释方法 | |
He et al. | Multilabel classification by exploiting data‐driven pair‐wise label dependence | |
Dhoot et al. | Efficient Dimensionality Reduction for Big Data Using Clustering Technique | |
Xu et al. | Social image refinement and annotation via weakly-supervised variational auto-encoder | |
CN109614581A (zh) | 基于对偶局部学习的非负矩阵分解聚类方法 | |
Hua et al. | Cross-modal correlation learning with deep convolutional architecture | |
Sreelakshmi et al. | Image summarization using unsupervised learning | |
Valem et al. | Rank flow embedding for unsupervised and semi-supervised manifold learning | |
Lin et al. | MOD: A deep mixture model with online knowledge distillation for large scale video temporal concept localization | |
Di | Deep interest network for taobao advertising data click-through rate prediction | |
Riana | Deep Neural Network for Click-Through Rate Prediction | |
Pal et al. | Random partition based adaptive distributed kernelized SVM for big data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |