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 User
rispettivamente , Item
e 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 2
Item 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.