一种基于频繁项集增长算法的电影推荐方法及系统技术方案

技术编号:18256680 阅读:52 留言:0更新日期:2018-06-20 08:24
本发明专利技术公开了一种基于频繁项集增长算法的电影推荐方法及系统。该方法包括:统计数据库中每个电影ID出现的次数,所述数据库包括用户ID和电影ID,所述电影ID出现的次数表示为支持度;将所述电影ID的支持度进行排序,得到最小支持度;提取支持度大于所述最小支持度的电影ID及对应的支持度,得到频繁一项集列表;将所述频繁一项集列表进行分组,得到多个频繁一项集组;根据所述频繁一项集组构建频繁模式树;通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,所述条件子树表示所述电影ID之间的关联关系;根据所述关联关系向用户推荐电影。本方法和系统能够快速的挖掘电影之间的关联关系,从而提高电影推荐的效率。

A movie recommendation method and system based on frequent itemsets growth algorithm

The invention discloses a movie recommendation method and system based on frequent itemsets growth algorithm. The method includes: the number of each movie ID in the statistical database, the database including the user ID and the movie ID, the number of times the movie ID appears as the support degree; the support degree of the movie ID is sorted, the minimum support degree is obtained; the film ID and the corresponding support greater than the minimum support degree are extracted and the corresponding branch is extracted. Holding a list of frequent sets of sets; grouping the frequently used sets of sets to get multiple frequent sets of sets; building frequent pattern trees based on the frequently used set of sets; pruning the described frequent pattern trees by particle swarm algorithm to obtain conditional subtrees, and the conditional subtrees to represent the ID between the films described. Relevance relation; recommends films to users according to the association relationship. This method and system can quickly mine the relationship between films, thus improving the efficiency of movie recommendation.

【技术实现步骤摘要】
一种基于频繁项集增长算法的电影推荐方法及系统
本专利技术涉及数据挖掘领域,特别是涉及一种基于频繁项集增长算法的电影推荐方法及系统。
技术介绍
随着计算机技术的迅猛发展,1993年R.Agrawal等人在对市场购物篮问题的调查分析研究中,首次提出了用关联规则表达式得到规则知识。关联规则提取的主要目标是发现数据项集之间内涵的关联或依赖关系,即从大量积累的数据中找出隐藏的数据模式或者知识。关联规则的挖掘算法可以对电影资源进行个性化推荐,将获得的用户可能感兴趣的影视资源推荐给用户,从而达到更好的为用户服务的目的。现有的关联规则算法计算复杂度高,在递归过程中计算量也是十分的巨大,导致挖掘效率低。
技术实现思路
本专利技术的目的是提供一种基于频繁项集增长算法的电影推荐方法及系统,用以快速的挖掘电影之间的关联关系,从而提高电影推荐的效率。为实现上述目的,本专利技术提供了如下方案:一种基于频繁项集增长算法的电影推荐方法,所述方法包括:统计数据库中每个电影ID出现的次数,所述数据库包括用户ID和电影ID,所述电影ID出现的次数表示为支持度;将所述电影ID的支持度进行排序,得到最小支持度;提取支持度大于所述最小支持度的电影ID及对应的支持度,得到频繁一项集列表;将所述频繁一项集列表进行分组,得到多个频繁一项集组;根据所述频繁一项集组构建频繁模式树;通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,所述条件子树表示所述电影ID之间的关联关系;根据所述关联关系向用户推荐电影。可选的,所述通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,具体包括:自底向上搜索频繁模式树,得到多个频繁子树,每个频繁子树包括多条路径;判断每条所述路径对应的粒子群的适应度函数是否大于1;若否,则将所述路径标记为0,表示删除所述路径;若是,则将所述路径的标记为1,表示保留所述路径,得到保留路径;通过所述保留路径构建条件子树。可选的,所述将所述频繁一项集列表进行分组,得到多个频繁一项集组,具体包括:统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;根据所述频繁一项集组包括的频繁一项集的阈值个数以及所述统计数量对所述频繁一项集列表进行分组。可选的,所述将所述频繁一项集列表进行分组,得到多个频繁一项集组,具体包括:统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;根据取整函数对所述统计数量进行分组,得到多个频繁一项集组。本专利技术还一种基于频繁项集增长算法的电影推荐系统,所述系统包括:次数统计模块,用于统计数据库中每个电影ID出现的次数,所述数据库包括用户ID和电影ID,所述电影ID出现的次数表示为支持度;排序模块,用于将所述电影ID出现的次数进行排序,得到最少次数,即最小支持度;提取模块,用于提取支持度大于所述最小支持度的电影ID及对应的支持度,得到频繁一项集列表;分组模块,用于将所述频繁一项集列表进行分组,得到多个频繁一项集组;构建模块,用于根据所述频繁一项集组构建频繁模式树;剪枝模块,用于通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,所述条件子树表示所述电影ID之间的关联关系;推荐模块,用于根据所述关联关系向用户推荐电影。可选的,所述剪枝模块包括:搜索单元,用于自底向上搜索频繁模式树,得到多个频繁子树,每个频繁子树包括多条路径;判断单元,用于判断每条所述路径对应的粒子群的适应度函数是否大于1,得到判断结果;第一标记单元,用于当所述判断结果表示所述适应度函数小于1,则将所述路径标记为0,表示删除所述路径;第二标记单元,用于当所述判断结果表示所述适应度函数大于1,则将所述路径的标记为1,表示保留所述路径;构建单元,用于通过所述保留路径构建条件子树。可选的,所述分组模块包括:第一统计单元,用于统计所述频繁一项集列表中频繁一项集的个数,得到第一个数;第一分组单元,用于根据所述频繁一项集组包括的频繁一项集的阈值个数以及所述第一个数对所述频繁一项集列表进行分组;可选的,所述分组模块包括:第二统计单元,统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;第二分组单元,用于根据取整函数对所述统计数量进行分组,得到多个频繁一项集组。根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:本专利技术提供一种基于频繁项集增长算法的电影推荐方法及系统,该方法和系统在构建条件子树时采用粒子群算法对所述频繁模式树进行剪枝,从而在进行迭代计算时减少计算量,提高挖掘效率,快速的挖掘电影之间的关联关系,根据关联关系能够更好的为用户推荐电影。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种基于频繁项集增长算法的电影推荐方法的流程图;图2为本专利技术实施例提供的通过粒子群算法对所述频繁模式树进行剪枝的流程图;图3为本专利技术实施例提供的一种基于频繁项集增长算法的电影推荐系统的结构框图;图4为本专利技术实施例提供的剪枝模块的结构框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的目的是提供一种基于频繁项集增长算法的电影推荐方法及系统,用以快速的挖掘电影之间的关联关系,从而提高电影推荐的效率。为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。如图1所示,一种基于频繁项集增长算法的电影推荐方法包括以下步骤:步骤101:统计数据库中每个电影ID出现的次数,所述数据库包括用户ID和电影ID,所述电影ID出现的次数表示为支持度。步骤102:将所述电影ID的支持度进行排序,得到最小支持度。步骤103:提取支持度大于所述最小支持度的电影ID及对应的支持度,得到频繁一项集列表。步骤104:将所述频繁一项集列表进行分组,得到多个频繁一项集组。具体的,统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;根据所述频繁一项集组包括的频繁一项集的阈值个数以及所述统计数量对所述频繁一项集列表进行分组。或者统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;根据取整函数对所述统计数量进行分组,得到多个频繁一项集组。步骤105:根据所述频繁一项集组构建频繁模式树。步骤106:通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,所述条件子树表示所述电影ID之间的关联关系。具体的,如图2所示,通过粒子群算法对所述频繁模式树进行剪枝包括以下步骤:步骤1061:自底向上搜索频繁模式树,得到多个频繁子树,每个频繁子树包括多条路径;步骤1062:判断每条所述路径对应的粒子群的适应度函数是否大于1;适应度函数fitness需要将支持度和置信度结合起来,定义fitness的计算公式如下所示:其中,i=1,2,...,n,fitnessi表示第i个粒子群的适应度函数,Supporti表示第i个粒子群的支持度;C本文档来自技高网...
一种基于频繁项集增长算法的电影推荐方法及系统

【技术保护点】
1.一种基于频繁项集增长算法的电影推荐方法,其特征在于,所述方法包括:统计数据库中每个电影ID出现的次数,所述数据库包括用户ID和电影ID,所述电影ID出现的次数表示为支持度;将所述电影ID的支持度进行排序,得到最小支持度;提取支持度大于所述最小支持度的电影ID及对应的支持度,得到频繁一项集列表;将所述频繁一项集列表进行分组,得到多个频繁一项集组;根据所述频繁一项集组构建频繁模式树;通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,所述条件子树表示所述电影ID之间的关联关系;根据所述关联关系向用户推荐电影。

【技术特征摘要】
1.一种基于频繁项集增长算法的电影推荐方法,其特征在于,所述方法包括:统计数据库中每个电影ID出现的次数,所述数据库包括用户ID和电影ID,所述电影ID出现的次数表示为支持度;将所述电影ID的支持度进行排序,得到最小支持度;提取支持度大于所述最小支持度的电影ID及对应的支持度,得到频繁一项集列表;将所述频繁一项集列表进行分组,得到多个频繁一项集组;根据所述频繁一项集组构建频繁模式树;通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,所述条件子树表示所述电影ID之间的关联关系;根据所述关联关系向用户推荐电影。2.根据权利要求1所述的方法,其特征在于,所述通过粒子群算法对所述频繁模式树进行剪枝,得到条件子树,具体包括:自底向上搜索频繁模式树,得到多个频繁子树,每个频繁子树包括多条路径;判断每条所述路径对应的粒子群的适应度函数是否大于1;若否,则将所述路径标记为0,表示删除所述路径;若是,则将所述路径的标记为1,表示保留所述路径,得到保留路径;通过所述保留路径构建条件子树。3.根据权利要求1所述的方法,其特征在于,所述将所述频繁一项集列表进行分组,得到多个频繁一项集组,具体包括:统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;根据所述频繁一项集组包括的频繁一项集的阈值个数以及所述统计数量对所述频繁一项集列表进行分组。4.根据权利要求1所述的方法,其特征在于,所述将所述频繁一项集列表进行分组,得到多个频繁一项集组,具体包括:统计所述频繁一项集列表中频繁一项集的个数,得到统计数量;根据取整函数对所述统计数量进行分组,得到多个频繁一项集组。5.一种基于频繁项集增长算法的电影推荐系统,其特征在于,所述系统包括:次数统计模块,用于统计...

【专利技术属性】
技术研发人员:陈宏伟罗启星宗欣露叶志伟王春枝严灵毓陈颖哲苏军
申请(专利权)人:湖北工业大学
类型:发明
国别省市:湖北,42

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

1