關聯規則挖掘

2021-10-05 04:50:22 字數 2679 閱讀 6494

1. 基本概念

關聯規則挖掘是指尋找給定資料集中項之間的有趣關聯或相關聯絡。可以幫助許多決策的制定,如分類設計、交叉購物和賤賣分析。典型的例子就是購物籃分析。

2. 關聯規則的步驟

(1)找出所有的頻繁項集:這些項集出現的頻繁性至少和預定義的最小支援數一樣

(2)由頻繁項集產生強關聯規則:這些規則必須滿足最小支援度和最小置信度

3. 關聯規則的分類

(1)根據規則中所處理的值型別:布林關聯規則(項的在與不在)和量化關聯規則(量化的項或屬性之間的關聯);

(2)根據規則中涉及的資料維:單維關聯規則和多維關聯規則

(3)根據規則集中所涉及的抽象層:單層關聯規則和多層關聯規則

(4)根據關聯挖掘的各種擴充:最大模式和頻繁閉項集

4. 最簡單形式的關聯規則方法——apriori演算法

(1)定義:是一種最有影響的挖掘布林關聯規則頻繁性集的演算法

(2)性質:頻繁項集的所有非空子集都必須也是頻繁的

(3)原理:

使用候選集找頻繁項集:發現滿足最小支援度的所有項集

由頻繁項集產生強關聯規則(大於或等於最小支援度閾值和最小置信度閾值的規則)支援度(a=>b) = 同時包含a和b的記錄數 / 資料集記錄總數

置信度(a=>b) = 同時包含a和b的記錄數 / 資料集中包含a的記錄數

對於每個頻繁項集l,產生l的所有非空子集;

對於l的每個非空子集s,如果support_count(l)/support_count(s) >= min_conf,則輸出規則「s => (l-s)」。其中,min_conf是最小置信度閾值。

5. 提高apriori的有效性(1) 基於雜湊的技術(雜湊項集計數):一種基於雜湊的技術可以用於壓縮候選k-項集ck (k >1)。例如,當掃瞄資料庫中每個事務,由c1 中的候選1-項集產生頻繁1-項集l1 時,我們可以對每個事務產生所有的2-項集,將它們雜湊(即,對映)到雜湊表結構的不同桶中,並增加對應的桶計數。在雜湊表中對應的桶計數低於支援度閾值的2-項集不可能是頻繁2-項集,因而應當由候選項集中刪除。這種基於雜湊的技術可以大大壓縮要考察的k-項集(特別是當k = 2 時)。

(2) 事務壓縮(壓縮進一步迭代掃瞄的事務數):不包含任何k-項集的事務不可能包含任何(k+1)-項集。這樣,這種事務在其後的考慮時,可以加上標記或刪除,因為為產生j-項集(j > k),掃瞄資料庫時不再需要它們。

(3) 劃分(為找候選項集劃分資料):可以使用劃分技術,它只需要兩次資料庫掃瞄,以挖掘頻繁項集。它包含兩遍。在第i 遍,演算法將d 中的事務劃分成n 個非重疊的部分。如果d 中事務的最小支援度閾值為min_sup,則每個部分的最小支援度計數為min_sup´該部分中事務數。對每一部分,找出該部分內的頻繁項集。這些稱作區域性頻繁項集。該過程使用一種特殊的資料結構,對於每個項集,記錄包含項集中項的事務的tid。這使得對於k = 1,2,…,找出所有的區域性頻繁k-項集只需要掃瞄一次資料庫。

(4) 選樣(在給定資料的乙個子集挖掘):選樣方法的基本思想是:選取給定資料庫d 的隨機樣本s,然後,在s 而不是在d 中搜尋頻繁項集。用這種方法,我們犧牲了一些精度換取了有效性。樣本s的大小這樣選取,使得可以在記憶體搜尋s 中頻繁項集;這樣,總共只需要掃瞄一次s 中的事務。由於我們搜尋s 中而不是d 中的頻繁項集,我們可能丟失一些全域性頻繁項集。為減少這種可能性,我們使用比最小支援度低的支援度閾值來找出區域性於s 的頻繁項集(記作ls)。然後,資料庫的其餘部分用於計算ls 中每個項集的實際頻繁度。有一種機制可以用來確定是否所有的頻繁項集都包含在ls 中。如果ls 實際包含了d 中的所有頻繁項集,只需要掃瞄一次d。否則,可以做第二次掃瞄,以找出在第一次掃瞄時遺漏的頻繁項集。當效率最為重要時,如計算密集的應用必須在不同的資料上執行時,選樣方法特別合適。

6. 不產生候選挖掘頻繁項集

apriori演算法可能需要產生大量候選項集,且可能需要重複地掃瞄資料庫。

解決方法:頻繁模式增長,或簡單地,fp-增長,它採取如下分治策略:將提供頻繁項集的資料庫壓縮到一棵頻繁模式樹(或fp-樹),但仍保留項集關聯資訊;然後,將這種壓縮後的資料庫分成一組條件資料庫(一種特殊型別的投影資料庫),每個關聯乙個頻繁項,並分別挖掘每個資料庫。

fp-增長方法將發現長頻繁模式的問題轉換成遞迴地發現一些短模式,然後與字尾連線。它使用最不頻繁的項作字尾,提供了好的選擇性。該方法大大降低了搜尋開銷。當資料庫很大時,構造基於記憶體的fp-樹是不現實的。一種有趣的替換是首先將資料庫劃分成投影資料庫的集合,然後在每個投影資料庫上構造fp-樹並挖掘它。該過程可以遞迴地用於投影資料庫,如果它的fp-樹還不能放進記憶體。對fp-樹方法的效能研究表明:對於挖掘長的和短的頻繁模式,它都是有效的和可規模化的,並且大約比apriori 演算法快乙個數量級。它也比樹-投影演算法快。樹-投影演算法遞迴地將資料庫投影為投影資料庫樹。

關聯規則挖掘

關聯規則反映事物之間的相互依存性和關聯性。如果事物之間存在一定的關聯,那麼我們就可以通過乙個事物去 另乙個事物。我們要挖掘大量資料中人們感興趣的,有價值的資訊,包括概念,規則,規律等。關聯規則 發現資料中的規律 超市中什麼產品會 起購買?組合推薦 顧客在買了 臺pc之後下 步會購買?搭配推薦 哪種d...

關聯規則挖掘

直接用例項來解釋概念更清楚一些,加入資料庫中存在10條交易記錄 transaction 具體如下表所示 交易id tid 購買商品 items b bread c cream m milk t tea t01b c m t t02b c m t03c m t04m t t05b c m t06b t...

關聯規則挖掘

概念 支援度 某個商品組合出現的次數與總次數之間的比例 置信度 置信度是個條件概念,就是說在 a 發生的情況下,b 發生的概率是多少 提公升度 衡量 a 出現的情況下,是否會對 b 出現的概率有所提公升 提公升度 a b 置信度 a b 支援度 b 缺點 cba 演算法 gsp 演算法 aprior...