一种改良Widrow-Hoff网络的用户偏好协同推荐方法与流程

文档序号:16881188发布日期:2019-02-15 22:10阅读:459来源:国知局
一种改良Widrow-Hoff网络的用户偏好协同推荐方法与流程

本发明涉及推荐系统领域,具体涉及一种改良widrow-hoff网络的用户偏好协同推荐方法。



背景技术:

随着大数据的出现及社交网络的普及,“信息过载”或“信息迷航”问题日益严重,推荐系统被认为是解决该问题最为有效的工具之一,它主动地从用户注册信息、用户浏览日志、历史评分记录和项目信息等方面进行分析,从而挖掘用户的兴趣偏好和项目的特征,然后为用户实现个人感兴趣信息的私人定制,并根据用户需求和项目信息的变化及时调整推荐的内容和服务方式,实现“以用户为中心”的个性化服务,例如亚马逊(amazon)的商品推荐系统,youtube网站的视频推荐及豆瓣(douban)的音乐评分推荐系统等,越来越多的网站为用户提供了相关内容的推荐服务。

基于近邻的协同过滤作为协同过滤中重要的一类,其简单、直观、有效的特点被广泛应用于电影、音乐、图书等领域。其基本思想是采用一种相似性度量方法寻找最近邻居集合;然后通过对最近邻居集合的评分进行加权平均求和,从而产生推荐集。相似性计算的准确性直接影响推荐质量,用户之间的相似性是基于两个用户对相同项目的评分(共同评分),同样,项目之间的相似性是在对项目具有共同评分的用户基础上进行计算。但是,当数据极大稀疏无法保证足够的共同评分数据,传统的相似性计算方法其推荐效果不佳。即使没有一个共同用户,两个项目也可以是相似的;用户评价的项目不同,两个用户也可以是相似的,这些情况是传统的相似性方法没有考虑到的。因此,传统的相似性计算方法并不适合于稀疏数据,因而改进相似性计算方法是提高推荐系统性能的有效途径之一。

现有的改进推荐方法是基于巴氏系数改进相似度的协同过滤算法。该算法针对传统协同过滤算法中评分数据稀疏、“冷启动”等问题。具体步骤如下:

1.由数据集得到评分矩阵;

2.根据jaccard相似度公式计算两个用户间的全局相似度;

3.根据巴氏系数分别计算两个用户评价项目的评分分布规律;

4.利用步骤3中的计算结果和pearson相关系数结合计算两个用户间的局部相似度;

5.根据步骤2和步骤3得到的全局相似度和局部相似度,计算出最终的相似度;

6.利用步骤5计算任意两两用户之间的相似度,最终形成相似度矩阵,将目标用户与其他所有用户之间的相似度递减排序,选择相似度排序中前k个用户作为目标用户u的最近邻居,得到最近邻居集合;

7.根据评分矩阵,最近邻居集合,由k个最近邻居用户对某一未知项目的评分,通过加权平均求和得到目标用户对该项目的预测评分。

该方法的缺点在于,一般的数据集的数据都是非常稀疏的,考虑到用户之间共同评分存在,而各自评分项又很少的情况,由于全局相似度是根据jaccard相似度(主要是通过比较用户间共同评分项占所有评分的比例)来计算,而局部相似度又往往数值很小,远远小于1,这时候全局相似度的作用会被放大,局部相似度被弱化,在寻找相似用户时会偏向有共同评分的用户,整个算法等于退化为普通的基于jaccard相似度的协同过滤算法,这样就无法考虑到评分的绝对数值,比如(1,1,1,1,1)和(5,5,5,5,5)这两个极端不同的评分向量就会被判断为十分相似,从而最终会影响推荐结果的准确性。



技术实现要素:

本发明的目的是克服现有方法的不足,提出了一种改良widrow-hoff网络的用户偏好协同推荐方法。本发明分别给全局相似度和局部相似度添加了权重参数,通过输入数据集的评分数据,利用widrow-hoff网络对权重进行训练和更新,根据数据集的不同得到不同的权重,从而平衡全局相似度和局部相似度对推荐结果的影响。

为了解决上述问题,本发明提出了一种改良widrow-hoff网络的用户偏好协同推荐方法,所述方法包括:

输入数据集,从数据集中得到“用户-评分”矩阵;

“用户-评分”矩阵中每两个用户作为一组,分别求出每组用户的局部相似度、全局相似度以及总相似度,得到相似度矩阵;

根据widrow-hoff网络,以相似度矩阵中每一个相似度作为输入,对权重进行更新,直至收敛或者所有输入都迭代了一遍,得到最终权重;

根据最终权重重新计算每组用户的相似度,得到最终相似度矩阵;

将目标用户与其他所有用户之间的最终相似度递减排序,选择最终相似度排序中前k个用户作为目标用户u的最近邻居,得到最近邻居集合;

根据“用户-评分”矩阵以及最近邻居集合,由k个最近邻居用户对某一未知项目的评分,通过加权平均求和得到目标用户对该项目的预测评分。

本发明提出的一种改良widrow-hoff网络的用户偏好协同推荐方法,利用巴氏系数计算用户之间评价项目的评分分布规律,不依赖共同评分,即使在缺乏共同评分的数据集下,也可以通过局部相似度弥补全局相似度的不足;利用widrow-hoff网络对全局相似度和局部相似度的权重进行更新,根据数据集的不同得到不同的权重,拟合数据集,平衡全局相似度和局部相似度对推荐结果的影响,克服了已有方法可能出现的全局相似度的作用会被放大,局部相似度被弱化的问题,为用户提供准确性更高的推荐结果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1是本发明实施例的推荐方法流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是本发明实施例的推荐方法流程图,如图1所示,该方法包括:

s1,输入数据集,从数据集中得到“用户-评分”矩阵;

s2,“用户-评分”矩阵中每两个用户作为一组,分别求出每组用户的局部相似度、全局相似度以及总相似度,得到相似度矩阵;

s3,根据widrow-hoff网络,以相似度矩阵中每一个相似度作为输入,对权重进行更新,直至收敛或者所有输入都迭代了一遍,得到最终权重;

s4,根据最终权重重新计算每组用户的相似度,得到最终相似度矩阵;

s5,将目标用户与其他所有用户之间的最终相似度递减排序,选择最终相似度排序中前k个用户作为目标用户u的最近邻居,得到最近邻居集合;

s6,根据“用户-评分”矩阵以及最近邻居集合,由k个最近邻居用户对某一未知项目的评分,通过加权平均求和得到目标用户对该项目的预测评分。

步骤s2,具体如下:

s2-1,根据jaccard相似度计算公式计算每两个用户间的全局相似度

其中iu表示用户u评分的项目,iv表示用户v评分的项目;

s2-2,根据巴氏系数的计算公式计算每两个用户评价项目的评分分布规律:

其中m是评分类别总数,#u是对用户u评分的项目总量,#h表示用户u评分为h的项目总量;

s2-3,根据s2-2计算的结果和pearson相关系数结合计算两个用户间的局部相似度:

其中ru,i表示用户u对项目i的评分,rv,j表示用户v对项目j的评分,表示用户u的平均评分,表示用户v的平均评分;

s2-4,根据上述步骤结果计算出总相似度:

步骤s3,具体如下:

s3-1,初始化权重w1,w2,其中w1表示全局相似度的权重,w2表示局部相似度的权重;

s3-2,根据当前权重代入总相似度公式,代入权重之后的总相似度公式为:

计算预测评分:

根据预测评分,计算平均绝对误差:

其中pu,i是用户u对项目i的预测评分,ru,i是用户u对项目i的实际评分,t是“用户-评分”矩阵的项数;

由所得的mae代入下面的公式以更新权重:

wi(t+1)=wi(t)+α·χi(mae(t)-maetarget),i=1,2

其中α是学习率,本实施例中α=0.05,χ1=simjac(u,v),χ2=simloc(u,v),maetarget是预期希望达到的mae阈值,本实施例中maetarget=0.7;

s3-3,重复s3-2直到权重收敛(mae达到阈值)或者所有相似度数据都输入到网络执行了一遍权重更新。

步骤s4,具体如下:

利用最终权重,代入到s3-2中的总相似度计算公式:

以此计算每组用户的相似度,得到最终相似度矩阵。

s5,将目标用户与其他所有用户之间的最终相似度递减排序,选择最终相似度排序中前k个用户作为目标用户u的最近邻居,得到最近邻居集合。

s6,根据“用户-评分”矩阵以及最近邻居集合,由k个最近邻居用户对某一未知项目的评分,代入到s3-2中的预测评分公式,通过加权平均求和得到目标用户对该项目的预测评分:

本发明实施例提出的一种改良widrow-hoff网络的用户偏好协同推荐方法,利用巴氏系数计算用户之间评价项目的评分分布规律,不依赖共同评分,即使在缺乏共同评分的数据集下,也可以通过局部相似度弥补全局相似度的不足;利用widrow-hoff网络对全局相似度和局部相似度的权重进行更新,根据数据集的不同得到不同的权重,拟合数据集,平衡全局相似度和局部相似度对推荐结果的影响,克服了已有方法可能出现的全局相似度的作用会被放大,局部相似度被弱化的问题,为用户提供准确性更高的推荐结果。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁盘或光盘等。

另外,以上对本发明实施例所提供的一种改良widrow-hoff网络的用户偏好协同推荐方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1