尹士閃,馬增強(qiáng),毛晚堆
(1.石家莊鐵道大學(xué) 教務(wù)處,河北 石家莊050043;2.石家莊鐵道大學(xué) 電氣與電子工程學(xué)院,河北 石家莊050043;3.石家莊鐵道大學(xué) 工程訓(xùn)練中心,河北 石家莊050043)
數(shù)據(jù)挖掘 (data mining)是一門(mén)交叉學(xué)科,是從存放在數(shù)據(jù)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)或其它信息庫(kù)中的大量數(shù)據(jù)中挖掘有興趣知識(shí)的過(guò)程。關(guān)聯(lián)規(guī)則挖掘則是數(shù)據(jù)挖掘中最活躍的研究方法之一[1-3]。Agrawal等于1993年首先提出了關(guān)聯(lián)規(guī)則問(wèn)題,隨后他們建立了項(xiàng)目集格空間理論,提出了著名的Apriori算法[4-14]。Apriori其核心算法就是根據(jù)頻集理論的一種逐層迭代搜索方法,通過(guò)項(xiàng)目集元素?cái)?shù)目不斷增長(zhǎng)來(lái)逐步完成頻繁項(xiàng)目集的發(fā)現(xiàn)。算法過(guò)程中需要多次掃描事務(wù)數(shù)據(jù)庫(kù),并產(chǎn)生龐大的候選集來(lái)完成頻繁項(xiàng)目集的發(fā)現(xiàn),如此大的候選集對(duì)時(shí)間和存儲(chǔ)空間都是一種挑戰(zhàn)。針對(duì)Apriori算法的這些缺點(diǎn),近年來(lái),許多學(xué)者對(duì)此提出了許多不同的算法。比較典型算法有DHP,Partition,Sampling,F(xiàn)P-tree。在這些研究基礎(chǔ)之上,本文提出了一個(gè)有效生成頻繁項(xiàng)目集的算法,它是采用一種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)用來(lái)存儲(chǔ)頻繁項(xiàng)目集,并生成最大頻繁項(xiàng)目集,通過(guò)改變事務(wù)的存儲(chǔ)方式和增加鏈?zhǔn)酱鎯?chǔ)方式能夠高效的生成最大頻繁項(xiàng)目集,避免了多次掃描事務(wù)數(shù)據(jù)庫(kù),減少了龐大的候選集的生成,從而提高了效率。
定義1(項(xiàng)目) 關(guān)聯(lián)規(guī)則挖掘的數(shù)據(jù)集記作D(D為事務(wù)數(shù)據(jù)庫(kù)),D= {t1,t2,…,tn},tk= {i1,i2,…,ij}(k=1,2,…,n)為一條事務(wù);tk中的元素ij(j=1,2,…,p)稱(chēng)為項(xiàng)目 (Item)。
定義2(項(xiàng)目集) 設(shè)I= {i1,i2,…,im}是事務(wù)數(shù)據(jù)庫(kù)D中全體項(xiàng)目組成的集合,I的任何子集X稱(chēng)為D的項(xiàng)目集 (Itemset),|X|=k稱(chēng)集合X為k項(xiàng)目集。設(shè)tk和X分別為D中的事務(wù)和項(xiàng)目集,如果X tk,稱(chēng)事務(wù)tk包含項(xiàng)目集X。
定義3(規(guī)則的支持度) 事務(wù)數(shù)據(jù)庫(kù)D中包含項(xiàng)目集X的事務(wù)數(shù)稱(chēng)為項(xiàng)目集X的支持?jǐn)?shù),記為δx。項(xiàng)目集X的支持率,記作:Support(X),即概率P(X),support(X)=δx/|D|×100%。
定義4(規(guī)則的可信度) 規(guī)則A→B具有可信度C,表示C是包含A項(xiàng)集的同時(shí)也包含B項(xiàng)集,相對(duì)于包含A項(xiàng)集的百分比,這是條件概率P(B/A)。
定義5(頻繁項(xiàng)目集) 如果一個(gè)k-項(xiàng)目集,它的支持度≥minsup(最小支持度),則稱(chēng)該k-項(xiàng)目集為頻繁k-項(xiàng)目集。
定義6(最大頻繁項(xiàng)目集) 如果一項(xiàng)目集X是頻繁的,并且不存在任意項(xiàng)目集Y(XY),使得Y是事務(wù)集D的頻繁項(xiàng)目集,則稱(chēng)項(xiàng)目集X為事務(wù)集D的最大頻繁項(xiàng)目集。
由以上的定義可以看出,任何頻繁項(xiàng)目集都是某一最大頻繁項(xiàng)目集的子集,最大頻繁項(xiàng)目集包含所有頻繁項(xiàng)目集,且項(xiàng)目集的規(guī)模要小幾個(gè)數(shù)量級(jí),所以可以把發(fā)現(xiàn)頻繁項(xiàng)目集的問(wèn)題轉(zhuǎn)化為發(fā)現(xiàn)最大頻繁項(xiàng)目集的問(wèn)題。
理論1 如果X是頻繁項(xiàng)目集,那么X的任何非空子集都是頻繁項(xiàng)目集。
理論2 如果X是非頻繁項(xiàng)目集,那么X的任何超集都是非頻繁項(xiàng)目集。
為了便于本文關(guān)聯(lián)規(guī)則算法的論述,把基于頻繁項(xiàng)目集鏈?zhǔn)酱鎯?chǔ)方法的關(guān)聯(lián)規(guī)則算法簡(jiǎn)稱(chēng)為CSSFI算法。
Apriori算法所采用的是逐層迭代搜索方法,通過(guò)項(xiàng)目集元素?cái)?shù)目不斷增長(zhǎng)來(lái)逐步完成頻繁項(xiàng)目集發(fā)現(xiàn)的。首先產(chǎn)生1-頻繁項(xiàng)目集L1,然后是2-頻繁項(xiàng)目集L2,直到頻繁項(xiàng)目集為空時(shí)算法停止。在第k次循環(huán)中,過(guò)程先產(chǎn)生k-1-候選項(xiàng)目集的集合Ck-1,然后通過(guò)掃描數(shù)據(jù)庫(kù)生成支持度并測(cè)試產(chǎn)生k-頻繁項(xiàng)目集Lk。每次找出一個(gè)Lk,就需要掃描數(shù)據(jù)庫(kù)一次。
在第一遍掃描中,計(jì)算單個(gè)項(xiàng)目的支持度,確定哪些項(xiàng)目是頻繁項(xiàng)目,即它們需具有最小支持度。在后來(lái)的掃描中,均將前一次掃描得到的頻繁項(xiàng)目作為基礎(chǔ)項(xiàng)目,利用這個(gè)基礎(chǔ)項(xiàng)目產(chǎn)生出新的頻繁項(xiàng)目集,這樣的頻繁項(xiàng)目集稱(chēng)作候選項(xiàng)目集,并且在掃描數(shù)據(jù)的過(guò)程中計(jì)算這些候選項(xiàng)目集的實(shí)際支持度計(jì)數(shù)。掃描結(jié)束后,確定哪些候選項(xiàng)目集才是真正的頻繁項(xiàng)目,然后將是頻繁項(xiàng)目的這些候選項(xiàng)目集作為下一次掃描用的基礎(chǔ)項(xiàng)目。重復(fù)此過(guò)程直到?jīng)]有新的頻繁項(xiàng)目集產(chǎn)生為止。
CSSFI算法主要針對(duì)Apriori算法中的兩點(diǎn)不足進(jìn)行改進(jìn),這兩點(diǎn)不足如下:
(1)多次掃描事務(wù)數(shù)據(jù)庫(kù),需要很大的I/O負(fù)載:對(duì)每次k循環(huán),候選集Ck中的每個(gè)元素都必須通過(guò)掃描數(shù)據(jù)庫(kù)一次來(lái)驗(yàn)證其是否加入Lk。假如一個(gè)頻繁大項(xiàng)目集包含10個(gè)項(xiàng),那么就至少需要掃描事務(wù)數(shù)據(jù)庫(kù)10遍。
(2)產(chǎn)生龐大的過(guò)渡候選項(xiàng)目集:由Lk-1產(chǎn)生k-候選集Ck是指數(shù)增長(zhǎng)的,例如104個(gè)1-頻繁項(xiàng)目集就有可能產(chǎn)生接近107個(gè)元素的2-候選項(xiàng)目集。如此大的候選集對(duì)時(shí)間和主存空間都是一種挑戰(zhàn)。
CSSFI算法通過(guò)改變事務(wù)數(shù)據(jù)庫(kù)中事務(wù)的存儲(chǔ)方式,采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)來(lái)存儲(chǔ)頻繁項(xiàng)目集,并生成最大頻繁項(xiàng)目集,通過(guò)這種方法能夠減小掃描事物數(shù)據(jù)庫(kù)的次數(shù)和生成候選集的數(shù)量,克服了Apriori算法的瓶頸,從而減少了生成最大頻繁項(xiàng)目集的時(shí)間,提高了算法的效率。
生成最大頻繁項(xiàng)目集算法共分3步,分別為:①變更事務(wù)數(shù)據(jù)庫(kù)存儲(chǔ)和表達(dá)方式,初始化存儲(chǔ)鏈表,生成項(xiàng)目集和頻繁1-項(xiàng)目集;②構(gòu)造頻繁項(xiàng)目集鏈表;③根據(jù)頻繁項(xiàng)目集的定義及性質(zhì),對(duì)候選項(xiàng)目集鏈表進(jìn)行處理,生成最大頻繁項(xiàng)目集。
把事務(wù)數(shù)據(jù)庫(kù)中的事務(wù)轉(zhuǎn)化成比特向量表達(dá)方式。即,在一個(gè)事物中出現(xiàn)第i個(gè)項(xiàng)目,則把對(duì)應(yīng)項(xiàng)目的比特向量置為1,否則置為0。例如,項(xiàng)目集I= {A,B,C,D,E,F(xiàn)},事務(wù)數(shù)據(jù)庫(kù) T= {(ADE), (BCD), (ABCD),(BEF)},轉(zhuǎn)化為比特向量表達(dá)式為 T= {(100110),(011100),(11110), (010011)},同時(shí),生成有序1―項(xiàng)目集,計(jì)算各個(gè)項(xiàng)目的支持度,按支持度從大到小進(jìn)行排序,假設(shè)最小支持度為2,則生成頻繁1―項(xiàng)目集為I1={(B,3),(D,3),(A,2),(C,2),(E,2),(F,1)},把最小主持度小于2的都去掉,實(shí)際上,頻繁1―項(xiàng)目集為I1= {(B,3),(D,3),(A,2),(C,2),(E,2)},如表1為事務(wù)數(shù)據(jù)庫(kù),表2為頻繁1―項(xiàng)目集。
表1 事務(wù)數(shù)據(jù)庫(kù)
表2 頻繁1―項(xiàng)目集
經(jīng)過(guò)初始化階段之后,進(jìn)入構(gòu)造頻繁項(xiàng)目集鏈表階段。具體方法為:掃描一遍事務(wù)數(shù)據(jù)庫(kù)T,選取頻繁項(xiàng)目集中支持度最小的頻繁項(xiàng)目,如果事務(wù)中包含此頻繁項(xiàng)目,則將此事務(wù)作為鏈表信息加入到該頻繁項(xiàng)目對(duì)應(yīng)的鏈表中,否則檢查是否包含支持度較小的頻繁項(xiàng)目,如果包含,將此事務(wù)加入到此頻繁項(xiàng)目對(duì)應(yīng)的鏈表中,以此類(lèi)推,直到遍歷整個(gè)事務(wù)數(shù)據(jù)庫(kù)結(jié)束。在把事務(wù)加入到該頻繁項(xiàng)目對(duì)應(yīng)的鏈表的同時(shí),把該事務(wù)中包含其他頻繁項(xiàng)目出現(xiàn)次數(shù)加1。如圖1是頻繁項(xiàng)目集初始鏈表結(jié)構(gòu)。
圖1 頻繁項(xiàng)目集初始鏈表結(jié)構(gòu)
設(shè)最大頻繁項(xiàng)目集M為空,從支持度最小的頻繁項(xiàng)目鏈表出發(fā),檢查除此頻繁項(xiàng)目以外其它頻繁項(xiàng)目出現(xiàn)的次數(shù),如果他們出現(xiàn)的次數(shù)都大于或等于此頻繁項(xiàng)目的支持?jǐn)?shù),則把這些頻繁項(xiàng)目 (包含此支持度最小的頻繁項(xiàng)目)進(jìn)行組合,生成所有頻繁項(xiàng)目集并加入到最大頻繁項(xiàng)目集M中,程序結(jié)束;否則將那些出現(xiàn)次數(shù)大于或等于最小支持度的頻繁項(xiàng)目 (包含此支持度最小的頻繁項(xiàng)目)組合生成頻繁項(xiàng)目集,同時(shí)加入頻繁項(xiàng)目集M中,然后,對(duì)支持度最小的頻繁項(xiàng)目鏈表進(jìn)行處理,即把項(xiàng)目集鏈表中所有事務(wù)對(duì)應(yīng)此頻繁項(xiàng)目的比特向量置為0,對(duì)處理后的事務(wù),按照構(gòu)造頻繁項(xiàng)目集鏈表的方法分別插入到其它的頻繁項(xiàng)目集鏈表中;以此類(lèi)推進(jìn)行循環(huán),直到程序結(jié)束,生成最大頻繁項(xiàng)目集M。
例如,從事務(wù)數(shù)據(jù)庫(kù)T中生成所有最小支持度為2的最大頻繁項(xiàng)目集,首先從支持度最小的頻繁項(xiàng)目E開(kāi)始,頻繁項(xiàng)目集E的鏈表中包含兩個(gè)事務(wù) (100110)和(010011),而其他頻繁項(xiàng)目C、A、D、B出現(xiàn)的次數(shù)為0,1,1,1,沒(méi)有頻繁項(xiàng)目出現(xiàn)的次數(shù)和E的支持度相同,支持度也小于minsup(最小支持度),不能生成頻繁項(xiàng)目集。接著從事務(wù) (100110)和 (010011)中去掉E項(xiàng)目,變?yōu)椋?00100)和 (010001),然后按照生成頻繁項(xiàng)目集鏈表的方法,將他們插入到頻繁項(xiàng)目C、A、D、B鏈表中,這樣包含較小支持度C的事務(wù)為 (01100)和 (111100),頻繁項(xiàng)目A、D、B出現(xiàn)的次數(shù)為1,2,2,D和B與C出現(xiàn)的次數(shù)相同,但另外一個(gè)項(xiàng)目的支持度小于minsup,因此生成頻繁項(xiàng)目集 {(C、D),(C、B),(D、B),(C、D、B)},按同樣的方法生成頻繁項(xiàng)目集 {(A、D)},最后合并生成最大頻繁項(xiàng)目集 {(A、D),(C、D),(C、B),(D、B),(C、D、B)},具體過(guò)程如下:
(1)處理支持度最小的頻繁項(xiàng)目E(見(jiàn)圖2)。
圖2 處理頻繁項(xiàng)目E鏈表
(2)處理支持度較小的頻繁項(xiàng)目C(見(jiàn)圖3)。
圖3 處理頻繁項(xiàng)目C鏈表
生成頻繁項(xiàng)目集 {(C、D), (C、B), (D、B), (C、D、B)}。
(3)處理的頻繁項(xiàng)目A (見(jiàn)圖4)。
圖4 處理頻繁項(xiàng)目A 鏈表
生成頻繁項(xiàng)目集 {(A、D)},程序結(jié)束。
最后生成最大頻繁項(xiàng)目集 {(A、D), (C、D), (C、B),(D、B),(C、D、B)}。
本算法采用類(lèi)語(yǔ)言的方式進(jìn)行了描述,具體程序如下:
/*變量說(shuō)明部分*/
N:事務(wù)數(shù)據(jù)庫(kù)中事務(wù)總數(shù);
M:項(xiàng)目數(shù);
minsup:最小支持度;
I[M]:存儲(chǔ)項(xiàng)目集;
L[]:頻繁項(xiàng)目集鏈表;
max_fi[][]:存儲(chǔ)最大頻繁項(xiàng)目集
L[]struct
{
item [] char[]//頻繁項(xiàng)目名稱(chēng)
item_sup [] int[]//對(duì)應(yīng)item在此鏈表事務(wù)中出現(xiàn)的次數(shù)
tran[] char[]//存儲(chǔ)包含此頻繁項(xiàng)目的事務(wù),鏈表
L_leng[] int //鏈表長(zhǎng)度
}//L [0]為頻繁1-項(xiàng)目集
T []:事務(wù)數(shù)據(jù)庫(kù)
/*初始化階段:把事務(wù)用比特向量方式存儲(chǔ)*/
For(j=1;j<=N;j++)do
begin
Begin
While i<=M do
begin
i++;
if I [i]∈T [j]then b [i]=1;I [i].
count++;//count為項(xiàng)目I[i]的支持度
else b [i]=0
end
T [j]=b;/*b以比特向量方式存儲(chǔ)T [j]*/
end
/*生成頻繁1-項(xiàng)目集*/
for all I [i]do begin
if I[i].count>=minsup then
L [0].item [j][1]=I[i];
L [0].item_sup [j][1]=I[i].count;j++;
else i++
end
L [0]=sort(L [0])/*把頻繁1-項(xiàng)目集進(jìn)行排序,按支持度的大小從小到大進(jìn)行排序,支持度相同時(shí)按字典順序進(jìn)行排序*/
/*構(gòu)造頻繁項(xiàng)目集鏈表*/
L [1]=L [0]
For(i=1;i<=N;i++)do
begin
for j=1to|L [1].item [][1]|j++do
begin
if L [1].item [j][1]∈T [i]then begin
/*把包含此頻繁項(xiàng)目的事務(wù)加入到對(duì)應(yīng)的鏈表中*/
L[1].tran [j][]= L[1].tran [j][]∪T [i];
L[1].L_sup [j][1]++;//把對(duì)應(yīng)的item_sup [j]+1
Insert(L [1].item [j],T [i])/*把 T[i]中其他項(xiàng)目加入到L [1].item [j]中,同時(shí)把對(duì)應(yīng)的item_sup [j][2,3,4,…]+1*/
end
end
end
/*生成最大頻繁項(xiàng)目集*/
C[]:臨時(shí)存儲(chǔ)頻繁項(xiàng)目集
While(遍歷L1,k=1,k<=|L [1]|)
Begin
temp_i=L [1].item_sup [k][1]
c [1]=L [1].item [k][1]
/*選出此頻繁項(xiàng)目鏈表中其他項(xiàng)目出現(xiàn)次數(shù)大于等于此頻繁項(xiàng)目支持度的項(xiàng)目*/
For i=2to i<=|L [1].item|do
begin
if L [1].item_sup [k][i]>=temp_i then
Begin
c=c∪L [1].Item [k][i]
end
end
delete (L [1].tan [k],c [1])//刪除此鏈表事務(wù)中此頻繁項(xiàng)目
max_fi[k]=Combination (c)//把c中項(xiàng)目進(jìn)行任意組合,結(jié)果加入最大頻繁項(xiàng)目集max_fi中;
if temp_i>=|c(diǎn)| then begin break;//程序結(jié)束
else insert(L [1],L [1].tan [k])//把刪除此頻繁項(xiàng)目的事務(wù)加入到其他頻繁項(xiàng)目鏈表中,再進(jìn)行最大頻繁項(xiàng)目集的搜尋
end end
本文使用Intel(R)Core(TM)2duo CPU 2.93GHz,2.0GB內(nèi)存的微機(jī),對(duì)Apriori算法和DHP算法及CSSFI算法在產(chǎn)生候選集數(shù)量和運(yùn)行時(shí)間上進(jìn)行了對(duì)比實(shí)驗(yàn),所用數(shù)據(jù)集來(lái)源于UCI機(jī)器學(xué)習(xí)數(shù)據(jù)庫(kù)[15],共10個(gè)數(shù)據(jù)集,如表3所示。
表3 數(shù)據(jù)集
當(dāng)最小支持度為0.5時(shí),表4,表5表示產(chǎn)生的候選集數(shù)量和運(yùn)行時(shí)間對(duì)比表。
表4 3種算法產(chǎn)生的候選集數(shù)
實(shí)驗(yàn)結(jié)果表明,在10個(gè)測(cè)試數(shù)據(jù)集中,CSSFI算法在集中的7個(gè)數(shù)據(jù)集上產(chǎn)生的候選集數(shù)量少于其它兩種算法,在其中的7個(gè)數(shù)據(jù)集上運(yùn)行時(shí)間地獄其它兩種算法,這是由于CSSFI算法產(chǎn)生的候選集有大幅度的減少的結(jié)果。當(dāng)最大頻繁項(xiàng)目集的項(xiàng)目數(shù)越大時(shí),CSSFI算法的效率顯得越突出。
表5 3種算法的運(yùn)行時(shí)間
本文提出了一種基于頻繁項(xiàng)目集鏈?zhǔn)酱鎯?chǔ)方法的關(guān)聯(lián)規(guī)則算法 (CSSFI),該算法采用比特向量方式存儲(chǔ)事務(wù)和建立頻繁項(xiàng)目集鏈表,通過(guò)處理頻繁項(xiàng)目集鏈表生成最大頻繁項(xiàng)目集,并用類(lèi)語(yǔ)言對(duì)算法進(jìn)行了程序?qū)崿F(xiàn)。從和Apriori算法和DHP算法的比較結(jié)果來(lái)看,CSSFI算法的效率得到了很大的提高,從而證明了CSSFI算法是可行的、有效的。在對(duì)CSSFI算法的仔細(xì)分析和研究基礎(chǔ)上,發(fā)現(xiàn)該算法在數(shù)據(jù)庫(kù)容量擴(kuò)容時(shí),性能有所下降,這是在以后的研究中需要繼續(xù)探討的問(wèn)題。
[1]CHEN Wenwei.The data warehouse and data mining [M].Beijing:Tsinghua University Press,2006:143-155 (in Chinese).[陳文偉.數(shù)據(jù)倉(cāng)庫(kù)與數(shù)據(jù)挖掘教程 [M].北京:清華大學(xué)出版社,2006:143-155.]
[2]MAO Guojun.Data mining:Principle and algorithm [M].Beijing:Tsinghua University Press,2005:5-6 (in Chinese).[毛國(guó)君.數(shù)據(jù)挖掘原理與算法 [M].北京:清華大學(xué)出版社,2005:5-6.]
[3]ZHANG Ke,ZHANG Xiaogang.Data mining algorithm and engineering application [M].Beijing:Mechanical Industry Press,2006:50-61 (in Chinese).[章兢,張小剛.數(shù)據(jù)挖掘算法及其工程應(yīng)用 [M].北京:機(jī)械工業(yè)出版社,2006:50-61.]
[4]DUAN Yang-guang,WEI Yu-ke.Algorithm for mining frequent patterns based on circular orthogonal linked list [J].Computer Technology and Development,2009,19 (10):73-77(in Chinese).[段仰廣,偉玉科.基于循環(huán)十字鏈表的頻繁模式挖掘算法 [J].計(jì)算機(jī)技術(shù)與發(fā)展,2009,19 (10):73-77.]
[5]ZHANG Guanglu,LEI Jingsheng.An improved Apriori algorithm for mining association rules [J].Computer Technology and Development,2010,20 (6):84-92 (in Chinese).[張廣路,雷景生.一種改進(jìn)的Apriori關(guān)聯(lián)規(guī)則挖掘算法 [J].計(jì)算機(jī)技術(shù)與發(fā)展,2010,20 (6):84-92.]
[6]WANG Hua,HU Xuegang.Mining algorithm of maximal frequent itemsets suitable to specific database [J].Computer Engineering,2008,34 (14):63-65 (in Chinese).[王華,胡學(xué)鋼.特定數(shù)據(jù)最大頻繁集挖掘算法 [J].計(jì)算機(jī)工程,2008,34 (14):63-65.]
[7]PAN Yi-ting,HANG Hong-juan.An improved maximal frequent itemsets mining algorithm [J].Computer Engineering and Science,2009,31 (8):63-65 (in Chinese). [潘益婷,張紅娟.一種改進(jìn)的最大頻繁項(xiàng)目集挖掘算法 [J].計(jì)算機(jī)工程與科學(xué),2009,31 (8):63-65.]
[8]YANG Yu,WANG Yong.Optimized method for mining maximum frequent itemsets [J].Computer Engineering and Applications,2006,42 (31):171-173 (in Chinese). [唐瑜,王勇.挖掘最大頻繁項(xiàng)集的優(yōu)化方法 [J].計(jì)算機(jī)工程與應(yīng)用,2006,42 (31):171-173.]
[9]SHANG Zhigang,YIN Shaohong.Research of mining maximum frequent itemsets based on dynamic programming [J].Computer & Digital Engineering,2009,37 (10):51-54 (in Chinese).[尚志剛,尹紹宏.基于動(dòng)態(tài)規(guī)劃的最大頻繁項(xiàng)目集挖掘研 究 [J].計(jì)算機(jī) 與 數(shù) 字 工 程,2009,37 (10):51-54.]
[10]ZHU Ye,YE Gaoying.Improvement of Apriori algorithm in association rule mining [J].Modern Electronic Technique,2008,31 (18):78-80 (in Chinese). [朱燁,葉高英.關(guān)聯(lián)規(guī)則挖掘Apriori算法的改進(jìn) [J].現(xiàn)代電子技術(shù),2008,31(18):78-80.]
[11]QIU Chang-chun.On the association rules of 1wining algorithm containing item constraint [J].Journal of Hubei Institute of Education,2006,23 (8):21-23 (in Chinese). [邱長(zhǎng)春.基于項(xiàng)目約束的關(guān)聯(lián)規(guī)則挖掘方法的研究 [J].湖北教育學(xué)院學(xué)報(bào),2006,23 (8):21-23.]
[12] MA Li-sheng.Fast algorithm for mining frequent itemsets[J].Computer Engineering and Design,2009,30 (8):1903-1906(in Chinese).[馬麗生.快速挖掘頻繁項(xiàng)目集算法[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30 (8):1903-1906.]
[13]LI Yun,LI Qing-shan.Algorithm for mining constrained maximal frequent itemsets [J].Computer Engineering and Applications,2007,43 (17):160-163 (in Chinese). [李蕓,李青山.基于約束的最大頻繁項(xiàng)集挖掘算法 [J].計(jì)算機(jī)工程與應(yīng)用,2007,43 (17):160-163.]
[14]FENG Feng.A Fast Updating Alogrithm for mining maximum frequent itemsets[J].Journal of Hefei University,2007,17(4):46-49 (in Chinese).[馮鳳.快速更新挖掘最大頻繁項(xiàng)集 [J].合肥學(xué)院學(xué)報(bào),2007,17 (4):46-49.]
[15]David Aha.UCI Machine learning repository:Center for machine learning and intelligent systems [DB].http://archive.ics.uci.edu/ml/datasets.html,2010.