频繁项集的生成方法及装置的制造方法

文档序号:9750997阅读:656来源:国知局
频繁项集的生成方法及装置的制造方法
【技术领域】
[0001] 本申请涉及数据关联分析技术领域,更具体地,是频繁项集的生成方法及装置。
【背景技术】
[0002] 在数据分析领域中,对数据的一种分析是关联分析,以生成频繁项集。具体地,获 取到原始数据集,该原始数据集中包含一组或多组数据项,通过关联分析,确定每个数据项 在分组中出现的频率,若出现的频率高于一定的阈值,则表示该数据项是频繁的,可以作为 频繁项集中的数据项。
[0003] 目前,频繁项集的生成方法,需要在内存中构建复杂的数据结构,再通过剪枝等过 程,从原始数据集中筛选出频繁项集。该种方式计算量较大,频繁项集的生成效率较低。

【发明内容】

[0004] 有鉴于此,本申请提供了一种频繁项集的生成方法,用以解决现有的项集生成方 式效率较低的技术问题。另外,本申请还提供了一种频繁项集的生成装置,用以保证所述方 法在实际中的应用及实现。
[0005] 为实现所述目的,本申请提供的技术方案如下:
[0006] 本申请的第一方面提供了一种频繁项集的生成方法,包括:
[0007] 确定待生成频繁项集的数据元个数N、频繁支持度及原始数据表;其中,所述原始 数据表中包含若干组数据项;
[0008] 若所述数据元个数N为1,则使用包含分组过滤规则的数据库查询语句,从所述若 干组数据项中,查询所在组的个数满足所述频繁支持度的目标数据项,将包含所述目标数 据项的数据表确定为一元频繁项集;
[0009] 若所述数据元个数N大于1,则获得一个一元频繁项集、一个N-1元频繁项集及N个 原始数据表,使用包含表关联规则及分组过滤规则的数据库查询语句,对所述一元频繁项 集、N-1元频繁项集及N个原始数据表进行关联及分组过滤查询,获得所在组的个数满足所 述频繁支持度的N元目标数据项,将包含所述N元目标数据项的数据表确定为N元频繁项集。
[0010] 本申请的第二方面提供了一种频繁项集的生成装置,包括:
[0011] 参数及原始数据表获取模块,用于确定待生成频繁项集的数据元个数N、频繁支持 度及原始数据表;其中,所述原始数据表中包含若干组数据项;
[0012] -元频繁项集生成模块,用于若所述数据元个数N为1,则使用包含分组过滤规则 的数据库查询语句,从所述若干组数据项中,查询所在组的个数满足所述频繁支持度的目 标数据项,将包含所述目标数据项的数据表确定为一元频繁项集;
[0013] 多元频繁项集生成模块,用于若所述数据元个数N大于1,则获得一个一元频繁项 集、一个N-1元频繁项集及N个原始数据表,使用包含表关联规则及分组过滤规则的数据库 查询语句,对所述一元频繁项集、N-1元频繁项集及N个原始数据表进行关联及分组过滤查 询,获得所在组的个数满足所述频繁支持度的N元目标数据项,将包含所述N元目标数据项 的数据表确定为N元频繁项集。
[0014] 由以上技术方案可知,本申请提供了一种频繁项集的生成方法实施例,本实施例 中,首先确定数据元个数N、频繁支持度及原始数据集,若数据元个数为1,则使用包含分组 过滤规则的数据库查询语句,从若干组数据项中,查询个数满足频繁支持度的数据项,从而 获得一元频繁项集,若数据元个数大于1,则首先获得一个一元频繁项集、N-1元频繁项集及 N个原始数据表,并使用包含分组过滤规则及关联规则的数据库查询语句,对该多个数据表 进行关联查询及分组过滤查询,获得满足频繁支持度的N元目标数据项,从而获得N元频繁 项集。可见,本实施例中使用数据库查询语句表示关联分析的规则,该种基于数据库查询的 项集生成方式,不需构建复杂的数据结构,运算量较小,项集生成效率较高。
[0015] 当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
【附图说明】
[0016] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据 提供的附图获得其他的附图。
[0017] 图1为本申请提供的频繁项集的生成方式实施例1的流程图;
[0018] 图2为本申请提供的频繁项集的生成方式实施例2的流程图;
[0019] 图3为本申请提供的频繁项集的生成装置实施例1的结构示意图;
[0020] 图4为本申请提供的频繁项集的生成装置实施例2的结构示意图。
【具体实施方式】
[0021] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于 本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本申请保护的范围。
[0022] 在对本申请提供的技术方案说明之前,对几个相关名词进行说明。
[0023] 项集:在关联分析中,包括0个或多个数据项的集合称为项集。
[0024]频繁支持度:或者称为支持度,用于表示数据项的频繁程度,具体计算方式为:频 繁支持度=数据项在事务中出现的次数/事务总数。
[0025]频繁项集:满足最小频繁支持度的所有项集。
[0026]先验原理:如果一个项集是频繁的,则它的所有子集也一定是频繁的,反之,如果 一个项集是非频繁的,则它的所有超集也一定是非频繁的。
[0027] 参见图1,其示出了本申请提供的频繁项集的生成方法实施例1的流程。如图1所 示,本实施例可以具体包括步骤S101~步骤S103。
[0028] 步骤S101:确定待生成频繁项集的数据元个数N、频繁支持度及原始数据表;其中, 原始数据表中包含若干组数据项。
[0029] 可以理解的是,频繁项集的生成过程,即对原始的数据项集合进行关联分析,从而 统计出符合关联规则的数据项。因此,需要首先获得用来作为关联分析的原始数据集合。原 始的数据集合可以是存储在数据库中的数据表,为了便于描述,将该数据表称为原始数据 表。
[0030] 原始数据表中包括多个数据项,此些数据项可以具有相同或不同的标识,标识相 同的数据项可以看作是一组,因此,原始数据表中可以包括一组或多组数据项。
[0031] 例如,原始数据表可以如下表1所示的购物车数据表。如表1所示,面包和牛奶的订 单编号为1,因此,该两个数据项属于同一组。同理分析后可知,该原始数据表中包含五个分 组的数据项,每个数据项分组中分别包括两个、四个、四个、四个及四个数据项。另外,该五 组数据项也可以称为五个事务数据集。
[0032] 表1购物车数据表
[0033]
[0034]本实施例的目的即是对原始数据表进行关联分析,从而获得该原始数据表的频繁 项集。在实施前,该频繁项集则被称为待生成频繁项集。
[0035]由以上说明可知,原始数据表中的数据项可以是一组,也可以是多组。同一数据项 可以出现在不同分组中,若出现次数大于或等于一定阈值,则表示该数据项出现次数是频 繁的,因此,可以将该数据项可以放入频繁项集中。此处的阈值即频繁支持度,数据项出现 的次数也可以称为支持度计数。
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1