Inferenza collettiva
L'inferenza collettiva è una procedura per etichettare simultaneamente i nodi in dati interconnessi così da ridurre l'errore di classificazione.
In questo esercizio eseguirai l'inferenza collettiva e vedrai l'effetto che ha sulla previsione del churn usando la metrica AUC. AUC, ovvero area sotto la curva ROC, è comunemente usata per valutare le prestazioni delle tecniche di classificazione.
- AUC = probabilità che un churner scelto a caso sia classificato dal modello con punteggio più alto rispetto a un non-churner scelto a caso
- AUC = numero compreso tra 0.5 e 1, dove un valore più alto indica un modello migliore
L'inferenza collettiva aumenta il valore di AUC?
Questo esercizio fa parte del corso
Analitica predittiva con dati di rete in R
Istruzioni dell'esercizio
- Calcola l'AUC del classificatore dei vicini relazionali chiamando la funzione
aucdel pacchettopROC, usando le etichette di churn realicustomers$churnechurnProbcome valore predetto. - Scrivi un ciclo
forin cui applichi il classificatore probabilistico dei vicini relazionali dieci volte, e a ogni iterazione assegna nuovamente il valore al vettorechurnProb. - Calcola di nuovo l'AUC usando il vettore
churnProbaggiornato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Load the pROC package and data
library(pROC)
load("Nex132.RData")
# Compute the AUC
___(customers$churn, as.vector(churnProb))
# Write a for loop to update the probabilities
___(i in 1:10){
___ <- as.vector((AdjacencyMatrix %*% churnProb) / neighbors)
}
# Compute the AUC again
___(customers$churn, as.vector(___))