Inferență colectivă
Inferența colectivă este o procedură prin care se etichetează simultan nodurile din date interconectate, cu scopul de a reduce erorile de clasificare.
În acest exercițiu vei aplica inferența colectivă și vei observa efectul pe care îl are asupra predicției de churn, folosind metrica de performanță AUC. AUC, sau aria de sub curba ROC, este utilizată în mod frecvent pentru a evalua performanța tehnicilor de clasificare.
- AUC = probabilitatea ca un client care renunță la serviciu, ales aleatoriu, să fie clasat mai sus de model față de un client care nu renunță, ales aleatoriu
- AUC = o valoare între 0,5 și 1, unde o valoare mai mare indică un model mai bun
Oare inferența colectivă crește valoarea AUC?
Acest exercițiu face parte din cursul
Analiză predictivă folosind date de rețea în R
Instrucțiuni pentru exercițiu
- Calculează AUC-ul clasificatorului relațional de tip vecin apelând funcția
aucdin pachetulpROC, folosind etichetele reale de churncustomers$churnșichurnProbca valoare prezisă. - Scrie o buclă
forîn care aplici clasificatorul probabilistic relațional de tip vecin de zece ori și atribuie valoarea rezultată vectoruluichurnProbla fiecare iterație. - Calculează din nou AUC-ul folosind vectorul
churnProbactualizat.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(___))