[发明专利]一种基于生成排序的时序推荐算法在审
申请号: | 202010816778.5 | 申请日: | 2020-08-14 |
公开(公告)号: | CN112115384A | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 燕雪峰;孙维松 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06F16/9537 | 分类号: | G06F16/9537 |
代理公司: | 南京苏高专利商标事务所(普通合伙) 32204 | 代理人: | 曹坤 |
地址: | 210016 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 生成 排序 时序 推荐 算法 | ||
1.一种基于生成排序的时序推荐算法,其特征在于,具体包括以下步骤:
步骤(1.1)、从数据集中随机采样数据样本(u,i,a)及(u,i′,a),将其传输给推荐模型,推荐模型对每一个数据样本进行评分;
步骤(1.2)、推荐模型获取数据集的数据样本后,经过独热编码、嵌入层、生成层及转化层,最终将数据样本转化为对应的推荐分数;
步骤(1.3)、训练推荐模型,根据推荐模型输出的推荐分数计算损失值,使用梯度下降的方法更新推荐模型参数;
步骤(1.4)、在每次更新推荐模型参数后,判断推荐模型的准确率是否提高,如否,则停止训练,返回至步骤(1.1)对推荐模型开始重新进行训练;如是,则对推荐模型进行继续训练直至训练结束;
步骤(1.5)、推荐模型训练结束之后,从数据库中读取所有用户-项目数据,使用推荐模型进行打分,根据打分的结果进行排序,将对于每个用户分数最高的10个项目推荐给用户。
2.根据权利要求1所述的一种基于生成排序的时序推荐算法,其特征在于,在步骤(1.1)中,
所述的u表示用户,i,i′表示产品,(u,i,a)表示用户选择的产品作为正向样本,(u,i′,a)表示用户未选择的产品作为负向样本,a代表额外信息。
3.根据权利要求1所述的一种基于生成排序的时序推荐算法,其特征在于,在步骤(1.2)中,
(1.2.1)、所述独热编码的具体操作过程如下:
以和分别表示数据集中的用户集合和产品集合,分别对用户集合和产品集合进行独热编码,并将用户集合和产品集合对应的独热码进行连接构成特征向量
(1.2.2)、所述嵌入层的具体操作过程如下:
将特征向量与嵌入层中的权重W进行矩阵乘法,将其转化为特征空间中的特征向量其具体公式如下:
(1.2.3)、所述生成层的具体操作过程如下:
式中,表示特征空间中的特征向量,W1和W2表示转化参数,且两者的行数和列数都相同,和分别表示高斯分布的方差和均值,表示由高斯分布生成的数据
(1.2.3)、所述转化层的操作步骤过程具体如下:
将特征向量及由高斯分布生成的数据所组合成的特征矩阵M转化为对应的分数值,为之后的排序操作做准备,其具体公式如下:
式中,表示用户-产品特征向量,分别表示特征矩阵M中不同维度i,j的特征向量,w0表示偏差值,wi表示针对每个特征向量的权重值,且表示向量和之间内积计算。
4.根据权利要求1所述的一种基于生成排序的时序推荐算法,其特征在于,在所述步骤(1.3)中,更新推荐模型参数的具体操作方法如下:
在训练过程中,从数据集中获取正向样本(u,i,a)及负向样本(u,i′,a);使得正向样本(u,i,a)的分数大于负向样本(u,i′,a),其具体公式如下:
式中,Θ表示推荐模型中的参数,表示最优参数,i表示正样本对应的产品,i′表示负样本对应的产品,表示正样本特征向量,表示负样本特征向量,Ω(Θ)表示L2参数正则化方法,其中参数cui表示当前样本在训练过程中的重要性,对应的公式为:
cui=1+αlog(1+rui/∈)
式中,α和∈表示人为调整的参数,需在训练推荐模型的过程中不断调整;rui表示每个特征向量的时间权重,样本的时间点越接近现在,权重值越大。
5.根据权利要求1所述的一种基于生成排序的时序推荐算法,其特征在于,在所述步骤(1.5)中,对使用推荐模型生成推荐列表并发送给用户的具体操作过程如下:
(1.5.1)、从数据库中读取所有的用户和项目数据,且使用已经训练好的模型对每个数据进行打分;
(1.5.2)、根据模型得出的分数结果,对每个用户会选择的项目进行排序,选取分数最高的10个项目推送给用户。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010816778.5/1.html,转载请声明来源钻瓜专利网。