0

我目前在Python中構建推薦引擎,並且遇到以下問題。Python中的推薦引擎 - 包含自定義相似性度量

我想加入協作過濾方法,它的用戶 - 用戶變體。回顧一下,它的想法是我們有一個關於不同用戶的信息和他們喜歡的項目(如果適用的話 - 這些用戶分配給項目的評級)。當我們有新用戶喜歡一些東西時,我們只會找到喜歡相同項目的用戶,並向這個新用戶項目推薦這些用戶喜歡的類似於新用戶的用戶項目。

但我想補充一點。我會推薦給用戶的地方,即'今晚去哪裏'。我知道用戶的偏好,但我也想把距離推薦給每個項目。父親是我要推薦給用戶的地方 - 它應該是最沒有吸引力的。

因此,一般來說,我想要在推薦引擎中加入罰分,每個地點的罰分數量將基於用戶到場所的距離。

我試圖谷歌任何人做了類似的事情,但無法找到任何東西。有關如何正確添加此類懲罰的建議?

回答

2

我會保持它的簡單和獨立:

你的重點是協同過濾,所以你應該推薦產生比分爲前N個建議不分地點的。

然後你可以用重新評分使用這些top-N之間的距離。對於簡單的MVP,您可以從相反的距離衰減開始(例如final-score = cf-score * 1/distance),並根據行爲證據調整衰減函數(如有必要)。