movielens推荐系统_案例|推荐系统的评估指标
推薦系統能夠為用戶提供個性化體驗,現在基本上各大電商平臺、資訊平臺都會用推薦系統為自家評價下的用戶提供千人千面的服務。平均精度均值(Mean Average Precision,MAP)便是評估推薦系統性能的度量標準之一。
但是,使用其他診斷指標和可視化工具可以讓模型評估更加深入,甚至還會帶來一些其他啟發。本文探討了召回率、覆蓋率、個性化和表內相似性,并使用這些指標來比較三個簡單的推薦系統。
Movielens數據集
這篇文章中的例子使用的數據是Movielens 20m數據集。這些數據包含用戶對電影的評分以及電影類型的標記。 (為了延長訓練時間,該數據被下采樣,評分僅包括給超過1000部電影打過分的用戶的評分,以及3星及其以上的評分。)
用戶電影評級的示例模型
本文測試并比較了三種不同的推薦系統:
1.隨機推薦(隨機為每位用戶推薦10部電影)
2.根據流行度推薦(向每位用戶推薦最受歡迎的10部電影)
3.協同過濾器(使用SVD的矩陣分解方法)
接下來就讓我們深入了解這些指標和診斷圖,并比較這些模型!
長尾圖
長尾圖用于挖掘用戶-項交互數據中的流行度模式,例如點擊次數、評分或購買行為等。通常,只有一小部分項目具有大量的交互,我們稱之為“頭部”;而大多數項目都集中在“長尾”中,它們只占交互的一小部分。
長尾圖 (Movielens 20m評級數據樣本)在訓練數據中會對許多熱門項目進行多方觀察,因此,推薦系統想要準確預測這些項目并不難。在電影數據集中,最受歡迎的電影是大片和經典老片。這些電影已為大多數用戶所熟知,推薦這些電影,對用戶來說可能并非是個性化推薦,也可能無法幫助用戶發現其他新的電影。相關推薦被定義為用戶在測試數據時給予正面評價的項目的推薦。這里的指標用來評估推薦系統的相關性和實用性。
MAP和MAR
推薦系統會為測試集中的每個用戶生成推薦的有序列表。平均精度均值(MAP)可以讓開發者深入了解推薦項目列表的相關性,而召回率可以讓開發者深入了解推薦系統的調試性能,如調試用戶給予正向評價的所有項目。MAP和MAR的詳細描述如下:
Mean Average Precision (MAP) For Recommender Systems?sdsawtelle.github.io覆蓋率
覆蓋率是指模型能夠在測試集上推薦的項目占訓練數據的百分比。在此示例中,受歡迎度推薦的覆蓋率僅為0.05%,它只推薦了10件物品。隨機推薦器的覆蓋率接近100%。出乎意料的是,協同過濾只能推薦其訓練的項目的8.42%。
三個推薦系統的覆蓋率比較:
個性化
個性化是評估模型是否向不同用戶推薦相同項目的方法。用戶的推薦列表之間存在差異(1-余弦相似性)。下邊的例子能很好地說明如何計算個性化程度。
3個不同用戶的推薦項目示例列表:
首先,每個用戶的推薦項目會被表示為二進制指示符變量(1:向用戶推薦該項目.0:不向用戶推薦該項目)。
然后,跨所有用戶的推薦向量計算余弦相似度矩陣。
最后,計算余弦矩陣的上三角的平均值。個性化是1-平均余弦相似度。
高個性化分數表示用戶的推薦不同,這也意味著該模型為每一位用戶提供個性化體驗。
列表內相似性
列表內相似性是推薦列表中所有項目的平均余弦相似度。該計算使用推薦項目(例如電影類型)的特征來計算相似度。該計算方法可以通過以下示例說明。
針對3個不同用戶的電影ID的推薦示例:
這些電影類型特征用于計算推薦給用戶的所有項目之間的余弦相似度。該矩陣顯示了向用戶1推薦的所有電影的特征。
我們可以為每個用戶計算表內相似性,并對測試集中的所有用戶求平均值,從而得到對模型的表內相似性的估計。
如果推薦系統向每一個用戶推薦非常相似的項目列表(如用戶僅接收浪漫電影的推薦),那么列表內相似性將很高。
使用正確的訓練數據
我們可以對訓練數據進行如下操作,從而快速改進推薦系統:
1.從培訓數據中刪除熱門項目 (這一點適用于用戶可以自行找到這些項目,以及發現這些項目不具備實用性的情況)。
2.按照用戶的值來放大項目評級,例如平均交易值。這樣做有助于模型推薦能夠帶來忠誠度或高價值客戶的項目。
結論
一個好的推薦系統能夠生成兼具實用性和相關性的推薦結果。
使用多個評估指標來評估模型,能夠更加全面地衡量一個推薦系統的性能。
原文鏈接:Evaluation Metrics for Recommender Systems
以上內容由第四范式先薦編譯,僅供于學習交流,版權歸原作者所有。
相關閱讀:
如何解決推薦系統中的冷啟動問題?
推薦系統:混合過濾
推薦系統:協同過濾及其利弊
推薦系統過濾技術:基于內容的過濾及其利弊
推薦系統的工作流程
用Python搭建推薦系統的最佳開源包
如何用Python搭建一個簡單的推薦系統?
想要了解推薦系統?看這里!(2)——神經網絡方法
想要了解推薦系統?看這里!(1)——協同過濾與奇異值分解
入門推薦系統,你不應該錯過的知識清單
推薦系統相關術語知多少
如欲了解更多,歡迎搜索并關注先薦微信公眾號(ID:dsfsxj)。
本賬號為第四范式智能推薦產品先薦的官方賬號。賬號立足于計算機領域,特別是人工智能相關的前沿研究,旨在把更多與人工智能相關的知識分享給公眾,從專業的角度促進公眾對人工智能的理解;同時也希望為人工智能相關人員提供一個討論、交流、學習的開放平臺,從而早日讓每個人都享受到人工智能創造的價值。
總結
以上是生活随笔為你收集整理的movielens推荐系统_案例|推荐系统的评估指标的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vb ftp linux,VB FTP上
- 下一篇: 当前操作系统缺少黑体等字体_从零开始开发