专利名称:一种基于协同过滤的互动电视节目推荐方法
技术领域:
本发明涉及数字电视通信技术领域,尤其涉及到基于协同过滤的互动电视节目 推荐方法。
背景技术:
随着数字电视双向IP机顶盒的出现,各种节目点播、信息査询与浏览等丰富 的业务也可通过数字电视的渠道展现给用户。然而,由于各种互动频道上的节目越 来越多,内容越来越繁杂,"信息迷航"和"信息过载"已经成为日益严重的问题。 IPTV用户在査找感兴趣的节目时,往往需要用遥控器在电子节目指南(EPG)界面 上进行多次繁琐的操作,仍难以找到感兴趣的互动节目。因此,利用IPTV技术双 向互动的特点,在互动频道上实现推荐系统,是一大发展趋势。
目前,国内外存在将推荐系统应用于互动电视之上的先例,业己提出的"关联 互动电视业务"使用基于标签和基于搜索的关联方式,将类似内容的电视节目链接 在一起,使得用户迅速找到一组自己喜爱的节目内容或正同期播放的其他频道的同 类节目,节省用户检索时间,带给用户较佳的体验。但是,该方案未能分析和挖掘 用户的兴趣,未能关注用户的个性,因此,推荐结果相对狭窄而且固定,在效果上 不尽如人意。
发明内容
针对现存技术的不足,本发明的目的是提供一种基于协同过滤的互动电视节目 推荐方法。
本发明基于以下假设项目之间存在相似性,能够引起用户兴趣的项目,必定 与其之前评分高的项目相似。通过分析用户对互动节目的点播记录,挖掘用户的兴 趣,可实现"推荐过程以人为本,推荐结果因人而异",从而在效果上使用户获得 个性化的业务体验。
为达到以上目的,本发明采用的技术方案是 一种基于协同过滤的互动电视节 目推荐方法,该方法包括以下步骤
1、在用户利用遥控进行互动节目评分时,应用服务器从EPG系统的表示层对 业务层的调用信息之中,获取发出请求的机顶盒用户的用户信息,查询会话表获得用户唯一身份标识W ,推荐服务器线上模块从应用服务器接收用户对项目的评分 ,并将相应评分更新至用户-项目评分矩阵之中;
2、 在推荐服务器更新项目相似度数据时,线下模块守护线程从用户-项目评分 矩阵『(w,w)之中获取评分R,,并利用余弦相关性计算项目两两之间的相似度
w'm(Zp^),并将相似度更新至项目相似度方阵W/n(", w)之中;
3、 在用户利用遥控获取节目推荐时,推荐服务器线上模块从应用服务器获取 用户身份标识或当前浏览影片标识等信息,以及需要推荐的类型;
4、 线上模块读取项目相似度方阵Ww(w,w),并选择相似度最大的项目作为最近
5、线上模块以最近邻为依据,进行个性化推荐。
上面所述的用户-项目评分矩阵『(附,w)是一个mxw的矩阵;其中,m为用户的 数目,"为互动节目的数目;『^为用户w对项目/的评分值,评分分为5个级别,
对应分值分别为1,2,3,4,5,对用户未评分的项目,使用缺省分值0,或该用户对其 他项目评分的平均值。
上面所述余弦相关性^K/^,。描述了项目z'p与々之间的相似程度,可通过项目
评分向量之间的夹角余弦进行计算,其计算公式为
上面所述的基于协同过滤的互动电视节目推荐方法,在用户利用遥控获取推荐 系统推荐节目时,推荐服务器线上模块对每一个用户未评分项目/,的进行评分预测,
通过在相似度方阵Wm(",")中寻找/,最相似的邻居,并以相似度乘以相似度置信度
为权值,预测项目/,的评分,选取预测评分最大的若干个项目,作为对用户的推荐, 评分预测的计算公式为『:—^-
乂=1
上面所述的项目相似度的置信度表示项目相似度的可靠性,具体指对两个项目 都进行了评分的用户数量除以对两个项目中任意一个进行了评分的用户数量,其计 算公式为-
" 广.、F—
上面所述的基于协同过滤的互动电视节目推荐方法,在用户利用遥控获取推荐 系统推荐当前节目类似节目时,推荐服务器线上模块在相似度方阵x/m(w,")中寻找
与当前项目/,相似度最大的若干个项目,并作为结果推荐给用户。
由上述本发明采用的技术方案可以看出,本发明有以下有益效果
1、 相比起传统的基于标签和搜索的互动电视节目推荐方法,本发明更多的考虑 了 IPTV用户的个人喜好,在效果上使用户获得个性化的业务体验。
2、 相比起基于关联规则和基于用户的协同过滤推荐方法,本发明将互动电视节 目推荐系统分为线上模块和线下模块两个部分,通过线下计算互动节目之间的相似 度,可在O(")的时间内就为当前用户正在浏览的项目找到最相似的其他项目,并产
生推荐,从而减少线上运算的复杂度,提高获取推荐结果的速度,满足大用户量的
需求o
3、 相比起基于用户的协同过滤推荐方法,本发明考虑到用户的爱好变化较大, 而互动电视节目之间的相似性相对固定,因此,着重分析项目之间的余弦相关性, 而非用户之间的相关性。
图1是增加推荐系统后的IPTV系统节目推荐及点播时序图2是基于协同过滤的互动电视节目推荐方法流程图。
具体实施例方式
下面将结合附图对本发明的结构和实施方式组成作进一步的详细描述如图1所示,互动电视后台服务器组由以下几个服务器模块组成-
1、 应用服务器模块,该模块负责EPG (电子节目菜单)的生成、流媒体点播服 务的重定向、扣费信息的收发、以及和推荐服务器进行通信。该模块为整个服务器 集群的核心部分,是直接与IPTV机顶盒通过HTTP或HTTPS协议进行通信的服务器。
2、 BOSS系统模块,该模块负责对机顶盒用户进行鉴权以及扣费,并直接与应 用服务器模块进行通信。该模块从应用服务器模块接受机顶盒用户的ID以及媒体资 源的ID,在本地数据库之中进行鉴权,若用户未对节目缴费,则进行扣费,并将扣 费结果返回应用服务器,在EPG上进行显示。
3、 流媒体服务器模块,该模块负责流媒体资源的存储以及互动服务资源的提供。 应用服务器模块对IPTV机顶盒鉴权成功之后,将根据互动服务资源的ID,进行重 定向,从而以HTTPS协议的方式为IPTV机顶盒提供互动服务资源的URL,该URL直 接指向流媒体服务器上的资源。
4、 推荐系统服务器模块,该模块负责为机顶盒用户进行互动节目的推荐,并直 接与应用服务器模块采取SOAP (简单对象访问协议)进行通信。该模块主要维护两
个矩阵, 一个为用户-项目评分矩阵『(m,"),该矩阵保存了 IPTV机顶盒用户对互
动节目的评分情况,另一个为项目相似度方阵w'm(w,"),该矩阵保存的浮点数值
e [-1,1],描述了项目两两之间的相似度大小。
推荐系统服务器模块可分为线上模块和线下模块。线上模块负责接收应用服务 器模块传送的用户对项目评分信息,并对用户-项目评分矩阵『(附,w)进行相应的更
新;此外,线上模块负责从项目相似度方阵Wm(w,")之中提取当前项目相似度最高
的项目,或预测当前用户评分最高的项目,作为推荐结果返回应用服务器模块,最 终在EPG上显示。线下模块负责从用户-项目评分矩阵『(w,力之中提取评分信息,
并利用余弦相关性计算项目之间的相似度,从而对项目相似度方阵w'm(w,w)进行更
新;该模块作为推荐系统的守护线程运行,每隔若干周期更新项目相似度方阵 ,并对根据新增的项目和用户进行两个矩阵的扩展。
下面以IPTV机顶盒用户对互动节目的一次评分以及获取推荐的运行全过程为 例,进行具体阐述,如图2所示。1、 推荐系统线上模块接收由应用服务器发送的评分信息,例如ID为3的用户 对ID为5的互动节目评分为4,则将评分信息更新至用户-项目评分矩阵『(m,")之
中,将『(3,5)设置为4。
2、 当计吋器触发时,推荐系统线下模块从用户-项目评分矩阵『(m,w)中获取评
分值,并利用余弦相关性计算互动节目项目之间的相似度,从而对项目相似度方阵 w'w(w,")进行更新。计算公式为<formula>formula see original document page 8</formula>
完成更新后,线上模块从项目相似度方阵之中获取的内容为加入了机顶盒用户 对互动节目最近评分的相似度运算结果。
3、 推荐系统线上模块接收由应用服务器发送的SOAP远程调用推荐请求,例如 ID为3的用户要求推荐系统提供数量为4的推荐。
4、 推荐系统线上模块读取项目相似度方阵W附(w,w),并为对用户"3未评分的每
一个项目/,选取项目相似度wX/,,G)最大的10个项目^作为最近邻。
5、 推荐系统对用户^未评分的每一个项目/,的进行评分预测,以相似度乘以相 似度置信度为权值,预测项目/,的评分,预测评分的计算公式为<formula>formula see original document page 8</formula>项目相似度置信度的计算公式为:<formula>formula see original document page 8</formula>
推荐系统选取『3,,最大的4个项目作为推荐项目,将其提供给应用服务器,应 用服务器生成动态网页,作为EPG的内容返回给客户端机顶盒。
权利要求
1、一种基于协同过滤的互动电视节目推荐方法,其特征在于,该方法包括以下步骤(1)在用户利用遥控进行互动节目评分时,应用服务器从EPG系统的表示层对业务层的调用信息之中,获取发出请求的机顶盒用户的用户信息,查询会话表获得用户唯一身份标识u,推荐服务器线上模块从应用服务器接收用户对项目的评分Wu,i,并将相应评分更新至用户-项目评分矩阵W(m,n)之中;(2)在推荐服务器更新项目相似度数据时,线下模块守护线程从用户-项目评分矩阵W(m,n)之中获取评分Wu,i,并利用余弦相关性计算项目两两之间的相似度sim(ip,iq),并将相似度更新至项目相似度方阵sim(n,n)之中;(3)在用户利用遥控获取节目推荐时,推荐服务器线上模块从应用服务器获取用户身份标识或当前浏览影片标识等信息,以及需要推荐的类型;(4)线上模块读取项目相似度方阵sim(n,n),并选择相似度最大的项目作为最近邻;(5)线上模块以最近邻为依据,进行个性化推荐。
2、 根据权利要求1所述的基于协同过滤的互动电视节目推荐方法,其特征在 于,所述用户-项目评分矩阵『(m,")是一个wxw的矩阵;其中,m为用户的数目,"为互动节目的数目;^,为用户w对项目/的评分值,评分分为5个级别,对应分值分别为1,2,3,4,5,对用户未评分的项目,使用缺省分值0,或该用户对其他项目 评分的平均值。
3、 根据权利要求1或2所述的基于协同过滤的互动电视节目推荐方法,其特 征在于,所述余弦相关性^K^,^)描述了项目;与^之间的相似程度,可通过项目 评分向量之间的夹角余弦进行计算,其计算公式为」》^)2x》『")2
4、根据权利要求1所述的基于协同过滤的互动电视节目推荐方法,其特征在 于,在用户利用遥控获取推荐系统推荐节目时,推荐服务器线上模块对每一个用户未评分项目的进行评分预测,通过在相似度方阵Wm(w,w)中寻找/,最相似的邻居,并以相似度乘以相似度置信度为权值,预测项目/,的评分,选取预测评分最大的若 干个项目,作为对用户的推荐,其计算公式为-<formula>formula see original document page 3</formula>
5、 根据权利要求1所述的基于协同过滤的互动电视节目推荐方法,其特征在于,所述项目相似度的置信度表示项目相似度的可靠性,具体指对两个项目都进行 了评分的用户数量除以对两个项目中任意一个进行了评分的用户数量,其计算公式为<formula>formula see original document page 3</formula>
6、 根据权利要求1所述的基于协同过滤的互动电视节目推荐方法,其特征在 于,在用户利用遥控获取推荐系统推荐当前节目类似节目时,推荐服务器线上模块 在相似度方阵中寻找与当前项目/,相似度最大的若干个项目,并作为结果推荐给用户。
全文摘要
本发明公开了一种基于协同过滤的互动电视节目推荐方法。该方法利用基于项目的协同过滤方法,将各种节目内容、信息内容关联起来,并进行推荐,从而帮助用户更方便的浏览和查找EPG系统中感兴趣的内容。相比起传统的基于标签和搜索的互动电视节目关联推荐方式,本发明以人为本,通过分析用户的点播记录,挖掘用户的兴趣进行推荐,因此,推荐结果因人而异,更多的考虑了用户的个人喜好,在效果上使用户获得更好的业务体验。此外,相比起基于关联规则和基于用户的协同过滤推荐方法,本发明减少了线上运算的复杂度,从而提高了获取推荐结果的速度。
文档编号G06Q30/02GK101540874SQ200910038899
公开日2009年9月23日 申请日期2009年4月23日 优先权日2009年4月23日
发明者周轶伦, 罗笑南 申请人:中山大学