用户相似度的估算方法及估算系统技术方案

技术编号:13335544 阅读:96 留言:0更新日期:2016-07-12 12:40
本发明专利技术提供一种用户的相似度的估算方法及估算系统,包括:获取用户属性,并根据用户属性将不同的用户分成多个用户组;读取所述用户组中每一用户所对应的项目,以生成项目列表;将所述用户组中的用户与所述项目列表中的项目处理成二分图;通过所述二分图估算用户的组内相似度;和/或通过所述二分图估算用户的组间相似度。本发明专利技术通过二分图对用户和项目进行分析,具有算法简单、准确率高的优点,而且可以适应海量数据的环境,对系统资源占用少、且估算速度快。

【技术实现步骤摘要】

本专利技术属于数据处理领域,尤其设及一种用户的相似度的估算方法及估算系统。
技术介绍
随着互联网的普及,信息资源呈指数膨胀,从而带来了信息过载的问题,使用户时 常迷失在大量的信息空间中,无法顺利找到自己需要的信息。因此,便出现了各类的信息推 荐技术,基于用户的操作习惯对用户与项目建立一定的关联,比如观看或点赞,进而生成信 息推荐列表,比如,节目推荐列表、购物推荐列表、或朋友推荐列表等。 运些推荐技术的原理,主要是依据用户的相似度,为目标用户选取相似度高的已 知用户的项目列表,作为推荐信息。 传统的用户相似度的估算方法,主要是将用户组的用户两两估算相似度值,然后 将运些相似度值进行平均,即为组间相似度。 但随着用户、及用户操作行为的数据量越来越大,传统估算方法的估算量也越来 越大,对运算资源消耗较大,且费时费力,同时传统算法中取平均值的误差也会被海量数据 所放大,影响了对用户的相似度的评估的准确性,进而影响推荐信息的有效性,降低了用户 体验。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种用户的相似度的估算方法及估算系统,可 W解决现有技术中估算方法复杂、误差大,进而影响估算速度和准确性的技术问题。 为解决上述技术问题,本专利技术实施例提供了如下技术方案:[000引一种用户的相似度的估算方法,包括: 获取用户属性,并根据用户属性将不同的用户分成多个用户组; 读取所述用户组中每一用户所对应的项目,W生成项目列表; 将所述用户组中的用户与所述项目列表中的项目处理成二分图;[001^ 通过所述二分图估算用户的组内相似度;和/或 通过所述二分图估算用户的组间相似度。 为解决上述技术问题,本专利技术实施例还提供了如下技术方案: -种用户的相似度的估算系统,包括: 分组模块,用于获取用户属性,并根据用户属性将不同的用户分成多个用户组; 列表模块,用于读取所述用户组中每一用户所对应的项目,W生成项目列表; 二分图模块,用于将所述用户组中的用户与所述项目列表中的项目处理成二分 图;W及 相似度模块,用于通过所述二分图估算用户的组内相似度;和/或通过所述二分图 估算用户的组间相似度。 相对于现有技术,本专利技术实施例提供的用户的相似度的估算方法及估算系统,通 过二分图对用户和项目进行分析,具有算法简单、准确率高的优点,而且可W适应海量数据 的环境,对系统资源占用少、且估算速度快。【附图说明】 图1是本专利技术实施例一提供的用户的相似度的估算方法的流程示意图; 图2是本专利技术实施例二提供的用户的相似度的估算方法的流程示意图; 图3是本专利技术实施例=提供的信息推荐方法的流程示意图; 图4是本专利技术实施例四提供的用户的相似度的估算系统的模块示意图; 图5是本专利技术实施例五提供的用户的相似度的估算系统的模块示意图; 图6是本专利技术实施例六提供的信息推荐系统的模块示意图; 图7是本专利技术实施例中的用户与项目所构成的二分图的示意图; 图8是本专利技术实施例中的用户之间的相似度的可视化示意图; 图9是本专利技术实施例中的信息推荐方法的应用环境示意图。【具体实施方式】 请参照附图中的图式,其中相同的组件符号代表相同的组件,本专利技术的原理是W 实施在一适当的运算环境中来举例说明。W下的说明是基于所示例的本专利技术的具体实施 例,其不应被视为限制本专利技术未在此详述的其它具体实施例。 本专利技术原理W上述文字来说明,其并不代表为一种限制,本领域技术人员将可了 解到W下所述的多种步骤及操作亦可实施在硬件当中。本专利技术的原理使用许多其它泛用性 或特定目的运算、通信环境或组态来进行操作。 本案可应用于信息推荐方法或信息推荐系统中,比如:购物网站、视频网站、新闻 网站、交友网站等。请参照W下实施例,实施例一、二侧重于用户的相似度的估算方法,实施 例=侧重于信息推荐方法,实施例四、五侧重于用户的相似度的估算系统,实施例六侧重于 信息推荐系统。可W理解的是:虽然各实施例的侧重不同,但其设计思想是一致的。且,在某 个实施例中没有详述的部分,可W参见说明书全文的详细描述,不再寶述。[00削实施例一 请参阅图1,所示为用户的相似度的估算方法的流程示意图。所述用户的相似度的 估算方法,通常执行于服务器端,用于为信息推荐方法或系统等提供数据支持。 所述用户的相似度的估算方法,用于通过对已知用户所关联或关注的项目进行分 析,W估算用户之间的相似度,其中,所述项目包括但不限于:购物清单、电视列表、和/或运 动消耗等。 所述用户的相似度的估算方法,包括: 在步骤SlOl中,获取用户属性,并根据用户属性将不同的用户分成多个用户组。 其中,所述用户属性,是指用户的状态,比如,年龄、性别、星座、学历、婚恋状态、 和/或兴趣爱好等。W年龄为例,可W将10岁的用户作为一组,11岁的用户作为另一组,W此 类推。 具体而言,本步骤还包括: (1)统计每个用户组内的用户数; (2)判断所述用户数是否超过用户阔值;W及 (3)若所述用户数超过所述用户阔值,则从所对应的用户组中随机抽取预设个数 的用户作为样本用户,W减少计算量。 可W理解的是,在上述步骤(2)中,可W通过设置用户阔值来控制计算的数量。而 在上述步骤(3)中,所述预设个数的选择,还包括如下步骤:分别抽取不同个数的样本用户, 通常为等间距抽取,并按照如下方式计算用户的相似度,将数量与相似度分别作为横轴和 纵轴画一条曲线,找到相似度不随数量变化的点,作为一个合理抽样数的经验值,W此作为 预设个数,W保障抽样计算的准确性。 在步骤S102中,读取所述用户组中每一用户所对应的项目,W生成项目列表。 具体而言,本步骤包括: (1)设置项目的个数阔值N; W及 (2)分别读取用户组中每一用户所对应的N个项目,W生成项目列表。 其中,对样本用户而言,本步骤具体为:根据所述用户组中的样本用户所对应的项 目,生成抽样项目列表。 在步骤S103中,将所述用户组中的用户与项目列表中的项目处理成二分图 (Bipartite Graph)。 请同时结合图7,本步骤包括: (1)将用户组生成为第一集合,其中用户为第一集合中的点,如用户A~E共5个; (2)将项目列表生成为第二集合,其中项目为第二集合中的点,如项目1~4共4个; (3)将所述用户与所述项目的对应关系生成为边,所述边连接于所述第一集合中 的点与所述第二集合中的点,如8条。 在步骤S104中,通过所述二分图估算用户的之间的相似度。 其中,相似度的区间为【0,1】,在本步骤中,主要通过余弦函数进行表达。而用户之 间的相似度,W组内相似度为例,其估算方式如下: (1)获取第一集合中点的个数,并计算出用户组中的用户对数;...

【技术保护点】
一种用户的相似度的估算方法,其特征在于,包括:获取用户属性,并根据用户属性将不同的用户分成多个用户组;读取所述用户组中每一用户所对应的项目,以生成项目列表;将所述用户组中的用户与所述项目列表中的项目处理成二分图;通过所述二分图估算用户的组内相似度;和/或通过所述二分图估算用户的组间相似度。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨春风
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1