基于置信用户偏好模型的电视推荐系统

时间:2022-06-10 07:51:34

基于置信用户偏好模型的电视推荐系统

摘 要: 基于用户偏好的电视节目个性化推荐是一种内容的推荐算法。其中用户偏好的不确定性和描述上的模糊性是用户模型建立的难点。在此首先通过对样本用户过往观看记录数据进行分析,发现用户偏好存在一定的时不变性。把偏好在一定时间内不发生变化的用户称作置信用户,在这个基础上,建立基于节目特征向量空间的用户偏好模型,并提出基于用户偏好度模型的推荐算法。该算法通过用户观看视频的历史记录得到用户的偏好模型,并基于该偏好模型向用户推荐节目。仿真实验证明了算法的收敛性和有效性。

关键词: 置信用户; 电视推荐系统; 节目特征向量空间; 用户偏好

中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2014)16?0030?04

TV recommender system based on confidence user preference model

REN Pin1,2

(1. Department of Electronic Engineering, Tsinghua University, Beijing 100035, China;

2. Shenzhen Key Lab of Information Science and Technology, Tsinghua University, Shenzhen 518507, Chian)

Abstract: TV program personalized recommendation according to user preferences is an effective program recommending algorithm based on contents, in which the difficulties are uncertainty and fuzziness of user preference modeling. In this paper, the watching records of users are analyzed and the time?invariance of user preference is found out. The users, whose preferences for watching TV programs are invariable in a certain time, are called confidence ones in this paper. On these bases, a user preference model based on program feature vector space was established, and a TV recommending algorithm based on user preference model was proposed. The users′ preference is got by their history watching records and the program is recommended based on it. The result of simulation validated the efficiency and convergence of the algorithm.

Keyword: confidence user; TV recommender system; program feature vector space; user preference

0 引 言

当今,电视用户正面临着从海量电视节目中寻找自己喜欢的节目这一难题,而电视推荐系统正是为了解决这一难题应运而生。本文研究了用户对于食品的兴趣喜好从而建立用户偏好模型,并给出了推荐系统解决方案。本文中认为用户存在短时间内不会出现较大波动的偏好,并将这样的用户称作置信用户。在本文中讨论的用户模型都是置信用户模型。在文献[1]中,作者提出了“情感计算”的概念用以支持这个观点,但没有给出相关的分析和证明。在文献[2]中,除了用户偏好,用户的行为模式也被认为是对视频点播行为的重要影响因素,将其归结为“用户观看环境”。在此暂时不讨论其他对用户实际点播行为影响因素,仅讨论用户偏好。

推荐算法主要有两大类型:基于内容的推荐和协同滤波推荐[3]。前者依据用户过往观看记录进行推荐,而后者依据与目标用户具有类似喜好的用户的观看记录进行推荐。混合推荐算法将两者结合,结合了二者的优缺点。本文基于用户偏好的推荐方式属于基于内容的推荐。

1 用户偏好模型

向量空间模型和实体模型是建立用户偏好的两种主要模型。 向量模型用向量空间表征各种节目的特征,并用向量的各个坐标表征节目在各方面的特征和用户在个方面的偏好程度[4]。实体模型则是利用拥有多级多分支的复杂拓扑结构存储每一个观看记录的全部信息,需要较大的存储空间[5]。本文采用的向量模型中,一个电视节目被表征为一个n维的特征向量p=(p1, p2,…,pn),向量的每个坐标pi描述节目在某个节目分类上的特征。为了方便计算,文中的所有特征向量都被归一化为单位向量。所有节目特征向量的集合构成了特征向量空间Ω。用户同样被表征为一个n维向量α= (α1,α2,…,αn), 向量的每个坐标αi表用户对于某一个类型的视频的偏好。由于用户偏好可能存在的模糊性和不确定性,向量的每个坐标αi可能并非常数,而是关于时间的函数。但对于某一个时刻,用户偏好向量α可以看作节目特征向量空间Ω里的一个特征向量。

本文中认为部分用户存在固定的偏好。他们对于某一个种类的视频的喜好程度不随时间变化,并且以一个固定的概率点播这个类型的节目。针对这种用户,这样的点播行为模式往往可以持续几个月到半年时间不发生大的改变。在此将这样的用户称作置信用户。由于缺乏可靠的大尺度电视点播数据,从优酷网站上召集了75位志愿者作为研究样本。这些志愿者在过去半年里一共产生了24 015条视频点播记录。在优酷视频网站上,视频一共分为20个类别:电影、电视剧、综艺、动画、鱼类、体育、新闻、纪录片、教育、汽车、游戏、原创、生活服务、时尚、旅游、搞笑、广告和母婴。

定义一个用户对某一个分类视频的点播频率为该分类的点播次数与总点播次数的比值:

[fi=cij=1mcj] (1)

式中:fi为第i个分类视频的点播频率;ci第i个分类视频的点播次数。对于每个用户,将他的全部点播记录按照时间顺序排列,并均等分割为两份,分别计算前半部分的点播次数频率,后半部分的点播次数频率和总的点播次数和频率。表1为其中一个用户的数据。

表1 某个用户的观看次数和观看频率

该用户过去半年内均有点播记录,第1列为前3个月的数据,第2列为后3个月的数据,第3列为整个半年的数据。每一列都可以看作一个用户的点播频率向量。从表1中不难看出,拥有最高点播频率的分类电视剧和动画,其三个点播频率相互近似。从而可以做出假设,用户点播频率向量的主成分不随时间变化,且不同时间段产生的频率向量之间存在很大的相关性。可以计算向量之间的余弦相似性来得出它们的相关性。两个n维向量α=(α1,α2,…,αn)和β=(β1,β2,…,βn)的余弦相似性由式(2)给出:

[σ(α,β)=α?β|α||β|=i=1nαiβii=1nα2ii=1nβ2i] (2)

当β=α时,式(2)有最大值,表示两个向量具有最大的相关性。据此,计算了所有用户前三个月向量与总体向量的余弦相关性以及后三个月与总体的余弦相关性,并取平均值。这个平均值的分布如图1所示。从图中可以发现一半以上的用户相似度都分布在0.8以上。

图1 观看频率向量的平均余弦相度分布

图1中的分布印证了前面叙述的假设,即用户的偏好在一段较长时间内不随时间剧烈变化,并且这样的用户大量存在,将其称之为置信用户。基于前文提出的向量空间模型,认为置信用户的偏好向量具有这样的性质,即对于α=(α1,α2,…,αn),任意αi均为常数。

2 推荐系统

这里将给出推荐系统方案,该方案基于上文提出的置信用户模型和文献[6]中提到的算法。 如图2所示,我们保存用户的历史观看记录,记录用户在过去看过的视频的特征向量。向量P1,…,Pm为n维节目特征向量,代表用户过去m次的点播记录。变量m称为历史窗口,是一个可调节的量。当用户点播并观看一个新节目的时候,这个节目的特征向量将被记录下来,最早的一条观看记录将被删除。这些数据用于估计用户的偏好向量α,作为数据挖掘算法的训练序列。在获得用户偏好向量后,从待推荐的视频中选择与用户具有最大余弦相似度的视频作为最终的推荐视频。

基于置信用户的模型中,用户过往的观看记录构成了以用户偏好为重心的簇团。用户偏好向量作为簇团的重心,可以看作是簇团中各个元素的某种均值。当用户偏好向量与簇团中所有节目特征向量的余弦相关度的均值取最大值时,可以获得这个最佳的重心均值,即目标用户偏好向量为:

[αest=argmaxi=1mwiσ(αest,Pi)] (3)

式中:αest是算法对于用户偏好向量的估计值;Pi是第i个节目的特征向量;wi每个节目的权值。显然,αest是等式右侧方程的最优解。通过拉格朗日乘数法可以获得这个最优解:

[αi=Vik=1nV2k] (4)

式中:

[Vi=j=1mwipji] (5)

式中:pji是历史窗中存储的第j个节目Pj的第i个坐标;wi 是节目Pj的权重;m是历史窗的长度。式(4)、式(5)就是式(3)的最优解。在本文的方案中,对每个节目设置为等权重 (wi=1) 。

图2 节目推荐基本方案

3 仿真结果

由于建立了的n维用户向量模型具有常数坐标,因而历史窗m值越大, 获得的用户喜好节目样本越多,所得到的用户偏好向量估计值就可能越大。然而机顶盒的存储和推荐模块的计算能力都是有限的,因而需要找到最佳的历史窗口长度。

在实验1中,首先将用户观看频率向量进行处理,仅保留其主成分,再归一化作为仿真实验的虚拟用户对象。基本的向量维度为20,然后将30和50的维度作为对照组,发现维度数对于算法的影响。每次推荐发生时,系统会产生1个虚拟的节目特征向量,然后计算用户偏好向量与节目特征向量的余弦值与用户自身的观看门限进行比较,大于门限值则用户收看,并在推荐模块中留下该节目的记录。观看门限由实际用户数据中,每次收看的节目向量与处理后的用户观看频率向量余弦相似度的平均值,因而每个用户的门限均不相同。每产生一次推荐,计算一次用户偏好的估计值与实际用户偏好的余弦相似度并进行记录,相似度越高说明估计的越准确。图3展示了估计值与实际值相似度和历史窗长度的关系曲线,该曲线为各个用户1 000次实验后的均值结果。

图3 余弦相似度?历史窗曲线

从图中不难发现,由于该算法需要训练序列,因而在历史窗很小的时候算法效果很差。这一问题被称作推荐算法的冷启动问题[1]。在点播观看次数达到100左右时,弧线的坡度开始大幅度减缓直至变成水平线。这意味着当历史窗大于100的时候算法开始收敛,因而100可能是一个适合的历史窗大小。对比图中的三条曲线,尽管对应的用户和节目维度数量不同,但三者都从近似的历史窗长度开始收敛(m=100),因而m=100的历史窗长度可能是对任何一种分类方式都是一个合适的历史窗长度参考值。这意味着维度数对收敛速度并没有影响,但对最终收敛值存在影响。20维度下的曲线收敛值逼近1,30维度的收敛值在0.9左右,而50维度的收敛值在0.8左右。因而维度数越大,系统对于视频的分类越复杂,用户偏好的估计精度就越低。然而,从图中可以看出,尽管降低了估计精度,但对于50维度的情况下,其收敛值仍然接近0.85,满足实际的推荐需求。

图4 收敛值?维度数曲线

在图4中,专门研究了最终收敛值和维度数量的关系。如图5所示,最终收敛值随着维度上升而下降,说明了随着维度数的上升算法的估计精度将下降。 然而即使维度数达到了60,收敛值仍然大于0.8,这个值大于所有样本用户的平均门限值,因而处于可接受的误差范围内。而对于大于60的分类数量对于普通的数字电视系统来说已经过大了。

4 结 论

在本文中建立了基于向量空间的数字电视用户模型,重点研究了用户偏好并提出了置信用户的概念。然后根据从优酷视频网中采集的信息分析得出了置信用户大量存在的结论。

在这个基础上提出了推荐系统方案,利用基于内容的推荐方案,采用了取节目特征向量簇团重心的算法来估计用户的偏好向量,并根据偏好向量进行节目推荐。仿真结果说明了算法的准确性和收敛性。根据仿真结果,历史窗尺寸m=100是一个适合的算法参考值。本文中的模型和方案对于电视推荐系统的发展和应用是有益的。

参考文献

[1] MUKHERJEE D, BANERJEE S, BHATTACHARYA S, et al. A Context?aware recommendation system considering both user preferences and learned behavior [C]// International Conference on IT in Asia. Kuching, Sarawak: IEEE, 2011: 1?7.

[2] GAO Qi, XIN Le. Products recommend algorithm based on customer preference model and affective computing [C]// Proceedings of the 29th Chinese Control Conference. Beijing: IEEE, 2010: 2981?2986.

[3] ADOMAVICIUS G, TUZHILIN A. Toward the next generation of recommender systems: a survey of the state?of?the?art and possible extensions [J]. IEEE Transactions on Knowledge and Data Eng, 2005, 17(6): 734?749.

[4] FERNANDEZ Y B, ARIAS J J P, NORES M L, et al. AVATAR: an improved solution for personalized TV based on semantic inference [J]. IEEE Transactions on Consumer Electron., 2006, 52(1): 223?231.

[5] ISOBE T, FUJIWARA M, KANETA H, et al. Development of a TV reception system personalized with viewing habits [J]. IEEE Transactions on Consumer Electron, 2005, 51(2): 665?674.

[6] BJELICA Milan. Towards TV recommender system: experiments with user modeling [J]. IEEE Transactions on Consumer Electronics, 2010, 56(3): 1763?1769.

[7] 白妙青.云计算技术在广播电视网中的应用[J].现代电子技术,2013,36(11):188?191.

上一篇:铁路集团公司实施“营改增”的难点及对策探析 下一篇:关于铁路运输和邮政业营业税改征增值税试点有...