2017-10-06 61 views
0

我正在一個網站上文章標籤(他們的關係是N:M)。網站的一個重要部分是通過標籤過濾文章。這些標籤具有某些重量,代表它們的相對重要性。重量隨時間變化(每天),取決於它們用於過濾物品的頻率(命中))。算法跟蹤的相對趨勢

我應該使用什麼算法來計算權重?關鍵標準:

  • 基於歷史數據(命中),但相當短期(〜最後10-20 天)
  • 過去數據的相關性下降一段時間(從 昨天的點擊率是更重要比10天前點擊)
  • 尊重標籤的「個人傾向」(即從100 到200命中走了一天之內先後戰勝的是有200次命中兩天一 行)
  • 標籤標籤尊重新標籤(沒有歷史命中)
  • 未在過去幾天得到許多命中尊重標籤(高權重的標籤,自然會獲得更多的點擊所以「弱」的標籤應該仍然得到了一槍「打破循環」中每過一段時間)

回答

0

我建議的標籤重量以下公式:

Score = c1 * Hits(today) + c2 * (Hits(today) - Hits(yesterday)) + c3 * Random 
Weight = a * Score + (1 - a) * Weight(yesterday) 

  • 隨機 - 隨機值0..1
  • C1,C2,C3,一 - 適當的常數值,0<a<1