การอนุมานบนพื้นฐานเครือข่ายสังคม

การตรวจจับการฉ้อโกงใน R

Tim Verdonck

Professor Data Science at KU Leuven

การอนุมานบนพื้นฐานเครือข่ายสังคม

เป้าหมาย

พยากรณ์พฤติกรรมของโหนดจากพฤติกรรมของโหนดอื่น

missing_nodes_in_network.png

การตรวจจับการฉ้อโกงใน R

การอนุมานบนพื้นฐานเครือข่ายสังคม

ความท้าทาย

  • ข้อมูลไม่เป็นอิสระต่อกัน
    • พฤติกรรมของโหนดหนึ่งอาจส่งผลต่อโหนดอื่น
    • พฤติกรรมระหว่างโหนดมีความสัมพันธ์กัน
  • การอนุมานแบบกลุ่ม: การอนุมานของแต่ละโหนดอาจส่งผลซึ่งกันและกัน

missing_nodes_in_network.png

การตรวจจับการฉ้อโกงใน R

Non-relational vs Relational

โมเดลแบบไม่สัมพันธ์ (Non-relational)

  • ใช้เฉพาะข้อมูลเฉพาะที่
  • Logistic regression, decision trees, ...

logistic_regression.png

โมเดลแบบสัมพันธ์ (Relational)

  • ใช้ประโยชน์จากลิงก์ในเครือข่าย
  • Relational neighbor classifier

simple_network.png

การตรวจจับการฉ้อโกงใน R

Relational neighbor classifier

สมมติฐาน

  • Homophily: โหนดที่เชื่อมต่อกันมีแนวโน้มอยู่ในกลุ่มเดียวกัน ("guilt by association")
  • ป้ายกำกับคลาสบางส่วนเป็นที่ทราบแล้ว

missing_node.png

การตรวจจับการฉ้อโกงใน R

Relational neighbor classifier

ความน่าจะเป็นของการฉ้อโกง

$$P(F | ?) = \frac{1 + 1}{1 + 1 + 1 + 1 + 1}=\frac{2}{5}= 40\%$$

missing_node.png

การตรวจจับการฉ้อโกงใน R

Relational neighbor classifier แบบมีน้ำหนัก

ความน่าจะเป็นของการฉ้อโกง

$$P(F | ?) = \frac{1 + 2}{3 + 1 + 1 + 2 + 1}=\frac{3}{8}=37.5\%$$

missing_node_weighted.png

การตรวจจับการฉ้อโกงใน R

Relational neighbor classifier

vertex_attr(network) ## Nodes are labeled as 1 (fraud), 0 (not fraud), or NA (unknown)
$name
"?" "B" "C" "D" "E" "A"
$isFraud
NA  1  0  1  0  0
edge_attr(network) ## The edges have a weight

$weight
2 3 1 1 1
การตรวจจับการฉ้อโกงใน R

Relational neighbor classifier

## subgraph(): create subgraph containing nodes "?" and all fraudulent nodes
subnetwork <- subgraph(network, v = c("?", "B", "D"))

## strength(): sum up the edge weights of the adjacent edges for node "?" prob_fraud <- strength(subnetwork, v = "?") / strength(network, v = "?")
prob_fraud
0.375
การตรวจจับการฉ้อโกงใน R

มาฝึกกันเถอะ!

การตรวจจับการฉ้อโกงใน R

Preparing Video For Download...