基于聚类群组发现的推荐系统及方法、个性化推荐系统技术方案

技术编号:17780404 阅读:24 留言:0更新日期:2018-04-22 09:16
本发明专利技术属于个性化推荐技术领域,公开了一种基于聚类群组发现的推荐系统及方法、个性化推荐系统,根据在线系统对用户操作行为数据的采集,提取出用户‑项目矩阵;实现将整个用户‑项目数据集分割成多个内部关联性很强的分组,通过欧几里得等相似度计算方法和聚类算法的结合;在分组内直接使用协同过滤算法得出推荐结果。本发明专利技术在直接使用推荐算法之前进行数据预处理,利用模糊聚类将数据分组,并整合在每个分组中的预测评分得出最终的推荐结果。在保证整个推荐系统正常运行的情况下,通过模糊聚类群组发现的数据预处理方法让推荐算法可以直接作用在关联性很强的单组数据而不必作用在全部数据,提高了推荐系统在面对海量数据的扩展性和精确度。

【技术实现步骤摘要】
基于聚类群组发现的推荐系统及方法、个性化推荐系统
本专利技术属于个性化推荐
,尤其涉及一种基于聚类群组发现的推荐系统及方法、个性化推荐系统。
技术介绍
近年来,随着互联网的快速发展,信息爆炸已成为常态,尤其是推荐系统还包含对隐式用户行为数据的处理,并对每个用户进行有针对性的个性化推荐,对服务端处理数据的能力要求越来越高,提升很多个性化系统的扩展性得到了广泛的关注。针对目前个性化推荐系统面对海量数据时出现了计算效率低下、系统扩展性不足的问题,所以在面对海量数据时保证推荐系统的可扩展性是目前研究的热点问题。数据预处理分组技术以其较高的学术价值和巨大的应用潜力,得到了学者的广大关注。现有的协同过滤算法大都是在整个系统的所有用户、所用项目上的应用,将所用用户行为信息直接作为协同过滤算法的输入。在用户数量和项目数量迎来爆炸式增长的今天,将海量数据直接作为协同过滤算法的输入会带来算法在数据处理方面的压力,由此导致推荐系统的处理效率低下。本专利技术用聚类分组方法对所有用户、项目划分,将相似度程度比较高的用户或项目分组,每个分组可以直接作为协同过滤算法的输入,在保证推荐准确性的同时,由于每个群组内的数据量远远小于整个用户、项目数据量,所以系统的扩展性和可用性也带来提升。综上所述,现有技术存在的问题是:目前个性化推荐系统面对海量数据时出现了计算效率低下、系统扩展性不足。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种基于聚类群组发现的推荐系统及方法、个性化推荐系统。本专利技术是这样实现的,一种基于聚类群组发现的推荐方法,所述基于聚类群组发现的推荐方法根据在线系统对用户操作行为数据的采集,提取出用户-项目矩阵;实现将整个用户-项目数据集分割成多个内部关联性很强的分组,通过欧几里得等相似度计算方法和聚类算法的结合;在分组内直接使用协同过滤算法得出推荐结果。进一步,所述基于聚类群组发现的推荐方法包括以下步骤:步骤一,对已有的用户行为评分,将用户事件按照按照关联性具体量化评分,根据最高分用0~1的小数表示;步骤二,发现用户-项目群组;步骤三,利用用户-项目群组结合协同过滤算法实现推荐。进一步,所述步骤二具体包括:(1)用户i和用户j共同评分的项目集合为Iij,Ii和Ij分别表示用户i和用户j评分的集合,用户的相似度userSim(i,j)表示为:其中Ri,c表示用户i对项目c的评分,和分别表示用户i和用户j对项目的平均评分;项目之间的相似度与用户相似度的计算方法类似,表示为:(2)构造一个图G,每个用户和项目都是一个顶点,用户与项目之间边权值用归一化的用户-项目评分矩阵S来表示:S=(Drow)-1/2T(Dcol)-1/2;其中T是用户-项目评分矩阵,Drow和Dcol均为对角矩阵,构建图G的邻接矩阵W:其中Q为用户之间的相似度矩阵,R为物品之间的相似度矩阵,S为用户评分的归一化矩阵;(3)求出矩阵最小的k个特征值和对应的特征向量,其中为:其中,I为n+m阶的单位矩阵;求出后求出其最小的k个特征值以及对应的特征向量,并利用特征向量组成矩阵M;(4)使用分块矩阵P来表示聚类结果,由用户隶属度矩阵和项目隶属度矩阵组成,Pij的大小表示第i个用户或项目属于第j个群组的权重大小。进一步,所述(4)具体包括:1)采用密度函数法来确定初始点,样本点xi处的密度函数为:其中,n为用户数,m为项目数;2)在每次的迭代过程中,对聚类中心的密度在前一轮迭代的基础上进行调整:对聚类算法的传入值更新:3)目标函数的值在两个迭代中小于阈值ε,ε选取为e-5;对于P的每一行,仅有k个最大的元素被保留,且每一行的和为1;进一步,所述步骤三具体包括:(1)群组看成原始用户-项目的子矩阵,不做任何修改直接作为协同过滤算法的输入并直接得到单组的预测评分;(2)合并从所有群组中得到的预测结果,通过用户对项目在群组中预测评分并结合相应的隶属度来预测用户的最终评分;Fij是用户i对项目j的最后的预测评分;当i和j不属于任何群组时,Fij=0;预测评分为各个群组预测评分的加权平均:其中prob表示用户i和项目j属于群组k的隶属度;得到用户对所有项目的评分,取前N个最大的评分生成Top-N推荐结果。本专利技术的另一目的在于提供一种所述基于聚类群组发现的推荐方法的基于聚类群组发现的推荐系统,所述基于聚类群组发现的推荐系统包括:户行为处理模块、发现用户-项目群组模块、推荐模块。进一步,所述用户行为处理模块包括:用户操作评分单元,用于对已有的用户行为评分;所述发现用户-项目群组模块包括:度量相似度单元,用于计算用户相似度;构造用户-项目图及其邻接矩阵单元,用于构造用户-项目图及用户-项目评分矩阵;获取特征值特征向量单元,用于得出矩阵最小的k个特征值和对应的特征向量;聚类获取群组单元;用于获取用户或项目群组的权重大小;所述推荐模块包括:单组内获取推荐结果单元,用于把原始用户-项目的子矩阵直接作为协同过滤算法的输入并直接得到单组的预测评分;合并单组结果获取推荐结果单元,用于合并从所有群组中得到的预测结果,通过用户对项目在群组中预测评分并结合相应的隶属度来预测用户的最终评分。进一步,所述聚类获取群组单元包括:获取合适初始点单元,用于采用密度函数法来确定初始点;迭代单元设置单元,用于对聚类中心的密度在前一轮迭代的基础上进行调整;设置阈值迭代单元,用于设置目标函数在两个迭代中小于阈值。本专利技术的另一目的在于提供一种利用所述基于聚类群组发现的推荐方法的个性化推荐系统。本专利技术在直接使用推荐算法之前进行数据预处理,利用模糊聚类将数据分组,并整合在每个分组中的预测评分得出最终的推荐结果。在保证整个推荐系统正常运行的情况下,通过模糊聚类群组发现的数据预处理方法让推荐算法可以直接作用在关联性很强的单组数据而不必作用在全部数据,提高了推荐系统在面对海量数据的扩展性和精确度。传统的协同过滤系统根据目标用户的爱好找到一组与目标用户兴趣相似的用户集合,进而找到这个集合中用户喜好的项目推荐给用户。本专利技术的前提是如果用户有相似的行为就会有相似的爱好,但事实情况是用户的喜好一般只集中在某个领域,所以在本专利技术的方案中提出了在群组发现的基础上使用协同过滤算法,每个群组中的用户或项目均有较高的相似度;群组发现的优势是提前找出相似度较高的群体,提高推荐准确度,并且因为不需要在整个用户项目数据集上进行推荐,也提高了系统的扩展性。其中群组发现的最后一步是由聚类得到,聚类用于将具有相同爱好的用户或者相似特征的项目进行分类。在一般聚类算法的模型中,一个用户或项目只能属于一个群组,但事实情况是一个用户可以对多类的项目感兴趣,所以每个用户是可以属于多个群组的,比如一个用户喜欢看多种主题的电影,每个电影可以属于多个分组(比如古装喜剧片就同时有古装和喜剧两个属性),本专利技术使用模糊聚类C-means聚类算法可以让每个用户和项目属于多个分组,计算用户在各个群组里对项目的偏好并最终结合用户、项目在群组中的隶属度得出最红结果。附图说明图1是本专利技术实施例提供的基于聚类群组发现的推荐系统结构示意图;图中:1、户行为处理模块;1-1、用户操作评分单元;2、发现用户-项目群组模块;2-1、度量相似度单元;2-2、构造用户-项目图及其邻接矩阵单元本文档来自技高网...
基于聚类群组发现的推荐系统及方法、个性化推荐系统

【技术保护点】
一种基于聚类群组发现的推荐方法,其特征在于,所述基于聚类群组发现的推荐方法根据在线系统对用户操作行为数据的采集,提取出用户‑项目矩阵;实现将整个用户‑项目数据集分割成多个内部关联性很强的分组,通过欧几里得等相似度计算方法和聚类算法的结合;在分组内直接使用协同过滤算法得出推荐结果。

【技术特征摘要】
1.一种基于聚类群组发现的推荐方法,其特征在于,所述基于聚类群组发现的推荐方法根据在线系统对用户操作行为数据的采集,提取出用户-项目矩阵;实现将整个用户-项目数据集分割成多个内部关联性很强的分组,通过欧几里得等相似度计算方法和聚类算法的结合;在分组内直接使用协同过滤算法得出推荐结果。2.如权利要求1所述的基于聚类群组发现的推荐方法,其特征在于,所述基于聚类群组发现的推荐方法包括以下步骤:步骤一,对已有的用户行为评分,将用户事件按照按照关联性具体量化评分,根据最高分用0~1的小数表示;步骤二,发现用户-项目群组;步骤三,利用用户-项目群组结合协同过滤算法实现推荐。3.如权利要求2所述的基于聚类群组发现的推荐方法,其特征在于,所述步骤二具体包括:(1)用户i和用户j共同评分的项目集合为Iij,Ii和Ij分别表示用户i和用户j评分的集合,用户的相似度userSim(i,j)表示为:其中Ri,c表示用户i对项目c的评分,和分别表示用户i和用户j对项目的平均评分;项目之间的相似度与用户相似度的计算方法类似,表示为:(2)构造一个图G,每个用户和项目都是一个顶点,用户与项目之间边权值用归一化的用户-项目评分矩阵S来表示:S=(Drow)-1/2T(Dcol)-1/2;其中T是用户-项目评分矩阵,Drow和Dcol均为对角矩阵,构建图G的邻接矩阵W:其中Q为用户之间的相似度矩阵,R为物品之间的相似度矩阵,S为用户评分的归一化矩阵;(3)求出矩阵最小的k个特征值和对应的特征向量,其中为:其中,I为n+m阶的单位矩阵;求出后求出其最小的k个特征值以及对应的特征向量,并利用特征向量组成矩阵M;(4)使用分块矩阵P来表示聚类结果,由用户隶属度矩阵和项目隶属度矩阵组成,Pij的大小表示第i个用户或项目属于第j个群组的权重大小。4.如权利要求3所述的基于聚类群组发现的推荐方法,其特征在于,所述(4)具体包括:1)采用密度函数法来确定初始点,样本点xi处的密度函数为:

【专利技术属性】
技术研发人员:裴庆祺王伟
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

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

1