評估推薦

本文描述如何在 Azure Machine Learning 設計工具中使用「評估推薦」元件。 目標是測量建議模型所做預測的精確度。 您可以使用此元件來評估各種不同的建議:

  • 預測使用者和項目的評等
  • 推薦給使用者的項目

當您使用建議模型建立預測時,針對每個支援的預測類型,傳回的結果會稍微不同。 評估推薦元件會從評分資料集的資料行格式推算預測的種類。 例如,評分資料集可能包含:

  • 使用者-項目-評等三合一
  • 使用者及其建議項目

元件也會根據所做的預測類型,套用適當的效能計量。

如何設定評估推薦

評估推薦元件使用建議模型及對應的「地表實況」資料來比較預測輸出。 例如,計分 SVD 推薦元件產生的評分資料集,可供您使用評估推薦來分析。

規格需求

評估推薦需要下列資料集做為輸入。

測試資料集

測試資料集包含使用者-項目-評等三合一形式的「地表實況」資料。

計分的資料集

評分資料集包含建議模型產生的預測。

第二個資料集的資料行取決於您在評分過程中執行的預測種類。 例如,評分資料集可能包含下列其中一項:

  • 使用者、項目及使用者想給項目的評等
  • 使用者清單和推薦給他們的項目清單

計量

模型的效能計量是根據輸入類型而產生。 下列各節提供詳細資料。

評估預測評等

當您評估預測評等時,評分資料集 (評估推薦的第二個輸入) 必須包含符合下列需求的使用者-項目-評等三合一:

  • 資料集的第一個資料行包含使用者識別碼。
  • 第二個資料行包含項目識別碼。
  • 第三個資料行包含對應的使用者-項目評等。

重要

若要成功評估,資料行名稱必須分別為 UserItemRating

評估推薦會比較「地表實況」資料集的評等與評分資料集的預測評等。 然後計算平均絕對誤差 (MAE) 和均方根誤差 (RMSE)。

評估項目建議

當您評估項目建議時,使用的評分資料集應該包含推薦給每個使用者的項目:

  • 資料集的第一個資料行必須包含使用者識別碼。
  • 所有後續的資料行應該包含對應的建議項目識別碼 (依項目與使用者的相關程度排序)。

連線此資料集之前,建議您將資料集排序成最相關的項目排在最前面。

重要

資料行名稱必須是 UserItem 1Item 2Item 3,依此類推,評估推薦才能運作。

評估推薦計算平均正規化折扣累積增益 (NDCG),並在輸出資料集中傳回。

因為無法得知所建議項目的實際「地表實況」,所以評估推薦使用測試資料集中的使用者-項目評等,做為計算 NDCG 時的增益。 若要評估,推薦評分元件只能以「地表實況」評等 (在測試資料集中) 為項目產生建議。

後續步驟

請參閱 Azure Machine Learning 可用的元件集