LoslegenKostenlos loslegen

Relational Neighbor Classifier

Ein Relationsmodell basiert auf der Idee, dass das Verhalten zwischen Knoten korreliert ist – verbundene Knoten neigen also dazu, derselben Klasse anzugehören. Der Relational Neighbor Classifier sagt speziell die Klasse eines Knotens auf Basis seiner Nachbarknoten und angrenzenden Kanten voraus.

Der Datensatz transfers besteht aus Transaktionen verschiedener Konten. Die Daten account_info enthalten, welche dieser Konten Geldwäscher (money mules) sind. Ob das Konto "I41" eine Geldwäschekontoverbindung ist, ist jedoch unbekannt. Sage die Neigung von Konto "I41" zur Geldwäsche mithilfe eines Relational Neighbor Classifier vorher.

Diese Übung ist Teil des Kurses

Fraud Detection in R

Kurs anzeigen

Anleitung zur Übung

  • Erstelle einen ungerichteten Graphen namens net auf Basis von transfers. Setze directed auf den passenden booleschen Wert (TRUE oder FALSE).
  • Lege für jeden Knoten eine Farbe fest: Setze V(net)$color auf "darkorange", wenn account_info$isMoneyMule == TRUE, andernfalls auf "slateblue1".
  • Verwende subgraph() auf net, um einen Subgraphen namens subset mit den Knoten "I41","I47", "I87" und "I20" zu erzeugen.
  • Verwende die Funktion strength() auf subnet und auf net, um die Money-Mule-Wahrscheinlichkeit des Knotens "I41" als Anteil der Mule-Nachbarn zu berechnen.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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")
Code bearbeiten und ausführen