重新排名

在推薦系統的最後一個階段,系統可以重新調整候選項目的排名,藉此考量其他條件或限制。其中一個排名方式就是使用篩選器移除部分候選人。

另一種排名方式是手動轉換排名工具傳回的分數。

本節將探討最新性、多樣性和公平性。這些因素有許多有助於改善推薦系統。其中某些因素通常需要修改程序的不同階段。每個部分都提供個別或個別套用的解決方案。

即時性

大多數推薦系統都整合了最新的使用資訊,例如目前的使用者記錄和最新項目。讓模型保持最新狀態,有助於模型提供優質建議。

解決方案

  • 請盡可能重新執行訓練,藉此瞭解最新訓練資料。建議您預先啟用訓練,這樣模型就不必從頭開始學習。暖啟動功能可以大幅縮短訓練時間。舉例來說,在矩陣分解中,請為上一個模型中存在的項目暖身嵌入。
  • 在矩陣分解模型中建立「平均」使用者來代表新使用者。您不需要為每位使用者使用相同的嵌入,您可以根據使用者功能建立使用者叢集。
  • 使用 DNN,例如 softmax 模型或雙塔模型。由於模型會將特徵向量做為輸入內容,因此可在訓練期間未檢視的查詢或項目中執行。
  • 新增文件年齡功能。例如,YouTube 可以將影片的年齡或上次觀看時間新增為功能。

四張貓頭鷹推薦影片的圖片。

多元化

如果系統一律建議「最接近」的項目位於查詢嵌入,那麼候選項目通常彼此相似。缺乏多元性會導致使用者體驗不佳或無聊。例如,如果 YouTube 只推薦與使用者目前觀看的影片非常相似影片,例如貓頭鷹的影片 (如圖所示),使用者可能很快就會失去興趣。

解決方案

  • 使用不同來源訓練多個候選產生器。
  • 使用不同的目標函式訓練多個排名者。
  • 根據類型或其他中繼資料將項目重新排名,以確保多元性。

秉持公正

您的模型應公平處理所有使用者。因此,請確保您的模型不會從訓練資料學習無意識偏誤。

解決方案

  • 在設計和開發過程中納入各式各樣的觀點。
  • 以詳盡的資料集訓練機器學習模型。在資料過於稀少時新增輔助資料 (例如,當某類別數量不足時)。
  • 追蹤每個客層的指標 (例如準確率和絕對錯誤),以觀察偏誤。
  • 為弱勢群組建立個別模型。