一種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)挖掘領(lǐng)域,特別是涉及一種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法。
【背景技術(shù)】
[0002] 關(guān)聯(lián)規(guī)則挖掘的目的是從大數(shù)據(jù)庫中挖掘由數(shù)量關(guān)系確定的屬性之間的關(guān)聯(lián)規(guī) 貝1J,典型的關(guān)聯(lián)規(guī)則挖掘例子是"90%的顧客如果購買面包和黃油,那么也購買牛奶",其 中,"面包和黃油"是關(guān)聯(lián)規(guī)則前件,牛奶是后件,90%為關(guān)聯(lián)規(guī)則的可信度。屬性關(guān)聯(lián)規(guī)則 是對大數(shù)據(jù)中有用知識的科學(xué)、合理刻畫,已廣泛應(yīng)用于計(jì)算機(jī)科學(xué)、管理科學(xué)、經(jīng)濟(jì)學(xué)、社 會科學(xué)等領(lǐng)域。將支持度和可信度作為目標(biāo)函數(shù),屬性關(guān)聯(lián)規(guī)則挖掘可轉(zhuǎn)化為一個(gè)優(yōu)化問 題,而挖掘出的屬性關(guān)聯(lián)規(guī)則就是滿足目標(biāo)函數(shù)的較優(yōu)解。
[0003] 目前,基于優(yōu)化模型的屬性關(guān)聯(lián)規(guī)則挖掘方法已有很多,在該類方法中,各種優(yōu)化 方法或智能優(yōu)化算法,如shafer證據(jù)理論、有向圖方法、主成分分析方法、進(jìn)化計(jì)算、粒子 群算法及遺傳算法等,被用于從某一屬性子集中挖掘相應(yīng)的屬性關(guān)聯(lián)規(guī)則。在現(xiàn)有的屬性 關(guān)聯(lián)規(guī)則挖掘中,頻繁閉項(xiàng)集的極小生成元用來生成一類Min-Max關(guān)聯(lián)規(guī)則,即令A(yù)'是一 頻繁閉項(xiàng)集,B是A'的一個(gè)極小生成元,則B-(A' -B)是一條Min-Max關(guān)聯(lián)規(guī)則。
[0004] 通過分析可得,現(xiàn)有的屬性關(guān)聯(lián)規(guī)則挖掘通常在屬性集的冪集或頻繁閉項(xiàng)集的冪 集中挖掘滿足條件的屬性關(guān)聯(lián)規(guī)則,在挖掘過程中,相關(guān)運(yùn)算通常會在對象和屬性之間重 復(fù)進(jìn)行,同時(shí)會涉及較復(fù)雜的冪集運(yùn)算,導(dǎo)致對象集上的閉包算子運(yùn)算量大,使得運(yùn)算效率 低下。
【發(fā)明內(nèi)容】
[0005] 為了解決上述潛在的問題,本發(fā)明的目的在于克服現(xiàn)有技術(shù)中所存在的上述不 足,提供一種能夠簡單快速的得到屬性關(guān)聯(lián)規(guī)則的挖掘方法。
[0006] 為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術(shù)方案是:
[0007] -種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法,包括以下步驟:
[0008] 定義對象和屬性的向量表示,約定對象向量和屬性向量的運(yùn)算規(guī)則,用于計(jì)算屬 性集上的向量基;
[0009] 根據(jù)向量基計(jì)算生成屬性集上的向量;
[0010] 根據(jù)所述屬性集上的向量計(jì)算屬性集上的任一向量的支持度;
[0011] 設(shè)定向量基的支持度閾值,篩選出大于支持度閾值條件的向量;
[0012] 根據(jù)預(yù)先設(shè)定的可信度閾值,在所述大于支持度閾值條件的向量中挖掘滿足條件 的屬性關(guān)聯(lián)規(guī)則。
[0013] 進(jìn)一步地,所述定義對象和屬性的向量表示,約定對象向量和屬性向量的運(yùn)算規(guī) 則包括:
[0014] 定義信息系統(tǒng)I表示為:I= (U,A,f),U表示對象集、A表示屬性集,其中U= {up…,un},A= {a?!?,am} ,u^示對象集中第η個(gè)元素、a"^示屬性集中第m個(gè)元素;
[0015] f稱為I的信息函數(shù),BPf:UXA- {0, 1},對任意(Ui,a.j)eUXA,若f^Ui,a.j)= Pi_j= 〇,則稱第i個(gè)對象u;不具有第j個(gè)屬性a_j;若f(u;,a) =Pi_j= 1,則稱第i個(gè)對象 W具有第j個(gè)屬性aj<3
[0016] 定義Ai-A2為一條屬性關(guān)聯(lián)規(guī)則,其中,j且4n為=0,Ai稱為前件, a2稱為后件;
[0017] 定義Ui=(p u,…,pim)1Xm,表示對象w可表示為由0或1構(gòu)成的m維行向量;
[0018] 定義// = (/?.-,···,/? .? 表示屬性aj可表示為由0或1構(gòu)成的η維列 J W U9' .η M Jhm'1 向量;
[0019] 約定如下向量運(yùn)算規(guī)則,1 〇 屮=u;、0 〇 屮=1 1Xm= (1,…,1)1Xm、:L〇a.j=a.j、 〇。^ {l·,…,l)"x,,其中,(1, ···, 1) 1Xm表示元素全為1的m維行向量, ([,…afxl表示元素全為1的η維列向量;
[0020] 約定屬性~與(ui,…,un)之間的向量運(yùn)算規(guī)則如下,
[0021]
[0022] 約定屬性化與(au…,aj之間的向量運(yùn)算規(guī)則如下,
[0023]
[0024] 其中n,m,i,j均為正整數(shù)。
[0025] 進(jìn)一步地,所述計(jì)算屬性集上的向量基為:
[0026] 定義B(a_j)表示屬性a??缮梢粋€(gè)向量基,
[0027] ^
9
[0028]得到屬性集上的向量基為,
[0029] B⑷={B(aJ|a)eA},
[0030] 其中n,j均為正整數(shù)。
[0031] 進(jìn)一步地,所述根據(jù)向量基計(jì)算生成屬性集上的向量為:
[0032] 由Γ對應(yīng)的向量基生成的向量TCT)表示為
[0033] T(J')=Vj eB(a.),
[0034] 其中J'是某一指標(biāo)集,J'對應(yīng)的向量基生成的所有向量記為Γ(⑷={Γ(/) 2, ...,4丨,其中m,j均為正整數(shù)。
[0035] 進(jìn)一步地,所述根據(jù)所述屬性集上的向量計(jì)算屬性集上的任一向量的支持度為: [0036]任一向量T(J' )eT(A)的支持度為:
[0037]
[0038]S(T(J'))= (p'u+ρ' 2盧· ·+ρ'η.)/η,其中n,j均為正整數(shù)。
[0039] 進(jìn)一步地,所述根據(jù)預(yù)先設(shè)定的可信度閾值,在所述大于支持度閾值條件的向量 中挖掘滿足條件的屬性關(guān)聯(lián)規(guī)則包括:
[0040] 根據(jù)預(yù)先設(shè)定的關(guān)聯(lián)規(guī)則的可信度閾值,在T(A)中挖掘大于可信度閾值的屬性 關(guān)聯(lián)規(guī)則。
[0041] 進(jìn)一步地,所述挖掘大于可信度閾值的屬性關(guān)聯(lián)規(guī)則為:
[0042] 在T㈧中選擇兩個(gè)向量,記為T%)和T(A2),其中,T%)表示由屬性子集心中 所有元素對應(yīng)的向量基確定的屬性集上的向量,t(a2)表示由屬性子集六2中所有元素對應(yīng) 的向量基確定的屬性集上的向量。T(Ai)和T(A2)中任一個(gè)向量為前件,另一個(gè)向量減去前 件為后件,生成一條屬性關(guān)聯(lián)規(guī)則,即:
[0043]T(AJ-(T(A2)-T%))或T(A2) -(T%)-Τ(A2))。
[0044] 則生成屬性關(guān)聯(lián)規(guī)則的可信度為:
[0045]C(T(AJ-(T(A2)-T(AJ)) =S(T%UA2))/S(T(AJ)或
[0046] C(T(A2)-(T(A!)-T(A2))) =S(T(A!UA2))/S(T(A2))〇
[0047] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果
[0048] 本發(fā)明是一種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法,借助對象和屬性的向量表示, 利用約定的向量運(yùn)算生成屬性集上的向量基,刻畫屬性之間的最基本的相關(guān)關(guān)系,利用向 量基生成屬性集上的向量,避免了在屬性集的冪集中運(yùn)算,減少了對象和屬性之間運(yùn)算次 數(shù),并生成滿足支持度、可信度大于設(shè)定閾值的屬性關(guān)聯(lián)規(guī)則,避免了生成頻繁閉項(xiàng)集的冪 集,以及屬性關(guān)聯(lián)規(guī)則的重復(fù)生成問題,提高了計(jì)算效率。
【附圖說明】
[0049]圖1是本發(fā)明一個(gè)實(shí)施例中的一種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法。
[0050]圖2是本發(fā)明一個(gè)實(shí)施例中的算法與現(xiàn)有技術(shù)的Aprior算法計(jì)算同一數(shù)據(jù)的運(yùn) 行時(shí)間對比圖。
【具體實(shí)施方式】
[0051] 下面結(jié)合【具體實(shí)施方式】對本發(fā)明作進(jìn)一步的詳細(xì)描述。但不應(yīng)將此理解為本發(fā)明 上述主題的范圍僅限于以下的實(shí)施例,凡基于本
【發(fā)明內(nèi)容】
所實(shí)現(xiàn)的技術(shù)均屬于本發(fā)明的范 圍。
[0052]圖1所示是本發(fā)明的一個(gè)實(shí)施例示出的一種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法, 包括以下步驟:
[0053] -種基于向量運(yùn)算的關(guān)聯(lián)規(guī)則挖掘方法,包括以下步驟:
[0054] 定義對象和屬性的向量表示,約定對象向量和屬性向量的運(yùn)算規(guī)則,用于計(jì)算屬 性集上的向量基;
[0055] 根據(jù)向量基計(jì)算生成屬性集上的向量;
[0056] 根據(jù)所述屬性集上的向量計(jì)算屬性集上的任一向量的支持度;
[0057] 設(shè)定向量基的支持度閾值,篩選出大于支持度閾值條件的向量;
[0058] 根據(jù)預(yù)先設(shè)定的可信度閾值,在所述大于支持度閾值條件的向量中挖掘滿足條件 的屬性關(guān)聯(lián)規(guī)則。
[0059] 具體的,所述定義對象和屬性的向量表示,約定對象向量和屬性向量的運(yùn)算規(guī)則 包括:
[0060] 定義信息系統(tǒng)I表示為:I= (U,A,f),U表示對象集、A表示屬性集,其中U= {up…,un},A= {a?!?,am},示對象集中第η個(gè)元素、a"^示屬性集中第m個(gè)元素;
[0061] f稱為I的信息函數(shù),即f:UXA- {0, 1},對任意(Ui,a.)eUXA,若f^Ui,a.)= Pi_j= 〇,則稱第i個(gè)對象u;不具有第j個(gè)屬性a_j;若f(u;,a) =Pi_j= 1,則稱第i個(gè)對象 W具有第j個(gè)屬性aj<3
[0062] 定義Ai-a2為一條屬性關(guān)聯(lián)規(guī)則,其中,a且4^4 =0,Ai稱為前件, a2稱為后件;
[0063] 定義Ui=(p% . . .,pim)1Xm,表示對象w可表示為由0或1構(gòu)成的m維行向量;
[0064] 定義召.二^.,…,p^ 表示屬性aj可表示為由0或1構(gòu)成的η維列 :1 WU ' 5^nj;?χ/3*: 向量;
[0065] 約定如下向量運(yùn)算規(guī)則,1。屮=u;、0 〇屮=1 1Xm= (1,…,1)1Xm、:L〇a.j= aj、〇 〇沒,.=Li= (1,…,1)二,其中,(1,…,l)iXm表示元素全為1的m維行向量, ??,…,表示元素全為1的η維列向量;
[0066] 約定屬性~與(ui,…,un)之間的向量運(yùn)算規(guī)則如下,
[0067]
[0068] 約定屬性化與(au…,aj之間的向量運(yùn)算規(guī)則如下,
[0069]
[0070] 其中n,m,i,j均為正整數(shù)。
[0071] 具體的,所述計(jì)算屬性集上的向量基為:
[0072] 定義B(aj)表示屬性aj可生成一個(gè)向量基,
[0073]
[0074] 得到屬性集上的向量基為,
[0075] B⑷={B(a) |a』eA},
[0076] 其中n,j均為正整數(shù)。
[0077] 具體的,所述根據(jù)向量基計(jì)算生成屬性集上的向量為:
[0078] 由Γ對應(yīng)的向量基生成的向量TCT)表示為
[0079] T(Jr )=Vjej-B(aj),
[0080] 其中J'是某一指標(biāo)集,J'對應(yīng)的向量基生成的所有向量記為ΓΜ)=丨zy7) |/g{l,2,…,瓜}},其中m,j均為正整數(shù)。
[0081] 具體的,所述根據(jù)所述屬性集上的向量計(jì)算屬性集上的任一向量的支持度為:
[0082] 任一向量T(J' )eT(A)的支持度為:
[0083]
[0084] S(T(J'))= (p'u+p' 2盧· ·+ρ'η.)/η,其中n,j均為正整數(shù)。
[0085] 具體的,所述所述根據(jù)預(yù)先設(shè)定的可信度閾值,在所述大于支持度閾值條件的向 量中挖掘滿足條件的屬性關(guān)聯(lián)規(guī)則包括:
[0086] 根據(jù)預(yù)先設(shè)定的關(guān)聯(lián)規(guī)則的可信度閾值,在T(A)中挖掘大于可信度閾值的屬性 關(guān)聯(lián)規(guī)則。
[0087] 具體的,所述挖掘大于可信度閾值的屬性關(guān)聯(lián)規(guī)則為:
[0088] 在T㈧中選擇兩個(gè)向量,記為T%)和T(A2),其中,T%)表示由屬性子集心中 所有元素對應(yīng)的向量基確定的屬性集上的向量,t(a2)表示由屬性子集六2中所有元素對應(yīng) 的向量基確定的屬性集上的向量。T(Ai)和T(A2)中任一個(gè)向量為前件,另一個(gè)向量減去前 件為后件,生成一條屬性關(guān)聯(lián)規(guī)則,即:
[0089] T(AJ-(T(A2)-T%))或T(A2) -(T(AJ-Τ