不正とソーシャルネットワーク分析

Rで学ぶ不正検知

Bart Baesens

Professor Data Science at KU Leuven

不正は社会的現象か?

  • 直観: 人と人の「関係」
  • 不正は社会的な現象を示すか?

ソーシャルネットワーク.jpg

Rで学ぶ不正検知

不正は社会的現象か?

  • 詐欺師は集まりやすい:
    • 同じイベント・活動に参加
    • 同じ犯罪に関与
    • 同じリソースを使用
    • 同一人物の場合がある(なりすまし)
Rで学ぶ不正検知

同質性

ソーシャルネットワークの同質性(社会学)
人は自分に似ていると感じる相手と結びつきやすい。

不正ネットワークの同質性
詐欺師は詐欺師と、正当な人は正当な人とつながりやすい。

Rで学ぶ不正検知

同質性 - 社会保障不正

ネットワークに有意な同質性パターンはあるか?

assortativity_nominal(network, types = V(network)$isFraud, directed = FALSE)

ネットワーク同質性

Rで学ぶ不正検知

なりすまし

本人確認前.png

: 本人は常連の連絡先に電話する

Rで学ぶ不正検知

なりすまし

本人確認後.png

: 本人は常連の連絡先に電話する

: 本人は新しい連絡先に電話し、偶然にも別人の連絡先と重なる

Rで学ぶ不正検知

マネーミュール

  • マネーミュール = 不正取得(例: 盗難)した資金を送金する人物
  • 不正取引の受取人
  • 他者(詐欺実行者)に代わって盗難資金を移す

口座ネットワーク.png

Rで学ぶ不正検知
V(network)$name
"ID02" "ID11" "ID04" "ID03" "ID08" ... "ID16" "ID10" "ID07"
print(list_money_mules)
"ID01" "ID02" "ID03" "ID04"
V(network)$isMoneyMule <- ifelse(V(network)$name %in% list_money_mules, TRUE, FALSE)

V(network)$color <- ifelse(V(network)$isMoneyMule, "darkorange", "lightblue")
vertex_attr(network)
$isMoneyMule
TRUE FALSE  TRUE  TRUE FALSE ... FALSE FALSE FALSE
$color
"darkorange" "lightblue" "darkorange" ... "lightblue" "lightblue"
Rで学ぶ不正検知

マネーミュールを強調したネットワーク

plot(network)

ミュール強調ネットワーク

Rで学ぶ不正検知

練習してみましょう!

Rで学ぶ不正検知

Preparing Video For Download...