] 步驟2023 :將該頻繁序列元素加入到該目標關聯(lián)規(guī)則的前件或后件中,以將形 成的目標關聯(lián)規(guī)則加入至第一集合。
[0113] 需要說明的是:本實施例中的執(zhí)行步驟201 :獲取以兩個頻繁序列元素分別作為 前件和后件而形成的所有目標關聯(lián)規(guī)則,并加入第一集合后,執(zhí)行步驟2021。
[0114] 步驟2021中獲取了第一集合中的一個目標關聯(lián)規(guī)則和一個頻繁序列元素。為了 提高獲取目標支持度大于第二閾值和目標置信度大于第三閾值的目標關聯(lián)規(guī)則的效率,在 本實施例中,先經(jīng)過步驟2022的判斷,再決定是否將該頻繁序列元素加入到該目標關聯(lián)規(guī) 則中。
[0115] 步驟2022中的目標關聯(lián)規(guī)則的相符序列為至少一個序列中符合該目標關聯(lián)規(guī)則 的序列。例如:實施例1中的目標關聯(lián)規(guī)則{a} - {c} dn8uhelbkzum,在至少一個序列中的相符序 列是序列S1和序列S2。
[0116] 如果該頻繁序列元素沒有出現(xiàn)在任意一個該目標關聯(lián)規(guī)則相符序列中,則不能將 該頻繁序列元素加入到該目標關聯(lián)規(guī)則的前件和后件中,此時應跳回步驟2021,重新獲取 一個目標關聯(lián)規(guī)則和不包含在該目標關聯(lián)規(guī)則的前件和后件中的一個頻繁序列元素。
[0117] 如果該頻繁序列元素出現(xiàn)在了任意一個該目標關聯(lián)規(guī)則的相符序列中,則執(zhí)行步 驟 2023。
[0118] 執(zhí)行步驟2023后,執(zhí)行步驟203,判斷判斷在第一集合中的一個目標關聯(lián)規(guī)則的 前件或后件中加入不包含在該前件和該后件中的頻繁序列元素是否能得到新的目標關聯(lián) 規(guī)則。
[0119] 步驟203的判斷過程與實施例2中記載的步驟203的判斷過程相同,區(qū)別的是,若 在第一集合中的一個目標關聯(lián)規(guī)則的前件或后件中加入不包含在該前件和該后件中的頻 繁序列元素能得到新的目標關聯(lián)規(guī)則,則跳回到步驟2021。
[0120] 本實施例在實施例2的基礎上進一步增加了判斷條件,避免了不包含在相符序列 中的頻繁序列元素與目標關聯(lián)規(guī)則的組合,減少了需要計算的目標關聯(lián)規(guī)則的目標支持度 和目標置信度的目標關聯(lián)規(guī)則的數(shù)量,提高了序列規(guī)則挖掘的效率。
[0121] 實施例4:
[0122] 本實施例記載了實施例3中的步驟2021之后加入一個用于提高目標關聯(lián)規(guī)則的 獲取效率的【具體實施方式】,圖4是本發(fā)明一個實施例提供的序列規(guī)則的挖掘方法中根據(jù)序 列元素在目標關聯(lián)規(guī)則的前件或后件中出現(xiàn)的位置生成目標關聯(lián)規(guī)則的步驟流程示意圖。 具體步驟為:
[0123] 按照圖1中的步驟100在至少一個序列中的所有頻繁序列元素中獲取頻繁序列元 素。
[0124] 按照圖3中的步驟201 :獲取以所有頻繁序列元素中的兩個頻繁序列元素分別作 為前件和后件而形成的所有目標關聯(lián)規(guī)則,并加入第一集合。步驟201之后的步驟如圖4 所示。
[0125] 步驟2021:在第一集合中獲取一個目標關聯(lián)規(guī)則和不包含在該目標關聯(lián)規(guī)則的 前件和該后件中的一個頻繁序列元素。
[0126] 步驟2022的判斷過程與實施例3中記載的步驟2022的判斷過程相同。不同的是, 如果步驟2022的判斷結果是該頻繁序列元素出現(xiàn)在了任意一個該目標關聯(lián)規(guī)則的相符序 列中,則執(zhí)行步驟2024a。否則,跳到步驟203。
[0127] 步驟2024a:判斷在所有的相符序列中,該頻繁序列元素是否全部位于該目標關 聯(lián)規(guī)則的后件中的頻繁序列元素最后出現(xiàn)的位置之前。
[0128] 需要說明的是:該目標關聯(lián)規(guī)則的后件中的頻繁序列元素最后出現(xiàn)的位置指的是 在一個相符序列中,目標關聯(lián)規(guī)則的后件中的所有頻繁序列元素的出現(xiàn)位置中,最后出現(xiàn) 的位置。
[0129] 若該頻繁序列元素全部位于該目標關聯(lián)規(guī)則的后件中的頻繁序列元素最后出現(xiàn) 的位置之前,則執(zhí)行步驟2023a。
[0130] 步驟2023a:將該頻繁序列元素加入到該目標關聯(lián)規(guī)則的前件中,以將形成的目 標關聯(lián)規(guī)則加入至第一集合。
[0131] 若該頻繁序列元素不是全部位于該目標關聯(lián)規(guī)則的后件中的頻繁序列元素最后 出現(xiàn)的位置之前,則跳到步驟2024b。
[0132] 步驟2024b:判斷在所有的相符序列中,該頻繁序列元素是否全部位于該目標關 聯(lián)規(guī)則的前件中的頻繁序列元素首次出現(xiàn)的位置之后。
[0133] 需要說明的是:該目標關聯(lián)規(guī)則的前件中的頻繁序列元素首次出現(xiàn)的位置指的是 在一個相符序列中,目標關聯(lián)規(guī)則的前件中的所有頻繁序列元素的出現(xiàn)位置中,首次出現(xiàn) 的位置。
[0134] 若該頻繁序列元素全部位于該目標關聯(lián)規(guī)則的前件中的頻繁序列元素首次出現(xiàn) 的位置之后,則執(zhí)行步驟2023b。
[0135] 步驟2023b:將該頻繁序列元素加入到該目標關聯(lián)規(guī)則的后件中,以將形成的目 標關聯(lián)規(guī)則加入至第一集合。
[0136] 若該頻繁序列元素不是全部位于該目標關聯(lián)規(guī)則的后件中的頻繁序列元素最后 出現(xiàn)的位置之前,則跳到步驟2021。
[0137] 步驟2023a只將頻繁序列元素加入到目標關聯(lián)規(guī)則的前件中,步驟2023b只將頻 繁序列元素加入到目標關聯(lián)規(guī)則的后件中。執(zhí)行步驟2023a或步驟2023b后,執(zhí)行步驟203.
[0138] 本實施例中,步驟203和步驟204與實施例3中記載的步驟203和步驟204相同。
[0139] 優(yōu)選地,將頻繁序列元素或目標關聯(lián)規(guī)則的位置存儲在哈希表中,可以提高判斷 頻繁序列元素或目標關聯(lián)規(guī)則的位置確定的效率。
[0140] 本實施例在實施例3的基礎上,進一步地在將一個頻繁序列元素加入到一個目標 關聯(lián)規(guī)則之前,判斷該頻繁序列元素是否可以加入到該目標關聯(lián)的前件或者后件中。該判 斷過程的加入減少了需要計算的目標關聯(lián)規(guī)則的目標支持度和目標置信度的目標關聯(lián)規(guī) 則的數(shù)量,提高了序列規(guī)則挖掘的效率。
[0141] 實施例5:
[0142] 本實施例記載了實施例3中的步驟202之后加入了避免產(chǎn)生重復的目標關聯(lián)規(guī)則 的步驟,可以進一步提尚目標關聯(lián)規(guī)則的獲取效率,圖5是本發(fā)明一個實施例提供的序列 規(guī)則的挖掘方法中根據(jù)上一次目標關聯(lián)規(guī)則的形成過程獲取目標關聯(lián)規(guī)則的步驟流程示 意圖。
[0143] 按照圖1中的步驟100在至少一個序列中的所有頻繁序列元素中獲取頻繁序列元 素。
[0144] 按照圖3中的步驟201 :獲取以所有頻繁序列元素中的兩個頻繁序列元素分別作 為前件和后件而形成的所有目標關聯(lián)規(guī)則,并加入第一集合。步驟201之后的步驟如圖5 所示。
[0145] 步驟2021:在第一集合中獲取一個目標關聯(lián)規(guī)則和不包含在該目標關聯(lián)規(guī)則的 前件和該后件中的一個頻繁序列元素。
[0146] 步驟2025a:在所有頻繁序列元素排列而成的一個參考序列中,該頻繁序列元素 沒有位于該目標關聯(lián)規(guī)則的前件中的所有頻繁序列元素之前。
[0147] 需要說明的是:參考序列是所有頻繁序列元素組成的序列。設置一個參考序列是 為了區(qū)分各個頻繁序列元素。該頻繁序列元素沒有位于該目標關聯(lián)規(guī)則的前件中的所有頻 繁序列元素之前,指的是,在該參考序列中,該頻繁序列元素沒有出現(xiàn)在該目標關聯(lián)規(guī)則前 件中的所有頻繁序列元素出現(xiàn)的位置之前。
[0148] 若在所有頻繁序列元素排列而成的一個參考序列中,該頻繁序列元素位于該目標 關聯(lián)規(guī)則的前件中的所有頻繁序列元素之前,執(zhí)行步驟2023a。若在所有頻繁序列元素排列 而成的一個參考序列中,該頻繁序列元素沒有位于該目標關聯(lián)規(guī)則的前件中的所有頻繁序 列元素之前,則執(zhí)行步驟2025b。
[0149] 步驟2025b:在該參考序列中,該頻繁序列元素沒有位于一個目標關聯(lián)規(guī)則的后 件中的所有頻繁序列元素之前。
[0150] 需要說明的是:該參考序列指的是步驟2025a中的參考序列,該頻繁序列元素沒 有位于該目標關聯(lián)規(guī)則的后件中的所有頻繁序列元素之前,指的是,在該參考序列中,該頻 繁序列元素沒有出現(xiàn)在該目標關聯(lián)規(guī)則后件中的所有頻繁序列元素出現(xiàn)的位置之前。
[0151] 若在所有頻繁序列元素排列而成的一個參考序列中,該頻繁序列元素位于該目標 關聯(lián)規(guī)則的前件中的所有頻繁序列元素之前,執(zhí)行步驟2023b。若在所有頻繁序列元素排列 而成的一個參考序列中,該頻繁序列元素沒有位于該目標關聯(lián)規(guī)則的前件中的所有頻繁序 列元素之前,則跳回到步驟2021。
[0152] 步驟2023a、步驟2023b、步驟203和步驟204與實施例4中的步驟2023a、步驟 2023b、步驟203和步驟204相同。
[0153] 本實施例中,步驟2025a和步驟2025b是對所有的頻繁序列元素排序,類似的方法 還有:給所有頻繁序列元素進行順序編號或字典序編號。該步驟的加入是因為同樣的目標 關聯(lián)規(guī)則可以通過將不同的頻繁序列元素加入到不同目標關聯(lián)規(guī)則的左側或者右側得到。 例如:對于目標關聯(lián)規(guī)則 {c} - dn8uhelbkzum,可能是將頻繁序列元素加入到目標關聯(lián)規(guī)則 {c} - dn8uhelbkzum的前件中得到,也可能是將頻繁序列元素{c}加入到目標關聯(lián)規(guī)則 - dn8uhelbkzum的 前件中得到。
[0154] 本實施例提供了避免獲得重復的目標關聯(lián)規(guī)則的方法,避免了對重復的目標關聯(lián) 規(guī)則的判斷,提高了關聯(lián)規(guī)則挖掘的效率。
[0155] 實施例6:
[0156] 本實施例記載了實施例3中的步驟2021之后加入了避免產(chǎn)生重復的目標關聯(lián)規(guī) 則的步驟,可以進一步提尚目標關聯(lián)規(guī)則的獲取效率,圖6是本發(fā)明一個實施例提供的序 列規(guī)則的挖掘方法中根據(jù)頻繁序列元素的出現(xiàn)次數(shù)和位置獲取目標關聯(lián)規(guī)則的步驟流程 示意圖。
[0157] 按照圖1中的步驟100在至少一個序列中的所有頻繁序列元素中獲取頻繁序列元 素。
[0158] 按照圖3中的步驟201 :獲取以所有頻繁序列元素中的兩個頻繁序列元素分別作 為前件和后件而形成的所有目標關聯(lián)規(guī)則,并加入第一集合。步驟201之后的步驟如圖6 所示。
[0159] 在第一集合中獲取一個目標關聯(lián)規(guī)則和不包含在該目標關聯(lián)規(guī)則的前件和該后 件中的一個頻繁序列元素。
[0160] 步驟2024a和步驟2024b與實施例4中的步驟2024a和步驟2024b相同,不同的 是步驟2024b中若判定在所有的相符序列中,該頻繁序列元素全部位于該目標關聯(lián)規(guī)則的 前件中的頻繁序列元素首次出現(xiàn)的位置之后,跳到步驟2026,否則跳到步驟203。
[0161] 步驟2026 :判斷該目標關聯(lián)規(guī)則是否是在前件中加入一個頻繁序列元素而形成 的或者該目標關聯(lián)規(guī)則的前件和后加均只有一個頻繁序列元素。
[0162] 需要說明的是:該目標關聯(lián)規(guī)則是否是在前件中加入一個頻繁序列元素而形成 的,指的是,該目標關聯(lián)規(guī)則是否是通過將一個頻繁序列元素加入到一個目標關聯(lián)規(guī)則的 前件中得到的。例如對于一個頻繁序列元素{e}和目標關聯(lián)規(guī)則{a} - dn8uhelbkzum {c},判斷目 標關聯(lián)規(guī)則{a} - dn8uhelbkzum {c}是否是將頻繁序列元素{a}加入到目標關聯(lián)規(guī)則 - dn8uhelbkzum {c}形成或者是將頻繁序列元素加入到目標關聯(lián)規(guī)則{a} - dn8uhelbkzum {c}形成。
[0163] 圖6中的步驟2026 "或者該目標關聯(lián)規(guī)則的前件和后件均只有一個頻繁序列元 素"是用于判斷該目標關聯(lián)規(guī)則是否是在步驟201中的第一集合中得到的目標關聯(lián)規(guī)則。 若該目標關聯(lián)規(guī)則不是在前件中加入一個頻繁序列