วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

บางครั้งเพื่อที่จะแก้ไขปัญหา คุณเพียงแค่ต้องมองมันจากมุมที่ต่างออกไป แม้ว่าในช่วง 10 ปีที่ผ่านมาปัญหาที่คล้ายกันจะได้รับการแก้ไขด้วยวิธีเดียวกันแต่มีผลกระทบต่างกัน แต่ไม่ใช่ว่าวิธีนี้จะเป็นเพียงวิธีเดียว

มีหัวข้อเช่นลูกค้าปั่น สิ่งนี้เป็นสิ่งที่หลีกเลี่ยงไม่ได้ เนื่องจากลูกค้าของบริษัทใดก็ตามสามารถหยุดใช้ผลิตภัณฑ์หรือบริการของตนได้ด้วยเหตุผลหลายประการ แน่นอนว่า สำหรับบริษัท การเลิกใช้งานเป็นเรื่องปกติ แต่ไม่ใช่การกระทำที่ต้องการมากที่สุด ดังนั้นทุกคนจึงพยายามลดการเลิกใช้งานนี้ให้เหลือน้อยที่สุด ยังดีกว่า ให้คาดการณ์ความน่าจะเป็นของการเลิกใช้งานสำหรับผู้ใช้หมวดหมู่ใดหมวดหมู่หนึ่งหรือผู้ใช้เฉพาะราย และแนะนำขั้นตอนบางอย่างเพื่อรักษาพวกเขาไว้

มีความจำเป็นต้องวิเคราะห์และพยายามรักษาลูกค้าไว้ หากเป็นไปได้ ด้วยเหตุผลอย่างน้อยดังต่อไปนี้:

  • การดึงดูดลูกค้าใหม่มีราคาแพงกว่าขั้นตอนการรักษาลูกค้า. ตามกฎแล้วเพื่อดึงดูดลูกค้าใหม่ คุณต้องใช้เงิน (การโฆษณา) ในขณะที่ลูกค้าปัจจุบันสามารถเปิดใช้งานได้ด้วยข้อเสนอพิเศษพร้อมเงื่อนไขพิเศษ
  • การทำความเข้าใจสาเหตุที่ลูกค้าลาออกถือเป็นกุญแจสำคัญในการปรับปรุงผลิตภัณฑ์และบริการ.

มีแนวทางมาตรฐานในการทำนายการเลิกใช้งาน แต่ที่หนึ่งในการแข่งขันชิงแชมป์ AI เราตัดสินใจลองใช้การแจกแจง Weibull เพื่อสิ่งนี้ มักใช้สำหรับการวิเคราะห์ความอยู่รอด การพยากรณ์อากาศ การวิเคราะห์ภัยพิบัติทางธรรมชาติ วิศวกรรมอุตสาหการ และอื่นๆ การแจกแจงแบบ Weibull เป็นฟังก์ชันการแจกแจงแบบพิเศษที่กำหนดพารามิเตอร์ด้วยพารามิเตอร์สองตัว วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ и วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ.

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ
วิกิพีเดีย

โดยทั่วไปก็เป็นเรื่องที่น่าสนใจ แต่สำหรับการพยากรณ์การไหลออก และในฟินเทคโดยทั่วไปกลับไม่ได้ใช้บ่อยนัก ด้านล่างนี้เราจะบอกคุณว่าเรา (Data Mining Laboratory) ทำสิ่งนี้ได้อย่างไร พร้อมคว้าเหรียญทองในการแข่งขัน Artificial Intelligence Championship ในประเภท "AI in Banks"

เกี่ยวกับการปั่นโดยทั่วไป

มาทำความเข้าใจกันสักหน่อยว่าการปั่นของลูกค้าคืออะไร และเหตุใดจึงสำคัญมาก ฐานลูกค้าเป็นสิ่งสำคัญสำหรับธุรกิจ ลูกค้าใหม่มาที่ฐานนี้ เช่น ได้เรียนรู้เกี่ยวกับผลิตภัณฑ์หรือบริการจากโฆษณา มีชีวิตอยู่มาระยะหนึ่ง (ใช้ผลิตภัณฑ์อย่างจริงจัง) และหยุดใช้หลังจากผ่านไประยะหนึ่ง ช่วงเวลานี้เรียกว่า “วงจรชีวิตลูกค้า” ซึ่งเป็นคำที่อธิบายขั้นตอนที่ลูกค้าต้องเผชิญเมื่อเขาเรียนรู้เกี่ยวกับผลิตภัณฑ์ ตัดสินใจซื้อ ชำระเงิน ใช้และกลายเป็นผู้บริโภคที่ภักดี และหยุดใช้ผลิตภัณฑ์ในที่สุด ด้วยเหตุผลใดเหตุผลหนึ่ง ดังนั้น การเลิกใช้งานจึงเป็นขั้นตอนสุดท้ายของวงจรชีวิตของลูกค้า เมื่อลูกค้าหยุดใช้บริการ และสำหรับธุรกิจ นั่นหมายความว่าลูกค้าหยุดสร้างผลกำไรหรือผลประโยชน์ใดๆ เลย

ลูกค้าธนาคารแต่ละรายเป็นบุคคลเฉพาะที่เลือกบัตรธนาคารหนึ่งใบหรือบัตรอื่นตามความต้องการของเขาโดยเฉพาะ หากคุณเดินทางบ่อยๆ บัตรที่มีไมล์จะมีประโยชน์ ซื้อจำนวนมาก - สวัสดีบัตรคืนเงิน เขาซื้อจำนวนมากในร้านค้าเฉพาะ - และมีพลาสติกพันธมิตรพิเศษสำหรับสิ่งนี้อยู่แล้ว แน่นอนว่าบางครั้งบัตรจะถูกเลือกตามเกณฑ์ "บริการที่ถูกที่สุด" โดยทั่วไปแล้ว มีตัวแปรเพียงพอที่นี่

และคนก็เลือกธนาคารด้วย - มีประเด็นใดบ้างในการเลือกบัตรจากธนาคารที่มีสาขาเฉพาะในมอสโกวและภูมิภาคเมื่อคุณมาจาก Khabarovsk? แม้ว่าบัตรจากธนาคารดังกล่าวจะทำกำไรได้มากกว่าอย่างน้อย 2 เท่า แต่การมีสาขาของธนาคารในบริเวณใกล้เคียงยังคงเป็นเกณฑ์ที่สำคัญ ใช่ ปี 2019 มาถึงแล้ว และดิจิทัลคือทุกสิ่งทุกอย่างของเรา แต่ปัญหาหลายประการกับธนาคารบางแห่งสามารถแก้ไขได้ในสาขาเท่านั้น นอกจากนี้ ประชากรบางส่วนไว้วางใจธนาคารจริงมากกว่าแอปพลิเคชันบนสมาร์ทโฟน ซึ่งก็ต้องนำมาพิจารณาด้วย

เป็นผลให้บุคคลอาจมีเหตุผลหลายประการในการปฏิเสธผลิตภัณฑ์ของธนาคาร (หรือตัวธนาคารเอง) ฉันเปลี่ยนงาน และอัตราค่าบัตรเปลี่ยนจากเงินเดือนเป็น "สำหรับปุถุชน" ซึ่งทำกำไรได้น้อยกว่า ฉันย้ายไปเมืองอื่นที่ไม่มีสาขาของธนาคาร ฉันไม่ชอบปฏิสัมพันธ์กับเจ้าหน้าที่ปฏิบัติงานที่ไม่มีคุณสมบัติเหมาะสมที่สาขา นั่นคืออาจมีเหตุผลในการปิดบัญชีมากกว่าการใช้ผลิตภัณฑ์

และลูกค้าไม่เพียงแต่สามารถแสดงความตั้งใจได้อย่างชัดเจน - มาที่ธนาคารและเขียนใบแจ้งยอด แต่ยังหยุดใช้ผลิตภัณฑ์โดยไม่ยกเลิกสัญญา มีการตัดสินใจที่จะใช้การเรียนรู้ของเครื่องและ AI เพื่อทำความเข้าใจปัญหาดังกล่าว

นอกจากนี้ ลูกค้ายังสามารถเกิดขึ้นได้ในทุกอุตสาหกรรม (โทรคมนาคม ผู้ให้บริการอินเทอร์เน็ต บริษัทประกันภัย โดยทั่วไป ทุกที่ที่มีฐานลูกค้าและมีการทำธุรกรรมเป็นระยะ)

เราได้ทำอะไร

ก่อนอื่นจำเป็นต้องอธิบายขอบเขตที่ชัดเจน - ตั้งแต่เวลาใดที่เราเริ่มพิจารณาว่าลูกค้าจะออกไป จากมุมมองของธนาคารที่ให้ข้อมูลสำหรับงานของเรา สถานะกิจกรรมของลูกค้าเป็นแบบไบนารี - เขาใช้งานอยู่หรือไม่ก็ได้ มีการตั้งค่าสถานะ ACTIVE_FLAG ในตาราง "กิจกรรม" ซึ่งค่าอาจเป็น "0" หรือ "1" ("ไม่ใช้งาน" และ "ใช้งานอยู่" ตามลำดับ) และทุกอย่างจะดี แต่คน ๆ หนึ่งสามารถใช้งานมันได้อย่างแข็งขันเป็นระยะเวลาหนึ่งแล้วหลุดออกจากรายการที่ใช้งานอยู่เป็นเวลาหนึ่งเดือน - เขาป่วยไปพักผ่อนที่ประเทศอื่นหรือแม้แต่ไปทดสอบ บัตรจากธนาคารอื่น หรืออาจจะหลังจากไม่มีการใช้งานเป็นเวลานานให้เริ่มใช้บริการของธนาคารอีกครั้ง

ดังนั้นเราจึงตัดสินใจเรียกช่วงเวลาที่ไม่มีการใช้งานเป็นระยะเวลาต่อเนื่องหนึ่งซึ่งในระหว่างนั้นการตั้งค่าสถานะเป็น "0"

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

ลูกค้าจะย้ายจากไม่ได้ใช้งานไปเป็นใช้งานหลังจากไม่มีการใช้งานในช่วงระยะเวลาที่แตกต่างกัน เรามีโอกาสที่จะคำนวณระดับของมูลค่าเชิงประจักษ์ "ความน่าเชื่อถือของช่วงเวลาที่ไม่มีการใช้งาน" - นั่นคือความน่าจะเป็นที่บุคคลจะเริ่มใช้ผลิตภัณฑ์ของธนาคารอีกครั้งหลังจากไม่มีการใช้งานชั่วคราว

ตัวอย่างเช่น กราฟนี้แสดงการกลับมาเริ่มต้นกิจกรรมอีกครั้ง (ACTIVE_FLAG=1) ของลูกค้าหลังจากไม่มีการใช้งานเป็นเวลาหลายเดือน (ACTIVE_FLAG=0)

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

ที่นี่เราจะอธิบายชุดข้อมูลที่เราเริ่มทำงานให้ชัดเจนเล็กน้อย ธนาคารจึงรวบรวมข้อมูลย้อนหลัง 19 เดือน ดังนี้

  • “กิจกรรม” - ธุรกรรมของลูกค้ารายเดือน (ด้วยบัตรในบริการธนาคารทางอินเทอร์เน็ตและธนาคารบนมือถือ) รวมถึงบัญชีเงินเดือนและข้อมูลเกี่ยวกับการหมุนเวียน
  • “การ์ด” - ข้อมูลเกี่ยวกับการ์ดทั้งหมดที่ลูกค้ามี พร้อมตารางภาษีโดยละเอียด
  • “ข้อตกลง” - ข้อมูลเกี่ยวกับข้อตกลงของลูกค้า (ทั้งเปิดและปิด): สินเชื่อ เงินฝาก ฯลฯ ที่ระบุพารามิเตอร์ของแต่ละรายการ
  • “ลูกค้า” - ชุดข้อมูลประชากร (เพศและอายุ) และความพร้อมใช้งานของข้อมูลติดต่อ

ในการทำงานเราต้องการตารางทั้งหมด ยกเว้น "แผนที่"

มีปัญหาอีกอย่างหนึ่งที่นี่ - ในข้อมูลนี้ธนาคารไม่ได้ระบุว่ามีกิจกรรมประเภทใดเกิดขึ้นบนบัตร นั่นคือเราสามารถเข้าใจได้ว่ามีการทำธุรกรรมหรือไม่ แต่เราไม่สามารถระบุประเภทของธุรกรรมได้อีกต่อไป ดังนั้นจึงไม่มีความชัดเจนว่าลูกค้ากำลังถอนเงินสด รับเงินเดือน หรือใช้จ่ายเงินในการซื้อ เรายังไม่มีข้อมูลเกี่ยวกับยอดคงเหลือในบัญชีซึ่งจะเป็นประโยชน์

กลุ่มตัวอย่างมีความเป็นกลาง ในส่วนนี้ตลอด 19 เดือนที่ผ่านมา ธนาคารไม่ได้พยายามรักษาลูกค้าและลดการไหลออกให้เหลือน้อยที่สุด

ดังนั้นเกี่ยวกับช่วงที่ไม่มีการใช้งาน

ในการกำหนดคำจำกัดความของการเลิกใช้งาน จะต้องเลือกช่วงเวลาของการไม่มีการใช้งาน เพื่อสร้างการคาดการณ์การปั่น ณ เวลาใดเวลาหนึ่ง วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติคุณต้องมีประวัติลูกค้าเป็นระยะเวลาอย่างน้อย 3 เดือน วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ. ประวัติของเราถูกจำกัดไว้ที่ 19 เดือน ดังนั้นเราจึงตัดสินใจที่จะหยุดใช้งานเป็นระยะเวลา 6 เดือน หากมี และสำหรับช่วงเวลาขั้นต่ำสำหรับการคาดการณ์คุณภาพสูง เราใช้เวลา 3 เดือน เราใช้ตัวเลขดังกล่าวเป็นเวลา 3 และ 6 เดือนโดยอาศัยการวิเคราะห์พฤติกรรมข้อมูลลูกค้า

เรากำหนดคำจำกัดความของการเปลี่ยนใจดังนี้: เดือนที่ลูกค้าเปลี่ยนใจ วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ นี่คือเดือนแรกที่มี ACTIVE_FLAG=0 โดยตั้งแต่เดือนนี้เป็นต้นไปจะมีศูนย์ติดต่อกันอย่างน้อยหกตัวในฟิลด์ ACTIVE_FLAG หรืออีกนัยหนึ่งคือเดือนที่ลูกค้าไม่ได้ใช้งานเป็นเวลา 6 เดือน

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ
จำนวนลูกค้าที่ออก

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ
จำนวนลูกค้าที่เหลืออยู่

การปั่นคำนวณอย่างไร?

ในการแข่งขันดังกล่าวและในทางปฏิบัติโดยทั่วไป การไหลออกมักถูกคาดการณ์ในลักษณะนี้ ลูกค้าใช้ผลิตภัณฑ์และบริการในช่วงเวลาต่างๆ ข้อมูลการโต้ตอบกับเขาจะแสดงเป็นเวกเตอร์ของคุณสมบัติที่มีความยาวคงที่ n โดยส่วนใหญ่แล้วข้อมูลนี้รวมถึง:

  • ข้อมูลที่แสดงลักษณะผู้ใช้ (ข้อมูลประชากร ส่วนการตลาด)
  • ประวัติการใช้ผลิตภัณฑ์และบริการของธนาคาร (นี่คือการกระทำของลูกค้าที่เชื่อมโยงกับเวลาหรือช่วงเวลาที่เราต้องการเสมอ)
  • ข้อมูลภายนอก หากเป็นไปได้ เช่น บทวิจารณ์จากโซเชียลเน็ตเวิร์ก

และหลังจากนั้นก็ได้คำจำกัดความของ churn ที่แตกต่างกันไปในแต่ละงาน จากนั้นพวกเขาใช้อัลกอริธึมการเรียนรู้ของเครื่อง ซึ่งคาดการณ์แนวโน้มที่ลูกค้าจะออกจากงาน วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ ขึ้นอยู่กับเวกเตอร์ของปัจจัย วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ. ในการฝึกอบรมอัลกอริธึมจะใช้หนึ่งในเฟรมเวิร์กที่รู้จักกันดีสำหรับการสร้างแผนผังการตัดสินใจ XGBoost, ไลท์จีบีเอ็ม, แคทบูสท์ หรือการดัดแปลงดังกล่าว

อัลกอริธึมเองก็ไม่ได้แย่ แต่ก็มีข้อเสียร้ายแรงหลายประการเมื่อต้องคาดการณ์การเลิกใช้งาน

  • เขาไม่มีสิ่งที่เรียกว่า “ความทรงจำ”. ข้อมูลเข้าของแบบจำลองคือจำนวนคุณลักษณะที่ระบุซึ่งสอดคล้องกับจุดเวลาปัจจุบัน ในการจัดเก็บข้อมูลเกี่ยวกับประวัติการเปลี่ยนแปลงพารามิเตอร์ จำเป็นต้องคำนวณคุณสมบัติพิเศษที่แสดงลักษณะการเปลี่ยนแปลงของพารามิเตอร์เมื่อเวลาผ่านไป เช่น จำนวนหรือจำนวนธุรกรรมธนาคารในช่วง 1,2,3, XNUMX, XNUMX เดือนที่ผ่านมา วิธีการนี้สามารถสะท้อนถึงธรรมชาติของการเปลี่ยนแปลงชั่วคราวได้เพียงบางส่วนเท่านั้น
  • แก้ไขขอบเขตการคาดการณ์ แบบจำลองนี้สามารถคาดการณ์การเลิกใช้งานของลูกค้าในช่วงเวลาที่กำหนดไว้ล่วงหน้าเท่านั้น เช่น การคาดการณ์ล่วงหน้าหนึ่งเดือน หากจำเป็นต้องมีการคาดการณ์ในช่วงเวลาอื่น เช่น สามเดือน คุณจะต้องสร้างชุดการฝึกใหม่และฝึกโมเดลใหม่

แนวทางของเรา

เราตัดสินใจทันทีว่าจะไม่ใช้วิธีการมาตรฐาน นอกจากเราแล้ว ยังมีผู้ลงทะเบียนเข้าร่วมการแข่งขันอีก 497 คน ซึ่งแต่ละคนมีประสบการณ์มากมายอยู่เบื้องหลังพวกเขา ดังนั้นการพยายามทำอะไรตามโครงการมาตรฐานในเงื่อนไขดังกล่าวจึงไม่ใช่ความคิดที่ดี

และเราเริ่มแก้ไขปัญหาที่รูปแบบการจำแนกประเภทไบนารี่เผชิญอยู่ โดยการทำนายการกระจายความน่าจะเป็นของเวลาการเปลี่ยนใจของลูกค้า จะเห็นแนวทางที่คล้ายกัน ที่นี่ช่วยให้คุณสามารถคาดการณ์การเลิกใช้งานได้อย่างยืดหยุ่นมากขึ้นและทดสอบสมมติฐานที่ซับซ้อนมากกว่าในแนวทางดั้งเดิม เนื่องจากเป็นกลุ่มของการแจกแจงที่จำลองเวลาการไหลออก เราจึงเลือกการแจกแจง ไวบูล เพื่อนำไปใช้อย่างแพร่หลายในการวิเคราะห์การอยู่รอด พฤติกรรมของลูกค้าถือได้ว่าเป็นการเอาชีวิตรอดประเภทหนึ่ง

ต่อไปนี้เป็นตัวอย่างของการแจกแจงความหนาแน่นของความน่าจะเป็นแบบ Weibull ขึ้นอยู่กับพารามิเตอร์ วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ и วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ:

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

นี่คือฟังก์ชันความหนาแน่นของความน่าจะเป็นของลูกค้าที่แตกต่างกันสามรายที่เปลี่ยนใจเมื่อเวลาผ่านไป เวลาแสดงเป็นเดือน กล่าวอีกนัยหนึ่ง กราฟนี้จะแสดงเวลาที่ลูกค้ามีแนวโน้มที่จะเปลี่ยนใจมากที่สุดในอีกสองเดือนข้างหน้า อย่างที่คุณเห็น ลูกค้าที่มีการกระจายมีศักยภาพที่จะออกเร็วกว่าลูกค้าที่มี Weibull(2, 0.5) และ Weibull (3,1) การแจกแจง

ผลลัพธ์ที่ได้คือแบบจำลองสำหรับลูกค้าทุกคน สำหรับทุกคน
เดือน ทำนายพารามิเตอร์ของการแจกแจงแบบ Weibull ซึ่งสะท้อนถึงความน่าจะเป็นของการไหลออกเมื่อเวลาผ่านไปได้ดีที่สุด รายละเอียดเพิ่มเติม:

  • คุณสมบัติเป้าหมายในชุดการฝึกอบรมคือเวลาที่เหลืออยู่จนกว่าจะเปลี่ยนใจในเดือนใดเดือนหนึ่งสำหรับลูกค้าเฉพาะราย
  • หากไม่มีอัตราการเปลี่ยนใจสำหรับลูกค้า เราจะถือว่าเวลาเปลี่ยนใจมากกว่าจำนวนเดือนนับจากเดือนปัจจุบันจนถึงจุดสิ้นสุดของประวัติที่เรามี
  • โมเดลที่ใช้: โครงข่ายประสาทเทียมที่เกิดซ้ำพร้อมเลเยอร์ LSTM
  • เนื่องจากฟังก์ชันการสูญเสีย เราใช้ฟังก์ชันบันทึกความน่าจะเป็นเชิงลบสำหรับการแจกแจงแบบไวบูล

ข้อดีของวิธีนี้มีดังนี้:

  • การกระจายความน่าจะเป็น นอกเหนือจากความเป็นไปได้ที่ชัดเจนของการจำแนกประเภทไบนารี ช่วยให้คาดการณ์เหตุการณ์ต่างๆ ได้อย่างยืดหยุ่น เช่น ลูกค้าจะหยุดใช้บริการของธนาคารภายใน 3 เดือนหรือไม่ นอกจากนี้ หากจำเป็น คุณสามารถเฉลี่ยเมตริกต่างๆ จากการแจกแจงนี้ได้
  • โครงข่ายประสาทเทียมที่เกิดซ้ำ LSTM มีหน่วยความจำและใช้ประวัติที่มีอยู่ทั้งหมดอย่างมีประสิทธิภาพ เมื่อเรื่องราวมีการขยายหรือปรับแต่ง ความแม่นยำก็จะเพิ่มขึ้น
  • วิธีการนี้สามารถปรับขนาดได้อย่างง่ายดายเมื่อแบ่งช่วงเวลาออกเป็นส่วนเล็กๆ (เช่น เมื่อแบ่งเดือนเป็นสัปดาห์)

แต่การสร้างแบบจำลองที่ดีนั้นไม่เพียงพอคุณยังต้องประเมินคุณภาพอย่างเหมาะสมด้วย

มีการประเมินคุณภาพอย่างไร?

เราเลือก Lift Curve เป็นเมตริก ใช้ในธุรกิจในกรณีดังกล่าวเนื่องจากมีการตีความที่ชัดเจนและมีการอธิบายไว้อย่างดี ที่นี่ и ที่นี่. หากคุณอธิบายความหมายของตัวชี้วัดนี้ในประโยคเดียว มันจะเป็น “กี่ครั้งที่อัลกอริทึมทำนายได้ดีที่สุดในตอนแรก วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ% มากกว่าการสุ่ม"

โมเดลการฝึกอบรม

เงื่อนไขการแข่งขันไม่ได้กำหนดตัวชี้วัดคุณภาพที่เฉพาะเจาะจงซึ่งสามารถเปรียบเทียบรุ่นและแนวทางที่แตกต่างกันได้ นอกจากนี้ คำจำกัดความของการเลิกใช้งานอาจแตกต่างกันและอาจขึ้นอยู่กับคำชี้แจงปัญหา ซึ่งในทางกลับกัน จะถูกกำหนดโดยเป้าหมายทางธุรกิจ ดังนั้น เพื่อให้เข้าใจว่าวิธีใดดีกว่า เราจึงฝึกแบบจำลองสองแบบ:

  1. วิธีการจำแนกประเภทไบนารี่ที่ใช้กันทั่วไปโดยใช้อัลกอริธึมการเรียนรู้ของเครื่องต้นไม้ตัดสินใจ (ไลท์จีบีเอ็ม);
  2. รุ่นไวบูล-LSTM

ชุดทดสอบประกอบด้วยลูกค้าที่เลือกไว้ล่วงหน้า 500 รายซึ่งไม่ได้อยู่ในชุดการฝึกอบรม ไฮเปอร์พารามิเตอร์ถูกเลือกสำหรับโมเดลโดยใช้การตรวจสอบข้าม ซึ่งแยกย่อยตามไคลเอ็นต์ มีการใช้ชุดคุณสมบัติเดียวกันในการฝึกแต่ละรุ่น

เนื่องจากโมเดลไม่มีหน่วยความจำ จึงมีการใช้คุณสมบัติพิเศษ โดยแสดงอัตราส่วนของการเปลี่ยนแปลงพารามิเตอร์เป็นเวลาหนึ่งเดือนต่อค่าเฉลี่ยของพารามิเตอร์ในช่วงสามเดือนที่ผ่านมา อัตราการเปลี่ยนแปลงของค่าที่โดดเด่นในช่วงสามเดือนสุดท้ายมีลักษณะอย่างไร หากไม่มีสิ่งนี้ โมเดลที่ใช้ Random Forest คงจะเสียเปรียบเมื่อเทียบกับ Weibull-LSTM

เหตุใด LSTM ที่มีการกระจาย Weibull จึงดีกว่าแนวทางการตัดสินใจแบบทั้งมวล

ทุกอย่างชัดเจนที่นี่เพียงไม่กี่ภาพ

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ
การเปรียบเทียบ Lift Curve สำหรับอัลกอริทึมแบบคลาสสิกและ Weibull-LSTM

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ
การเปรียบเทียบเมตริก Lift Curve ต่อเดือนสำหรับอัลกอริทึมแบบคลาสสิกและ Weibull-LSTM

โดยทั่วไปแล้ว LSTM นั้นเหนือกว่าอัลกอริธึมแบบคลาสสิกในเกือบทุกกรณี

ทำนายปั่น

แบบจำลองที่ใช้โครงข่ายประสาทที่เกิดซ้ำด้วยเซลล์ LSTM ที่มีการกระจายแบบ Weibull สามารถทำนายการเลิกใช้งานล่วงหน้าได้ เช่น ทำนายการเลิกใช้งานของลูกค้าภายใน n เดือนข้างหน้า พิจารณากรณีของ n = 3 ในกรณีนี้ ในแต่ละเดือน โครงข่ายประสาทเทียมจะต้องกำหนดอย่างถูกต้องว่าไคลเอ็นต์จะออกหรือไม่ เริ่มตั้งแต่เดือนถัดไปจนถึงเดือนที่ n กล่าวอีกนัยหนึ่ง ต้องกำหนดอย่างถูกต้องว่าลูกค้าจะอยู่ต่อไปหลังจากผ่านไป n เดือนหรือไม่ นี่ถือได้ว่าเป็นการคาดการณ์ล่วงหน้า: คาดการณ์ช่วงเวลาที่ลูกค้าเพิ่งเริ่มคิดถึงการจากไป

เปรียบเทียบ Lift Curve สำหรับ Weibull-LSTM 1, 2 และ 3 เดือนก่อนไหลออก:

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

เราได้เขียนไว้ข้างต้นแล้วว่าการคาดการณ์สำหรับลูกค้าที่ไม่ได้ใช้งานอีกต่อไปเป็นระยะเวลาหนึ่งก็มีความสำคัญเช่นกัน ดังนั้น เราจะเพิ่มกรณีดังกล่าวลงในตัวอย่างเมื่อลูกค้าที่จากไปไม่ได้ใช้งานเป็นเวลาหนึ่งหรือสองเดือนแล้ว และตรวจสอบว่า Weibull-LSTM แยกประเภทกรณีดังกล่าวเป็น churn ได้อย่างถูกต้อง เนื่องจากมีกรณีดังกล่าวอยู่ในกลุ่มตัวอย่าง เราจึงคาดหวังว่าเครือข่ายจะจัดการกับกรณีเหล่านี้ได้ดี:

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

การรักษาลูกค้า

จริงๆ แล้วนี่คือสิ่งสำคัญที่สามารถทำได้โดยมีข้อมูลในมือว่าลูกค้ารายดังกล่าวกำลังเตรียมที่จะหยุดใช้ผลิตภัณฑ์ เมื่อพูดถึงการสร้างแบบจำลองที่สามารถเสนอสิ่งที่เป็นประโยชน์ให้กับลูกค้าเพื่อรักษาพวกเขาไว้ได้ การดำเนินการนี้ไม่สามารถทำได้หากคุณไม่มีประวัติความพยายามที่คล้ายกันซึ่งจะจบลงด้วยดี

เราไม่มีเรื่องราวเช่นนี้ ดังนั้นเราจึงตัดสินใจด้วยวิธีนี้

  1. เรากำลังสร้างโมเดลที่ระบุผลิตภัณฑ์ที่น่าสนใจสำหรับลูกค้าแต่ละราย
  2. ทุกเดือนเราจะเรียกใช้ตัวแยกประเภทและระบุลูกค้าที่อาจลาออก
  3. เรานำเสนอผลิตภัณฑ์แก่ลูกค้าบางรายตามแบบจำลองจากจุดที่ 1 และจดจำการกระทำของเรา
  4. หลังจากผ่านไปไม่กี่เดือน เราจะพิจารณาว่าลูกค้ารายใดที่อาจออกจากกลุ่มนี้และกลุ่มใดยังคงอยู่ ดังนั้นเราจึงสร้างตัวอย่างการฝึกอบรม
  5. เราฝึกโมเดลโดยใช้ประวัติที่ได้รับในขั้นตอนที่ 4
  6. คุณสามารถเลือกทำขั้นตอนนี้ซ้ำ โดยแทนที่โมเดลจากขั้นตอนที่ 1 ด้วยโมเดลที่ได้รับในขั้นตอนที่ 5

การทดสอบคุณภาพของการเก็บรักษาดังกล่าวสามารถทำได้โดยการทดสอบ A/B ตามปกติ โดยเราจะแบ่งลูกค้าที่อาจแบ่งออกเป็นสองกลุ่ม เรานำเสนอผลิตภัณฑ์ให้กับผลิตภัณฑ์หนึ่งตามรูปแบบการเก็บรักษาของเรา และอีกผลิตภัณฑ์หนึ่งเราไม่ได้นำเสนอเลย เราตัดสินใจฝึกโมเดลที่อาจมีประโยชน์อยู่แล้วในจุดที่ 1 ของตัวอย่างของเรา

เราต้องการทำให้การแบ่งส่วนสามารถตีความได้มากที่สุด ในการทำเช่นนี้ เราได้เลือกคุณสมบัติหลายประการที่สามารถตีความได้ง่าย: จำนวนธุรกรรมทั้งหมด ค่าจ้าง การหมุนเวียนบัญชีทั้งหมด อายุ เพศ คุณลักษณะจากตาราง "แผนที่" ไม่ได้ถูกพิจารณาว่าไม่มีข้อมูล และคุณลักษณะจากตารางที่ 3 "สัญญา" ไม่ได้ถูกนำมาพิจารณาเนื่องจากความซับซ้อนของการประมวลผล เพื่อหลีกเลี่ยงการรั่วไหลของข้อมูลระหว่างชุดการตรวจสอบและชุดการฝึกอบรม

การจัดกลุ่มดำเนินการโดยใช้แบบจำลองผสมแบบเกาส์เซียน เกณฑ์ข้อมูล Akaike ช่วยให้เราสามารถกำหนด 2 optima ค่าที่เหมาะสมอันดับแรกสอดคล้องกับ 1 คลัสเตอร์ อันดับสองที่เหมาะสมที่สุดซึ่งเด่นชัดน้อยกว่านั้นสอดคล้องกับ 80 กลุ่ม จากผลลัพธ์นี้ เราสามารถสรุปได้ดังต่อไปนี้: เป็นเรื่องยากมากที่จะแบ่งข้อมูลออกเป็นกลุ่มๆ โดยไม่ได้รับข้อมูลเบื้องต้น เพื่อการจัดกลุ่มที่ดีขึ้น คุณต้องมีข้อมูลที่อธิบายไคลเอนต์แต่ละรายโดยละเอียด

ดังนั้น จึงพิจารณาปัญหาของการเรียนรู้แบบมีผู้สอนเพื่อเสนอผลิตภัณฑ์ที่แตกต่างกันให้กับลูกค้าแต่ละราย ผลิตภัณฑ์ต่อไปนี้ได้รับการพิจารณา: “เงินฝากประจำ”, “บัตรเครดิต”, “เงินเบิกเกินบัญชี”, “สินเชื่ออุปโภคบริโภค”, “สินเชื่อรถยนต์”, “สินเชื่อที่อยู่อาศัย”

ข้อมูลรวมผลิตภัณฑ์อีกประเภทหนึ่ง: "บัญชีกระแสรายวัน" แต่เราไม่ได้พิจารณาเนื่องจากมีเนื้อหาข้อมูลน้อย สำหรับผู้ใช้ที่เป็นลูกค้าธนาคาร ได้แก่ ไม่ได้หยุดใช้ผลิตภัณฑ์ของตน แต่มีการสร้างแบบจำลองเพื่อคาดการณ์ว่าผลิตภัณฑ์ใดที่อาจสนใจสำหรับพวกเขา เลือกการถดถอยโลจิสติกเป็นแบบจำลอง และใช้ค่าการเพิ่มสำหรับเปอร์เซ็นไทล์ 10 รายการแรกเป็นเมตริกการประเมินคุณภาพ

สามารถประเมินคุณภาพของแบบจำลองได้ในรูป

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ
ผลลัพธ์โมเดลการแนะนำผลิตภัณฑ์สำหรับลูกค้า

ทั้งหมด

แนวทางนี้ทำให้เราเป็นที่หนึ่งในประเภท "AI in Banks" ในการแข่งขัน RAIF-Challenge 2017 AI Championship

วิธีที่เราทำนายการปั่นป่วนโดยเข้าใกล้มันเหมือนภัยธรรมชาติ

เห็นได้ชัดว่าสิ่งสำคัญคือการเข้าหาปัญหาจากมุมที่แปลกใหม่และใช้วิธีการที่มักใช้กับสถานการณ์อื่น

แม้ว่าการไหลออกของผู้ใช้จำนวนมากอาจเป็นภัยพิบัติทางธรรมชาติสำหรับบริการต่างๆ

วิธีการนี้สามารถนำมาพิจารณาในด้านอื่น ๆ ที่จำเป็นต้องคำนึงถึงการไหลออก ไม่ใช่แค่ธนาคารเท่านั้น ตัวอย่างเช่นเราใช้มันเพื่อคำนวณการไหลออกของเราเอง - ใน Rostelecom สาขาไซบีเรียและเซนต์ปีเตอร์สเบิร์ก

บริษัท "ห้องปฏิบัติการขุดข้อมูล" "ค้นหาพอร์ทัล" สปุตนิก

ที่มา: will.com

เพิ่มความคิดเห็น