บทนำและแรงจูงใจ

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

Bart Baesens

Professor Data Science at KU Leuven

ผู้สอน

picture_Bart.png

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

ผู้สอน

picture_BartTim.png

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

ผู้สอน

picture_BartTimSebastiaan.png

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

การฉ้อโกงคืออะไร?

การฉ้อโกงเป็นอาชญากรรมที่เกิดขึ้นน้อย วางแผนมาอย่างดี ซ่อนเร้นแนบเนียน เปลี่ยนแปลงตามเวลา และมักถูกจัดการอย่างเป็นระบบ โดยปรากฏในรูปแบบที่หลากหลาย

หมาป่าในคราบแกะ

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

ผลกระทบของการฉ้อโกง

  • การฉ้อโกงเกิดขึ้นน้อยมาก แต่ค่าเสียหายจากการตรวจไม่พบนั้นมหาศาล!
  • ตัวอย่าง:
    • องค์กรสูญเสียรายได้ต่อปีถึง 5% จากการฉ้อโกง
    • ธุรกิจสูญเสียเงินจากการฉ้อโกง > $3.5 ล้านล้านต่อปี
    • บริษัทบัตรเครดิตสูญเสียประมาณ7 เซนต์ต่อทุก $100 ของธุรกรรมจากการฉ้อโกง
    • การฉ้อโกงคิดเป็น5-10% ของยอดเคลมที่จ่ายสำหรับประกันภัยที่ไม่ใช่ประกันชีวิต
การตรวจจับการฉ้อโกงใน R

ประเภทของการฉ้อโกง

  • การฟอกเงิน
  • การฉ้อโกงเช็ค
  • การฉ้อโกงบัตรเครดิต
  • การฉ้อโกงด้านศุลกากร
  • การปลอมแปลง
  • การโจรกรรมข้อมูลส่วนตัว
  • การฉ้อโกงประกันภัย
  • การฉ้อโกงสินเชื่อบ้าน
  • การฉ้อโกงกรณีไม่ส่งมอบสินค้า
  • การฉ้อโกงออนไลน์
  • การฉ้อโกงการรับประกันสินค้า
  • การหลีกเลี่ยงภาษี
  • การฉ้อโกงด้านโทรคมนาคม
  • การโจรกรรมสินค้าคงคลัง
  • การฉ้อโกงตั๋ว
  • การฉ้อโกงด้านการขนส่ง
  • การฉ้อโกงทางการเงิน
  • การฉ้อโกงค่าชดเชยแรงงาน
การตรวจจับการฉ้อโกงใน R

คุณสมบัติหลักของโมเดลวิเคราะห์การฉ้อโกงที่ประสบความสำเร็จ

  • ความแม่นยำทางสถิติ

robinhood

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

คุณสมบัติหลักของโมเดลวิเคราะห์การฉ้อโกงที่ประสบความสำเร็จ

  • ความแม่นยำทางสถิติ
  • ความสามารถในการตีความ

minorityreport

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

คุณสมบัติหลักของโมเดลวิเคราะห์การฉ้อโกงที่ประสบความสำเร็จ

  • ความแม่นยำทางสถิติ
  • ความสามารถในการตีความ
  • การปฏิบัติตามข้อกำหนด

regulatory

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

คุณสมบัติหลักของโมเดลวิเคราะห์การฉ้อโกงที่ประสบความสำเร็จ

  • ความแม่นยำทางสถิติ
  • ความสามารถในการตีความ
  • การปฏิบัติตามข้อกำหนด
  • ผลกระทบทางเศรษฐกิจ

dagobert

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

คุณสมบัติหลักของโมเดลวิเคราะห์การฉ้อโกงที่ประสบความสำเร็จ

  • ความแม่นยำทางสถิติ
  • ความสามารถในการตีความ
  • การปฏิบัติตามข้อกำหนด
  • ต้นทุนทางเศรษฐกิจ
  • เสริมแนวทางจากผู้เชี่ยวชาญด้วยเทคนิค data-driven

manmachine

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

ความท้าทายของโมเดลตรวจจับการฉ้อโกง

  • ความไม่สมดุลของข้อมูล
    • เช่น การฉ้อโกงบัตรเครดิตมักมีสัดส่วนน้อยกว่า 0.5%

haystack

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

ความท้าทายของโมเดลตรวจจับการฉ้อโกง

  • ความไม่สมดุลของข้อมูล
    • เช่น การฉ้อโกงบัตรเครดิตมักมีสัดส่วนน้อยกว่า 0.5%
  • ประสิทธิภาพในการทำงาน
    • เช่น การตรวจสอบบัตรเครดิตต้องตัดสินใจภายใน 8 วินาที

flash

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

ความท้าทายของโมเดลตรวจจับการฉ้อโกง

  • ความไม่สมดุลของข้อมูล
    • เช่น การฉ้อโกงบัตรเครดิตมักมีสัดส่วนน้อยกว่า 0.5%
  • ประสิทธิภาพในการทำงาน
    • เช่น การตรวจสอบบัตรเครดิตต้องตัดสินใจภายใน 8 วินาที
  • หลีกเลี่ยงการรบกวนลูกค้าที่ไม่ได้กระทำผิด

goodcustomer

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

ข้อมูลที่ไม่สมดุล

  • หลังพายุครั้งใหญ่ บริษัทประกันภัยได้รับเคลมจำนวนมาก

    • เคลมที่เป็นการฉ้อโกงระบุด้วย 1 และเคลมที่ถูกต้องระบุด้วย 0
  • สัดส่วนของเคลมฉ้อโกงในข้อมูลหาได้ด้วยฟังก์ชัน

    • table() และ prop.table()
  • ใช้ prop.table(table(...)) เพื่อดูสัดส่วนของการฉ้อโกง

prop.table(table(fraud_label))
     0      1
0.9911 0.0089
การตรวจจับการฉ้อโกงใน R

แสดงความไม่สมดุลด้วยแผนภูมิวงกลม

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")

stormclaims

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

Confusion matrix

ใช้สำหรับประเมินโมเดลตรวจจับการฉ้อโกง:

confusionmatrix

การตรวจจับการฉ้อโกงใน R
  • สมมติว่าไม่มีโมเดลตรวจจับ ดังนั้นเคลมทั้งหมดถูกมองว่าถูกต้อง:
predictions <- rep.int(0, times = nrow(claims))
predictions <- factor(predictions, levels = c("no fraud", "fraud"))
  • ฟังก์ชัน confusionMatrix() จากแพ็กเกจ caret:
library(caret)
confusionMatrix(data = predictions, reference = fraud_label)
             Reference
 Prediction    0   1
            0 614  14
            1   0   0                                   
 Accuracy : 0.9777
การตรวจจับการฉ้อโกงใน R

ต้นทุนรวมจากการไม่ตรวจจับการฉ้อโกง: ตัวอย่างเคลม

  • ต้นทุนรวมของการฉ้อโกงคือผลรวมของมูลค่าเคลมที่เป็นการฉ้อโกง
  • ต้นทุนรวมเมื่อไม่มีการตรวจจับการฉ้อโกง:
    > total_cost <- sum(claim_amount[fraud_label == "fraud"])
    > print(total_cost)
    
2301508
การตรวจจับการฉ้อโกงใน R

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

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

Preparing Video For Download...