機器學習 | 基於機器學習的推薦系統客戶購買可能性預測分析

在上週我寫了一篇“基於機器學習的銀行電話營銷客戶購買可能性預測分析”,那是作爲對客戶購買可能性預測分析的第一次驗證案例的嘗試。今天是基於機器學習的客戶購買可能性預測分析的第二次驗證案例:推薦系統。

推薦系統

基於熱度推薦:由專家或者一定時期產品銷售情況或者主推產品,製作一個排行榜,在沒有用戶數據的情況下根據排行榜推薦

基於用戶特徵推薦:通過歷史數據,由算法(機器學習)根據用戶特徵進行推薦,在用戶數據能夠填寫一些基本數據的情況下

基於知識推薦:通過用戶要求,比如果需要高收益,需要低風險的產品,在數據庫對產品進行篩選,然後推薦

基於內容推薦:通過用戶已經購買的產品,推薦內容相似的物品,這裏的內容相似是由專業人員提供

協同過濾推薦:通過算法直接計算物品相識度,注意這裏的物品相似度不是2個物品內容,而是有購買情況來確定的,比如說購買A(手機)的用戶,大多數都購買了B(手機套),算法計算出A與B是相似的

一些機器學習推薦:通過以一些機器學習算法,比如說FM(因式分解機),深度學習,deepfm等

其中對於新用戶通常三選一 對於老用戶,通常是使用多種算法,然後加權得出最優的推薦列表

驗證方法

在這裏主要3種方法驗證,協同過濾,FM(因式分解機),deepFM。

協同過濾算法

計算所有物品的相似度(注意不是內容相似)

推薦方法: 對用戶夠買(或者評價過)的物品查詢相識度,然後加權推薦

簡單例子

最終推薦(從左到右)

基於協同過濾展示 對user=‘1’

Python,打印結果,這裏看過的電影只打印前5,推薦電影只推薦加權後前10

------WATCHED MOVIES--------

1193 "One Flew Over the Cuckoo's Nest (1975)" 'Drama'

2355 "Bug's Life, A (1998)" "Animation|Children's|Comedy"

1287 'Ben-Hur (1959)' 'Action|Adventure|Drama'

2804 'Christmas Story, A (1983)' 'Comedy|Drama'

595 'Beauty and the Beast (1991)' "Animation|Children's|Musical"

------RECOMMEND MOVIES--------

1196 'Star Wars: Episode V - The Empire Strikes Back (1980)' 'Action|Adventure|Drama|Sci-Fi|War']]

1265 'Groundhog Day (1993)' 'Comedy|Romance' 364 'Lion King, The (1994)' "Animation|Children's|Musical"

260 'Star Wars: Episode IV - A New Hope (1977)' 'Action|Adventure|Fantasy|Sci-Fi'

2571 'Matrix, The (1999)' 'Action|Sci-Fi|Thriller'

2716 'Ghostbusters (1984)' 'Comedy|Horror'

1022 'Cinderella (1950)' "Animation|Children's|Musical"

318 'Shawshank Redemption, The (1994)' 'Drama'

1282 'Fantasia (1940)' "Animation|Children's|Musical"

1580 'Men in Black (1997)' 'Action|Adventure|Comedy|Sci-Fi'

因式分解機算法

評分矩陣是一種反映用戶對物品喜歡的矩陣,如下圖

因式分解機一種補全評分矩陣的的算法(紅色爲算法補全),然後根據評分推薦(對用戶1推薦爲物品3>物品6>物品1>物品4>物品5)

算法解釋:通過已知的評分去找到P和Q,K爲隱藏的特徵,可以設置不同值

因式分解機算法的效果如下

------RECOMMEND MOVIES--------

318 'Shawshank Redemption, The (1994)'

858 'Godfather, The (1972)'

1198 'Raiders of the Lost Ark (1981)'

50 'Usual Suspects, The (1995)'

2858 'American Beauty (1999)'

912 'Casablanca (1942)'

593 'Silence of the Lambs, The (1991)'

750 'Dr. Strangelove or: How I Learned to Stop Worrying and Love the Bomb (1963)'

908 'North by Northwest (1959)'

1221 'Godfather: Part II, The (1974)'

deepFM算法

deepFM 是一種結合FM算法和深度學習的算法,結構如下

deepFM算法的效果如下

------RECOMMEND MOVIES--------

593 'Silence of the Lambs, The (1991)'

1617 'L.A. Confidential (1997)'

1233 'Boat, The (Das Boot) (1981)'

318 'Shawshank Redemption, The (1994)'

1198 'Raiders of the Lost Ark (1981)'

858 'Godfather, The (1972)'

733 'Rock, The (1996)'

1276 'Cool Hand Luke (1967)'

2571 'Matrix, The (1999)'

953 "It's a Wonderful Life (1946)"

模型評價指標

  1. 用戶滿意度
  2. 預測準確度
  3. 覆蓋率
  4. 多樣性
  5. 新穎性
  6. 驚喜度
  7. 信任度
  8. 實時性
  9. 健壯性
  10. 商業目標

離線實驗的目標

最大化,預測準確度

在滿足一定要求的情況下

比如:

  • 覆蓋率>60%
  • 多樣性>30%
  • 新穎性>10%

性能評價待補充......

推薦系統算法總結

  1. 多種算法適用不同的場景。
  2. 混合推薦,提高購買率。比如說用戶購買手機,按照內容相似,推薦其他的手機;按照協同過濾,推薦手機套等買手機的人也大概率會買的大小;按照評分估計的算法,根據用戶推薦可能會購買的啤酒,衣服的。在有限推薦位置,混合推薦,提高成功率。

看完的都是真愛,有空關注一下,給我評論喲O(∩_∩)O~


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