挖掘出來,避免了由于沒有將低支持度的關(guān)聯(lián)規(guī)則作為可以用于預(yù)測的 有效規(guī)則造成的預(yù)測錯(cuò)誤。
【附圖說明】
[0061] 為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā) 明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根 據(jù)這些附圖獲得其他的附圖。
[0062] 圖1為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法的步驟流程示意圖;
[0063] 圖2為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中獲取目標(biāo)關(guān)聯(lián)規(guī)則的流 程不意圖;
[0064] 圖3為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中的根據(jù)序列元素生成目 標(biāo)關(guān)聯(lián)規(guī)則的流程示意圖;
[0065] 圖4為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中根據(jù)序列元素在目標(biāo)關(guān) 聯(lián)規(guī)則的前件或后件中出現(xiàn)的位置生成目標(biāo)關(guān)聯(lián)規(guī)則的步驟流程示意圖;
[0066] 圖5為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中根據(jù)上一次目標(biāo)關(guān)聯(lián)規(guī) 則的形成過程獲取目標(biāo)關(guān)聯(lián)規(guī)則的步驟流程示意圖;
[0067] 圖6為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中根據(jù)頻繁序列元素的出 現(xiàn)次數(shù)和位置獲取目標(biāo)關(guān)聯(lián)規(guī)則的步驟流程示意圖;
[0068] 圖7為本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘系統(tǒng)的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0069] 實(shí)施例1 :
[0070] 圖1是本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法的步驟流程示意圖。參見圖 1,該序列規(guī)則的挖掘方法包括:
[0071] 步驟100 :在至少一個(gè)序列中的所有序列元素中獲取頻繁序列元素;包含該頻繁 序列元素的序列占至少一個(gè)序列的比例大于第一閾值。
[0072] 步驟200:在所述頻繁序列元素形成的關(guān)聯(lián)規(guī)則中,獲取所有的目標(biāo)關(guān)聯(lián)規(guī)則以 組成第一集合。
[0073] 其中,需要說明的是:步驟100中的至少一個(gè)序列是預(yù)先獲取的序列,至少一個(gè)序 列中的每一個(gè)序列均由至少一個(gè)序列元素組成。第一閾值是一個(gè)預(yù)先設(shè)定的數(shù)值。第二閾 值和第三閾值也都為預(yù)設(shè)的數(shù)字,其中第二閾值的設(shè)定可按照序列規(guī)則的最小支持度閾值 的設(shè)定方法進(jìn)行設(shè)定,第三閾值可按照序列規(guī)則的最小置信度閾值的設(shè)定方法進(jìn)行設(shè)定。
[0074]目標(biāo)關(guān)聯(lián)規(guī)則的前件和后件均由不分順序的至少一個(gè)頻繁序列元素組成;為目標(biāo) 關(guān)聯(lián)規(guī)則的前件和后件各自規(guī)定一種排列順序后形成一個(gè)有序目標(biāo)規(guī)則。
[0075] 所述目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)支持度大于第二閾值;所述目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)支持度 為該目標(biāo)關(guān)聯(lián)規(guī)則所有有序目標(biāo)規(guī)則在所述至少一個(gè)序列中的支持度的總和。
[0076]目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)置信度大于第三閾值;所述目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)置信度為所 述至少一個(gè)序列中符合該目標(biāo)關(guān)聯(lián)規(guī)則的任一有序目標(biāo)規(guī)則的序列的數(shù)量,與所述至少一 個(gè)序列中包含該目標(biāo)關(guān)聯(lián)規(guī)則的前件的序列的數(shù)量之間的比值。
[0077] 對于得到的關(guān)聯(lián)規(guī)則,通過計(jì)算得到其目標(biāo)支持度和目標(biāo)置信度,并分別與第二 閾值和第三閾值進(jìn)行對比,符合目標(biāo)支持度大于第二閾值,目標(biāo)置信度大于第三閾值的關(guān) 聯(lián)規(guī)則是目標(biāo)關(guān)聯(lián)規(guī)則。
[0078] 例如,對于至少一個(gè)序列:
[0079] SI:, {a}, dn8uhelbkzum, {e}, {m}, {j}, {q}, {c}
[0080] S2 : {e},{f},{a},,{c},{p},dn8uhelbkzum
[0081] S3:{a},,dn8uhelbkzum,{h},{〇},{g}
[0082] S4 : {a},dn8uhelbkzum,,{c},{i}
[0083] 預(yù)先設(shè)定的第一閾值為0.4。
[0084] 對于至少一個(gè)序列中的一個(gè)序列元素{c},由于包含序列元素{c}的序列有序列 S1、序列S2和序列S4,共3個(gè),所以包含序列元素{c}的序列占至少一個(gè)序列的比例為3/4, 大于第一閾值,所以序列元素{c}是頻繁序列元素。
[0085] 第二閾值設(shè)定為0· 4,第三閾值設(shè)定為0· 4。
[0086] 目標(biāo)關(guān)聯(lián)規(guī)則的前件和后件均由不分順序的至少一個(gè)頻繁序列元素組成。例如, 目標(biāo)關(guān)聯(lián)規(guī)則{a} - {c} dn8uhelbkzum,前件{a} 之間是不分順序的排列的,包括:先{a}后 和先后{a}。后件{c} dn8uhelbkzum之間是不分順序的排列的,包括:先{c}后dn8uhelbkzum和先dn8uhelbkzum后 {c} 〇
[0087] 如果為目標(biāo)關(guān)聯(lián)規(guī)則的前件和后件各自規(guī)定一種排列順序得到的關(guān)聯(lián)規(guī)則為有 效目標(biāo)規(guī)則。例如,對于目標(biāo)關(guān)聯(lián)規(guī)則{a} - {c}dn8uhelbkzum,規(guī)定前件的一種排列順序?yàn)?{a},后件的一種排列順序?yàn)閧c} dn8uhelbkzum,形成的有序目標(biāo)規(guī)則是 {a} - {c} dn8uhelbkzum。在有序目 標(biāo)規(guī)則 {a} - {c} dn8uhelbkzum中,前件中的頻繁序列元素{a}和之間的排列順序是先 后{a}。后件中的頻繁序列元素{c} dn8uhelbkzum之間的排列順序是先{c}后dn8uhelbkzum。
[0088] 目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)支持度為該目標(biāo)關(guān)聯(lián)規(guī)則所有有序目標(biāo)規(guī)則在所述至少一 個(gè)序列中的支持度的總和。例如,目標(biāo)關(guān)聯(lián)規(guī)則{a} - {c} dn8uhelbkzum的所有有序目標(biāo)規(guī)則有 {a} - {c} dn8uhelbkzum, {a} - {c} dn8uhelbkzum,{a} - dn8uhelbkzum {c}, {a} - dn8uhelbkzum {c}。{a} - {c} dn8uhelbkzum在至少一個(gè)序列中的支持度是:符合有序目標(biāo)規(guī)則{a} - {c} dn8uhelbkzum的序列是序列S2, 有序目標(biāo)規(guī)則{a} - {c} dn8uhelbkzum在至少一個(gè)序列中的支持度為1/4。有序目標(biāo)規(guī)則 {a} - {c} dn8uhelbkzum的支持度為0,有序目標(biāo)規(guī)則{a} - dn8uhelbkzum {c}的支持度為0,有序目標(biāo)規(guī)則 {a} - dn8uhelbkzum {c}的支持度為1/4。這4個(gè)有序目標(biāo)規(guī)則的目標(biāo)支持度之和為1/2,大于第 二閾值。
[0089] 目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)置信度為至少一個(gè)序列中符合該目標(biāo)關(guān)聯(lián)規(guī)則的所有有序 目標(biāo)規(guī)則的序列的數(shù)量,與至少一個(gè)序列中包含該目標(biāo)關(guān)聯(lián)規(guī)則的前件的序列的數(shù)量之間 的比值。例如,對于目標(biāo)關(guān)聯(lián)規(guī)則{a} - {c} dn8uhelbkzum的4個(gè)有序目標(biāo)規(guī)則,符合有序目標(biāo)規(guī) 則{a} - {c} dn8uhelbkzum的序列的數(shù)量是1,符合有序目標(biāo)規(guī)則 {a} - dn8uhelbkzum {c}的序列的數(shù)量 是1。符合有序目標(biāo)規(guī)則 {a} - {c} dn8uhelbkzum和{a} - dn8uhelbkzum {c}的序列的數(shù)量均為0。至 少一個(gè)序列中包含該目標(biāo)關(guān)聯(lián)規(guī)則{a} - {c} dn8uhelbkzum的前件{a}和的序列的數(shù)量有4 個(gè)。所以目標(biāo)關(guān)聯(lián)規(guī)則{a} - {c} dn8uhelbkzum的目標(biāo)置信度為1/2,大于第三閾值。
[0090] 可選地,采用窗口大小可以調(diào)節(jié)的滑動(dòng)窗口對序列的數(shù)量進(jìn)行計(jì)數(shù)可以提高計(jì)算 的速度。
[0091 ] 本實(shí)施例提供的序列規(guī)則挖掘方法,本發(fā)明提供的序列規(guī)則的挖掘方法和系統(tǒng), 能夠?qū)⑶凹秃蠹慕M成元素相同但排序不同的低支持度的關(guān)聯(lián)規(guī)則和高支持度的規(guī)則 作為一個(gè)整體的規(guī)則進(jìn)行挖掘。與現(xiàn)有技術(shù)相比,本發(fā)明提供的序列規(guī)則挖掘方法將前件 和后件的組成元素相同但排序不同的低支持度的關(guān)聯(lián)規(guī)則挖掘出來,避免了由于沒有將低 支持度的關(guān)聯(lián)規(guī)則作為可以用于預(yù)測的有效規(guī)則造成的預(yù)測錯(cuò)誤。
[0092] 實(shí)施例2 :
[0093] 圖2是本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中獲取目標(biāo)關(guān)聯(lián)規(guī)則的流 程示意圖。參見圖2,該序列規(guī)則的挖掘方法包括:
[0094] 按照圖1中的步驟100在至少一個(gè)序列中的所有頻繁序列元素中獲取頻繁序列元 素;步驟100之后的步驟如圖2所示。
[0095] 步驟201 :獲取以所有頻繁序列元素中的兩個(gè)頻繁序列元素分別作為前件和后件 而形成的所有目標(biāo)關(guān)聯(lián)規(guī)則,并加入第一集合。
[0096] 步驟202 :在第一集合中的一個(gè)目標(biāo)關(guān)聯(lián)規(guī)則的前件或后件中加入不包含在該前 件和該后件中的頻繁序列元素,以將形成的目標(biāo)關(guān)聯(lián)規(guī)則加入至第一集合。
[0097] 步驟203 :判斷在第一集合中的一個(gè)目標(biāo)關(guān)聯(lián)規(guī)則的前件或后件中加入不包含在 該前件和該后件中的頻繁序列元素是否能得到新的目標(biāo)關(guān)聯(lián)規(guī)則。
[0098] 若步驟203中判斷得到在第一集合中的一個(gè)目標(biāo)關(guān)聯(lián)規(guī)則的前件或后件中加入 不包含在該前件和該后件中的頻繁序列元素能得到新的目標(biāo)關(guān)聯(lián)規(guī)則,則跳回到步驟202。
[0099] 若步驟203中判斷得到在第一集合中的一個(gè)目標(biāo)關(guān)聯(lián)規(guī)則的前件或后件中加入 不包含在該前件和該后件中的頻繁序列元素不能得到新的目標(biāo)關(guān)聯(lián)規(guī)則,則執(zhí)行步驟204: 結(jié)束。
[0100] 需要說明的是:步驟201中的兩個(gè)頻繁序列元素是在如圖1所示的步驟100中獲 取的頻繁序列元素。若在所有的頻繁序列元素中的兩個(gè)頻繁序列元素分別作為前件和后件 形成的規(guī)則是目標(biāo)關(guān)聯(lián)規(guī)則,就將該目標(biāo)關(guān)聯(lián)規(guī)則加入到第一集合中,直到得到所有的頻 繁序列元素中的兩個(gè)頻繁序列元素分別作為前件和后件形成的所有目標(biāo)關(guān)聯(lián)規(guī)則。從步驟 201中,得到了所有由頻繁序列元素組成的,前件和后件都只包含一個(gè)頻繁序列元素的目標(biāo) 關(guān)聯(lián)規(guī)則的第一集合。
[0101] 步驟202中,將不包含在該目標(biāo)關(guān)聯(lián)規(guī)則前件且不包含在該目標(biāo)關(guān)聯(lián)規(guī)則后件中 的頻繁序列元素加入到該目標(biāo)關(guān)聯(lián)規(guī)則的前件或后件中,若得到的目標(biāo)關(guān)聯(lián)規(guī)則的目標(biāo)支 持度大于第二閾值且目標(biāo)置信度大于第三閾值,將該目標(biāo)關(guān)聯(lián)規(guī)則加入到第一集合中。
[0102] 若不滿足目標(biāo)支持度大于第二閾值且目標(biāo)置信度大于第三閾值的要求,則執(zhí)行步 驟 203。
[0103] 步驟203用來判斷第一集合中的目標(biāo)關(guān)聯(lián)規(guī)則和頻繁序列元素組合后是否能得 到新的目標(biāo)關(guān)聯(lián)規(guī)則。此處的新的目標(biāo)關(guān)聯(lián)規(guī)則指的是頻繁序列元素加入到第一集合中的 目標(biāo)關(guān)聯(lián)規(guī)則前件或后件中得到的不包括在第一集合中的目標(biāo)關(guān)聯(lián)規(guī)則。若能得到新的目 標(biāo)關(guān)聯(lián)規(guī)則,則跳回到步驟202。
[0104] 若不能得到新的目標(biāo)關(guān)聯(lián)規(guī)則,執(zhí)行步驟204 :結(jié)束。此時(shí),第一集合中的所有目 標(biāo)關(guān)聯(lián)規(guī)則就是從至少一個(gè)序列中得到的目標(biāo)支持度和目標(biāo)置信度均滿足要求的所有的 目標(biāo)關(guān)聯(lián)規(guī)則。
[0105] 本實(shí)施例在實(shí)施例1的基礎(chǔ)上,通過循環(huán)的檢測已經(jīng)獲得的目標(biāo)關(guān)聯(lián)規(guī)則是否能 繼續(xù)得到新的目標(biāo)關(guān)聯(lián)規(guī)則,確保每一個(gè)滿足目標(biāo)支持度和目標(biāo)置信度要求的目標(biāo)關(guān)聯(lián)規(guī) 則都可以被挖掘,保證了目標(biāo)關(guān)聯(lián)規(guī)則挖掘的完整性。
[0106] 實(shí)施例3 :
[0107] 圖3是本發(fā)明一個(gè)實(shí)施例提供的序列規(guī)則的挖掘方法中的根據(jù)序列元素生成目 標(biāo)關(guān)聯(lián)規(guī)則的流程示意圖。參見圖3,該序列規(guī)則的挖掘方法包括:
[0108] 按照圖1中的步驟100在至少一個(gè)序列中的所有頻繁序列元素中獲取頻繁序列元 素。
[0109] 步驟201:獲取以所有頻繁序列元素中的兩個(gè)頻繁序列元素分別作為前件和后件 而形成的所有目標(biāo)關(guān)聯(lián)規(guī)則,并加入第一集合。
[0110] 步驟2021 :在第一集合中獲取一個(gè)目標(biāo)關(guān)聯(lián)規(guī)則和不包含在該目標(biāo)關(guān)聯(lián)規(guī)則的 前件和該后件中的一個(gè)頻繁序列元素。
[0111] 步驟2022:判斷該頻繁序列元素是否沒有出現(xiàn)在任意一個(gè)該目標(biāo)關(guān)聯(lián)規(guī)則的相 符序列中。
[0112