当前位置: 首页 > 专利查询>云南大学专利>正文

一种组合协同过滤IPTV节目推荐方法技术

技术编号:12776681 阅读:93 留言:0更新日期:2016-01-27 19:34
本发明专利技术提供了一种组合协同过滤IPTV节目推荐方法,首先为节目构建用户-节目评分矩阵,其次利用基于物品协同过滤为原始用户-节目评分矩阵进行填充,然后把填充的用户-节目评分矩阵作为奇异值分解技术的输入,通过奇异值分解技术能够将原始用户-节目评分矩阵重新填充而得到一个无缺失值的用户-节目评分矩阵,最后将无缺失值的用户-节目评分矩阵再次使用基于物品的协同过滤方法预测出原始矩阵中未评分项的评分,把预测评分最高的N个节目,作为协同过滤的推荐结果。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体涉及一种组合协同过滤IPTV节目推荐方法
技术介绍
IPTV作为一种新兴的交互式服务技术,在电视节目推荐领域被广泛研究;IPTV不同于传统电视,有以下特点:可交互:传统电视的信息传播是单向的,而IPTV在此基础上还允许用户与系统交互,特别是允许系统显式或隐式收集用户偏好。个性化:IPTV通过用户IP地址来传递多媒体内容,那么IPTV服务商提供的服务即可以精确到个人。多媒体:IPTV服务包括直播和点播电视节目、电影服务。基于以上IPTV的特点,在大量电视节目、电影(下文统称为电视节目)的背景下,为了让用户快速轻松地找到用户真正喜欢的节目。推荐系统作为一种信息过滤技术,通过收集一段时间内用户的历史数据,并从数据中分析用户的兴趣偏好,建立用户兴趣模型,从而主动给用户推荐能够满足他们兴趣和需求的信息。那么若把推荐系统集成在IPTV基础设施中,利用收集到的显式或隐式数据计算出推荐结果,通过IP宽带网把推荐结果精准地传送给用户。这将给用户挑选电视节目提供一个更快,更有趣的方式。目前主要有两类协同过滤推荐算法:基于用户的协同过滤推荐算法和基于物品的协同过滤算法。协同过滤的优点是能够处理多种类型的内容,包括结构化或者非结构化的,比如文本,电影,图像等;不需要用户的配置文件或者物品内容数据;可以推荐与用户过去喜欢的物品不相似的,但用户很有可能喜欢的物品。相应地,协同过滤算法也存在不少问题,冷启动问题和稀疏性问题。单纯的SVD算法在计算稀疏性特别大矩阵时,其推荐质量并不理想;Sarwar等人的实验结果表明奇异值分解(SVD)方法应用于协同过滤时对于稀疏的评分矩阵效果比较好,但是如果评分矩阵过于稀疏,奇异值分解(SVD)方法的推荐结果并不如基于物品的协同过滤,并且当评分矩阵较稠密时,奇异值分解(SVD)的效果也不如基于物品的协同过滤。
技术实现思路
为了解决现有技术中的问题,本专利技术提供了一种组合协同过滤IPTV节目推荐方法。本专利技术的一种组合协同过滤IPTV节目推荐方法,包括以下步骤:步骤①:从用户评分数据库读取用户评分数据;步骤②:用所述步骤①中的用户评分数据定义一个m×n的原始评分矩阵R,表示m个用户在n个节目上的评分;利用协同过滤方法,计算节目之间的相似度sim(i,j),并求出目标用户u对节目j的预测评分值Preu,j,最后用预测评分值Preu,j填充原始评分矩阵R得到矩阵Rpre;步骤③:若所述步骤②中的矩阵Rpre没有完全填充,首先计算出Rpre中的每列平均值之后用每列平均值填充该列的空缺项;然后用每列的所有评分项减去目标节目所在行的行平均值得到规范化的矩阵Rnorm;步骤④:用奇异值分解方法分解所述步骤③中的矩阵Rnorm得到矩阵U,S,V;它们的大小分别为m×m,m×n,n×n;它们之间的关系是Rnorm=U×S×VT;步骤⑤:通过保留所述步骤④中矩阵S的k个对角元素来获得一个k×k的矩阵Sk,所述步骤④中矩阵U和矩阵V也相应简化为Uk和Vk,它们的大小分别为m×k和n×k;步骤⑥:利用所述步骤⑤中简化的矩阵Sk,Uk,Vk,将m个用户在k维特征空间中表示为n个节目在k维特征空间中表示为然后运用公式计算目标用户u在节目i上的预测评分值Preu,i,其中表示目标用户u的所有已评分项目上评分的平均值,代表矩阵的第i列,代表矩阵的第u行;使用本次预测评分值Preu,i填充所述步骤②中的原始评分矩阵R,从而得到一个无缺失值的评分矩阵Rfilled;步骤⑦:基于所述步骤⑥中的评分矩阵Rfilled,利用协同过滤方法,计算节目i与节目j的相似度sim(i,j),进而求出目标用户u对节目j的预测评分值Preu,j;当得到了预测评分值之后,把预测评分值最高的N个节目,作为此次协同过滤的推荐结果。所述步骤②和步骤⑦中计算相似度sim(i,j)的方法为修正的余弦相似性度量方法,公式为以下所列公式:sim(i,j)=Σu∈U(Ru,i-Ru‾)(Ru,j-Ru‾)Σu∈U(Ru,i-Ru‾)2Σu∈U(Ru,j-Ru‾)2]]>其中,其中表示目标用户u的所有已打项目评分的平均值,Ru,i表示用户u对节目i的评分值,U表示用户集合。所述步骤②和步骤⑦中计算预测评分值Preu,j的公式为以下所列公式:Preu,j=Σi∈ratedItem(u)sim(i,j)×Ru,iΣi∈ratedItem(u)sim(i,j)]]>其中,ratedItem(u)代表用户u已评分项的集合,Ru,i代表原始矩阵R中用户u在节目i上的评分,sim(i,j)代表节目i与节目j的相似度。所述步骤⑤的参数k会通过实践不断优化。所述步骤②和步骤⑦中的协同过滤方法为基于物品的协同过滤方法。本专利技术相对于现有技术具有以下优点:1、本专利技术巧妙结合了基于物品的协同过滤方法和奇异值分解(SVD)方法的优点,以特征值递增的方式预测评分,更好的解决了评分矩阵的稀疏性问题;2、本专利技术的协同过滤方法采用了基于物品的协同过滤方法,这在IPTV推荐领域中比基于用户的协同过滤方法精确度更高。附图说明图1为本专利技术的流程示意图。具体实施方式以下结合附图,对本专利技术的一种组合协同过滤IPTV节目推荐方法做进一步的详细说明。如图1所示,本专利技术的一种组合协同过滤IPTV节目推荐方法,包括以下步骤:步骤①:从用户评分数据库读取用户评分数据;步骤②:用所述步骤①中的用户评分数据定义一个m×n的原始评分矩阵R,表示m个用户在n个节目上的评分;利用协同过滤方法,计算节目之间的相似度sim(i,j),并求出目标用户u对节目j的预测评分值Preu,j,最后用预测评分值Preu,j填充原始评分矩阵R得到矩阵Rpre;步骤③:若所述步骤②中的矩阵Rpre没有完全填充,首先计算出Rpre中的每列平均值之后用每列平均值填充该列的空缺项;然后用每列的所有评分项减去目标节目所在行的行平均值得到规范化的矩阵Rnorm;步骤④:用奇异值分解方法分解所述步骤③中的矩阵Rnorm得到矩阵U,S,V;它们的大小分别为m×m,m×n,n×n;它们之间的关系是Rnorm=U×S×本文档来自技高网
...

【技术保护点】
一种组合协同过滤IPTV节目推荐方法,其特征在于,包括以下步骤:步骤①:从用户评分数据库读取用户评分数据;步骤②:用所述步骤①中的用户评分数据定义一个m×n的原始评分矩阵R,表示m个用户在n个节目上的评分;利用协同过滤方法,计算节目之间的相似度sim(i,j),并求出目标用户u对节目j的预测评分值Preu,j,最后用预测评分值Preu,j填充原始评分矩阵R得到矩阵Rpre;步骤③:若所述步骤②中的矩阵Rpre没有完全填充,首先计算出Rpre中的每列平均值之后用每列平均值填充该列的空缺项;然后用每列的所有评分项减去目标节目所在行的行平均值得到规范化的矩阵Rnorm;步骤④:用奇异值分解方法分解所述步骤③中的矩阵Rnorm得到矩阵U,S,V;它们的大小分别为m×m,m×n,n×n;它们之间的关系是Rnorm=U×S×VT;步骤⑤:通过保留所述步骤④中矩阵S的k个对角元素来获得一个k×k的矩阵Sk,所述步骤④中矩阵U和矩阵V也相应简化为Uk和Vk,它们的大小分别为m×k和n×k;步骤⑥:利用所述步骤⑤中简化的矩阵Sk,Uk,Vk,将m个用户在k维特征空间中表示为n个节目在k维特征空间中表示为然后运用公式Preu,i=Ru‾+UkSk(u)×SkVkT(i)]]>计算目标用户u在节目i上的预测评分值Preu,i,其中表示目标用户u的所有已评分项目上评分的平均值,代表矩阵的第i列,代表矩阵的第u行;使用本次预测评分值Preu,i填充所述步骤②中的原始评分矩阵R,从而得到一个无缺失值的评分矩阵Rfilled;步骤⑦:基于所述步骤⑥中的评分矩阵Rfilled,利用协同过滤方法,计算节目i与节目j的相似度sim(i,j),进而求出目标用户u对节目j的预测评分值Preu,j;当得到了预测评分值之后,把预测评分值最高的N个节目,作为此次协同过滤的推荐结果。...

【技术特征摘要】
1.一种组合协同过滤IPTV节目推荐方法,其特征在于,包括以下步骤:
步骤①:从用户评分数据库读取用户评分数据;
步骤②:用所述步骤①中的用户评分数据定义一个m×n的原始评分矩阵R,
表示m个用户在n个节目上的评分;利用协同过滤方法,计算节目之间的相
似度sim(i,j),并求出目标用户u对节目j的预测评分值Preu,j,最后用预测
评分值Preu,j填充原始评分矩阵R得到矩阵Rpre;
步骤③:若所述步骤②中的矩阵Rpre没有完全填充,首先计算出Rpre中的每
列平均值之后用每列平均值填充该列的空缺项;然后用每列的所有评
分项减去目标节目所在行的行平均值得到规范化的矩阵Rnorm;
步骤④:用奇异值分解方法分解所述步骤③中的矩阵Rnorm得到矩阵U,S,
V;它们的大小分别为m×m,m×n,n×n;它们之间的关系是
Rnorm=U×S×VT;
步骤⑤:通过保留所述步骤④中矩阵S的k个对角元素来获得一个k×k的
矩阵Sk,所述步骤④中矩阵U和矩阵V也相应简化为Uk和Vk,它们的大小分
别为m×k和n×k;
步骤⑥:利用所述步骤⑤中简化的矩阵Sk,Uk,Vk,将m个用户在k维特
征空间中表示为n个节目在k维特征空间中表示为然
后运用公式Preu,i=Ru‾+UkSk(u)×SkVkT(i)]]>计算目标用户u在节目i上
的预测评分值Preu,i,其中表示目标用户u的所有已评分项目上评分的平
均值,代表矩阵的第i列,代表矩阵的第u
行;使用本次预测评分值Preu,i填充所述步骤②中的原始评分矩阵R,从而得
到一个无缺失值的评分矩阵Rfilled;
步骤⑦:基于所述步骤⑥中的评分矩阵Rfilled,利用协同过滤方法,计...

【专利技术属性】
技术研发人员:李浩夏欢康雁
申请(专利权)人:云南大学
类型:发明
国别省市:云南;53

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1