R में Fraud Detection
Tim Verdonck
Professor Data Science at KU Leuven
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))
शरीर वज़न और मस्तिष्क वज़न के लॉग का बॉक्सप्लॉट


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

Classical Mahalanobis distances: लोकेशन के लिए sample mean और स्कैटर के लिए sample covariance matrix का अनुमान
मल्टीवेरिएट आउटलायर खोजने के लिए Mahalanobis distance को एक कट-ऑफ वैल्यू से तुलना करते हैं, जो chisquare distribution से निकाली जाती है
दो डाइमेंशनों में हम संबंधित $97.5\%$ tolerance ellipsoid बना सकते हैं, जिसमें वे ऑब्जर्वेशन होते हैं जिनकी Mahalanobis distance कट-ऑफ से कम है
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)

Rousseeuw का Minimum Covariance Determinant (MCD) एस्टिमेटर मल्टीवेरिएट लोकेशन और स्कैटर का लोकप्रिय रोबस्ट एस्टिमेटर है।
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 बना सकते हैं.
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)

MCD ऑब्जेक्ट से मिलती हैplot(animals.mcd, which = "dd")


R में Fraud Detection