Journal of Computer Applications
计算机应用,
20
日,
33( 11) : 3045 - 3048, 3089
ISSN 1001-9081
CODEN JYIIDU
2013-11-01
http://www.joca.cn
文章编号
:1001-9081(2013)11-3045-04
doi:
1O
.11772/j.
issn.1001-908
1.
2013.1
1.
3045
基于散列的频繁项集分组算法
王红梅口,胡明
2
事
(1.吉林大学计算机科学与技术学院,长春
130012;
2.
长春工业大学计算机科学与工程学院,长春
130012)
(
*通信作者电子邮箱
huming@
mai
l.
ccu
t.
edu.
cn)
摘
要:
Apriori
算法是频繁项集挖掘的经典算法。针对
Apriori
算法的剪枝操作和多次扫描数据集的缺点,提出
了基于散列的频繁项集分组
(HFG)
算法。证明了
2-
项集剪枝性质,采用散列技术存储频繁
2-
项集,将
Apriori
算法剪
枝操作的时间复杂度从
O(
k x IL"
1)
降低到
0
(1)
;
定义了首项的子项集概念,将数据集划分为以
I,
为首项的数据子
集并采用分组索引表存储,在求以凡为首项的频繁项集时,只扫描以
L
为首项的数据子集,减少了对数据集扫描的时
间代价。实验结果表明,由于
HFG
算法的剪枝操作产生了累积效益,以及分组扫描排除了元效的项集和元纽,使得
HFG
算法在时间性能方面与
Apriori
算法相比有较大提高。
关键词:频繁项集
;2-
项集剪枝;散列表;首项分组;索引表
中图分类号
:T
凹
11
文献标志码
:A
Frequent itemsets grouping algorithm based on Hash list
WANG
Hongmei
1
, 2 ,
HU
Ming
2
*
(1.
College
01
Computer Science
α
nd
Technology, Jilin University,
Ch
α
ngchun
Jilin
130012
, China;
2. School
01
Computer Science and Engineering, Changchun University
01
Technology, Changchun Jilin
130012
, China)
Abstract:
Apriori algorithm is a classic algorithm in frequent itemsets mining. In view of the shortcomings of pruning
operations and multiply scanning data set in Apriori
, a Hash-based Frequent itemsets Grouping algorithm, named HFG
was
put
forward. In this paper
, 2-length itemsets pruning property was proved, frequent 2-length itemsets were stored based on Hash
list
, the time complexity of Apriori algorithm in pruning operation
was
dropped from
O(
k x 1
Lk
1)
to
O(
1);
the concept of sub-
itemset of first term was defined
, dataset was divided into subsets with li as first item and stored
by
grouping index list
Th
erefore, only the sub data set with
I,
as the first item
was
scanned
to
find the frequent itemsets, and the time cost of
scanning dataset was reduced. The experimental results show that the HFG algorithm is much more efficient than Apriori
algorithm in time performance because of the cumulative benefits of pruning operations and skipping the invalid itemsets and
records in HFG algorithm.
Key
words:
frequent itemset; 2-length itemset pruning; Hash list; first term grouping; index list
0
引言
随着频繁项集挖掘应用领域的扩展,吸引了很多学者加
入研究,提出了许多频繁项集挖掘算法,其中,美国学者
Agrawal
等
[1]
提出的
Apriori
算法是一个里程碑,其基本原理
是用频繁
ι
项集找出候选频繁
(k
+
1)-项集,再扫描数据集
得到频繁
(k
+
1)-
项集及其支持度。
Apriori
算法的缺点是产
生大量候选频繁项集,并且需要多次扫描数据集。针对
Apriori
算法的缺点,很多学者对
Apriori
算法进行了改进研
究,如采用
FP-
树(
Frequent -Pattern
tree)
存储数据集
[2
-4]
、采
用垂直格式存储数据集
[5
-6]
、采用散列表存储候选频繁项
集
[7]
、分段计算支持度
[6.8
叫、不产生候选项集
[2
-3]
等。近年
来,有学者提出基于概念格的挖掘算法[川、基于滑动窗口的
挖掘算法[山]等。
本文针对
Apriori
算法的剪枝操作和多次扫描数据集的
缺点,证明了非频繁
2-
项集剪校性质,采用散列表存储频繁
2-
项集,在
0(
1)
时间完成了与
Apriori
算法同样的剪校操作;
定义了首项的子项集概念,将数据集按首项进行分组,在求以
收稿日期
:2013-05-28
;修回日期
:2013-05-19
0
L
为首项的频繁项集时,只扫描以
L
为首项的数据子集,从而
减小了对数据集扫描的时间代价;在此基础上,提出了基于散
列的频繁项集分组
(Hash-based
Frequent
Ît
emsets Grouping ,
HFG)
算法。相比其他频繁项集挖掘算法,
HFG
算法没有复
杂的理论推导,容易理解和实现。实验结果表明,
HFG
算法
在时间性能方面与
Apriori
算法相比有较大提高。
1
相关工作
1.
1
问题描述
问题描述
[1
,
13]
如下:设
1
= 1 1
1
,/
2
,…
,1
m
1
是所有项的集
合,非空项集中包含项的个数称为项集
A
的长度,长度为
k
的
项集记为
k-
项集。设
T
= 1
T
1
,
巳,…
,
T
n
1
是相关事务的数据
集合,其中每个事务由
TID
标识,且
~i
!S:.
n
。
设
A
是一个项集,数据集
T
包含项集
A
当且仅当
l
罢王
i
主运
n
,
数据集
T
中包含项集
A
的事务的个数,称为项集
A
在数据集
T
中的支持度,记为
s
叩
Jount(A)
。给定支持度阁值
min_sup
,
如果项集
A
满足
supJount(A)
二,.
min_sup
,
JJl
tl
称项集
A
为数据
集
T
的一个频繁项集。频繁项集挖掘的任务就是在数据集
T
基金项目:国家自然科学基金资助项目
(61133011
)
;吉林省自然科学基金资助项目
(20101525
)。
作者简介:王红梅
(1968
- )
,女,吉林长春人,教授,博士研究生,主要研究方向:数据挖掘、智能算法;
胡明(1
963
- )
,男,江苏句容人,教
授,主要研究方向:数据挖掘、分布式计算。