การตรวจจับการฉ้อโกงบัตรเครดิต: โครงการภาคปฏิบัติ
ค้นพบ:
- ทำความเข้าใจเกี่ยวกับความสำคัญของการตรวจจับการฉ้อโกงบัตรเครดิต
- บทนำสู่ชุดข้อมูล “การตรวจจับการฉ้อโกงบัตรเครดิต” สำหรับโครงการ
- สร้างแบบจำลองการตรวจจับการฉ้อโกงที่มีประสิทธิภาพ
- การประเมินประสิทธิภาพของโมเดล
- การตีความและวิเคราะห์ผลลัพธ์ของแบบจำลอง
รายงานการชำระเงินโลกปี 2022 เน้นย้ำถึงการเติบโตอย่างรวดเร็วของธุรกรรมที่ไม่ใช่เงินสด และความสำคัญของห่วงโซ่คุณค่าการชำระเงินแบบ B2B และธุรกิจขนาดกลางและขนาดย่อม นอกจากนี้คาดว่าในปีต่อๆ ไปจะมีการเติบโตอย่างต่อเนื่องของธุรกรรมที่ไม่ใช่เงินสดดังต่อไปนี้
แม้ว่าอาจดูเหมือนมีแนวโน้มดี แต่ธุรกรรมฉ้อฉลก็เพิ่มขึ้นเช่นกัน แม้จะมีการนำชิปอัจฉริยะ EMV มาใช้ แต่เงินจำนวนมากยังคงสูญหายเนื่องจากการฉ้อโกงบัตรเครดิต
เราจะลดความเสี่ยงได้อย่างไร? แม้ว่าจะมีเทคนิคมากมายในการลดความสูญเสียและป้องกันการฉ้อโกง แต่ฉันจะแนะนำคุณตลอดแนวทางของฉันและแบ่งปันสิ่งที่ฉันค้นพบ
I. เกี่ยวกับชุดข้อมูล
ชุดข้อมูล “ Credit Card Fraud Detection ” บน Kaggle เป็นชุดข้อมูลที่ไม่สมดุลอย่างมาก ซึ่งมีการทำธุรกรรมด้วยบัตรเครดิตในเดือนกันยายน 2013 โดยผู้ถือบัตรในยุโรป ชุดข้อมูลประกอบด้วยธุรกรรมทั้งหมด 284,807 รายการ ซึ่งมีเพียง 492 รายการเท่านั้นที่ฉ้อฉล ทำให้ชุดข้อมูลไม่สมดุลอย่างมาก ชุดข้อมูลประกอบด้วยคุณสมบัติ 28 รายการ ซึ่งเป็นค่าตัวเลขที่ได้จากการแปลง PCA เพื่อรักษาความลับของข้อมูลที่ละเอียดอ่อน จุดมุ่งหมายของชุดข้อมูลนี้คือการสร้างแบบจำลองที่สามารถตรวจจับธุรกรรมที่ฉ้อโกงได้อย่างแม่นยำในแบบเรียลไทม์ เพื่อป้องกันกิจกรรมการฉ้อโกงและลดความสูญเสียที่เกิดขึ้นกับผู้ถือบัตรและธนาคาร ชุดข้อมูลนี้ใช้กันอย่างแพร่หลายในการวิจัยการเรียนรู้ด้วยเครื่องเพื่อประเมินอัลกอริทึมและเทคนิคการจัดประเภทต่างๆ เพื่อจัดการกับชุดข้อมูลที่ไม่สมดุล
ครั้งที่สอง การวิเคราะห์ข้อมูลเชิงสำรวจ
ด้วยข้อมูลที่พร้อมใช้งานในขณะนี้ เรามาตรวจสอบคอลัมน์, Time
, Amount
และ กันClass
1 ครั้ง
จากโครงเรื่อง เราสามารถสังเกตได้ว่าคุณลักษณะเวลามีการกระจายแบบ bimodal ที่มีสองจุดสูงสุด ซึ่งบ่งชี้ว่ามีสองช่วงระหว่างวันที่มีการทำธุรกรรมผ่านบัตรเครดิตบ่อยกว่า จุดสูงสุดแรกเกิดขึ้นที่ประมาณ 50,000 วินาที (ประมาณ 14 ชั่วโมง) ในขณะที่จุดสูงสุดที่สองเกิดขึ้นที่ประมาณ 120,000 วินาที (ประมาณ 33 ชั่วโมง) สิ่งนี้ชี้ให้เห็นว่าอาจมีรูปแบบในช่วงเวลาของการทำธุรกรรมด้วยบัตรเครดิตที่อาจเป็นประโยชน์สำหรับการตรวจจับการฉ้อโกง
2. จำนวนเงิน
จากโครงเรื่อง เราสามารถสังเกตได้ว่าการกระจายของคุณลักษณะ Amount นั้นเบ้ไปทางขวาอย่างมาก โดยมีหางยาวไปทางขวา สิ่งนี้บ่งชี้ว่าธุรกรรมส่วนใหญ่มีจำนวนเงินต่ำ ในขณะที่ธุรกรรมบางส่วนมีจำนวนเงินที่สูงมาก ด้วยเหตุนี้ จึงแสดงว่าชุดข้อมูลมีค่าผิดปกติบางอย่างในแง่ของจำนวนธุรกรรม ดังนั้น เมื่อสร้างแบบจำลองสำหรับการตรวจจับการฉ้อโกง อาจจำเป็นต้องจัดการกับค่าผิดปกติในฟีเจอร์Amount
เช่น โดยใช้การแปลงบันทึกหรือวิธีการทางสถิติที่มีประสิทธิภาพ
3. ระดับ (การฉ้อโกง | การไม่ฉ้อโกง)
จากโครงเรื่อง เราสามารถสังเกตได้ว่าชุดข้อมูลมีความไม่สมดุลอย่างมาก โดยธุรกรรมส่วนใหญ่ไม่ฉ้อโกง (คลาส 0) และธุรกรรมฉ้อฉลจำนวนค่อนข้างน้อย (คลาส 1) สิ่งนี้บ่งชี้ว่าชุดข้อมูลมีปัญหาความไม่สมดุลของคลาส ซึ่งอาจส่งผลต่อประสิทธิภาพของโมเดลที่ได้รับการฝึกฝนในชุดข้อมูลนี้ อาจจำเป็นต้องใช้เทคนิคต่างๆ เช่น การสุ่มตัวอย่างมากเกินไป การสุ่มตัวอย่างน้อยเกินไป หรือการถ่วงน้ำหนักชั้นเรียน เพื่อจัดการกับปัญหาความไม่สมดุลของชั้นเรียนเมื่อสร้างแบบจำลองสำหรับการตรวจจับการฉ้อโกง
สาม. การประมวลผลข้อมูล
เพื่อให้แน่ใจว่าข้อมูลไม่มีความสอดคล้องกันอย่างมีนัยสำคัญ จึงใช้แผนที่ความร้อน
จากแผนที่ความร้อน จะสังเกตได้ว่าไม่มีความสัมพันธ์เชิงบวกหรือลบที่ชัดเจนระหว่างคู่ของตัวแปรใดๆ ในชุดข้อมูล พบความสัมพันธ์ที่แข็งแกร่งที่สุด:
- เวลาและ V3 มีค่าสัมประสิทธิ์สหสัมพันธ์เท่ากับ -0.42
- จำนวนและ V2 มีค่าสัมประสิทธิ์สหสัมพันธ์ -0.53
- จำนวนและ V4 มีค่าสัมประสิทธิ์สหสัมพันธ์เท่ากับ 0.4
IV. การสร้างแบบจำลอง
ชุดข้อมูล " การตรวจจับการฉ้อโกงบัตรเครดิต " มีธุรกรรมบัตรเครดิตที่ติดป้ายว่าเป็นการฉ้อโกงหรือไม่ ชุดข้อมูลไม่สมดุล ดังนั้นจึงต้องการโมเดลที่สามารถตรวจจับธุรกรรมที่เป็นการฉ้อโกงได้อย่างแม่นยำ โดยไม่ทำเครื่องหมายธุรกรรมที่ไม่เป็นการฉ้อโกงอย่างไม่ถูกต้อง
เพื่อช่วยในการจำแนกปัญหาStandardScalerจะกำหนดมาตรฐานของข้อมูลโดยให้ค่าเฉลี่ยเป็น 0 และค่าเบี่ยงเบนมาตรฐานเป็น 1 ซึ่งจะส่งผลให้มีการแจกแจงแบบปกติ เทคนิคนี้ใช้ได้ดีเมื่อต้องรับมือกับปริมาณและเวลาที่หลากหลาย ในการปรับขนาดข้อมูล ชุดการฝึกจะถูกใช้เพื่อเริ่มต้นความพอดี จากนั้นชุดการฝึก การตรวจสอบความถูกต้อง และชุดการทดสอบจะถูกปรับขนาดก่อนที่จะรันลงในโมเดล
ชุดข้อมูลแบ่งออกเป็น 60% สำหรับ การฝึกอบรม 20% สำหรับการตรวจสอบ และ 20% สำหรับการทดสอบ เพื่อความสมดุลของชุดข้อมูลที่ไม่สมดุล มีการใช้ Random Undersamplingเพื่อจับคู่จำนวนธุรกรรมที่เป็นการฉ้อโกง ใช้แบบจำลอง Logistic Regression และ Random Forest และได้ผลลัพธ์ที่ดี
โมเดลที่ใช้กันทั่วไปสำหรับชุดข้อมูล “Credit Card Fraud Detection” ได้แก่ Logistic Regression, Naive Bayes, Random Forest และ Dummy Classifier
- Logistic Regressionใช้กันอย่างแพร่หลายในการตรวจจับการฉ้อโกงเนื่องจากความสามารถในการตีความและความสามารถในการจัดการชุดข้อมูลขนาดใหญ่
- โดยทั่วไปแล้ว Naive Bayesจะใช้สำหรับการตรวจจับการฉ้อโกง เนื่องจากสามารถจัดการกับชุดข้อมูลที่มีคุณสมบัติจำนวนมากและสามารถคาดการณ์ได้อย่างรวดเร็ว
- โดยทั่วไปแล้ว Random Forestจะใช้สำหรับการตรวจจับการฉ้อโกง เนื่องจากสามารถจัดการกับชุดข้อมูลที่ซับซ้อนและมีแนวโน้มที่จะใช้งานมากเกินไปน้อยกว่า
- Dummy Classifierเป็นอัลกอริธึมง่ายๆ ที่ใช้เป็นเกณฑ์มาตรฐานเพื่อเปรียบเทียบประสิทธิภาพของโมเดลอื่นๆ
V. การประเมินแบบจำลอง
ส่วนนี้จะกล่าวถึงเมตริกต่อไปนี้: ความแม่นยำ การเรียกคืน ความแม่นยำ และคะแนน F1
- ความแม่นยำคือเศษส่วนของการคาดคะเนที่ถูกต้องซึ่งโมเดลสร้างขึ้น อย่างไรก็ตาม อาจทำให้เข้าใจผิดได้สำหรับชุดข้อมูลที่ไม่สมดุล
- การเรียกคืนจะบอกเราว่าเปอร์เซ็นต์ของการทำธุรกรรมฉ้อฉลที่โมเดลระบุได้อย่างถูกต้อง ในรุ่นที่ดีที่สุด การเรียกคืนคือ 89.9% ซึ่งเป็นจุดเริ่มต้นที่ดี
- ความแม่นยำบอกเราว่าเปอร์เซ็นต์ของธุรกรรมฉ้อฉลที่คาดการณ์นั้นเป็นการฉ้อโกงจริง ในรูปแบบที่ดีที่สุด 97.8% ของธุรกรรมที่ฉ้อโกงทั้งหมดถูกจับได้ ซึ่งเป็นตัวชี้วัดที่ดี
- คะแนน F1 รวมการเรียกคืนและความแม่นยำเป็นเมตริกเดียวโดยเป็นค่าเฉลี่ยถ่วงน้ำหนักของทั้งสอง โดยคำนึงถึงผลบวกปลอมและผลลบเท็จในการพิจารณา มันมีประสิทธิภาพมากกว่าความแม่นยำสำหรับคลาสที่ไม่สมดุล
1. คะแนน ROC
ROC วัดประสิทธิภาพการจำแนกประเภทที่เกณฑ์ต่างๆ คะแนน AUC ที่สูงขึ้น (พื้นที่ใต้เส้นโค้ง) หมายความว่าโมเดลนั้นคาดการณ์การฉ้อโกง/ไม่ฉ้อโกงได้ดีกว่า
ROC Curve: เครื่องมืออันทรงพลังสำหรับการตรวจจับการฉ้อโกงในด้านการตลาดกราฟแสดงคะแนน AUC สำหรับ Logistic Regression และ Random Forest คะแนนสูงเป็นสิ่งที่ดี จุดบนเส้นโค้งแสดงถึงเกณฑ์ การเลื่อนไปทางขวาจะจับ True Positives ได้มากขึ้น แต่ยังรวมถึง False Positives อีกด้วย เกณฑ์ที่เหมาะสมคือ 0.842 สำหรับ Logistic Regression และ 0.421 สำหรับ Random Forest ที่เกณฑ์เหล่านี้ เราบันทึกธุรกรรมฉ้อโกงในจำนวนที่เหมาะสมที่สุดในขณะที่รักษา False Positives ให้ต่ำ เมทริกซ์ความสับสนสามารถแสดงภาพผลกระทบของแต่ละรุ่น
2. เมทริกซ์ความสับสน — การถดถอยโลจิสติก
แบบจำลองจับธุรกรรมฉ้อโกง 88 รายการจาก 98 รายการ และทำเครื่องหมายธุรกรรมปกติ 1,678 รายการว่าเป็นการฉ้อโกงโดยใช้เกณฑ์ 0.842 ในชุดทดสอบนอกกลุ่มตัวอย่าง ซึ่งคล้ายกับสถานการณ์ที่ธนาคารส่งข้อความยืนยันหลังจากที่บัตรถูกใช้ในสถานะอื่นโดยไม่ต้องแจ้งให้ทราบล่วงหน้า
3. Confusion Matrix — ป่าสุ่ม
ที่เกณฑ์ 0.421 โมเดล Random Forest จะทำงานคล้ายกับโมเดล Logistic Regression โดยระบุธุรกรรมที่เป็นการฉ้อโกง 88 รายการจาก 98 รายการได้อย่างถูกต้อง แต่ยังระบุว่าธุรกรรมปกติที่เป็นการฉ้อโกงมีจำนวนลดลงเมื่อเทียบกับโมเดล Logistic Regression โดยรวมแล้วทั้งสองรุ่นมีสมรรถนะที่ดี
บทสรุป
การตรวจจับธุรกรรมบัตรเครดิตที่ฉ้อฉลถือเป็นสิ่งสำคัญในสังคมปัจจุบัน บริษัทต่างๆ ใช้วิธีการต่างๆ เพื่อจับภาพเหตุการณ์เหล่านี้ และเป็นเรื่องน่าทึ่งที่เห็นว่าพวกเขาจัดการกับเหตุการณ์นี้อย่างไร การค้นหาสิ่งผิดปกตินั้นสนุก ดังนั้นการทำโปรเจกต์นี้จึงสนุกมาก ฉันหวังว่าการค้นพบนี้จะอธิบายได้ดี และขอบคุณสำหรับการอ่าน!
อ้างอิง
- โครงการ Kaggle — ที่นี่
- Github Repo — ที่นี่
- ชุดข้อมูล Kaggle — ที่นี่
- อ่านเพิ่มเติม —
แมชชีนเลิร์นนิงที่ทำซ้ำได้สำหรับการตรวจจับการฉ้อโกงบัตรเครดิต — คู่มือเชิงปฏิบัติ
ตบมือให้บทความ 50 ครั้ง
กดติดตามผม
อ่านบทความเพิ่มเติมเกี่ยวกับสื่อ
เชื่อมต่อกับโซเชียลมีเดียGithub | ลิงค์ดิน | กะล่อน
#CreditCardFraudDetection #DataScience #MachineLearning #FraudPrevention #DataAnalysis