Relational neighbor classifier
एक रिलेशन मॉडल इस विचार पर आधारित होता है कि नोड्स के बीच का व्यवहार सह-संबद्ध होता है, यानी जुड़े हुए नोड्स के एक ही क्लास में होने की प्रवृत्ति होती है. विशेष रूप से, रिलेशनल नेबर क्लासिफ़ायर किसी नोड के आस-पड़ोस के नोड्स और उनसे जुड़ी एजेस के आधार पर उस नोड की क्लास की भविष्यवाणी करता है.
transfers डेटासेट में अलग-अलग अकाउंट्स के ट्रांज़ैक्शन्स हैं. account_info डेटा बताता है कि इनमें से कौन से अकाउंट्स मनी म्यूल हैं. हालाँकि, यह अज्ञात है कि अकाउंट "I41" मनी म्यूल है या नहीं. रिलेशनल नेबर क्लासिफ़ायर का उपयोग करके अकाउंट "I41" के मनी म्यूल होने की प्रवृत्ति का अनुमान लगाइए.
यह अभ्यास पाठ्यक्रम का हिस्सा है
R में Fraud Detection
अभ्यास निर्देश
transfersके आधार परnetनाम का एक undirected ग्राफ बनाएँ.directedको उपयुक्त बूलियन (TRUEयाFALSE) पर सेट करें.- हर नोड के लिए रंग तय करें: यदि
account_info$isMoneyMule == TRUEहो तोV(net)$colorको"darkorange"सेट करें, अन्यथा"slateblue1". netपरsubgraph()का उपयोग करकेsubsetनाम का एक सबग्राफ बनाएँ जिसमें वर्टिसेज़"I41","I47","I87"और"I20"शामिल हों.subnetऔरnetपरstrength()फंक्शन का उपयोग करें ताकि नोड"I41"के मनी म्यूल होने की प्रॉबेबिलिटी को उसके म्यूल नेबर्स के अंश के रूप में निकाला जा सके
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# From data frame to graph
net <- graph_from_data_frame(___, directed = ___)
# Plot the network; color nodes according to isMoneyMule-variable
___(___)$color <- ifelse(___$___ == TRUE, ___, ___)
plot(net, vertex.label.color = "black", vertex.label.font = 2, vertex.size = 18)
# The id's of the money mule accounts:
print(account_info$id[account_info$isMoneyMule == TRUE])
# Create subgraph containing node "I41" and all money mules nodes "I47", "I87", "I20":
subnet <- ___(___, v = c(___))
# Compute the money mule probability of node "I41" based on the neighbors
___(___, v = "I41") / ___(___, v = "I41")