1. 程式人生 > >購物籃分析分類演算法——頻繁模式挖掘(聚類演算法)

購物籃分析分類演算法——頻繁模式挖掘(聚類演算法)

        頻繁模式是頻繁地出現在資料集中的模式,包括頻繁項集(如牛奶和麵包)、頻繁子序列(首先購買PC,然後是數碼相機,再後是記憶體卡)或頻繁子結構(涉及不同的結構形式,如子圖、子樹或子格,它可能與項集或子序列結合在一起)。從大量的商務事物記錄中發現有趣相關聯絡,可為分類設計、交叉銷售和購物購買習慣分析等許多商務決策過程提供幫助。

頻繁項集挖掘,如購物籃分析等,這些模式可用關聯規則的形式表示。

       關聯規則的支援度為2%,意味所分析的所有事務的2%顯示計算機和防毒軟體被同時購買。置信度60%意味購買計算機的顧客60%也購買了防毒軟體。

      項的集合稱為項集。包含k個項的項集稱為k項集。項集的出現頻度是包含項集的事務數,稱為項集的頻度、支援度計數或計數。

(1)挖掘關聯規則的問題可歸結為挖掘頻繁項集:

第一步找出所有的頻繁項集,這些項集的每一個頻繁出現的次數至少與預定義的最小支援計數min_sup一樣;

第二步由頻繁項集產生強關聯規則,這些規則必須滿足最小支援度和最小置信度;

第三步組織規則,形成基於規則的分類器。

 (2) Apriori演算法

       從大型資料集中挖掘頻繁項集的主要挑戰是,這種挖掘常常產生大量滿足最小支援度閾值的項集,當min_sup設定得很低時尤其如此。

       Apriori演算法:通過限制候選產生髮現頻繁項集。是一種發現頻繁項集的基本演算法。Apriori意思是先驗的。該演算法使用頻繁項集性質的先驗知識。該演算法使用一種稱為逐層搜尋的迭代方法,其中k項集用於探索(k+1)項集。首先,通過掃描資料庫,累計每個項的計算,並收集滿足最小支援度的項,找出頻繁1項集的集合。

找出頻繁2項集據庫的完整掃描。

       為了提高頻繁項集逐層產生效率,先驗性質(Apriori property)的重要性質可用於壓縮搜尋空間。先驗性質:頻繁項集的所有非空子集也一定是頻繁的。

      如何在演算法中使用先驗性質?

     Step1 兩兩組合連線步:項集L1和自身連線,即L1項集中的項兩兩組合產生C2;項集L2項集中的項兩兩組合產生C3,依次類推.

     Step2 使用先驗性質剪枝步: 任何非頻繁的(k-1)項集都不是頻繁k項集的子集。因此,如果一個候選k項集的(k-1)項子集不在中,則該候選也不可能是頻繁的,從而可以從中刪除。

(此圖取自資料探勘韓家煒老師)

(3)模式評估方法

關聯規則挖掘有時會產生一些使用者不感興趣的規則。當使用低支援度閾值挖掘或挖掘長模式時,情況特別嚴重(關聯規則挖掘成功應用的主要瓶頸之一),容易產生誤導,比如計算機遊戲和錄影實際上應該是負相關,不應該關聯在一起。

從關聯分析到相關分析

提升度(lift)一種簡單的相關性度量。項集A的出現獨立於項集B的出現,如果;否則,作為事件,項集A和B是依賴的和相關的。

提升度的值小於1,則A的出現與B的出現是呈負相關的,意味一個出現可能導致另一個不出現。如果結果值大於1,則A和B是正相關的,意味每一個的出現都蘊涵另一個的出現。如果結果值等於1,則A和B是獨立的,它們之間沒有相關性。

提升度計算公式等價於也稱關聯(或相關)規則的提升度。它評估一個的出現“提升”另一個出現的程度。

使用卡方進行相關分析