簡體   English   中英

將 movielens 數據拆分為訓練驗證測試數據集

[英]Splitting movielens data into train-validation-test datasets

我正在研究一個關於使用貝葉斯個性化排名優化由 python 編寫的推薦系統的項目。 我非常有信心我的模型可以很好地學習我提供的數據,但現在是時候找出確切的模型超參數並嘗試避免過度擬合了。 由於 movielens 數據集只為我提供了沒有驗證集的 5 倍訓練測試數據集,我想自己拆分原始數據集來驗證我的模型。

由於 movielens 數據集包含 943 個用戶數據,每個用戶保證至少對 20 部電影進行排名,我正在考慮拆分數據,以便 TRAIN 和 TEST 數據集包含相同數量的用戶(例如 943),並分配 80%的隱式反饋數據到 TRAIN,另一個到 TEST。 訓練后,將使用所有 943 個用戶在 k 精度下的召回率平均值進行驗證。

這是拆分數據集的正確方法嗎? 我很好奇,因為原始的 movielens 測試數據集似乎並不包含所有 943 個用戶的測試數據。 如果某個用戶沒有任何要預測的測試數據,我如何使用recall@k 進行評估——這樣做會導致零除法? 我應該跳過那個用戶並計算其他用戶的平均值嗎?

感謝您的閱讀,希望您不要像我一樣困惑。

我將如何拆分它是整個數據集的 80%(火車)- 10%(驗證)- 10%(測試)。 它應該工作:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM