首页> 中国专利> 一种面向家庭组用户的推荐模型

一种面向家庭组用户的推荐模型

摘要

本发明公开了一种面向家庭组用户的推荐模型,包括步骤S4:在动态时序推荐算法TimeSVD++的基础上,建立一天内时段变化的周期模型,用户u在时间段t内对物品进行评分,设立衰减因子为

著录项

  • 公开/公告号CN110191363A

    专利类型发明专利

  • 公开/公告日2019-08-30

    原文格式PDF

  • 申请/专利权人 电子科技大学;

    申请/专利号CN201910471328.4

  • 申请日2019-05-31

  • 分类号

  • 代理机构成都君合集专利代理事务所(普通合伙);

  • 代理人尹玉

  • 地址 611731 四川省成都市高新区(西区)西源大道2006号

  • 入库时间 2024-02-19 14:16:55

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-06-09

    未缴年费专利权终止 IPC(主分类):H04N21/25 专利号:ZL2019104713284 申请日:20190531 授权公告日:20200501

    专利权的终止

  • 2020-05-01

    授权

    授权

  • 2019-09-24

    实质审查的生效 IPC(主分类):H04N21/25 申请日:20190531

    实质审查的生效

  • 2019-08-30

    公开

    公开

说明书

技术领域

本发明属于数据处理的技术领域,具体涉及一种面向家庭组用户的推荐模型。

背景技术

当今互联网时代,信息爆炸性的增长速度使得用户对便利的信息筛选方式有着极大的需求。个性化推荐作为一种高效的信息筛选方式,已经广泛应用于互联网产业。与常见推荐系统业务场景不同,IPTV场景下用户通常为家庭组用户,即一个用户下隐含多个兴趣爱好不同的成员。

在IPTV场景下使用传统推荐算法分析出的用户兴趣实际上是所有成员不同兴趣混合的结果,根据混合兴趣所生成的推荐列表很大可能不符合家庭组中任何一个成员的兴趣爱好。因此经典推荐算法很难满足家庭组用户的推荐需求。现有研究中,大多采用聚类的方式建立隐藏成员与时段的联系,但聚类产生结果并不精确且会导致评分矩阵进一步稀疏化,这是推荐模型极力避免的情况。

本发明将家庭组用户看成一个兴趣呈周期性变化且周期范围内兴趣波动程度较大的特殊单成员用户。使用高阶奇异值分解(HOSVD)从用户评分张量中提取用户在不同时段的特征向量获取更细粒度的时间信息,在动态时序推荐算法TimeSVD++基础上,根据时段间的相似度影响用户偏置和潜在用户因子,提出了一种适用于多成员用户场景推荐模型。

然而,现有技术中的TimeSVD++模型中通过把用户因子作为时间的函数来建模,把用户偏置bu看作时间的函数,模型中针对用户隐性特征向量pu和用户偏置bu,使用一个线性函数来模拟用户偏置可能的渐变过程,设置的衰减因子devu(t)=sign(t-tu)·|t-tu|3,其中|t-tu|是日期t和tu间隔的天数。现有技术中算出某一用户所有评分时间的平均值T,计算所有评分记录时间与T的差值进行评分影响削弱,设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响,导致不能较好的预计评分。

发明内容

本发明的目的在于提供一种面向家庭组用户的推荐模型,本发明在动态时序推荐算法TimeSVD++的基础上,建立一天内时段变化的周期模型,克服了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的技术问题。

本发明主要通过以下技术方案实现:一种面向家庭组用户的推荐模型,包括步骤S4:在动态时序推荐算法TimeSVD++的基础上,建立一天内时段变化的周期模型,用户u在时间段t内对物品进行评分,设立衰减因子为:

其中,Ft为用户u在时段t的特征向量,Fu为用户u评分数据最多的时段的特征向量;将家庭组用户中最活跃的成员与其对应的观影时段间的关系纳入用户偏置以及用户隐性因子的设置,对不在活跃时段的评分数据按照时段相似度进行偏差处理。

为了更好的实现本发明,进一步的,根据各时段特征向量计算偏差值并建立周期函数模拟用户兴趣变化过程,预测用户在不同时段对物品的评分;主要包括以下步骤:

S4-4:根据偏差值devu(t)为每个用户引入新参数αu,将用户偏置设置为

bu(t)=bu+bu,tu·devu(t)

其中,bu代表用户偏置中固定的基准值部分,而bu,t代表用户偏置随着时段变化的部分;

S4-5:根据偏差值devu(t),为每个用户引入新参数βu,将用户隐性因子设置为:

pu(t)=pu+pu,tu·devu(t)

其中,pu代表用户隐性因子中固定的基准值部分,而pu,t代表用户隐性因子随着时段变化的部分,pu,pu,t和βu均为长度为隐性因子数目的向量;

S4-6:建立家庭组用户推荐模型和损失函数,利用随机梯度下降方法不断优化参数,训练模型;最终根据模型预测用户在不同时段对物品的评分:

其中,代表模型预测用户u对物品i的评分,u代表总体平均分,bi为物品偏置,bu为用户偏置,qi代表物品的隐性特征向量,pu代表用户对隐性特征因子;R(u)为用户评分过的所有物品集合,yj为用户评分过物品的特征向量;cu代表用户评分标准中固定的基准值部分,而cu,t代表用户评分标准随着时段变化的部分。

为了更好的实现本发明,进一步的,还包括以下步骤:

S4-1:建立偏置矩阵分解模型;pu后的部分为考虑到用户历史行为对评分预测的影响所加入的第二个物品因子集合,用户u对物品i的评分:

S4-2:物品的受欢迎程度会因为一天内各时段观看成员的不同而随着时段改变,将物品偏置bi设置为一个随着时段变化的周期函数bi(t)=bi+bi,t,bi代表物品偏置中固定的基准值部分,而bi,t代表物品偏置随着时段变化的部分,物品i在每一个时段t均有不同的偏置bi,t

S4-3:实际预测用户u对物品i的评分时,不同用户在不同时段的评分标准也不同,因此将用户对于这样度量的不同回应纳入考虑,为每个用户建立起一个周期性变化的扩展特征cu(t)=cu+cu,t;预测评分时,把cu(t)作为乘法因子增加到基准预测器,提升预测准确度。

为了更好的实现本发明,进一步的,在步骤S4之前还包括以下步骤:

步骤S1:根据用户观看记录估算用户对物品的隐式评分;

步骤S2:根据隐式评分建立起各用户在一天内各时段对各物品的评分张量;

步骤S3:使用高阶奇异值分解对单个用户的评分张量进行分解,获取用户在各个时间段的特征向量。

为了更好的实现本发明,进一步的,所述步骤S1中用户u在时间段t对物品i的隐式评分公式如下:

其中,rmin和rmax分别为评分区间的最小值和最大值;假设视频v总时长为dv,在一条行为记录a中用户u在时间段t内观看视频的时长为da

为了更好的实现本发明,进一步的,一天被平均划分为24个时间段。

为了更好的实现本发明,进一步的,所述步骤S2中建立三维评分张量Au,其中第一维度代表用户,第二维度代表视频,第三维度代表用户做出评分行为时所处的时间段;值即为用户u在时间段t内对视频v给出的评分ruvt;张量Au的维度为1×NV×NT,NV和NT分别代表视频总数和时间段总数。

为了更好的实现本发明,进一步的,所述步骤S3主要包括以下步骤:

S3-1:根据分解式Au=M×U>V>T>U代表张量与矩阵的乘法,核心张量M的大小为MU×MV×MT,特征矩阵U,V,T的大小分别为1×MU,NV×MV,NT×MT;T即为根据用户行为提取出的时间段特征矩阵;

S3-2:根据式预测出评分张量中任一位置的评分其中Uu,Vv,Tt分别为用户、视频和时间段特征矩阵中的第u、v、t行向量;按照最小化均方误差的思路定义损失函数,同时加入正则项避免过拟合:

S3-3:通过随机梯度下降SGD不断优化核心张量以及三个维度特征矩阵,减少训练集中的损失;计算损失函数对特征行向量Uu,Vv,Tt以及核心张量M的梯度,并根据梯度更新特征行向量和核心张量;最终得到用户在各个时间段的特征向量。

张量分解应用于多成员用户组推荐场景时多用于挖掘全体用户的整体观影偏好。如X个用户,Y部影片,Z个时段,针对X×Y×Z这个三维评分张量进行分解,得到的是由该X个用户组成的用户群体的观影偏好向量。但本次使用张量分解采用的是以单个用户为单位。对每个用户的1×Y×Z张量做分解操作,X个用户需要对X个张量进行分解。分别得到X个用户中每一个用户在各时段的观影偏好向量,这样做的目的是后续步骤得出评分预测模型中的每个用户的衰减因子devu(t)。

相比TimeSVD++模型的改进点:传统时序模型旨在捕捉随着时间流逝用户兴趣的变化,如用户5年前给出高评分的电影在现在不一定还能得到高评分,时间单位多取天,月,日。但针对家庭组用户场景,其时间粒度需要进一步缩小,例如一天内在下午5点播出的高评分动画片在晚7点时并不能得到高评分,原因很有可能是观看人群的变化。因此,本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。

本发明将家庭组用户的时间-兴趣变化关系构建为以天为周期的周期函数,模拟一个家庭组用户一天内随着各个时间段观看成员的变化,兴趣偏好也不断变化的过程。根据用户-物品-时段的评分张量提取用户各时间段的特征,建立周期函数并不同时间段间的相似度影响偏置矩阵分解模型中的各项偏置和潜在因子,最终预测家庭组用户在各个时段对物品的评分。

本发明的有益效果:

(1)本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。同时,本发明考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定衰减影响处理。本发明的模型已不再是简单的线性变化模型,而是随一天内时段变化的周期模型。解决了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的问题。

(2)使用张量分解采用的是以单个用户为单位。对每个用户的1×Y×Z张量做分解操作,X个用户需要对X个张量进行分解。分别得到X个用户中每一个用户在各时段的观影偏好向量,更好的便于后续步骤得出评分预测模型中的每个用户的衰减因子devu(t),可以更好分析家庭组用户的兴趣爱好,具有较好的实用性。

(3)预测评分时,把cu(t)作为乘法因子增加到基准预测器,提升了预测准确度。

(4)本发明所提出的面向家庭组用户的推荐算法在多成员用户数据集上有着更高的预测精度,相比传统推荐算法更适应类似于IPTV推荐的多成员用户推荐场景。

(5)本发明所提出的面向家庭组的推荐算法在RMSE和MAE两种指标上相比传统推荐算法均有较大程度的提升。并且随着矩阵分解中隐性特征因子数量的增加,面向家庭组用户的推荐算法与两算法间的指标差距也在逐渐拉大,这仍然能证明本发明提出算法在家庭组用户场景下优越性。

附图说明

图1为本发明的流程图;

图2为评分张量分解的流程图;

图3为本发明与传统推荐算法的RMSE值对比图;

图4为本发明与传统推荐算法的MAE值对比图。

具体实施方式

实施例1:

一种面向家庭组用户的推荐模型,包括步骤S4:在动态时序推荐算法TimeSVD++的基础上,建立一天内时段变化的周期模型,用户u在时间段t内对物品进行评分,设立衰减因子为:

其中,Ft为用户u在时段t的特征向量,Fu为用户u评分数据最多的时段的特征向量;将家庭组用户中最活跃的成员与其对应的观影时段间的关系纳入用户偏置以及用户隐性因子的设置,对不在活跃时段的评分数据按照时段相似度进行偏差处理。

本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。同时,本发明考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定衰减影响处理。本发明的模型已不再是简单的线性变化模型,而是随一天内时段变化的周期模型。解决了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的问题。

实施例2:

本实施例是在实施例1的基础上进行优化,根据各时段特征向量计算偏差值并建立周期函数模拟用户兴趣变化过程,预测用户在不同时段对物品的评分;主要包括以下步骤:

S4-1:建立偏置矩阵分解模型;pu后的部分为考虑到用户历史行为对评分预测的影响所加入的第二个物品因子集合,用户u对物品i的评分:

S4-2:物品的受欢迎程度会因为一天内各时段观看成员的不同而随着时段改变,将物品偏置bi设置为一个随着时段变化的周期函数bi(t)=bi+bi,t,bi代表物品偏置中固定的基准值部分,而bi,t代表物品偏置随着时段变化的部分,物品i在每一个时段t均有不同的偏置bi,t

S4-3:实际预测用户u对物品i的评分时,不同用户在不同时段的评分标准也不同,因此将用户对于这样度量的不同回应纳入考虑,为每个用户建立起一个周期性变化的扩展特征cu(t)=cu+cu,t;预测评分时,把cu(t)作为乘法因子增加到基准预测器,提升预测准确度。

S4-4:根据偏差值devu(t)为每个用户引入新参数αu,将用户偏置设置为

bu(t)=bu+bu,tu·devu(t)

其中,bu代表用户偏置中固定的基准值部分,而bu,t代表用户偏置随着时段变化的部分;

S4-5:根据偏差值devu(t),为每个用户引入新参数βu,将用户隐性因子设置为:

pu(t)=pu+pu,tu·devu(t)

其中,pu代表用户隐性因子中固定的基准值部分,而pu,t代表用户隐性因子随着时段变化的部分,pu,pu,t和βu均为长度为隐性因子数目的向量;

S4-6:建立家庭组用户推荐模型和损失函数,利用随机梯度下降方法不断优化参数,训练模型;最终根据模型预测用户在不同时段对物品的评分:

其中,代表模型预测用户u对物品i的评分,u代表总体平均分,bi为物品偏置,bu为用户偏置,qi代表物品的隐性特征向量,pu代表用户对隐性特征因子;R(u)为用户评分过的所有物品集合,yj为用户评分过物品的特征向量;cu代表用户评分标准中固定的基准值部分,而cu,t代表用户评分标准随着时段变化的部分。

本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。同时,本发明考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定衰减影响处理。本发明的模型已不再是简单的线性变化模型,而是随一天内时段变化的周期模型。解决了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的问题。

本实施例的其他部分与实施例1相同,故不再赘述。

实施例3:

本实施例是在实施例1或2的基础上进行优化,如图1所示,在步骤S4之前还包括以下步骤:

步骤S1:根据用户观看记录估算用户对物品的隐式评分;

步骤S2:根据隐式评分建立起各用户在一天内各时段对各物品的评分张量;

步骤S3:使用高阶奇异值分解对单个用户的评分张量进行分解,获取用户在各个时间段的特征向量。

本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。同时,本发明考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定衰减影响处理。本发明的模型已不再是简单的线性变化模型,而是随一天内时段变化的周期模型。解决了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的问题。

使用张量分解采用的是以单个用户为单位。对每个用户的1×Y×Z张量做分解操作,X个用户需要对X个张量进行分解。分别得到X个用户中每一个用户在各时段的观影偏好向量,更好的便于后续步骤得出评分预测模型中的每个用户的衰减因子devu(t),可以更好分析家庭组用户的兴趣爱好,具有较好的实用性。

本实施例的其他部分与上述实施例1或2相同,故不再赘述。

实施例4:

本实施例是在实施例3的基础上进行优化,如图1所示,主要包括以下步骤:

构建评分张量:

为提取用户u在各个时间段的特征,首先要构建用户u在各个时间段对视频的三维评分张量Au。其中第一维度代表用户,第二维度代表视频,第三维度代表用户做出评分行为时所处的时间段,值即为用户u在时间段t内对视频v给出的评分ruvt。张量Au的维度为1×NV×NT,NV和NT分别代表视频总数和时间段总数。

将一天时间划分为n个时间段t0,t1,…,tn,并对数据集进行处理,将用户评分的时间戳转化为时间段标识t。另外由于真实的家庭用户组观影数据集并没有用户显示评分的原因,还需根据观看完成度的思想估算隐式评分。若一个视频v总时长为dv,在一条行为记录a中用户u在时间段t内观看该视频的时长为da,则该条记录的隐式评分为:

rmin和rmax代表评分区间的最小值和最大值。经过上述处理后确保数据集中每一条数据均包含用户标识u,物品标识i,评分数据r以及评分时间段t。最后将每个用户的评分数据依次填充进评分张量Au,完成评分张量的构建。

高阶奇异值分解:

传统的矩阵分解模型如SVD和SVD++已经在推荐领域范围内得到了非常广泛的应用,其通过最小化均方根误差(RMSE)方式来优化用户及物品的隐含特征矩阵的思路同样可以扩展到高阶张量上。如图2所示,高阶奇异值分解作为张量分解的一种形式是一种高阶主成分分析,它将张量分解为一个核心张量M沿每一维乘上一个特征矩阵。

使用高阶奇异值分解处理构建的单个用户的评分张量,如图1所示。张量Au的分解式为:

Au=M×UU×VTT(2)

其中×U代表张量与矩阵的乘法,核心张量M的大小为MU×MV×MT,特征矩阵U,V,T的大小分别为1×MU,NV×MV,NT×MT。T即为根据用户行为提取出的时间段特征矩阵,每一行代表一个时间段的隐性特征向量。根据式(2)可以预测出评分张量中任一位置的评分

其中Uu,Vv,Tt分别为用户、视频和时间段特征矩阵中的第u、v、t行向量。按照最小化均方误差的思路定义损失函数,同时加入正则项避免过拟合:

通过随机梯度下降(SGD)不断优化核心张量以及三个维度特征矩阵,减少训练集中的损失。计算损失函数对特征行向量Uu,Vv,Tt以及核心张量M的梯度:

根据上述梯度更新特征行向量和核心张量:

上述式中,γ代表学习速率。最终得到时间段的特征矩阵T,本次实验为了避免核心张量M处于稀疏状态,将MU,MV,MT分别取值为1,50,10。即最后每个用户各个时间段的特征向量长度为10。

本实施例的其他部分与上述实施例3相同,故不再赘述。

实施例5:

本实施例是在实施例4的基础上进行改进,在推荐研究领域内,矩阵分解方法能很好地适应时间效应建模。TimeSVD++作为一种时间敏感的因子模型,能捕捉到精细粒度为天的时间效应,将预测准确度提升到了一个难以超越的水准。TimeSVD++模型的评分预测式如下:

上式中代表模型预测用户u对物品i的评分,u代表总体平均分,bi为物品偏置,bu为用户偏置,qi代表物品的隐性特征向量,pu代表用户对隐性特征因子;也基于时间变化,pu后的部分为考虑到用户历史行为对评分预测的影响所加入的第二个物品因子集合,R(u)为用户评分过的所有物品集合,yj为用户评分过物品的特征向量。

鉴于TimeSVD++的优异表现,本发明的模型基于随时间变化的因子模型创建。但由于家庭组用户推荐场景的特殊性,推荐模型关注的时间因子应为粒度更细的时间单位以捕捉用户兴趣变化趋势。因此本发明通过划分每天的时段,建立周期函数对TimeSVD++模型中的用户、物品偏置以及用户隐性特征向量式子进行了改造。

在多成员用户场景下使用偏置矩阵分解模型,并引入时序信息时,时序变化性主要体现在三方面的时间效应上。第一个时间效应体现为物品的受欢迎程度会因为一天内各时段观看成员的不同而随着时段改变。例如,动画片在放学时段的受欢迎程度往往远高于一天内其余时段。因此将物品偏置bi设置为一个随着时段变化的周期函数:

bi(t)=bi+bi,t(10)

其中bi代表物品偏置中固定的基准值部分,而bi,t代表物品偏置随着时段变化的部分(物品i在每一个时段t均有不同的偏置bi,t)。虽然bi(t)代表了物品i在时段t的受欢迎程度,是一个与用户无关的度量,但在实际预测用户u对物品i的评分时,不同用户在不同时段的评分标准也不同,因此有必要将用户对于这样度量的不同回应纳入考虑。和bi(t)思路一致,为每个用户建立起一个周期性变化的扩展特征cu(t):

cu(t)=cu+cu,t(11)

在预测评分时,把cu(t)作为乘法因子增加到基准预测器,提升预测准确度。

第二种时间效应体现在用户评分标准随着时段的变化而变化,在家庭组用户场景下可理解为评分标准随着成员的变化而变化。对用户偏置而言,可参照物品偏置的函数设置,但还需要考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定处理:使用提取出的时段特征向量计算时段间的相似度距离,并将其作为偏差值纳入用户偏置中。即若用户u在时段t内对物品进行了评分,偏差值应记为:

Ft代表用户u在时段t的特征向量,Fu代表用户u评分数据最多的时段的特征向量。通过计算两时段间的余弦相似度距离作为偏差值,并为每个用户引入一个新的参数αu,将用户偏置设置为:

bu(t)=bu+bu,tu·devu(t)(13)

最后一种时间效应和第二种类似,体现在用户对物品隐藏特征因子的偏好会随着时段(成员)的变化而变化。即传统偏置矩阵分解模型中的pu也要类似于bu(t)设置:

pu(t)=pu+pu,tu·devu(t)(14)

上式中,pu,pu,t和βu均为长度为隐性因子数目的向量。得到评分预测式为:

最终等价于下列损失函数的最小化问题:

模型参数通过采取随机梯度下降方法训练模型,不断循环迭代直至损失最小:

·bu←bu+γ·(eui-λ·bu)

·bu,t←bu,t+γ·(eui-λ·bu,t)

·αu←αu+γ·(eui·devu(t)-λ·αu)

·bi←bi+γ·(eui·cu(tui)-λ·bi)

·bi,t←bi,t+γ·(eui·cu(tui)-λ·bi,t)

·cu←cu+γ·(eui·bi(tui)-λ·cu)

·cu,t←cu,t+γ·(eui·bi(tui)-λ·cu,t)

·pu←pu+γ·(eui·qi-λ·pu)

·pu,t←pu,t+γ·(eui·qi-λ·pu,t)

·βu←βu+γ·(eui·qi·devu(t)-λ·βu)

上述式子中γ代表学习速率,eui代表该条记录在该次循环中的误差。经过d次迭代后得到最优参数。最终根据式(15)预测用户在不同时段对物品的评分,按在不同时段用户对物品预测评分的高低顺序对用户进行推荐。

本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。同时,本发明考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定衰减影响处理。本发明的模型已不再是简单的线性变化模型,而是随一天内时段变化的周期模型。解决了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的问题。

本实施例的其他部分与上述实施例4相同,故不再赘述。

实施例6:

一种面向家庭组用户的推荐模型,本发明根据用户-物品-时段的评分张量提取用户在一天内各时段的特征向量,建立周期函数并以不同时间段间的相似度影响LFM模型中的各项偏置和潜在因子,最终预测家庭组用户在各个时段对物品的评分;如图1所示,主要包括以下步骤:

步骤S1:根据用户观看记录估算用户对物品的隐式评分:若一个视频v总时长为dv,在一条行为记录a中用户u在时间段t内观看该视频的时长为da,rmin和rmax代表评分区间的最小值和最大值。则用户u在时间段t对物品i的隐式评分为:

步骤S2:根据隐式评分填充各用户在一天内各时段对各物品的评分张量Au,张量Au的维度为1×NV×NT,NV和NT分别代表视频总数和时间段总数;

步骤S3:使用高阶奇异值分解对单个用户的评分张量进行分解,获取用户在各个时间段的特征向量;

步骤S3-1:根据分解式Au=M×U>V>T>U代表张量与矩阵的乘法,核心张量M的大小为MU×MV×MT,特征矩阵U,V,T的大小分别为1×MU,NV×MV,NT×MT。T即为根据用户行为提取出的时间段特征矩阵,每一行代表了该用户在不同时段的特征向量;

步骤S3-2:根据式预测出评分张量中任一位置的评分其中Uu,Vv,Tt分别为用户、视频和时间段特征矩阵中的第u、v、t行向量按照最小化均方误差的思路定义损失函数,同时加入正则项避免过拟合

步骤S3-3:通过随机梯度下降(SGD)不断优化核心张量以及三个维度特征矩阵,减少训练集中的损失;

步骤S3-3-1:计算损失函数对特征行向量Uu,Vv,Tt以及核心张量M的梯度:

步骤S3-3-2:根据S3-3-1中的梯度更新特征行向量和核心张量,γ代表学习速率。最终得到时间段的特征矩阵T:

步骤S4:在TimeSVD++模型的基础上,根据各时段特征向量计算偏差值并建立周期函数模拟用户兴趣变化过程,预测用户在不同时段对物品的评分;

步骤S4-1:建立偏置矩阵分解模型,代表模型预测用户u对物品i的评分,μ代表总体平均分,bu和bi分别代表用户和物品的偏置,qi代表物品的隐性特征向量,pu代表用户对隐性特征因子。pu后的部分为考虑到用户历史行为对评分预测的影响所加入的第二个物品因子集合,R(u)为用户评分过的所有物品集合,yj为用户评分过物品的特征向量;

步骤S4-2:物品的受欢迎程度会因为一天内各时段观看成员的不同而随着时段改变。将物品偏置bi设置为一个随着时段变化的周期函数bi(t)=bi+bi,t,bi代表物品偏置中固定的基准值部分,而bi,t代表物品偏置随着时段变化的部分(物品i在每一个时段t均有不同的偏置bi,t);

步骤S4-3:实际预测用户u对物品i的评分时,不同用户在不同时段的评分标准也不同,有必要将用户对于这样度量的不同回应纳入考虑,为每个用户建立起一个周期性变化的扩展特征cu(t)=cu+cu,t。cu代表用户评分标准中固定的基准值部分,而cu,t代表用户评分标准随着时段变化的部分。预测评分时,把cu(t)作为乘法因子增加到基准预测器,提升预测准确度;

步骤S4-4:将家庭组用户中最活跃的成员与其对应的观影时段间的关系纳入用户偏置以及用户隐性因子的设置,对不在活跃时段的评分数据按照时段相似度进行偏差处理。即若用户u在时段t内对物品进行了评分,偏差值应记为:

Ft代表用户u在时段t的特征向量,Fu代表用户u评分数据最多的时段的特征向量;

步骤S4-5:根据S4-4的偏差值,为每个用户引入新参数αu,将用户偏置设置为bu(t)=bu+bu,tu·devu(t),bu代表用户偏置中固定的基准值部分,而bu,t代表用户偏置随着时段变化的部分;

步骤S4-6:根据S4-4的偏差值,为每个用户引入新参数βu,将用户隐性因子设置为pu(t)=pu+pu,tu·devu(t),pu代表用户隐性因子中固定的基准值部分,而pu,t代表用户隐性因子随着时段变化的部分,pu,pu,t和βu均为长度为隐性因子数目的向量;

步骤S4-7:建立家庭组用户推荐模型和损失函数,利用随机梯度下降方法不断优化参数,训练模型。最终根据模型预测用户在不同时段对物品的评分。

步骤S4-7-1:建立损失函数,最终目标为求损失函数最小化的问题

步骤S4-7-2:采取随机梯度下降算法优化模型参数,在训练集中做循环迭代不断优化:

·bu←bu+γ·(eui,-λ·bu)

·bu,t←bu,t+γ·(eui,-λ·bu,t)

·αu←αu+γ·(eui,·devu(t)-λ·αu)

·bi←bi+γ·(eui,·cu(tui)-λ·bi)

·bi,t←bi,t+γ·(eui,·cu(tui)-λ·bi,t)

·cu←cu+γ·(eui,·bi(tui)-λ·cu)

·cu,t←cu,t+γ·(eui,·bi(tui)-λ·cu,t)

·pu←pu+γ·(eui,·qi-λ·pu)

·pu,t←pu,t+γ·(eui,·qi-λ·pu,t)

·βu←βu+γ·(eui,·qi·devu(t)-λ·βu)

其中γ代表学习速率,eui代表该条记录在该次循环中的误差。经过d次迭代后得到最优参数。最终根据预测用户在不同时段对物品的评分,按在不同时段用户对物品预测评分的高低顺序对用户进行推荐。

本发明的模型将评分推测式中各项随时间变化的参数(bu,bi,pu)构造式改造为了以天为周期性变化的周期函数。同时,本发明考虑到家庭组中最活跃的成员与其对应的观影时段,不在活跃时段的评分数据应当做一定衰减影响处理。本发明的模型已不再是简单的线性变化模型,而是随一天内时段变化的周期模型。解决了现有技术中设置的衰减因子削弱了时间差距过大时评分记录对预计评分的影响的问题。

预测精度作为推荐系统研究中最具代表性的属性,可以通过测量在给定物品集中用户实际评分与预测评分间的误差获得。常见度量评分预测精度的指标包括均方根误差RMSE和平均绝对误差MAE。例如Netflix Prize大赛就采用均方根误差RMSE作为评判算法优劣的指标。同时已有研究证实RMSE值的小幅度提升也能对top-K推荐的准确度产生很大的影响。因此本次实验也采用RMSE和MAE作为算法评价指标;τ为测试集数据,指标公式如下:

如图3和图4所示,由实验结果可以看出:在虚拟家庭组用户数据集下,本发明所提出的面向家庭组的推荐算法在RMSE和MAE两种指标上相比传统推荐算法(比较对象为TimeSVD++算法和SVD++算法)均有较大程度的提升;并且随着矩阵分解中隐性特征因子数量的增加,面向家庭组用户的推荐算法与两算法间的指标差距也在逐渐拉大,这仍然能证明本发明提出算法在家庭组用户场景下优越性。

基于上述实验结果和分析可以证明,本发明所提出的面向家庭组用户的推荐算法在多成员用户数据集上有着更高的预测精度,相比传统推荐算法更适应类似于IPTV推荐的多成员用户推荐场景。

以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号