Evaluate Recommender

Questo articolo descrive come usare il componente Evaluate Recommender nella finestra di progettazione di Azure Machine Learning. L'obiettivo è misurare l'accuratezza delle stime eseguite da un modello di raccomandazione. Usando questo componente, è possibile valutare diversi tipi di raccomandazioni:

  • Valutazioni stimate per un utente e un elemento
  • Elementi consigliati per un utente

Quando si creano stime usando un modello di raccomandazione, vengono restituiti risultati leggermente diversi per ognuno di questi tipi di stima supportati. Il componente Evaluate Recommender deduce il tipo di stima dal formato di colonna del set di dati con punteggio. Ad esempio, il set di dati con punteggio potrebbe contenere:

  • Triple di valutazione degli elementi utente
  • Utenti e gli elementi consigliati

Il componente applica anche le metriche di prestazioni appropriate, in base al tipo di stima eseguita.

Come configurare Evaluate Recommender

Il componente Evaluate Recommender confronta l'output di stima usando un modello di raccomandazione con i dati corrispondenti di "verità di base". Ad esempio, il componente Score SVD Recommender produce set di dati con punteggio che è possibile analizzare usando Evaluate Recommender.

Requisiti

Evaluate Recommender richiede i set di dati seguenti come input.

Set di dati di test

Il set di dati di test contiene i dati "ground truth" sotto forma di triple di valutazione degli elementi utente.

Set di dati con punteggio

Il set di dati con punteggio contiene le stime generate dal modello di raccomandazione.

Le colonne di questo secondo set di dati dipendono dal tipo di stima eseguita durante il processo di assegnazione dei punteggi. Ad esempio, il set di dati con punteggio può contenere uno dei seguenti elementi:

  • Utenti, elementi e classificazioni che l'utente potrebbe dare per l'elemento
  • Un elenco di utenti ed elementi consigliati per loro

Metriche

Le metriche delle prestazioni per il modello vengono generate in base al tipo di input. Nelle sezioni seguenti vengono fornite informazioni dettagliate.

Valutare le valutazioni stimate

Quando si valutano valutazioni stimate, il set di dati con punteggio (il secondo input di Evaluate Recommender) deve contenere triple di valutazione degli elementi utente che soddisfano questi requisiti:

  • La prima colonna del set di dati contiene gli identificatori utente.
  • La seconda colonna contiene gli identificatori dell'elemento.
  • La terza colonna contiene le classificazioni degli elementi utente corrispondenti.

Importante

Affinché la valutazione abbia esito positivo, i nomi delle colonne devono essere Userrispettivamente , Iteme Rating.

Evaluate Recommender confronta le classificazioni nel set di dati "ground truth" con le valutazioni stimate del set di dati con punteggio. Calcola quindi l'errore assoluto medio (MAE) e l'errore quadratico medio radice (RMSE).

Valutare le raccomandazioni relative all'elemento

Quando si valutano le raccomandazioni per gli elementi, usare un set di dati con punteggio che include gli elementi consigliati per ogni utente:

  • La prima colonna del set di dati deve contenere l'identificatore utente.
  • Tutte le colonne successive devono contenere gli identificatori di elemento consigliati corrispondenti, ordinati in base al modo in cui un elemento è rilevante per l'utente.

Prima di connettere questo set di dati, è consigliabile ordinare il set di dati in modo che gli elementi più rilevanti vengano prima.

Importante

Per il funzionamento di Evaluate Recommender, i nomi delle colonne devono essere User, Item 1, Item 2Item 3 e così via.

Evaluate Recommender calcola il guadagno cumulativo normalizzato normalizzato medio (NDCG) e lo restituisce nel set di dati di output.

Poiché non è possibile conoscere la "verità di base" effettiva per gli elementi consigliati, Evaluate Recommender usa le classificazioni degli elementi utente nel set di dati di test man mano che aumenta il calcolo di NDCG. Per valutare, il componente di assegnazione dei punteggi del consiglio deve produrre solo raccomandazioni per gli elementi con classificazioni "attendibilità" (nel set di dati di test).

Passaggi successivi

Vedere il set di componenti disponibili per Azure Machine Learning.