สำรวจวิธีดั้งเดิมในการตรวจจับการฉ้อโกง
ในแบบฝึกหัดนี้ เราจะลองค้นหากรณีการฉ้อโกงในชุดข้อมูลบัตรเครดิตด้วย "วิธีดั้งเดิม" ก่อนอื่นจะกำหนดค่าเกณฑ์โดยใช้สถิติพื้นฐาน เพื่อแยกความแตกต่างระหว่างการฉ้อโกงและธุรกรรมปกติ จากนั้นนำค่าเกณฑ์เหล่านั้นมาใช้กับฟีเจอร์เพื่อตรวจจับการฉ้อโกง ซึ่งเป็นแนวปฏิบัติทั่วไปในทีม fraud analytics
ค่าเกณฑ์ทางสถิติมักกำหนดจากการดูค่า mean ของการสังเกต เริ่มต้นด้วยการตรวจสอบว่าค่าเฉลี่ยของฟีเจอร์ แตกต่างกันระหว่างกรณีการฉ้อโกงและกรณีปกติ หรือไม่ จากนั้นนำข้อมูลดังกล่าวมาสร้างเกณฑ์ที่สมเหตุสมผล และตรวจสอบว่าวิธีนี้มีประสิทธิภาพในการตรวจจับการฉ้อโกงเพียงใด
pandas ถูก import ไว้แล้วในชื่อ pd
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การตรวจจับการฉ้อโกงด้วย Python
คำแนะนำการฝึกหัด
- ใช้
groupby()เพื่อจัดกลุ่มdfตามClassแล้วคำนวณค่าเฉลี่ยของฟีเจอร์ - สร้างเงื่อนไขที่ระบุว่า
V1น้อยกว่า -3 และV3น้อยกว่า -5 เพื่อใช้ตรวจจับกรณีการฉ้อโกง - ใช้ฟังก์ชัน
crosstabจากpandasเป็นตัวชี้วัดประสิทธิภาพ เพื่อเปรียบเทียบกรณีที่ถูกตรวจจับว่าเป็นการฉ้อโกงกับกรณีการฉ้อโกงจริง
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Get the mean for each group
____.____(____).mean()
# Implement a rule for stating which cases are flagged as fraud
df['flag_as_fraud'] = np.where(np.logical_and(______), 1, 0)
# Create a crosstab of flagged fraud cases versus the actual fraud cases
print(____(df.Class, df.flag_as_fraud, rownames=['Actual Fraud'], colnames=['Flagged Fraud']))