ภาพรวม
*ครั้งสุดท้ายที่คุณให้เพื่อนยืมเงิน แต่พวกเขาไม่เคยจ่ายคืนให้คุณเลย คุณจึงตัดสินใจปล่อยให้เพื่อนยืม*
ในทางกลับกัน ธนาคารไม่สามารถให้ยืมเงินและลืมมันไปได้ ธนาคารจะรู้ได้อย่างไรว่าเงินสดที่พวกเขายืมให้กับลูกค้าจะถูกส่งกลับหรือไม่? จริงๆ แล้วพวกเขาไม่รู้ แต่พวกเขาสามารถพยายามคาดเดาผลลัพธ์โดยพิจารณาจากลักษณะพฤติกรรมในอดีตของลูกค้าได้ แต่พวกเขาควรเน้นไปที่คุณสมบัติใด?
โปรเจ็กต์นี้วิเคราะห์ปัญหาข้างต้นโดยมุ่งเน้นไปที่โมเดลและฟีเจอร์ใดที่ควรจัดลำดับความสำคัญเพื่อคาดการณ์ว่าลูกค้าบัตรเครดิตจะผิดนัดชำระ (ไม่ชำระคืน) หรือไม่ แนวทางนี้ใช้ *วิศวกรรมคุณลักษณะ* ซึ่งเกี่ยวข้องกับการประมวลผลและการแปลงข้อมูลดิบเป็นคุณลักษณะที่เกี่ยวข้อง 12 รายการ จากนั้นฟีเจอร์เหล่านี้จะถูกใช้ในรูปแบบต่างๆ เพื่อกำหนดวิธีการที่เชื่อถือได้มากที่สุดสำหรับนายธนาคารที่จะใช้
โครงการสรุปว่าวิธีทางคณิตศาสตร์ 'SHAP' เป็นแบบจำลองที่มีประสิทธิภาพในการกำหนดคุณลักษณะที่เกี่ยวข้องในชุดข้อมูลที่เลือก แม้ว่าแบบจำลองจะมีประสิทธิภาพเหนือกว่าวิธีอื่นๆ แต่ก็ไม่ได้สมบูรณ์แบบ ดังนั้นวิศวกรรมเพิ่มเติมอาจช่วยหลีกเลี่ยงการสรุปคุณสมบัติทั่วไปได้ ท้ายที่สุดแล้ว การค้นพบนี้ถือเป็นรากฐานที่ดีสำหรับนายธนาคารในการสร้างแบบจำลองที่สามารถคาดการณ์ได้ว่าลูกค้าจะผิดนัดชำระหนี้หรือไม่ และลดความเสี่ยงทางการเงินที่อาจเกิดขึ้น
ความเป็นมาของโครงการ
ชุดข้อมูลที่เลือกสำหรับโปรเจ็กต์นี้เรียกว่า “ค่าเริ่มต้นของชุดข้อมูลลูกค้าบัตรเครดิต” (DCC) ซึ่งนำเข้าจาก Kaggle
สรุปชุดข้อมูล
“ชุดข้อมูลนี้ประกอบด้วยข้อมูลเกี่ยวกับการชำระเงินผิดนัด ปัจจัยทางประชากรศาสตร์ ข้อมูลเครดิต ประวัติการชำระเงิน และใบแจ้งยอดการเรียกเก็บเงินของลูกค้าบัตรเครดิตในไต้หวันตั้งแต่เดือนเมษายน 2548 ถึงกันยายน 2548”
ความคิดเริ่มต้น
คุณลักษณะที่ให้มาคือข้อมูลประชากรและรูปแบบการชำระเงินของผู้ใช้บัตรเครดิต ดังนั้นจึงเกี่ยวข้องกับวัตถุประสงค์ของโครงการนี้ อย่างไรก็ตาม การคาดคะเนจะน่าเชื่อถือเพียงใดนั้นขึ้นอยู่กับรุ่นและฟีเจอร์ที่ใช้
แนวทางการดำเนินโครงการ
การจัดการกับข้อมูลที่ขาดหายไป
ลองนึกภาพว่านายธนาคารจะหงุดหงิดขนาดไหนถ้าเวลาพักกลางวันขาดจากตารางงานของพวกเขา ในทำนองเดียวกัน โดยทั่วไปแล้วเราไม่ต้องการให้ข้อมูลที่ขาดหายไปในชุดข้อมูลของเราเช่นกัน โชคดีที่ชุดข้อมูล DCC ไม่มีค่าที่ขาดหายไป
การประมวลผลข้อมูลล่วงหน้า
ลองจินตนาการดูว่านายธนาคารจะหงุดหงิดขนาดไหนถ้าคนส่งของสุ่มแจกอาหารกลางวันให้ บางคนอาจเป็นมังสวิรัติ ในขณะที่บางคนอาจมีข้อจำกัดด้านอาหารอื่นๆ นี่เป็นกรณีของชุดข้อมูลของเราซึ่งประกอบด้วยข้อมูลหลายประเภท เพื่อดำเนินการวิศวกรรมคุณลักษณะ เราต้องการจัดกลุ่มคุณลักษณะเป็นประเภทที่เกี่ยวข้องกัน เช่น "ตัวเลข" "ไบนารี" และ "หมวดหมู่"
โมเดลพื้นฐาน
เพื่อพิจารณาว่าการทำนายมีความน่าเชื่อถือเพียงใด เราจะคำนวณคะแนนการทำนายตามคุณสมบัติทั่วไปโดยเฉลี่ย ความหวังของเราคือการใช้โมเดลที่มีคะแนนสูงกว่า 0.777
การนำไปปฏิบัติ
ในการพิจารณาโมเดลที่มีประสิทธิภาพดีที่สุด เราจะรันชุดข้อมูลผ่านโมเดลต่างๆ เพื่อคำนวณและเปรียบเทียบความสำคัญของแต่ละฟีเจอร์ โมเดลเหล่านี้ได้แก่:
- LogisticRegression: มักใช้กับค่าไบนารี เราใช้ที่นี่เพราะคำตอบว่าลูกค้าจะผิดนัดหรือไม่คือ “ใช่” หรือ “ไม่” นอกจากนี้เรายังใช้แบบจำลองนี้เพื่อค้นหาความน่าจะเป็นของผลลัพธ์ จากนั้นทำซ้ำขั้นตอนหลายๆ ครั้งเพื่อจับค่าเฉลี่ยและค่าเบี่ยงเบนมาตรฐานของความน่าจะเป็นนั้นสำหรับลูกค้าทั้งหมด
- รูปที่ 1 แสดงให้เห็นว่าความแม่นยำที่คาดการณ์ไว้สำหรับรุ่นนี้คือ 0.777 ดังนั้นบางทีการรันชุดข้อมูลผ่านโมเดลที่ซับซ้อนมากขึ้นสามารถปรับปรุงคะแนนได้
2. รุ่นอื่นๆ: โมเดลที่ซับซ้อนอื่นๆ บางรุ่นที่สามารถใช้ได้ ได้แก่ `RandomForestClassifier`, `Gradient Boost` และ `LightGBM` `รูปที่ 1.` เป็นการสรุปคะแนนทั้งหมดสำหรับแต่ละรุ่น
- คะแนนการฝึกแสดงให้เห็นว่าโมเดลเหมาะสมกับชุดข้อมูลที่ได้รับการฝึกโดยโมเดลได้ดีเพียงใด ในขณะเดียวกัน คะแนนการตรวจสอบจะประเมินความน่าเชื่อถือของการคาดการณ์
เหนือสิ่งอื่นใด LightGBM มีคะแนนสูงสุด แต่อาจมี *พอดีเกินไป* เล็กน้อย ขึ้นอยู่กับว่ารถไฟและคะแนนการตรวจสอบอยู่ห่างจากกันหรือใกล้กันเพียงใด
*ตัวอย่างเช่น หากนายธนาคารคาดว่าจะรับประทานอาหารกลางวันตอนเที่ยงและอาหารถูกส่งตรงเวลา พวกเขาไม่สามารถสรุปได้ว่าอาหารจะมาถึงในช่วงเวลาที่แน่นอนเสมอไปสำหรับการสั่งซื้อครั้งถัดไป เราเรียกสถานการณ์ที่มองโลกในแง่ดีมากเกินไปว่า “การไม่เหมาะสม” ในขณะเดียวกัน หากมีการจัดส่งอาหารเร็วหรือช้ากว่าที่คาดไว้มาก เราจะถือว่าสิ่งนี้ "เกินขนาด"*
การตีความข้อมูล
หลังจากเลือกรุ่น LightGBM แล้ว เราจะพิจารณาคุณสมบัติที่เกี่ยวข้องกับการคาดการณ์มากที่สุด ในการดำเนินการนี้ เราใช้โครงเรื่องบังคับที่เรียกว่า SHAP เพื่อช่วยให้เห็นภาพความสำคัญของคุณลักษณะ `รูปที่ 2.` แสดงให้เห็นว่าจุดสีแดงกำลังขับเคลื่อนการทำนายไปที่ 1 (ค่าเริ่มต้น = ใช่) ในขณะที่จุดสีน้ำเงินทำให้การทำนายอยู่ห่างจาก 1
โดยสรุป จำนวนเงินในใบแจ้งยอดการเรียกเก็บเงิน (ในเดือนสิงหาคม พ.ศ. 2548) และจำนวนในใบแจ้งยอดก่อนหน้านี้มีแนวโน้มที่จะนำไปสู่การคาดการณ์ที่สูงสำหรับคำว่า "ใช่" ในขณะเดียวกัน ยอดคงเหลือที่จำกัดและจำนวนเงินที่เรียกเก็บบางส่วนอาจทำให้การคาดการณ์ลดลง
ข้อจำกัดและข้อเสีย
โปรดจำไว้ว่าโมเดลที่เลือกนั้นไม่สมบูรณ์แบบ คุณลักษณะที่ 3. เป็นเมทริกซ์ที่แสดงจำนวนการทำนายที่ถูกต้อง (6702 และ 428) เทียบกับการทำนายเท็จ (350 และ 1520) การคาดการณ์ที่ผิดพลาดจำนวนมากบ่งชี้ว่าแบบจำลองของเรายังคงสามารถปรับปรุงได้
แม้ว่าโมเดลปัจจุบันจะสร้างรากฐานที่ดี แต่การปรับปรุงสามารถทำได้หากได้รับเวลาและทรัพยากร เช่น เครื่องจักรที่ดีกว่าในการรันโค้ด วิธีการวิศวกรรมคุณลักษณะที่ซับซ้อนสามารถช่วยให้เราสำรวจการผสมผสานคุณลักษณะต่างๆ ได้ ตัวอย่างเช่น เราอาจพิจารณามี "การหย่าร้างหญิง" แทนที่จะเป็น "เพศ" และ "การแต่งงาน" วิธีการนี้จะช่วยให้เรากระจายความสำคัญของฟีเจอร์ตามคุณลักษณะ แทนที่จะรวมทั้งหมดเป็นหนึ่งเดียวและถือว่าน้ำหนักเท่ากัน จึงช่วยลดการทำนายผิดๆ
ประเด็นสุดท้าย
โครงการสรุปว่าวิธีการ `SHAP` และ LightBGM เป็นแบบจำลองที่มีประสิทธิภาพในการกำหนดคุณลักษณะที่เกี่ยวข้องสำหรับชุดข้อมูลที่เลือก โดยแนะนำว่าจำนวนเงินในใบเรียกเก็บเงินและใบแจ้งยอดก่อนหน้านี้มีแนวโน้มที่จะช่วยพิจารณาว่าลูกค้าจะผิดนัดชำระหรือไม่
เนื่องจากสร้างขึ้นจากเทคนิควิศวกรรมคุณลักษณะที่ค่อนข้างง่าย การประมวลผลเพิ่มเติมจึงสามารถช่วยจำแนกลูกค้าออกเป็นประเภทย่อย เช่น `ผู้หญิงที่แต่งงานแล้ว` หรือ `มหาวิทยาลัย_ชาย` ท้ายที่สุดแล้ว SHAP เป็นโมเดลที่สามารถตีความได้มาก เนื่องจากทำให้การเปรียบเทียบความสำคัญของแต่ละฟีเจอร์ง่ายขึ้นมาก