一种引入节目热门度权重的协作过滤推荐方法转让专利

申请号 : CN200810037498.3

文献号 : CN100581227C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 顾君忠贺樑任磊夏薇薇吴发青杨静杨燕马天龙何克勤陈美华

申请人 : 华东师范大学

摘要 :

本发明公开了一种引入节目热门度权重的协作过滤推荐方法,特点是在IPTV节目的界面上,提供用户评分的可视化菜单,并根据终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,具体步骤包括:收集用户的行为特征信息;作出“用户-项目”评分矩阵A(m,n);计算热门度权重值;计算相似度大小并排序;对目标用户进行预测评分并排序;作出推荐列表给目标用户。本发明与现有技术相比具有更符合客观现实,提高了协作过滤的质量,推荐更精确,它根据用户的偏好和行为特征,主动对节目进行裁减,将用户想看的节目进行个性化推荐,实现了“在你想要的时候看你想看的电视”这一目标。

权利要求 :

1、一种引入节目热门度权重的协作过滤推荐方法,其特征在于IPTV节目的界面上,提供用户评分的可视化菜单,并根据终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,其具体步骤如下: a.收集用户兴趣数据,作出“用户-项目”评分矩阵A(m,n); b.作离线周期计算项目的热门度权重值; c.对当前活动用户已评分的项目找到对应的热门度权重值; d.引入对当前活动用户已评分的项目找到对应的热门度权重值来计算目标用户与其它用户间的相似度大小并排序; e.选取相似度最大的K个用户作为其最近邻居集; f.根据最近邻居集对目标用户未评分项目来预测评分并排序; g.将预测评分最大的前N个项目作出推荐列表给目标用户。

2、 根据权利要求1所述引入节目热门度权重的协作过滤推荐方法,其特 征在于所述"用户-项目"评分矩阵J—,W是以用户评分信息和用户行为数据进行矩阵排列,行代表用户,列代表项目,矩阵中的元素值则代表该行用户 对该列项目的喜爱程度。

3、 根据权利要求1所述引入节目热门度权重的协作过滤推荐方法,其特 征在于所述离线周期按30分钟计算一次,项目的热门度权重值是以w, = logL进行计算,w,为热门度权重;i^为所有项目的热门度总和;S为7/项目的热门度。

4、根据权利要求1所述引入节目热门度权重的协作过滤推荐方法,其特 征在于所述目标用户与其它用户间的相似度是将热门度权重值引入到 Pearson相关系数计算的。

说明书 :

一种引入节目热门度权重的协作过滤推荐方法技术领域本发明涉及IPTV个性化推荐系统,具体地说是一种引入节目热门度权 重的协作过滤推荐方法。 背景技术随着Internet上信息的剧增出现了所谓的"信息过载"和"信息迷向" 现象,推荐系统应运而生,它能根据用户操作历史和反馈等信息为用户找到 适合其兴趣的资源,为其产生个性化的推荐。如今,推荐技术己经应用在电 子商务、数字图书馆、影视娱乐等各个领域。尤其是IPTV领域,随着数字电 视和通信技术的不断发展,电视节目资源越来越丰富, 一方面用户为能够收 看到如此之多的节目而感到兴奋不已,另一方面又为如何从成百上千个节目 中找到他们真正喜爱的节目而感到很苦恼。协作过滤技术是当前最成功的个 性化推荐技术, 一些比较有名的推荐系统如WebWatcher、 GroupLens、 Firefly、 SELECT、 LileMinds和Citeseer都采用了协作过滤的方法。基本思 想就是基于评分相似的最近邻居的评分数据向目标用户产生推荐,即根据其 它用户的观点产生对目标用户的推荐列表。它基于这样一个假设:如果用户 对一些项目的评分比较相似,则他们对其它项目的评分也比较相似。其出发 点是找到与你兴趣相同的一组用户,术语叫做"最近邻",最近邻搜索的核 心是计算两个用户的相似度。例如用户A和用户B,首先需要获取用户A和用 户B所有的评分项,然后选择一个合适的相似度计算方法,基于评分项数据, 计算得到用户A和用户B的相似度数值。目前使用比较多的相似度算法包括, 皮尔森相关系数(PCC)、余弦相似性以及调整余弦相似性。由上述可知,协 作过滤的关键步骤是找到目标用户的最近邻居,能否找到准确的最近邻居是 推荐准确与否的重点,更准确的计算用户间的相似度是最近邻选取准确的前提。但是目前使用的PCC计算中,它就是将用户共同评分的项目一视同仁, 并不区分项目本身的热门程度,只要共同评分了、而且评分相近就能反映出较高的相似性,所以现有的个性化推荐技术准确性较差,与客观现实不尽相 符合。发明内容本发明的目的是针对现有技术的不足而设计的 一种引入节目热门度权 重的协作过滤推荐方法,它首先定义电视节目的热门度,进而计算其热门度 权重,并在用户相似度计算公式中引入该权重,据此计算出的相似性更为符 合现实情况,计算得到的相似性更为准确,因此能够更准确的选取目标用户 的最近邻居,从而产生更精确的推荐。本发明的目的是这样实现的: 一种引入节目热门度权重的协作过滤推荐 方法,特点是在IPTV节目的界面上,提供用户评分的可视化菜单,并根据 终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,其具体步骤如下:a. 收集用户兴趣数据,作出"用户-项目"评分矩阵^m,";hb. 作离线周期计算项目的热门度权重值;c. 对当前活动用户已评分的项目找到对应的热门度权重值;d. 作出目标用户。与其它用户间的相似度大小并排序;e. 选取相似度最大的K个用户作为其最近邻居集;f. 根据最近邻居集对目标用户未评分项目来预测评分并排序;g. 将预测评分最大的前N个项目作出推荐列表给目标用户。所述"用户-项目"评分矩阵^w,")是以用户评分信息和用户行为数据进行矩阵排列,行代表用户,列代表项目,矩阵中的元素值则代表该行用户 对该列项目的喜爱程度。所述离线周期按30分钟计算一次,项目的热门度权重值是以w,logf,]进行计算,w,为热门度权重;?。,,为所有项目的热门度总和;S l《J为f项目的热门度;所述目标用户《与其它用户间的相似度是将热门度权重值引入到Pearson相关系数计算的。本发明与现有技术相比具有更符合客观现实,提高了协作过滤的质量, 推荐更精确,它根据用户的偏好和行为特征,主动对节目进行裁减,将用户 想看的节目进行个性化推荐,实现了 "在你想要的时候看你想看的电视"这 一目标。附图说明图l为本发明的流程示意图图2为本发明项目/热门度权重计算流程示意图 具体实施方式实施例参阅附图1〜2,本发明在IPTV节目的界面上,提供用户评分的可视化 菜单,并根据终端机顶盒传来的用户观看时间、行为操作、节目评分数据作出节目推荐列表给目标用户,其具体步骤如下:1、 数据收集部件在IPTV系统中通过跟踪用户的观看时间、行为操作等特征来获取代表用户兴趣的信息,并将存储在对应的数据库表中。2、 将上述用户的行为特征信息由系统进行原始数据的处理,并代替用 户完成评价,然后根据用户评分信息和用户行为数据,整理得到"用户-项 目"评分矩阵」—,w;),评分的值从1到s,(即打分范围为1-5),该矩阵作为用户兴趣模型存储在推荐引擎装置上,行代表用户,列代表项目,矩阵中的 元素值代表该行用户对该列项目的喜爱程度,喜爱程度设置为5档,分别对 应为:(1)很不喜欢,(2)比较不喜欢,(3) —般,(4)比较喜欢,(5)很 喜欢。若用户对某项目没有评价过,那么在评分矩阵中设置为0。3、 对"用户-项目"评分矩阵4m,力进行离线周期计算,得到每一个项目的热门度权重并存储,离线周期按30分钟计算一次,(也可根据用户更新 的频率而定)其中,项目^的热门度《定义为:项目,被评分的次数,即用户 -项目评分矩阵中第f列中非零项的个数,《=|^/^|,可见,被评分的次数越 多,项目越热门,被评分的次数越少,项目越冷门。其热门度权重w,定义为:,其中4为所有项目的热门度总和,即所有项目被评分的总次数,可以通过用户-项目评分矩阵中所有非零项个数得到。根据矩阵J—,n)中 的数据,采用离线周期计算每个项目的热门度权重值并记录在W(n)中,该值 反映了对应项目在计算用户相似度时所起的作用大小。例如用户l和用户2 都评价了电影《长江七号》和《我叫刘跃进》,但是通过扫描评分矩阵,我 们发现《长江七号》被评价的次数是200次,远远大于《我叫刘跃进》被评 价的次数40次,假设该电影集上的所有评分次数为3000,那么《长江七号》 的热门度权重w《針[七号》-log(3000/200)-2.7 ,《我叫刘跃进》的热门度权重w《我叫顺进,log(3000/40)-4丄这样,《我叫刘跃进》在衡量用户1和用户2的相似度时所起的作用要大于《长江七号》。4、当目标用户a到达时,扫描评分矩阵J(/n,n),得到《已评分项目集合r。, 对每个项目"7;,在W(n)中找到对应的w,。推荐引擎根据"用户-项目"评 分矩阵4附,力和热门度权重,采用目标用户"和其它用户"的相似度计算形 成用户相似度矩阵&m(m,m;),在相似度计算中引入共同评分项目的热门度权 重,计算方法如下:以Pearson相关系数方法为基础,其中分子中加入公共 评分项目中每一项的热门度权重,为了将相似度限定在-1〜1之间,分母中 加入公共评分项目的热门度权重最大值做除数,公式如下:formula see original document page 6重加入到相似度计算公式中,得到的相似度就越小。反之,当f的热门度《越 小,得到的相似度就越大,因此符合该常识。共同观看热门度越高的电影, 反应出来的用户相似性越低,反之,共同观看热门度越低的电影,反应出来 的用户相似性就越高。将上述计算结果从高到低进行排序。5、 根据上述目标用户a与其它用户间的相似度大小并排序,找到与目标 用户"最相似的前t个最近邻居,形成最近邻居集[fo^,fo^,L 使得6、 扫描^附,w),找到用户"未评分的项目集合r。',针对活动用户"每个未评分的项目/,预测用户"对项目y的评分,采用如下公式对每个"?;'计 算预测评分值;& , _、一)x(L,4")丄"J •*、卞 A计算出的用户。对所有未评分项目的预测评分,将其按照从大到小进行排序, 选取评分值最大的前iV个项目组成推荐列表RecList(N)给当前活动用户"。本发明与现有的协作过滤推荐方法相比,在相似度计算中考虑了项目本 身的热门度差异,作为权重反映在计算公式中,使得计算结果更符合客观现 实,在一定程度上对推荐准确性有所改善,提高了推荐质量。