मल्टीवेरिएट आउटलायर का पता लगाना

R में Fraud Detection

Tim Verdonck

Professor Data Science at KU Leuven

Animals डेटा

  • पैकेज MASS का Animals डेटासेट 28 जानवरों के औसत मस्तिष्क और शरीर के वज़न देता है
library(MASS)
data("Animals")
                    body brain
Mountain beaver     1.35   8.1
Cow               465.00 423.0
Grey wolf          36.33 119.5
Goat               27.66 115.0
  • शरीर और मस्तिष्क वज़न दोनों पर लॉगारिथमिक ट्रांसफॉर्मेशन लागू करें
X <- data.frame(log_body = log(Animals$body), log_brain = log(Animals$brain))
R में Fraud Detection

Animals डेटा: यूनिवेरिएट आउटलायर डिटेक्शन

शरीर वज़न और मस्तिष्क वज़न के लॉग का बॉक्सप्लॉट

animalsbp

R में Fraud Detection

Animals डेटा: स्कैटरप्लॉट

scatteranimals_ggplot

R में Fraud Detection

Mahalanobis distance

किसी ऑब्जर्वेशन के लिए Mahalanobis (या generalized) distance सह-प्रसरण मैट्रिक्स को ध्यान में रखते हुए उस ऑब्जर्वेशन से सेंटर तक की दूरी है।

mahalanobiseuclidean_ggplot

R में Fraud Detection

मल्टीवेरिएट आउटलायर के लिए Mahalanobis distance

  • Classical Mahalanobis distances: लोकेशन के लिए sample mean और स्कैटर के लिए sample covariance matrix का अनुमान

  • मल्टीवेरिएट आउटलायर खोजने के लिए Mahalanobis distance को एक कट-ऑफ वैल्यू से तुलना करते हैं, जो chisquare distribution से निकाली जाती है

  • दो डाइमेंशनों में हम संबंधित $97.5\%$ tolerance ellipsoid बना सकते हैं, जिसमें वे ऑब्जर्वेशन होते हैं जिनकी Mahalanobis distance कट-ऑफ से कम है

R में Fraud Detection

Mahalanobis distance पर आधारित tolerance ellipsoid

animals.clcenter <- colMeans(X)
animals.clcov <- cov(X)
rad <- sqrt(qchisq(0.975, df = ncol(X)))

library(car) ellipse.cl <- data.frame(ellipse(center = animals.clcenter, shape = animals.clcov,radius = rad, segments = 100, draw = FALSE)) colnames(ellipse.cl) <- colnames(X)
fig <- fig + geom_polygon(data=ellipse.cl, color = "dodgerblue", fill = "dodgerblue", alpha = 0.2) + geom_point(aes(x = animals.clcenter[1], y = animals.clcenter[2]), color = "blue", size = 6)
R में Fraud Detection

cltolanimals_ggplot

R में Fraud Detection

लोकेशन और स्कैटर के रोबस्ट एस्टिमेट

Rousseeuw का Minimum Covariance Determinant (MCD) एस्टिमेटर मल्टीवेरिएट लोकेशन और स्कैटर का लोकप्रिय रोबस्ट एस्टिमेटर है।

  • MCD उन $h$ ऑब्जर्वेशन को ढूँढता है जिनकी classical covariance matrix का determinant सबसे कम हो।
  • लोकेशन का MCD एस्टिमेट तब इन $h$ ऑब्जर्वेशन का mean होता है
  • स्कैटर का MCD एस्टिमेट तब इन $h$ पॉइंट्स की sample covariance matrix होता है (consistency factor से गुणा)
  • नॉर्मल डेटा पर एफिशिएंसी बढ़ाने के लिए reweighting स्टेप लगाया जाता है
  • MCD की गणना कठिन है, पर कई fast algorithms प्रस्तावित हैं
R में Fraud Detection

Robust distance

MCD के साथ लोकेशन और स्कैटर के रोबस्ट एस्टिमेट

library(robustbase)
animals.mcd <- covMcd(X)

# Robust estimate of location
animals.mcd$center 

# Robust estimate of scatter
animals.mcd$cov

इन रोबस्ट लोकेशन और स्कैटर एस्टिमेट्स को Mahalanobis distance की परिभाषा में रखने पर हमें robust distances मिलती हैं और हम एक रोबस्ट tolerance ellipsoid बना सकते हैं.

R में Fraud Detection

Animals: robust tolerance ellipsoid

library(robustbase)
animals.mcd <- covMcd(X)
ellipse.mcd <- data.frame(ellipse(center = animals.mcd$center, 
                                   shape = animals.mcd$cov,
                                   radius = rad, segments = 100, draw = FALSE))
colnames(ellipse.mcd) <- colnames(X)

fig2 <- fig + geom_polygon(data = ellipse.mcd, color = "red", fill = "red", alpha = 0.3) + geom_point(aes(x = animals.mcd$center[1], y = animals.mcd$center[2]), color = "red", size = 6)
R में Fraud Detection

robtolanimals_ggplot_v3.png

R में Fraud Detection

Distance-distance plot

  • जब $p>3$ हो तो tolerance ellipsoid को विज़ुअलाइज़ नहीं कर सकते।
  • distance-distance plot हर ऑब्जर्वेशन की robust distance बनाम उसकी classical Mahalanobis distance दिखाता है, जो सीधे MCD ऑब्जेक्ट से मिलती है
    plot(animals.mcd, which = "dd")
    
    animalsddplot
R में Fraud Detection

Animals: आउटलायर जाँचें

animalsdetection

R में Fraud Detection

अभ्यास करते हैं!

R में Fraud Detection

Preparing Video For Download...