[发明专利]一种基于产品项目特征扩充的最近邻协同过滤方法有效
申请号: | 201610547148.6 | 申请日: | 2016-07-12 |
公开(公告)号: | CN106055715B | 公开(公告)日: | 2018-03-09 |
发明(设计)人: | 刘业政;宋颖欣;王锦坤;姜元春;孙见山;孙春华 | 申请(专利权)人: | 合肥工业大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06Q30/06 |
代理公司: | 安徽省合肥新安专利代理有限责任公司34101 | 代理人: | 陆丽莉,何梅生 |
地址: | 230009 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于产品项目特征扩充的最近邻协同过滤方法(IFA),该方法包括如下步骤1)用二维表表示产品的评分数据;2)基于朴素贝叶斯分类器的贫信息用户项目相似度计算;3)富信息用户项目相似度计算;4)基于贫信息用户的项目相似度与富信息用户的项目相似度融合;5)结合基于项目的协同过滤算法给出未评分产品的评分预测值集合,并取前N项作为最终推荐结果。本发明能有效反映用户评价的真实情况,提高个性化推荐精度。 | ||
搜索关键词: | 一种 基于 产品 项目 特征 扩充 近邻 协同 过滤 方法 | ||
【主权项】:
一种基于产品项目特征扩充的最近邻协同过滤方法,其特征是按如下步骤进行:步骤一、用二维表T={U,I,S}表示产品的评分数据;所述二维表T中,U={U1…,Uu,…,U|u|}表示用户集合,I={I1…,Ii,…,I|i|}表示产品集合,S={S(1)…,S(s),…,S(|s|)}表示用户对产品的评分集合;所述用户集合U中,|u|为用户的总数目,Uu表示第u个用户;1≤u≤|u|;所述产品集合I中,|i|为产品的总数目,Ii表示第i个产品;1≤i≤|i|;所述评分集合S中,S(s)表示所述评分集合中第s个评分,且S(1)<…<S(s)<…<S(|s|);令第u个用户Uu对第i个产品Ii的评分为Su,i,且Su,i∈S;对任意第i个产品Ii和第j个产品Ij;若第u个用户Uu对所述第i个产品Ii和第j个产品Ij均有评分Su,i和Su,j,则表示第u个用户Uu为富信息用户;第u个用户Uu对第i个产品Ii的评分Su,i和第u个用户Uu对第j个产品Ij的评分Su,j均称为富信息用户评分项;1≤j≤|i|;i≠j;对任意第i个产品Ii和第j个产品Ij;若第u个用户Uu仅对所述第i个产品Ii有评分Su,i或仅对第j个产品Ij有评分Su,j,则表示第u个用户Uu为贫信息用户;第u个用户Uu对第i个产品Ii的评分Su,i和第u个用户Uu对第j个产品Ij的评分Su,j均称为贫信息用户评分项;并有:当第u个用户Uu仅对所述第j个产品Ij有评分Su,j时,第u个用户Uu对第i个产品Ii的评分Su,i称为贫信息用户评分项中的缺失值;令所有产品具有的项目特征集合为G={g1…,gn,…,g|n|},gn表示所有产品的第n个项目特征;令贫信息用户评分项中的缺失值Su,i所代表的第i个产品Ii的项目特征集合为Gi={gi,1…,gi,n,…,gi,|n|};gi,n表示第i个产品Ii在第n个项目特征gn上的特征值;若第i个产品Ii具有第n个项目特征gn,则gi,n=1;否则,gi,n=0;1≤n≤|n|;步骤二、假设第u个用户Uu为贫信息用户;第u个用户Uu对所述第i个产品Ii的评分Su,i为贫信息用户评分项中的缺失值;计算贫信息用户Uu对所述第i个产品Ii与所述第j个产品 Ij的项目相似度simu(Ii,Ij);步骤2.1、利用式(1)计算获得贫信息用户Uu对所述第i个产品Ii的评分项中的缺失值Su,i为S(s)时的先验概率P(S(s)):式(1)中,I(u)表示贫信息用户Uu对所述产品集合I中所有已评分的产品集合;item表示所述已评分产品集合I(u)中的任一产品;|I(u)|表示所述已评分产品集合I(u)中的产品数目;Su,item表示贫信息用户Uu对所述已评分产品集合I(u)中产品item的评分;|{item∈I(u)|Su,item=S(s)}|表示贫信息用户Uu在所述已评分产品集合I(u)中评分Su,item为S(s)的产品数目;步骤2.2、利用式(2)计算获得贫信息用户Uu对所述第i个产品Ii的评分项中的缺失值Su,i为S(s)时的似然函数P(gn|S(s)):式(2)中,gitem,n表示贫信息用户Uu对所述已评分产品集合I(u)中的产品item在第n个项目特征gn上的特征值;|{item∈I(u),gi,n=1|Su,item=S(s)∩gitem,n=gi,n}|表示贫信息用户Uu对所述已评分的产品集合I(u)中的产品item中评分Su,item为S(s),且贫信息用户Uu对产品item在第n个项目特征gn上的特征值gitem,n与第i个产品Ii在第n个项目特征gn上的特征值gi,n取值均为“1”的项目个数;步骤2.3、利用式(3)计算获得贫信息用户Uu对所述第i个产品Ii的评分Su,i为S(s)时的概率P(S(s)|Ii):步骤2.4、重复步骤2.1‑步骤2.3,从而获得贫信息用户Uu对第i个产品Ii的缺失值Su,i分别为S(1)…,S(s),…, S(|s|)时的概率,并将最大概率所对应的评分作为贫信息用户Uu对第i个产品 Ii的缺失值Su,i的预测评分;步骤2.5、重复步骤2.4,预测所有贫信息用户评分项中的缺失值,从而补全所述二维表T中所有贫信息用户的缺失值;步骤2.6、基于传统皮尔森相关系数,利用式(4)得到贫信息用户Uu对所述第i个产品Ii与所述第j个产品Ij的项目相似度sim′u(Ii,Ij):式(4)中,表示在补全所有贫信息用户的缺失值二维表T中,既对所述第i个产品Ii有评分Su,i,又对所述第j个产品Ij有评分Su,j的贫信息用户Uu;表示在补全所有贫信息用户的缺失值二维表T中,所有贫信息用户对第i个产品Ii的平均评分;表示在补全所有贫信息用户的缺失值二维表T中,所有贫信息用户对第j个产品Ij的平均评分;步骤2.7、基于加权皮尔森相关系数,利用式(5)计算得到贫信息用户Uu对所述第i个产品Ii与所述第j个产品Ij的项目相似度simu(Ii,Ij):式(5)中,表示既对所述第i个产品Ii的有评分Su,i,又对所述第j个产品Ij有评分Su,j的贫信息用户数目,λ是待调节参数;步骤三、假设第v个用户Uv即为富信息用户;计算富信息用户Uv对所述第i个产品Ii与所述第j个产品Ij的项目相似度simv(Ii,Ij);1≤v≤|u|;v≠u;步骤3.1,基于传统皮尔森相关系数,利用式(6)得到富信息用户Uv对所述第i个产品Ii与所述第j个产品Ij的项目相似度sim′v(Ii,Ij):式(6)中,表示既对所述第i个产品Ii的有评分Sv,i,又对所述第j个产品Ij有评分Sv,j的富信息用户Uv;表示所有富信息用户对第i个产品Ii的平均评分;表示所有富信息用户对第j个产品Ij的平均评分;步骤3.2、基于加权皮尔森相关系数,利用式(7)计算得到富信息用户Uv对所述第i个产品Ii与所述第j个产品Ij的项目相似度simv(Ii,Ij):式(7)中,表示既对所述第i个产品Ii的有评分Sv,i,又对所述第j个产品Ij有评分Sv,j的富信息用户数目,λ′是另一个待调节参数;步骤四、利用式(8)进行基于贫信息用户Uu对所述第i个产品Ii与所述第j个产品Ij的项目相似度simu(Ii,Ij),与富信息用户Uv对所述第i个产品Ii与所述第j个产品Ij的项目相似度simv(Ii,Ij)的项目相似度融合;得到融合相似度sim(Ii,Ij):sim(Ii,Ij)=(1‑γ)×simu(Ii,Ij)+γ×simv(Ii,Ij) (8)式(8)中,γ是待调节参数;步骤五、根据所述融合相似度sim(Ii,Ij),利用基于项目的最近邻协同过滤算法,获得未评分产品的所有最终预测评分的降序排序集合;选取所述预测评分的降序排序集合的前N项作为推荐结果,并推荐给所述贫信息用户Uu。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610547148.6/,转载请声明来源钻瓜专利网。