近十年里,top-N商品推薦是隱式反饋中一個被廣泛研究的課題[1],其目的是從大量數(shù)據(jù)中識別出用戶可能偏愛的一小部分物品。各種top-N物品推薦算法已經(jīng)被開發(fā)出來,特別是基于深度學習的研究取得了很大的進展[2]。
為了證明推薦算法的有效性,需要在基準數(shù)據(jù)集上建立可靠的評價實驗。通常,這樣的評估過程包括一系列對于數(shù)據(jù)集、指標、基線方法和其他方案的設置。由于每個設置步驟可以選擇不同的選項,需要制定和設計適當?shù)臉藴剩允箤嶒炘O置標準化[3,4]。為此,有必要對近期研究中有分歧的實驗設置進行系統(tǒng)的回顧。
在這篇論文中,對于不同的實驗設置對評價top-N商品推薦算法的影響,我們設計了一個經(jīng)驗性的大規(guī)模實驗。我們試圖找出導致近期評測工作中出現(xiàn)分歧的重要評估設置[2,7]。具體來說,考慮三個重要的影響因素,即數(shù)據(jù)集分割、采樣指標和數(shù)據(jù)領域選擇。數(shù)據(jù)集分割是指利用原始數(shù)據(jù)構造訓練集、驗證集和測試集;采樣指標是指用采樣方法獲得不相關物品來計算評測指標的結果;數(shù)據(jù)領域選擇是指從不同領域中選擇合適的數(shù)據(jù)集進行評估。
為了檢驗這三個因素的影響,我們在Amazonreview數(shù)據(jù)集[8]上進行了大量的實驗,其中包含來自24個領域的1.428億條用戶交互記錄。top-N物品推薦本質上是一項排序任務。與先前的工作[3,6]不同,本文并不關心特定方法的性能,而是研究一個特定的實驗設置因素如何影響不同方法的總體排序。本文選取了8種具有代表性的推薦算法作為比較方法,包括傳統(tǒng)方法和基于神經(jīng)網(wǎng)絡的方法。我們利用三種序列相關性指標來刻畫排序結果的差異。
我們的實驗得到了以下結論。首先,對于數(shù)據(jù)集分割,隨機切分與時序切分產(chǎn)生了一定程度上不同的方法排序。數(shù)據(jù)集的切分方式應該取決于特定的任務。建議在一般情況下采用隨機切分的方式劃分數(shù)據(jù)集合,而對時間敏感的任務采用按照時序劃分方式(如序列推薦)。第二,基于采樣指標的表現(xiàn)排名與精確排名的相關性略弱,增加采樣物品的數(shù)量會提高排序相關性程度。在使用采樣指標時,研究人員應盡可能采樣較多的不相關物品。最后,具有不同領域特征或稀疏程度的數(shù)據(jù)集合可能會產(chǎn)生不太相同的表現(xiàn)排名。一個較優(yōu)的策略是選擇能夠涵蓋多個領域、不同方面的代表性數(shù)據(jù)集。
實驗設置與方案
2.1 實驗設置
在這一部分中,我們描述數(shù)據(jù)集、比較方法和評估指標,來準備進行實驗。
數(shù)據(jù)集。我們采用亞馬遜產(chǎn)品評論數(shù)據(jù)集[8]進行評估,其中包含來自24個領域的1.428億條評論。對于top-N物品推薦,每條評論被視為用戶和某個物品之間的交互記錄,而其余信息則被丟棄,比如文本和元數(shù)據(jù)。由于幾種比較方法無法在有限的時間內對Book領域的數(shù)據(jù)集得出結果,因此為了提高效率,我們刪除了這個領域。最后,我們使用來自其余23個領域的用戶項交互數(shù)據(jù)作為最終數(shù)據(jù)集。我們進一步采用5-core的預處理方式,刪除了不活躍的用戶和不經(jīng)常被點擊的商品。
比較方法。我們選取了八種推薦算法,包括popularity,ItemKNN,SVD++ [9]和BPR [1],DSSM [10],NCF [11],DIN [12] 和 GCMC [13]。在這八種方法中,popularity和ItemKNN主要基于簡單的全局或物品特定的統(tǒng)計,SVD++和BPR利用矩陣分解技術,DSSM和NCF利用神經(jīng)網(wǎng)絡建模用戶-物品交互,DIN通過關注現(xiàn)有行為來學習用戶偏好,GCMC采用圖神經(jīng)網(wǎng)絡進行推薦。這八種方法很好地涵蓋了傳統(tǒng)方法和基于神經(jīng)網(wǎng)絡的方法。在本文中,我們只考慮general item recommendation,而不考慮context-awarerecommendation或sequential recommendation。注意,我們的重點不是確定最佳算法,而是研究不同實驗設置對最終表現(xiàn)排名的影響。
評價指標。Top-N項目推薦可以視為一項排序任務,排在前端的結果需要重點考慮。根據(jù)[4-14],在下面的實驗中,我們使用了四個指標:(1)頂部K個位置的截斷精度和召回率(P@K and R@K),(2)平均準確率(MAP),(3)ROC曲線下面積(AUC)。我們還計算了另外兩個指標的結果nDCG@K和MRR。它們與上述四個指標產(chǎn)生了相似的結果,我們省略了對應的實驗結果。
2.2實驗方案
在本節(jié)中,我們將介紹用于比較top-N商品推薦的實驗方案。
配置。我們引入“配置”一詞來表示上述三個因素的不同選擇的組合,即數(shù)據(jù)集分割,采樣指標和領域選擇。我們選擇這三個因素是因為這些在最近的基于神經(jīng)網(wǎng)絡的方法文獻中仍然存在一定的分歧(缺乏標準化的討論)。注意,我們不會列舉這三個因素的所有可能選項,我們只考慮近期研究中流行或有爭議的選項。為了減少其他因素的影響,我們可能通過不同的選項單獨報告結果,也可能根據(jù)先前的研究[3-6]將其設置為建議的選項。
相關測量。在給定配置的情況下,我們可以獲得基于某種指標的八種比較方法的一個排序列表。我們采用三種排序相關性度量來刻畫兩個排序之間的相關性或相似度:(1)Overlap Ratio at top-k positions (OR@k);
(2)Spearman’s Rank Correlation (SRC);
(3)Inversion Pair Count (IPC)。
選擇這三種方法的理由如下。SRC刻畫了整體排序的相關性,IPC提供了對SRC值的更直觀的理解,對于商品推薦,排名靠前的位置需要更多關注,可由OR@k刻畫。
實驗步驟。給定一個指標,我們首先根據(jù)配置(用驗證集優(yōu)化)導出八種方法的表現(xiàn)排序。為了檢驗一個因素的影響,我們將通過考慮備選方案來生成多個配置。然后,利用上述指標計算兩種不同配置下的表現(xiàn)排名之間的關聯(lián)度。最后,相關結果將在23個數(shù)據(jù)領域上取平均值(除第4.3節(jié)之外)
實驗
在這一部分中,我們給出了與數(shù)據(jù)集分割、采樣指標和數(shù)據(jù)領域選擇三個因素相關的實驗結果。當考慮一個因素時,我們會固定其余兩個因素。也就是說,在兩個配置進行比較的情況下,我們只改變所研究的因素,而將其余的設置設為相同的。
3.1 數(shù)據(jù)集切分分析
我們首先研究不同的數(shù)據(jù)集切分策略(即構建訓練/驗證/測試集)對表現(xiàn)排名的影響。
設置。對于每個用戶,我們首先使用兩種方法組織用戶的交互記錄:(1) 隨機排列(RO),隨機選擇商品;(2) 時序排列(TO),根據(jù)交互時間戳對商品進行排序。然后,可以使用以下兩種常用方法拆分重新排序的用戶項交互序列:(1)基于比率的分割(Ratio-basedSplitting, RS),根據(jù)預定比率將數(shù)據(jù)集分為三個部分,以進行訓練,驗證和測試,此處將比例設置為8:1:1。我們重復此過程五次,以生成不同的評估集,計算平均結果。(2)Leave-one-out分割(LS),選擇一個物品作為測試集,另一個物品作為驗證集,其余物品全部作為訓練集。LS策略可以看作是RS的一個特例,當其中驗證集和測試集都只包含一個項目。考慮到物品排序和切分方式,可以生成了四個組合,如圖1所示。
圖1:四種切分策略的說明性示例。用戶與20個物品交互。項目i的下標表示與用戶的交互順序:較小的索引表示較早的交互時間。我們使用標準、劃線和灰色框分別表示訓練集、驗證集和測試集。
結果。表1中給出了兩種不同配置之間的比較結果。首先,與切分法(比率法或留一法)相比,物品排列方式(隨機排列或時序排列)對表現(xiàn)排名的影響更為顯著。對于每一個指標,表中前兩行的相關性數(shù)值顯著弱于最后兩行的相關性數(shù)值。時序排列本質上應用于序列化推薦(Sequential recommendation)的設置。建議在一般情況下(尤其是評估時序不敏感的推薦算法)應采用隨機排序,而在時序敏感的情況下(如序列化推薦)采用時序排列。第二,使用相同的物品排列方式,兩種切分方法生成的算法排序非常相似(請參見每個度量的最后兩行)。實際上,在最近的文獻[8,11]中,留一法(leave-one-out)評測已經(jīng)被廣泛采用。我們建議在一般情況下使用基于比率的切分方式,以獲得更準確的評估。然而,對于小數(shù)據(jù)集,留一法切分可以緩解數(shù)據(jù)稀疏,并且簡化評測環(huán)節(jié)。
表1:數(shù)據(jù)集合切分不同配置的相關性比較。所有結果都是基于23個領域進行平均獲得的。這里,“RS”和“LS”表示基于比率的分割和leave-one-out分割;“RO”和“TO”表示隨機排列和時序排列。“↑”(“↓”)表示越大(小)效果越好。
3.2采樣指標分析
接下來,我們研究抽樣指標(Sampled metrics,只使用一組采樣不相關物品用于評測指標的計算)對表現(xiàn)排名的影響
采樣設置。對于測試環(huán)節(jié),當物品集合很大時,將項目集中的所有未交互物品都作為候選對象是很費時的。所以,目前一種流行的方法是將采樣一小部分不相關物品進行計算。這種方法稱為采樣指標[7]。我們考慮了兩種采樣策略:隨機采樣和流行度采樣,即根據(jù)均勻分布或基于頻率的分布對不相物品進行采樣。我們進一步考慮使用三個不同數(shù)量的不相關樣本,即{10,50,100},這意味著一個真實物品將與10個、50個或100個采樣獲得的不相關物品配對。當我們采用leave-one-out法分割時,情況變?yōu)閞eal-plus-N[3,6]。為了進行比較,我們將整個商品集(不包括真實物品)的排序作為參考排名。根據(jù)第4.1節(jié),對于數(shù)據(jù)集切分,在所有比較配置中采用基于比率的數(shù)據(jù)集分割(用RS表示)和隨機排序(用RO表示)。
實驗結果。表2展示了不同采樣指標的相關結果,這些結果遠小于表1中的數(shù)值。這表明使用采樣指標對表現(xiàn)排名有較大影響。事實上,最近的研究已經(jīng)討論過這樣一個問題[7]:采樣指標可能得不到一致的排序。另一個觀察的結果是,采樣更多不相關的項目增加了采樣指標和準確指標之間的相關度。最后,不同的采樣策略可能會導致某些特定算法的表現(xiàn)動蕩,從而嚴重影響表現(xiàn)排名。比較兩種采樣策略,均勻采樣與整體排名的相關性似乎更高。一般來說,采樣指標不應使用于小數(shù)據(jù)集。如果需要,我們建議采樣更多不相關的物品(如[9]建議的1000個項目)。
表2:采樣指標不同配置的相關性比較。表中結果對于23個領域進行了平均。“?={RO,RS}”表示用于使用隨機排序對于物品進行排列,使用基于比率的方法進行切分,“pop”/“uni”表示流行度/均勻采樣,下標表示采樣數(shù)量,“all”表示使用所有物品進行評測。
3.3數(shù)據(jù)鄰域選擇分析
這里,我們考慮不同領域是否會導致不同的表現(xiàn)排名。這個問題對于回答如何選擇合適的數(shù)據(jù)集進行評測很有用。
實驗設置。給定兩個領域,我們首先根據(jù)第4.1節(jié)和第4.2節(jié)中建議的設置(RO,RS,all)生成一個配置,然后基于某個指標獲得每個領域下的表現(xiàn)排名。然后,我們計算了兩個領域排名之間的Spearman’sRank Correlation得分。我們對所有指標的SRC得分取平均值。最后的分數(shù)用來衡量兩個領域之間的相關性。
實驗結果。圖2顯示了兩個領域之間的平均相關結果。我們對行和列進行重新排序,以便可以在對角線上聚合較大的值。有趣的是,整個熱度圖似乎包含四大塊(組),其中組內相關值高于組間相關值。結果表明,在相同的配置下,不同的領域可能會產(chǎn)生不同的表現(xiàn)排名。因此,評估時應考慮領域差異。通過對數(shù)據(jù)集的考察,我們發(fā)現(xiàn)領域特征(例如,第一組主要對應于數(shù)字產(chǎn)品)和稀疏程度(如用戶-項目交互比率)似乎對相關結果有顯著影響。使用多個來來自于不同領域、稀疏度不同的數(shù)據(jù)集是個好方法。這里,“領域”是指Amazon數(shù)據(jù)集的類別。我們將在未來的工作中使用更多的數(shù)據(jù)集來研究這個問題。
圖2:成對領域相關性的可視化。每個單元格表示兩個領域之間計算的相關性分數(shù)(顏色越深表示值越大)。
結語
我們通過實驗檢驗了三個重要因素對于top-N推薦算法評測的影響。我們的實驗結果為物品推薦算法提出了一些經(jīng)驗建議。首先,對于數(shù)據(jù)集切分,建議使用基于比例切分方式并且使用隨機物品排列方式(非時序推薦任務),而leave-one-out切分方式可以用于較小數(shù)據(jù)集或者加快評測流程(如調參過程)。第二,應該謹慎使用采樣指標。如果使用,我們建議加大采樣樣本數(shù)。第三,建議使用來自不同領域的多個數(shù)據(jù)集合作為評測數(shù)據(jù)集合。在未來的工作中,我們還將研究更多因素和數(shù)據(jù)集合來進一步完善當前的工作。
責任編輯人:CC
-
top-N
+關注
關注
0文章
2瀏覽量
6568
原文標題:【CIKM2020】如何更為合適地評測推薦算法? Top-N物品推薦算法評測設置回顧
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論