【ML小結6】關聯分析與序列模式關聯分析

一、關聯分析

關聯分析主要是用於從數據集中發現數據項之間的關係

1. 基本概念

1.1 支持度

X → Y 的支持度表示項集 {X,Y} 在總項集中出現的概率:
support(XY)=P(X,Y)support(X\rightarrow Y)=P(X,Y)
用於衡量同時滿足X和Y的概率。

1.2 置信度

X → Y 的置信度表示在先決條件 X 發生的情況下,由規則 X → Y 推出 Y 的概率。
confident(XY)=P(YX)confident(X\rightarrow Y)=P(Y|X)
用於衡量X與Y之間的關聯性。

1.3 提升度

X → Y 的提升度等於 X → Y 的置信度除以 Y 的支持度
lift(XY)=confident(XY)support(Y)=P(YX)P(Y)=P(X,Y)P(X)P(Y)lift(X\rightarrow Y)=\frac{confident(X\rightarrow Y)}{support(Y)}=\frac{P(Y|X)}{P(Y)}=\frac{P(X,Y)}{P(X)P(Y)}
用於衡量關聯規則是否可用,大於1則可用

1.4 關聯分析

關聯分析的本質就是在集合裏找出大於最小支持度閾值和最小信任度閾值的關聯規則,並依據提升度找出其中可用(lift>1)的關聯規則。

2. 求解算法:Aprior算法

2.1 算法描述

Apriori算法的目標是找到最大的K項頻繁集。這裏有兩層意思,

  • 首先,我們要找到符合支持度標準的頻繁集。但是這樣的頻繁集可能有很多。
  • 其次,我們要找到最大個數的頻繁集。比如我們找到符合支持度的頻繁集AB和ABE,那麼我們會拋棄AB,只保留ABE,因爲AB是2項頻繁集,而ABE是3項頻繁集。

2.2 算法細節

Apriori算法是如何做到挖掘K項頻繁集的呢?事實上,Apriori算法是採用了迭代的方法:

  • 先搜索出候選1項集及對應的支持度,剪枝去掉低於支持度的1項集,得到頻繁1項集;
  • 然後對剩下的頻繁1項集進行連接,得到候選的頻繁2項集,篩選去掉低於支持度的候選頻繁2項集,得到真正的頻繁二項集;
  • 以此類推,迭代下去,直到無法找到頻繁k+1項集爲止,對應的頻繁k項集的集合即爲算法的輸出結果。
    在這裏插入圖片描述

2.3 參考教程

參考 Apriori算法原理總結 - 劉建平Pinard - 博客園
https://www.cnblogs.com/pinard/p/6293298.html

二、序列模式關聯分析

序列模式關聯分析所挖掘的對象及結果都是有序的。序列模式關聯分析的核心就是要找到事物發展的前後關聯性,從而挖掘出帶有一定因果性質的規律
舉例:

  • 簡單關聯關係:購買麪包的顧客80%都會購買牛奶,由於麪包和牛奶是早餐搭配的必需品,二者搭配構成了早餐的組成部分,這就是簡單的關聯關係。
  • 序列關聯關係:當購買一款新手機後,就會考慮去購買手機膜等手機配件,這就是一種序列關係,不會先買手機膜再買手機的,先後關係是非常明顯的,這種關係就是序列關聯關係。

1. 求解算法

1.1 GSP算法

本質:

類Apriori算法

步驟:

  • 1.自連接
    序列如何進行自連接呢?有這樣一個定義,即對於序列S1和S2,如果序列S1去掉第一項,與序列2去掉最後一項得到的序列相同,那麼序列1和序列2就是可以連接的。把序列2的最後一項加入到序列1中,得到一個新的連接,即可以作爲序列1和序列2連接的結果。
  • 2.剪枝
    GSP算法的剪枝條件與Apriori算法的剪枝條件相同:1.如果序列的支持度小於最小支持度,那麼就會被剪掉 2.如果序列是頻繁序列,則它的所有子序列必定是頻繁序列;所以如果一個序列存在不是頻繁序列的子序列的話,也會被剪掉。
    在這裏插入圖片描述

缺點

每次計算序列的支持度時,都需要全表掃描數據集D

參考教程

1.2 SPADE算法

SPADE算法依舊使用傳統的先驗性質,即連接步+剪枝步的經典組合,思想跟GSP大致相同,只不過由於它多了一個ID_LIST記錄,使得每一次的ID_LIST根據上一次的ID_LIST得到(從而得到支持度),而ID_LIST的規模是隨着剪枝的不斷進行,而規模逐漸縮小的。所以也就解決了GSP算法多次掃描數據集D問題。

算法細節

  • 尋找1成員和2成員頻繁項集方法跟GSP完全形同
  • 在之後的3成員及之後的頻繁項計算中,套用瞭如下3個規則找出“有可能”是頻繁的元素,
  1. 如果諸如成員PA,PD這樣的形式出現在2頻繁項集中,則能推導出PBD這樣的三成員元素。
  2. 如果出現諸如PB,P->A這樣的形式出現在2頻繁項集中,則能推導出PB->A這樣的三成員元素。
  3. 如果出現諸如P->A,P->F這樣的形式出現在2頻繁項集中,則能推導出P->AF或P->A->F或P->F->A這樣的三成員元素。
  • 爲了確定是不是頻繁的元素,還去原始data中進一步遍歷、判斷。
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

參考教程

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章