Náhodné podvzorkování

Detekce podvodů v R

Bart Baesens

Professor Data Science at KU Leuven

Náhodné podvzorkování (RUS)

Sloupcový graf tříd – podvzorkování

Detekce podvodů v R

Původní trénovací a testovací data

Detekce podvodů v R

Náhodné podvzorkování v0

Detekce podvodů v R

Náhodné podvzorkování v1

Detekce podvodů v R

Kreditní karty V2 vs V1 – nevyvážená data

Detekce podvodů v R
table(creditcard$Class)
    0     1 
24108   492
n_fraud <- 492
new_frac_fraud <- 0.50
new_n_total <- n_fraud / new_frac_fraud ## = 492 / 0.50 = 984

library(ROSE) undersampling_result <- ovun.sample(formula = Class ~ ., data = creditcard, method = "under", N = new_n_total, seed = 2018)
undersampled_credit <- undersampling_result$data
prop.table(table(undersampled_credit$Class))
  0   1 
0.5 0.5
Detekce podvodů v R

Podvzorkovaná data kreditních karet V2 vs V1

Detekce podvodů v R

Použijme obě metody!

Sloupcový graf tříd – obě metody

Detekce podvodů v R
n_new <- nrow(creditcard) ## = 24600
fraction_fraud_new <- 0.50

sampling_result <- ovun.sample(formula = Class ~ ., data = creditcard, method = "both", N = n_new, p = fraction_fraud_new, seed = 2018) sampled_credit <- sampling_result$data
prop.table(table(sampled_credit$Class))
        0         1 
0.5039837 0.4960163
Detekce podvodů v R

Kreditní karty V2 vs V1 – obě metody

Detekce podvodů v R

Pojďme si procvičit!

Detekce podvodů v R

Preparing Video For Download...