一种基于协同过滤的视频栏目推荐系统及推荐方法

文档序号:9646633阅读:495来源:国知局
一种基于协同过滤的视频栏目推荐系统及推荐方法
【技术领域】
[0001] 本发明涉及一种基于协同过滤的视频栏目推荐系统及推荐方法,属于智能电视推 荐系统的技术领域。
【背景技术】
[0002] 随着互联网时代和大数据时代的到来,智能互联网电视的迅猛发展,人们观看的 电视节目也不仅仅局限于直播电视节目,通过互联网,电视用户可以根据自己的兴趣更方 便快捷的选择更多最新的节目或者热门影片。电影数量级的迅速增长带来的信息过载问 题,给用户带来很多困扰,让用户无法准确高效地获得自己感兴趣的影片。互联网规模的迅 速增长带来了信息超载的问题,过量信息同时呈现使得用户无法很便捷快速地获取对自己 感兴趣的部分,使信息使用效率降低。现在的互联网应用中,越来越多智能的推荐系统被开 发出来并获得广大用户的信赖和使用。
[0003]对于目前常见的情况,当用户打开电视,进入推荐展示界面时,会看到展示页面的 栏目列表。具有相同属性的影片被归为同一个栏目(比如综艺节目、日韩影片、武侠电影、 文艺电影、动作电影),展示页面为用户展示若干栏目。生成展示栏目的依据一般是根据影 片的热门程度和以往人工设定的固定栏目经验,向每名用户展示相同栏目,而不是根据用 户兴趣向用户进行个性化推荐。
[0004]目前的视频推荐技术都是以推荐单个视频为主,但这些技术不太适用于栏目推 荐。首先,视频推荐一般都是依靠用户看过的视频来向其推荐没有看过的视频,但是在栏目 推荐中不可能把看过的栏目不再推荐,相反,一般而言看的越多的栏目越着重推荐。其次, 每个栏目都有很多视频组成,栏目间的关系相比于视频间的关系更为复杂,相似度计算更 加难以把握。

【发明内容】

[0005]针对现有技术的不足,本发明公开了一种基于协同过滤的视频栏目推荐系统。
[0006]本发明还公开一种上述推荐系统的推荐方法。
[0007]本发明的技术方案为:
[0008] -种基于协同过滤的视频栏目推荐系统,包括:用户模型创建模块、用户相似度计 算模块、最近邻居集生成模块、栏目评分生成模块和推荐模块,其中:
[0009]所述用户模型创建模块,用于获取栏目属性信息,所述属性信息包括用户标识、用 户所操作的栏目标识以及用户对栏目的历史操作信息;
[0010] 所述用户相似度计算模块,通过建立相似度矩阵M,计算目标用户与其他用户之间 的相似度sim(u,v),其中,ue1,2,…,n;ve1,2,…,η;
[0011] 所述最近邻居集生成模块,将目标用户与其他用户的兴趣相似度进行排名,取值 最大的Κ个用户,得到目标用户的最近邻居集合,Κ的取值根据实际情况设定;
[0012] 所述栏目评分生成模块,根据所述最近邻居集,获取目标用户对于栏目的预测评 分;
[0013] 所述推荐模块,用于根据所述预测评分及预先获取的目标用户对于历史栏目的评 分,生成栏目推荐列表进行推荐。
[0014] -种上述推荐系统的推荐方法,包括如下步骤:
[0015] 步骤S101 :创建用户模型
[0016] 将用户对栏目的点击次数作为评分表中的评分值:用户点击过栏目中的任意一个 影片即被视为完成一次栏目点击,从用户日志文件中获取较长时间段内用户点击过的所有 栏目名称以及每个栏目点击过的次数,整理生成用户观看历史记录表;每条记录的数据格 式为:{用户:栏目1 [栏目1点击次数];栏目2[栏目2点击次数];栏目5[栏目5点击次 数];…;栏目i[栏目i点击次数]};将上述记录的数据去重处理后存放在数据库A中;
[0017] 步骤S102 :计算用户相似度
[0018] 协同过滤算法通过用户观看行为的相似程度来分析计算用户的兴趣相似度,计算 公式⑴如下:
[0020] 式⑴中凡表示用户a曾经点击过的栏目集合,Nb表示用户b曾经点击过的栏目 集合,队表示对栏目i有过点击行为的用户集合,k是根据经验设定的固定值,优选的,设置 为N/5 ;
[0021] 所述用户相似度计算方法具体包括:
[0022] 根据用户观看影片的历史,建立栏目-用户的列表,每条记录的数据格式为:{:栏 目1:用户a,用户b,用户d,用户f,···},{栏目2:用户b,用户c,用户e,用户f,…},… {栏目i:用户a,用户b,用户d,用户f,…}。将这些信息整理存放在数据库B中;
[0023] 对于栏目i建立一个NXN的用户相似度矩阵%,其中N表示总的用户个数,其中, 矩阵Μ的行和列分别表示用户标识,元素Mab为1表示用户a和用户b均点击过一共同栏目 标识,ae1,2,…,n;be1,2,…,n,n为用户个数;对于栏目1,将Mab、Mad、Maf置为1,用户 两两组合作为矩阵%的行列坐标设;对于栏目2,将Mb。、Mte、Mbf、MOT、Mrf···设置为1,以此类 推生成各个栏目矩阵M1;
[0024] 依次将矩阵%乘以奖励项:所述奖励项为 ,其中,k是根据经验设定 的固定值,优选的为N/5,队表示栏目i中的用户数量,将各个乘以奖励项的矩阵相加得到 最终的用户相似度矩阵Μ;
[0025] 由于栏目展示页面的限制,展示在前面的栏目相对后排的栏目更流行,同时方便 用户点击,因此点击率往往较高。但是如果排列顺序靠后的栏目,用户对这些有一定的点击 次数,更能反应用户的兴趣点,对分析用户兴趣行为有更大的价值参考。如果两个不同用户 对排列靠后的栏目均有点击且点击过的栏目有较大的重合度,这样就认为他们兴趣相似, 可以相互的推荐栏目。两个用户多次点击过相同的冷门栏目更能说明他们兴趣的相似度, 这两个用户就可以被确定为邻居,有较好的相似性。因为排列在前的栏目相比于排列后面 的栏目有天然的优势,因此在本发明中加入奖励
|Ni|值越小,说明点击过 栏目i的用户较少,栏目i被认为是冷门节目,这样k与|Ni|的比值较大,这样对冷门栏目 分配更大的权重,通过奖励项性的设定,可以增加冷门栏目对用户相似度的作用,减少热门 栏目对用户相似度的干扰,更准确直接的反应不同用户间的相似程度。
[0026] 根据矩阵Μ过滤掉没有点击过相同栏目的用户对,减少计算量;
[0027] 根据计算出的矩阵Μ,再除以用户观看影片并集,得到最终的用户兴趣相似度;
[0028] 步骤S103 :创建最近邻居集合
[0029] 将目标用户与其他用户的兴趣相似度进行排名,取值最大的Κ个用户,得到目标 用户的最近邻居集合N(u,Κ),Κ的取值据实际情况设定;
[0030] 步骤S104 :产生栏目评分
[0031] 计算公式⑵如下:
[0033] 对于已经为目标用户推荐过的栏目,根据计算公式(2)获取目标用户对于历史栏 目的评分,其中,click(.,u)为用户u的全部点击量,click(1,u)为用户u对栏目1的点击 量,1el,2,*",m,m为栏目个数,τι为第一调节因子;
[0034] 计算公式(3)如下:
[0036] 对于目标用户没有被推荐过的栏目,根据计算公式(2)获取目标用户对未推 荐栏目的评分,其中,N(u,K)为K个最近邻居集,click(.,v)为用户v的全部点击量, click(l,v)为用户v对栏目1的点击量,1e1,2, "sm,m为栏目个数,μ为第二调节因 子,sim(V,u)为用户u与用户ν之间的相似度,用户ν属于最近邻居集中的用户,用户u为 目标用户;
[0037] 计算评分采用最近邻居相似度加权平均的方法,不但能满足多样性和
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1