- 如果一個消費者買了產品A,那有多大的機會購買產品B?
- 如果買了A也買了B,那麼他還會購買什麼產品?
- 針對X產品做推廣,用以增進Y產品的銷售。
【原理】
關聯規則分析(Association)有很多種演算法,目的就是在眾多交易中找出品項與品項之間的關係,也被稱為購物籃分析 (Market Basket analysis)。
其中,最常用的就是 Apriori Algorithm (Apriori 演算法),透過支持度(support)、信賴度(confidence)、增益值(lift),作為找尋行銷組合的標準。
詳細內容網路上都有資源,我們就直接進入正題,各個程式語言都有相關的module可以用,舉凡 R、Python、PHP都有,接下來以 Perl 的 Data::Mining::Apriori module做示範。
【資料準備】
- 將「產品ID與描述」寫到 hash table reference :
1,產品A
2,產品B
...
- 給予「交易資料」,每一行代表一個交易,都要至少有兩個品項:
1,2,3
2,3
1,3
...
【實作】
將資料整理後,接下來是配合需求調整參數。
因為如果只用default值,會跑出太多組相關性不高的組合。
【結果】
原則上我會以高支持度、高增益值( > 1) 來做篩選,最後就會剩下這八組較為相關的組合,提供活動或推薦系統使用。
Rule R1 顯示產品A與產品C有高度相關:
【補充說明】
增益值 > 1,表示X與Y呈現正相關,規則才具有實用性。
增益值 = 1,表示X與Y呈現不相關,結果與亂數取得方式相似。
增益值 < 1,表示X與Y呈現負相關,比亂數取得之結果更差。
【小結】
不只是購物籃,只要能夠減少使用者選擇路徑,就能增加銷售與轉換,一樣也是可以用於遊戲中的「點數分配」、「裝備推薦」等。
以上介紹到這裡,還請各位大神多多給予指教。