An Analysis of Sequential Recommendation Datasets

馒头and花卷發表於2024-04-24

目錄
  • 統計角度論證
  • 實驗論證
  • 程式碼

Woolridge D., Wilner S. and Glick M. An analysis of sequential recommendation datasets. PERSPECTIVES, 2021.

本文討論了 MovieLens 系列資料集是否適用於序列推薦.

統計角度論證

  • 作者為了論證 MovieLens 不適合作為序列推薦資料集, 首先從資料集的統計資訊角度出發.

  • 上圖展示了常用的序列推薦資料集的 Day 分佈情況, 如 '6' 上的佔比表示該資料集中所有互動均發生在 6 天內的使用者的佔比. 顯然和其它資料集相比, MovieLens 系列的資料集所有的互動有大半發生在一天內.

  • Table2 展示了更加精細化的一個指標. 可以發現, ML-1M 每個使用者的平均互動時間發生在 0.05s 內, 換言之, 你可以認為大部分使用者互動的電影的時間戳是同一個! 要知道, MovieLens 中每個使用者的平均互動次數 \(\ge 150\), 怎麼可能同一個時間戳內同時給上百部電影打分? 所以作者認為, MovieLens 的資料集並不是真實的使用者觀看 (打分) 歷史, 而是透過某種特殊的資料收集的方式得到的, 這導致如果我們採用的是序列預測, 我們實際上預測是這種資料收集方式, 而不是使用者的興趣變化.

  • 如上圖所示, MovieLens 的使用者主頁, 其實就是一堆的推薦電影, 然後你可以去打分, 我想 MovieLens 的資料集就是這麼收集過來的. 這麼一想, 確實如果 MovieLens 去做 next-item predication 的話, 實際上我們是去預測背後的推薦機制, 而不是使用者的觀影順序.

實驗論證

  • 作者在 SASRec 的基礎上, 比較了序列 unshuffled/shuffled 的前後變化情況, 可以發現, 雖然一般來說效能都有下降, 但是 ML-1M 的效能下降是最嚴重的.

  • 我初看的時候很疑惑, 因為我得到的是和作者相反的結論, 這部恰恰說明 ML-1M 是具有很強的 '序列' 性嘛. 現在想來, 作者可能想要表達的是, 這種序列性, 並非是由使用者的行為序列導致的, 而是特殊的資料收集方式導致的.

  • 為了進一步證明這一點, 作者額外做了一個 rating 的預測任務: 不再預測下一個 item, 而是根據序列預測下一個 item 的 rating. 作者認為這種方式能夠抵消資料收集方式帶來的影響, 事實也的確如此! 在 rating 的預測任務上, 效果下降的很少.

程式碼

[official]

相關文章