R 的詐欺偵測
Bart Baesens
Professor Data Science at KU Leuven



詐欺是種不常見、深思熟慮、難以察覺、會隨時間演變,且常經過縝密組織的犯罪,形式多樣。









重大風暴後,某保險公司收到大量理賠申請。
可用下列函式計算資料中的詐欺比例:
table() 與 prop.table()用 prop.table(table(...)) 求詐欺的比例
prop.table(table(fraud_label))
0 1
0.9911 0.0089
labels <- c("no fraud", "fraud")
labels <- paste(labels, round(100 * prop.table(table(fraud_label)), 2), "%")
pie(table(fraud_label), labels, col = c("blue", "red"),
main = "Pie chart of storm claims")

用於評估詐欺偵測模型:

predictions <- rep.int(0, times = nrow(claims))
predictions <- factor(predictions, levels = c("no fraud", "fraud"))
caret 的 confusionMatrix() 函式:library(caret)
confusionMatrix(data = predictions, reference = fraud_label)
Reference
Prediction 0 1
0 614 14
1 0 0
Accuracy : 0.9777
> total_cost <- sum(claim_amount[fraud_label == "fraud"])
> print(total_cost)
2301508
R 的詐欺偵測