Wnioskowanie zbiorowe
Wnioskowanie zbiorowe to procedura jednoczesnego etykietowania węzłów w powiązanych danych, której celem jest zmniejszenie błędu klasyfikacji.
W tym ćwiczeniu przeprowadzisz wnioskowanie zbiorowe i zobaczysz, jaki wpływ ma ono na przewidywanie odejść klientów (churn) przy użyciu miary AUC. AUC, czyli pole pod krzywą ROC, jest powszechnie stosowane do oceny skuteczności metod klasyfikacji.
- AUC = prawdopodobieństwo, że losowo wybrany klient odchodzący zostanie oceniony przez model wyżej niż losowo wybrany klient pozostający
- AUC = liczba z przedziału od 0,5 do 1, gdzie wyższa wartość oznacza lepszy model
Czy wnioskowanie zbiorowe zwiększa wartość AUC?
To ćwiczenie jest częścią kursu
Predykcyjna analityka sieciowa w R
Instrukcje do ćwiczenia
- Oblicz AUC klasyfikatora sąsiadów relacyjnych, wywołując funkcję
aucz pakietupROC– jako argumenty podaj rzeczywiste etykiety odejśćcustomers$churnorazchurnProbjako wartość prognozowaną. - Napisz pętlę
for, w której dziesięciokrotnie zastosujesz probabilistyczny klasyfikator sąsiadów relacyjnych i w każdej iteracji przypisujesz wynik z powrotem do wektorachurnProb. - Oblicz ponownie AUC, używając zaktualizowanego wektora
churnProb.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(___))