著录项信息
专利名称 | 面向实时流的电视节目推荐系统 |
申请号 | CN201210109622.9 | 申请日期 | 2012-04-16 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2012-08-08 | 公开/公告号 | CN102630052A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | 暂无 | IPC分类号 | 暂无查看分类表>
|
申请人 | 上海交通大学 | 申请人地址 | 上海市闵行区东川路800号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 上海交通大学 | 当前权利人 | 上海交通大学 |
发明人 | 朱其立;蔡智源;王拯 |
代理机构 | 上海汉声知识产权代理有限公司 | 代理人 | 郭国中 |
摘要
本发明公开了一种面向实时流的电视节目推荐系统,包括在用户收看电视节目时自动且透明地收集用户收视信息的用户信息收集模块;采用信息抽取技术,从互联网上抽取节目相关信息建立节目模型的节目模型定义模块;利用用户信息收集模块采集到的用户收视信息以及节目模型定义模块建立的节目模型产生用户偏好模型的用户偏好追踪模块;根据当前的用户偏好,使用扩展杰卡德相似度产生推荐结果的节目推荐模块;以节目推荐模块产生的文本推荐结果为依据,为推荐结果增加美工及动画效果的推荐结果展示模块。本发明个性化较强,紧跟用户的喜好变化;解决传统系统要求用户明确反馈的问题;为节目增加时间维持,进行针对性推荐。
1.一种面向实时流的电视节目推荐系统,其特征在于,包括依次连接的用户信息收集模块、用户偏好追踪模块、节目推荐模块及推荐结果展示模块,还包括节目模型定义模块,所述节目模型定义模块分别与用户偏好追踪模块及节目推荐模块相连接,其中:
-用户信息收集模块,为用户维护一个会话对象,并将当前收看频道及其开始收看时间存入会话对象中;
-节目模型定义模块,为整个推荐系统提供节目向量信息;
-用户偏好追踪模块,在每次收到新的用户反馈时更新用户偏好模型;
-节目推荐模块,根据当前的用户偏好,采用扩展杰卡德相似度计算产生推荐结果;
-推荐结果展示模块,根据节目推荐模块产生的文本推荐结果为依据,为推荐结果添加详细信息;
所述用户偏好追踪模块包括两种具体情况:第一,当一个全新的用户来到系统时为他初始化一个用户偏好模型;第二,在用户提交收视信息时,更新用户偏好模型;
所述用户偏好追踪模块利用用户信息收集模块采集到的用户收视信息以及节目模型定义模块建立的节目模型产生用户偏好模型,并根据用户收视信息,及时产生最新的用户偏好模型,同时,考虑用户新近收看的节目最能反映用户的收视偏好,对以往的用户偏好模型进行衰减,用于提高推荐的准确度;
所述用户偏好追踪模块使用划分后的用户收视信息,对用户偏好模型的更新通过对旧用户模型和最近的节目模型执行广义加操作实现,即在对应的标签上,合并两个标签的对应值列表,并以此作为新模型在该标签下的新值。
2.根据权利要求1所述的面向实时流的电视节目推荐系统,其特征在于,所述用户信息收集模块在用户收看电视节目时自动且透明地收集用户收视信息,在得到传统的收视数据后将其划分为节目收视信息进行存储。
3.根据权利要求2所述的面向实时流的电视节目推荐系统,其特征在于,所述存储格式包括以下两种:
第一,简单记录用户在某一频道上的停留时间;
第二,将用户在某一频道上的停留时间划分于在该频道上播出的节目,存储用户对节目的收视时长。
4.根据权利要求1所述的面向实时流的电视节目推荐系统,其特征在于,所述节目模型定义模块采用信息抽取技术,从互联网上抽取节目相关信息建立节目模型,通过后续处理,为下一周每一个即将播出的节目建立节目模型。
5.根据权利要求1所述的面向实时流的电视节目推荐系统,其特征在于,所述节目推荐模块根据当前的用户偏好,采用扩展杰卡德相似度计算用户偏好模型与当前时间之后播放的所有节目的相似度,并对计算出的相似度排名,产生推荐结果。
6.根据权利要求1所述的面向实时流的电视节目推荐系统,其特征在于,所述推荐结果展示模块以节目推荐模块产生的文本推荐结果为依据,为推荐结果增加美工及动画效果,使用滚动和动画两种方式展示文本推荐结果。
面向实时流的电视节目推荐系统\n技术领域\n[0001] 本发明涉及一种计算机应用技术领域的系统,具体是一种面向实时流的电视节目推荐系统。\n背景技术\n[0002] 自从20世纪中期,推荐系统已经成为一个非常重要和活跃的研究领域。由于推荐系统涉及的学术领域非常广,包括信息检索、产品分类、行为建模、实时推荐,并且它能够进行个性化推荐,所以对于它的研究热情经久不衰。推荐系统的主要职能有:跟踪用户行为、筛选合适的内容。这样就免去了用户在海量数据中盲目搜索的负担,并直接提供用户最有可能偏爱的内容。如今,推荐系统已经深入商业营销的方方面面,主流的应用如Amazon.com上推荐图书、CD和其他相关产品;优酷视频网站上根据观看历史推荐类似的视频、音频;淘宝上相似产品的推荐等等。\n[0003] 推荐系统在数字电视上的应用也非常引人注目。随着现代通讯技术的飞速发展以及数字电视机顶盒的逐步普及,数字电视已经成为广大家庭获取信息的主要途径。技术的变革使得机顶盒能够接收和存储大量的影视节目,但这同时也让用户难以快速准确地从中选取适合自己的节目。推荐系统的介入,能赋予数字电视更强的竞争力,从而取得商业上的成功。\n[0004] 尽管推荐系统已经取得了很大的成果,并已为广大用户所接受甚至依赖,但在电视节目推荐方面,市场上尚未出现一套完整且准确度高、覆盖面广的电视节目推荐系统。\n发明内容\n[0005] 本发明针对现有技术中存在的上述不足,提供了一种面向实时流的电视节目推荐系统,通过对节目模型与用户偏好模型的比较,向用户推荐节目,在准确度和节目覆盖面上较以往算法有了改进。\n[0006] 本发明是通过以下技术方案实现的。\n[0007] 一种面向实时流的电视节目推荐系统,包括依次连接的用户信息收集模块、用户偏好追踪模块、节目推荐模块及推荐结果展示模块,还包括节目模型定义模块,所述节目模型定义模块分别与用户偏好追踪模块及节目推荐模块相连接,其中:\n[0008] -用户信息收集模块,为用户维护一个会话对象,并将当前收看频道及其开始收看时间存入会话对象中;\n[0009] -节目模型定义模块,为整个推荐系统提供节目向量信息;\n[0010] -用户偏好追踪模块,在每次收到新的用户反馈时更新用户偏好模型;\n[0011] -节目推荐模块,根据当前的用户偏好,采用扩展杰卡德相似度(Extended Jaccard Similarity)计算产生推荐结果;\n[0012] -推荐结果展示模块,根据节目推荐模块产生的文本推荐结果为依据,为推荐结果添加详细信息。\n[0013] 所述用户信息收集模块在用户收看电视节目时自动且透明地收集用户收视信息,在得到传统的收视数据后将其划分为节目收视信息进行存储。\n[0014] 所述存储格式包括以下两种:\n[0015] 第一,简单记录用户在某一频道上的停留时间;\n[0016] 第二,将用户在某一频道上的停留时间划分于在该频道上播出的节目,存储用户对节目的收视时长。\n[0017] 所述节目模型定义模块采用信息抽取(Information Extraction)技术,从互联网上抽取节目相关信息建立节目模型,通过后续处理,为下一周每一个即将播出的节目建立节目模型。\n[0018] 记录的过程对用户是完全透明的,用户只需像平常一样观看数字电视节目,系统便能够采集到数据,用户对此可以毫无感觉。\n[0019] 所述用户偏好追踪模块利用用户信息收集模块采集到的用户收视信息以及节目模型定义模块建立的节目模型产生用户偏好模型,并根据用户收视信息,及时产生最新的用户偏好模型,同时,考虑用户新近收看的节目最能反映用户的收视偏好,对以往的用户偏好模型进行衰减,用于提高推荐的准确度。\n[0020] 具体为两种情况:第一,当一个全新的用户来到系统时为他初始化一个用户偏好模型;第二,在用户提交收视信息时,更新用户偏好模型。用户偏好追踪模块管理及更新用户偏好模型,是推荐系统的主要组成部分。在本发明中,我们对其进行了优化,提高推荐的准确度。\n[0021] 所述节目推荐模块根据当前的用户偏好,采用扩展杰卡德相似度计算用户偏好模型与当前时间之后播放的所有节目的相似度,并对计算出的相似度排名,产生推荐结果。\n[0022] 所述推荐结果展示模块以节目推荐模块产生的文本推荐结果为依据,为推荐结果增加美工及动画效果,使用滚动和动画两种方式展示文本推荐结果。\n[0023] 与现有技术相比,本发明具有如下有益效果:(1)对于用户的个性化较强,能够紧跟用户的喜好变化;(2)解决传统系统要求用户明确反馈的问题;(3)针对于影视节目的生命周期短、时间敏感度高的特点,为节目增加时间维持,进行针对性推荐。\n附图说明\n[0024] 图1系统概貌;\n[0025] 图2用户偏好向量的积累;\n[0026] 图3节目描述属性;\n[0027] 图4未划分用户收视信息格式;\n[0028] 图5划分后用户收视信息格式;\n[0029] 图6收视信息划分示意图。\n具体实施方式\n[0030] 下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。\n[0031] 如图1所示,本实施例包括依次连接的用户信息收集模块、用户偏好追踪模块、节目推荐模块及推荐结果展示模块,还包括节目模型定义模块,所述节目模型定义模块分别与用户偏好追踪模块及节目推荐模块相连接,其中:\n[0032] 用户信息收集模块在每次用户登录系统时,为用户维护一个session(会话)对象,并将当前收看频道及其开始收看时间存入session对象中。在用户收看电视节目时自动且透明地收集用户收视信息,在得到传统的收视数据后将其划分为节目收视信息进行存储。当用户换台时会触发对节目地址的请求。此时,系统使用用户发出请求的时间减去session对象中存储的时间,作为用户在当前频道上的收看时间。系统将本次收视信息——开始时间、结束时间、收视频道作为一条记录(格式参见图4)写入数据库中。与此同时,为了满足后续模块的需要,系统将本次收视信息,划分于在该频道上播放的节目中(格式参见图5)。划分时,系统使用节目信息与收视信息的重叠情况,记录用户观看某一节目的百分比。系统从开始收视时间进行计算,直到结束时间为止,在划分过程中,可能使用一个或多个节目信息(参见图6)。最后,系统使用本次发送请求的时间和请求的频道替换在session对象中存储的开始收视时间和初始收看频道,返回用户请求节目的地址,完成一次用户收视信息的采集。此后的采集过程重复上述步骤,直至用户关闭电视。此时,系统捕获SessionDestroy事件,使用系统当前时间作为截止时间完成最后一次信息收集。所述以上步骤对用户均是完全透明的,系统可在用户毫无感觉的情况下完成收视信息的采集。\n[0033] 存储格式包括以下两种:\n[0034] 第一,简单记录用户在某一频道上的停留时间;\n[0035] 第二,将用户在某一频道上的停留时间划分于在该频道上播出的节目,存储用户对节目的收视时长。\n[0036] 节目模型定义模块为整个推荐系统提供节目向量信息。采用信息抽取技术,从互联网上抽取节目相关信息建立节目模型,通过后续处理,为下一周每一个即将播出的节目建立节目模型。通常,该模块在本周周末被调用,调用后提供下周所有播放节目的节目信息。该模块首先从提供的节目单网站下载下一周将要播放节目的节目单。其次,根据节目单的信息,在搜索引擎内检索网页,将搜索引擎返回的前20个网页作为信息抽取的种子。接下来,使用信息抽取(Information Extraction)技术抽取相关信息。系统使用13个标签描述一个节目,譬如名称、导演、演员等(具体参见图3)。对于每一个标签,系统为其赋予一个或多个值。例如名字标签,系统为之赋予一个对应的名字;与之相反,系统为演员标签可能赋予多个值,表示这个节目有多个演员参与演出。对于系统未能提取到的标签值,系统仍然保留该标签,但是在相应的值上填写null。例如,一部动作电影没有主持人,系统对该电影仍保留主持人属性,但在标签值上写入null。在系统中所有的节目对象均含有如下的属性[0037] ArrayListtag_list;\n[0038] 当节目模型定义模块完成执行后,每一个下周将要播出的节目均会在系统内生成一个对象,且对象中的tag_list属性会被填写相应的值。\n[0039] 用户偏好追踪模块在每次收到新的用户反馈时更新用户偏好模型。利用用户信息收集模块采集到的用户收视信息以及节目模型定义模块建立的节目模型产生用户偏好模型,并根据用户收视信息,及时产生最新的用户偏好模型,同时,考虑用户新近收看的节目最能反映用户的收视偏好,对以往的用户偏好模型进行衰减,用于提高推荐的准确度。用户偏好追踪模块使用划分后的用户收视信息。用户模型的更新通过对旧用户模型和最近的节目模型执行广义加操作实现。即在对应的标签上,合并两个标签的对应值列表,并以此作为新模型在该标签下的新值。此处,合并是集合的并操作(参见图2)。譬如,旧用户模型的演员标签包含“A”、“B”两个值,而节目模型的演员标签包含“B”、“C”、“D”三个值,在合并后,新用户模型的演员标签包含“A”、“B”、“C”、“D”四个值。在使用一个节目模型更新用户模型时,系统对13个标签均进行上述合并操作,得到一个新的用户模型。\n[0040] 考虑到用户新近收看的节目更能反映用户的偏好,推荐算法在用户模型更新的过程中,对旧模型执行衰减。在合并旧用户模型与节目模型的过程中,对来自旧用户模型的值乘以系数Lambda(0到1之间),再加上来自节目模型的值: 其\n中, 表示新用户模型, 表示旧用户模型, 表示最近收看的节目模型,d为\n衰减系数即前文所述Lambda。参数Lambda的取值表达用户模型的衰减速度,Lambda越靠近0,历史观看信息衰减的越快,新近观看信息对用户偏好的影响越大。\n[0041] 节目推荐模块使用用户信息收集模块与节目模型定义模块为输入,根据当前的用户偏好,在杰卡德相似度 的基础上提出扩展杰卡德相似度度\n量(Extended Jaccard Similarity)并使用之排序节目,产生推荐结果,其中,A,B为两个集合,|A∩B|表示集合A,B交集的元素个数,|A∪B|表示集合A,B并集的元素个数。此处扩展杰卡德相似度计算如下:对于图3中的每一个标签(例如演员),系统首先计算其在整个标签集中的重要性,然后取出用户模型与节目模型在该标签(TagA)下的值列表UserTagAValuesList和ProgramTagAValuesList。使用杰卡德相似度计算UserTagAValuesList和ProgramTagAValuesList两个集合之间的相似度。得到两个集合的杰卡德相似度后,将该值乘以该标签的重要程度,完成一次计算。对13个标签重复此计算操作,并将得到的结果相加,计算出当前节目与用户模型的相似度。伪代码如下所示:\n[0042] \n[0043] \n[0044] tagU.sim(tagP)的计算使用前文所示的杰卡德相似度。在计算了每个节目与用户模型的相似度后,节目推荐模块使用相似度排序节目。选取排位最高的3~5个节目(管理员配置)作为推荐结果。\n[0045] 推荐结果展示模块根据节目推荐模块产生的文本推荐结果为依据,添加详细信息,例如节目信息、播放时间、美工及动画效果。以节目推荐模块产生的文本推荐结果为依据,为推荐结果增加美工及动画效果,使用滚动和动画两种方式展示文本推荐结果。根据不同的应用场景,推荐结果展示模块采用不用的美化效果。譬如,在测试用的网站上,系统提供两种美化效果:其一,系统将所有的推荐结果以滚动条的方式显示在播放器的下侧;其二,系统将每一条推荐结果均显示在播放器画面中,每10秒显示一条,每2两分钟显示一轮。系统对每一条推荐结果均附加播放时间、第几集等详细节目信息,并且在不同的美化效果中使用不同字体,以增强用户体验。\n[0046] 本实施例工作时,其工作过程如下:每周周末,节目模型定义模块为下一周将要播放的节目建立模型,将建立得到的模型输入推荐系统。系统使用用户信息收集模块在用户收看节目时,自动且透明的收集用户收视信息。当每次有新的用户收视信息时,系统调用用户偏好追踪模块更新用户偏好模型。在获得新的用户偏好模型后,系统调用节目推荐模块产生新的推荐结果。推荐结果被送往推荐结果展示模块。推荐结果展示模块将推荐结果加工后返回给用户。\n[0047] 本实施例的推荐系统具备对于用户的个性化较强,能够紧跟用户的喜好变化的优点,且解决了传统系统要求用户明确反馈的问题。此外,针对于影视节目的生命周期短、时间敏感度高的特点,系统为节目增加时间维持,进行针对性推荐。\n[0048] 以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
法律信息
- 2018-08-17
未缴年费专利权终止
IPC(主分类): H04N 21/258
专利号: ZL 201210109622.9
申请日: 2012.04.16
授权公告日: 2014.10.15
- 2014-10-15
- 2012-10-03
实质审查的生效
IPC(主分类): H04N 21/258
专利申请号: 201210109622.9
申请日: 2012.04.16
- 2012-08-08
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
2009-10-29
| | |
2
| | 暂无 |
2005-09-30
| | |
3
| |
2008-04-16
|
2007-11-20
| | |
4
| |
2011-11-30
|
2011-08-08
| | |
5
| |
2009-03-11
|
2008-08-01
| | |
6
| |
2011-07-13
|
2010-12-30
| | |
7
| |
2007-10-03
|
2007-02-28
| | |
8
| |
2011-09-14
|
2011-05-13
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |