Yazılım & Bilgisayar Mühendisliği
Müşteri Churn Prediction için Karar Ağacı Kullanın
Table of Contents
Son derece rekabetçi telecom endüstrisinde, müşterilerin sadece operasyonel bir hedef değil – bu, şeffaflık ve kârlılık için stratejik bir zorunluluktur. Yüksek müşteri satın alma maliyetleri, olgun pazarlarla çiftleştirilmiş, aboneleri doğrudan gelir ve pazar payı kaybetmenin, bu trendle savaşmak için en etkili analitik yaklaşımlardan biri, makine öğrenme tekniklerini kullanmayı hedeflemek için en iyi uygulamalardır.
Müşteri Churn Nedir?
Müşteri churn, aynı zamanda müşteri olarak da bilinir, müşterilerin bir iş ile ilişkilerini durdurduğu oran ölçer. Telekomünikasyonda, churn, bir abonenin hizmet veya rakiplerine etkilendiği zaman gerçekleşir. Churn gönüllü olarak sınıflandırılabilir (müşteri kararı) veya sınırsız ödeme, dolandırıcılık veya hizmet kesintisi için). Voluntary churn en alakalıdır, çünkü bir rakip tarafından etkilenen bir seçim temsil eder.
Yeni bir müşteri satın almadan önce churn'in finansal etkisi önemli. Yeni bir müşteri satın almak, mevcut bir kişiyi korumaktan beş kat daha fazla maliyete mal olabilir. churn'de% 25 ila% 95 arasında endüstri çalışmalarına göre kâr artırabilir.Bu nedenle, telecom operatörlerinin hedefli tutma programları başlatmasını sağlar, kişisel teklifler, proaktif müşteri hizmetleri veya geliştirilmiş ağ kalitesi gibi.
Karar Ağaçlarını Anlamak
Karar ağaçları sınıflandırma ve regresyon görevleri için kullanılan denetimli makine öğrenimi algoritmalarıdır. Bir ağaç yapısı olarak, iç düğümlerin özellikleri üzerinde testler temsil ettiği (örneğin, “ortalama aylık veriler, 10 GB?”), şubeler bu testlerin sonuçlarını temsil eder ve broşürler tahmin edilir etiketler (kıyatıcı veya değil)
Karar Ağacı Nasıl İnşa Edilir
Algoritma, ortaya çıkan alt kümelerde homojeniteyi en iyi şekilde ayırmak için veri kümesine dayanan bölümlerini yeniden alır.Her bir node, bir özellik ve bölünmüş nokta sınıfları en iyi şekilde ayırmak için seçilir. Common partition kriteri şunları içerir:
- [FONT:0)Gini Impurity:[Dönetici:[Dönetici:0)[Dönetici:0)Gini Impurity:[Dönetici:[Dönetici:[Dönetici: 1 ) Doğrulanmış bir elementin, node etiket dağılımına göre etiketlenmiş olsaydı rastgele seçilmiş bir elementin dağıtılma olasılığı. Lower Gini saf düğümleri gösterir.
- [[Düzücü/Bilgi Girişi:[Dönetici: 0) Bir bölünmeden sonra belirsizlikte azalmayı ölçüler. Algoritma, bilgi kazanımı (veya entropiyi en aza indiren özelliği seçer).
Örneğin, bir node 100 müşteri, 80 sadık ve 20 zıvır (Gini = 0.32) içerebilir. “müşteri desteği çağrısı > 3” ile bir çocuk üretebilir 30 müşteri (25 çakal, 5 sadık) ve diğer 70 müşteri (55 sadık, 15 çakal) , ağırlığa kadar Gini'yi 0.20'ye kadar azaltın.
Bu recursive partitioning, teknik olmayan paylara görselleştirmek ve açıklamak için kolay olan bir dizi kural yaratır: “Bir dizi müşteri hizmetleri aramaları > 5 AND sözleşme türü = ay-ay-ay ve onure < 12 ay boyunca ürpertici tahmin edebilir.”
Karar Ağaçlarını Telekomünikasyonda Kullanımının Faydaları
- [FONT:0) Sorumluluk:[Dönetici:[Dönetici:[Döntilebilirlik:[Dönetici:0) Karar ağaçları açık, eylem edilebilir kurallar üretebilir. Pazarlama takımları ve çağrı merkezi yöneticileri neden bir müşterinin yüksek risk olarak bayrağını ve belirli müdahaleleri tasarlayabildiğini anlayabilirler (örneğin, fiyat duyarlılığını gösterir).
- [FONT:0)Speed:[DÜDÜT:1] Her iki eğitim ve dikkat, büyük telecom veri setlerinde bile hızlıdır ( abonelerin milyonları). Ağaç derinliği ve birçok özellik gerçek zamanlı tahminler için geç kalmış gereklilikleri karşılamak için kontrol edilebilir.
- [FONT=0)Seçmeli:[Dönetici:[Dönetici: 0 3) Ağaç otomatik olarak önemli ölçüde özellikleri sıralayabilir. Telecom analistleri, “işman uzunluğu” veya “ortalama gelirlerini kullanıcı başına (ARPU) olarak tanımlayabilirler.
- [FONT:0]Handling Non-Linear Data:) Karar ağaçları, açık dönüşümü gerektiren özellikler arasında karmaşık etkileşimler modelleyebilir. Örneğin, churn üzerindeki verilerin kullanımı etkisi, ücretli vs. posta ücreti müşterileri için farklı olabilir - ağaç doğal olarak her iki değişkende bölünebilir.
- [FONT:0)Minimal Data Hazırlık:[Dönetici:[Dönetici] Karar ağaçları, geniş standartlaştırma veya dummy encoding olmadan karışık veri türlerini (kategorical, sayısal) işlemek için sağlamdır.
Churn Prediction için Karar Ağaçlarını Uygulamayın
Başarılı bir churn tahmin projesi sistematik bir boru hattı takip eder. Aşağıda her adımı telecom-spesifik düşüncelerle detaylıyoruz.
Adım 1: Tarihsel Müşteri Data Toplayın
Fatura sistemleri, CRM, ağ logları ve müşteri hizmetleri platformları ile ilgili veri toplama:
- [FONT:0)Demografikler:[[Dönetici:[Dönetici:[Dönetici:0)[Döneticiler:[Dönem:[Dönem: · 1/01/2012).
- [FONT:0)Account Information:[Dönetici:[Dönemli: 1 ay, bir yıl, iki yıl), onure, ödeme yöntemi, kağıtsız billing bayrağı.
- [FONT:0]Usage Patterns:[[Dönem:[Dönem: 0, SMS sayısı, veri hacmi, zirve vs. off-peak kullanımı, roaming kullanımı.
- [FONT:0]Hizmet Deneyimi: [Dönetici Desteği çağrısı, ortalama çağrı süresi, şikayet sayısı, hizmet biletleri, hizmet kesintileri deneyimli.
- [FONT:0)Billing History:[[Dönetici:[Dönder: 1) Ortalama aylık ücret, toplam gelir, geç ödeme frekansı, indirim uygulanır.
- [FONT=0)Competition Interaction:[Dönetici:[Dönetici:0)Rekademik Müdahale:[Dönetici:[Dönetici:0)[Dönetici:0)Rekahraman hizmetleri hatlarına çağrı Sayısı, port-out talepleri.
Hedef değişkeni, müşteri tanımlanmış bir gözlem penceresi içinde sallanan bir ikili bayraktır (örneğin, önümüzdeki 30 gün). Bu pencereyi sürekli olarak tanımlamak kritiktir - önceden tahmin etmek için çok fazla gecikme süresinden vazgeçerken, bir pencere tutma eylemleri için yetersiz zaman bırakabilir.
Adım 2: Data Preprocessing
Raw telecom verileri genellikle dağınıktır. Anahtar preişleme görevleri şunlardır:
- [FONT:0)Handling Missing Values:[Dönetici özellikleri için , medyan imputation yaygın (örneğin, medyan için eksik veri kullanımı mevcut). For categorical, either mode imputation or create a separate “unknown” kategorisi.
- [FONT:0)Katılımcı Değişkenler: nominal kategoriler için tek-hot encoding for nominal kategoriler (e.g., sözleşme türü = ay-ay, bir-yıl, iki yıllık → üç sütun)
- [FONT:0)Outlier Tedavisi:[[Dönetici:[Dönetici:0)[Dönetici:[Dönetici:0)) Cap extreme values for features like number of support calls at 99th percentile to avoid partitions on rare, unrepresentative data points.
- [[Dönetici:[Dönetici:[Dönetici: 0) İşitsizliğe ait olan tüm ödemelere göre, son modellerden gelen gecikme oranı.
- [FONT:0]Handling Imbalanced Sınıflar: Churn datasets tipik olarak dengesizdir (örneğin,% 90 sadık).
Adım 3: Veriler Eğitim ve Test Setleri
Veri sızıntısından kaçınmak için rastgele bölünmüş bir zaman tabanlı bölünmüş kullanın - geçmiş veriler üzerinde eğitim (örneğin, ay 16) ve gelecekteki veriler üzerinde test (ay 7) Ayrıca hiperparametre ayarı için geçerli bir işlem seti oluşturur.
Adım 4: Karar Ağacı Modelini Tren
scikit-learn (Python), rpart (R), veya H2O. hiperparametreleri yapılandırın:
- [FONT:0)max derinlemesine:[Dönetici:[Dönetici: 0) Limitler ağaç derinliğini 3-5'e kadar önlemek için, sonra ayarlayın.
- [FONT:0]min samples split:) Bir iç düğümü bölmek için gerekli olan en az sayıda örnek.
- [FONT:0]min samples leaf: Bir yapraktaki en az örnek yok. Önlemler bu çok az müşteriye uygulanır.
- [FONT:0]criterlik: [Dönetici” veya “kanç” her ikisi de aynı şekilde performans gösterir; Gini biraz daha hızlı.
- [FONT:0] Sınıf weight:[Dönetici:[Dönetici: 1) Sınıf dengesizliği için otomatik olarak ayarlandığında “yaşlı” ayarlayın.
Eğitim setinde ağaç ve onu görselleştirin. sığ bir ağaç (derinlemesine 2-4) bir akış olarak yazdırılabilir, iş liderleriyle iletişim kurmak kolay hale getirebilir.
Adım 5: Evaluate Model Performansı
Çünkü churn dengesizlikli, doğruluk tek başına yanıltıcıdır (her şeyin %90 doğruluk elde ettiği için “hayır urn” tahmin eden bir naif model). Sahte negatifleri penalize eden ölçümler kullanın:
- [FONT:0) Sonuç: [Döneticiler urn'a tahmin edilenler, kaç tane aslında ne kadar değerli? Yüksek hassasiyet boşanma harcamasını azaltır.
- [FONT:0)Recall (Sensitivity): ), Gerçek uriyerlerin hangi kesimini yakaladı? Yüksek hatırla, risk altındaki müşterilerin daha azını sağlar.
- [FONT:0]F1 Puan:[[Dönetici:0) Harmonic bir denge ararken hassas ve hatırlanır.
- [FONT:0)ROC-AUC:[Dönetici:[Dönetici: 0,8'in üzerinde bir değer genellikle iyi.
- [FONTD:0]Lift Curve / Oyun Planı: Modelin rastgele hedeflemeden daha iyi performans gösterdiğini gösteriyor. Örneğin, churn olasılık tarafından listelenen müşterilerin en iyi% 10'u gerçek churners'ın% 50'sini içerebilir.
Test setinde ve çapraz-validate'de istikrar sağlamak için dikkat edin. Ağaç aşırılık (yüksek eğitim doğruluk, düşük test doğruluk), titizliği veya max derinlemesine azaltmak için geçerlidir.
Adım 6: Geleceğin Churn'i Tahmin Etme Modeli
Onaylandığında, modelin operasyonel iş akışına entegre edilmesi. Bu, bir müşteri görüşmesi desteği ile yapılabilir (örneğin, her müşteri için kişiselleştirilmiş müdahaleler için günlük olarak işler) veya gerçek zamanlı puanlama (örneğin, bir müşteri görüşmesi desteği) için bir saklama teklifini tetikleyebilir.
Yeniden yükleme kampanyaları A/B test edilmelidir: teklifleri olan yüksek riskli segmente tedavi etmek ve kontrol grubuna churn oranları karşılaştırmak. İzleme modeli sürüklenmek -müşteri davranışları her çeyrekte yeniden eğitim almak veya yeni tarifeler veya rakipler pazara girdiğinde.
Meydanlar ve düşünceler
Karar ağaçları güçlü olsa da, bu yöntemleri anlamak, telecom uygulayıcılarının onları etkili bir şekilde kullanmasına yardımcı olur.
Overfitting
Eğitim verilerinde çok derin bir memorize eden bir karar ağacı, fakir genelleştirmeye yol açan.
- [FONT:0)Öyle:[Dönetici:[Dönetici: 0) Bir node, min samples split örneklerinden daha az içerken bölmeyi Durdurun veya daha fazla bölünmelerin bir eşiğin ötesindeki boşluk azaltmayı geliştirmediğini.
- [FONT=0)Post-pruning (Cost Kompleksity Pruning):[Dönetici:0) Tam bir ağaç yetiştiren, sonra en az per-split hata düzeltmesini sağlayan dalları kes. Scikit-learn'in [[0) parametre bunu otomatikleştir.
- [FONT:0)Ensemble Yöntemler:[Dönetici:[Dönetici: 0 3) Rastgele Ormanlar ve Gradient Boosting, yorumlanabilirlik korurken birçok ağacı bir araya getirmek için bir araya getirir (daha az yorumlanabilirlik biraz feda edilir).
Data Imbalance
churn nadir olduğunda (örneğin,% 5), karar ağaçları çoğunluğun sınıfını desteklemeye eğilimlidir. Bu, yalnızca algoritmalı ayarlamalar (klasik weight) değil, aynı zamanda değerlendirme ölçümlerinin de dikkatli bir şekilde seçilmesi gerekir.
Instability
Eğitim verilerindeki küçük değişiklikler çok farklı ağaçlar üretebilir. Bu, model düzenleyici veya uyumluluk amacıyla kullanılırken sorunlu olabilir (örneğin, adillik analizi).Cerap aggregating (bagging) in Random Forests stabilizes Alternatif olarak, XGBoost gibi ensemble yöntemleri kullanılabilir.
Birçok Seviye ile Özelliklere Doğru
Karar ağaçları, birçok kategoriye sahip kategorize edici özellikleri tercih eder (örneğin, müşteri kimliği) bilgilendirici olanları içerir. Gruplanmış veya kodlanmış olmadıkça yüksek kartelality özellikleri dahil kaçının (örneğin, hedef kodlamayı kullanarak).
Gelişmiş Teknikler: Ensemble Yöntemleri
Üretim seviyesi churn tahmin için, tek karar ağaçları genellikle yüzlerce ağaç birleştiren topluluk tarafından değiştirilir:
- [FONT:0]Random Orman:[Dönetici:[Döncükler ve rastgele alt özellikleri üzerine birçok ağaç, o zaman tahminleri ortalamaları. Bazı yorumlanabilirlik maliyetinde doğruluk ve sağlamlığı geliştirir.Bir Random Forest'dan özel önem hala değerli iş öngörüleri sunar.
- [FONT:0]Gradient Boosting (XGBoost, LightGBM, CatBoost): [Dönemli olarak, önceki tahminlerin her doğrulanmasında kullanılır.Bu modeller genellikle tabular telecom verileri üzerinde devlet-of-the-art sonuçları elde eder.
Hibrit yaklaşımlar yaygındır: ilk tarama için sığ bir karar ağacı kullanın, sonra nihai puanlama için XGBoost'i uygulayın. Bu yorumlama ve performans dengesi dengesi ve performans dengesi genellikle telecom paydaşları tarafından kabul edilir.
Gerçek Dünya Örneği: Telecom Churn Prediction with Decision Trees
Büyük bir Avrupa telecom operatörü, ücretsiz müşteri tabanı arasında churn'ı azaltmak için bir karar ağacı modeli uyguladı. Veri seti, 200 özelliği olan 500.000 müşteriyi içeriyordu.
- Sözleşme türü = ay-ay ve onure < 6 ay ve ortalama aylık veri kullanımı vegt; 20 GB'nin % 65 (yüksek şarkıt) zıyacağından emin oldu.
- Onure > ile müşteriler; 24 ay ve son 6 ayda geç ödemelerin sadece% 3'ün bir zıy olasılığı vardı.
Model 0.72'nin hassaslığını elde etti ve en üst decile 0.68'i anımsadı. Operatör bu müşterileri sadakat bonusları ve proaktif ağ yükseltmeleri ile hedef aldı. Churn in theted segment lost by 12% over the next çeyrek, result in a net present value gain of €2.5 milyon.
Bu sonuçlar, karar ağaçlarının telecom analizinde bir temel kalmasını güçlendiriyor, daha karmaşık modeller ortaya çıkıyor.
Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç
Müşteri churn tahminine karar ağaçları kullanarak, telecom şirketleri, risk altındaki müşterileri tanımlamak için şeffaf ve verimli bir yol sunar. -Veri bilimi ve iş operasyonları arasındaki boşlukları yorumlayabilir, pazarlama ve müşteri deneyim ekiplerinin net, kural tabanlı bir uygulama hattına hareket etmesini sağlar - bakımlı veri toplama, düşünceli bir ön işleme, hiperparametre ayarlamasını ve dağıtım stratejileri ile entegre edilebilirliği - tüm operatörlerin fiyat artışlarını önemli ölçüde azaltabilir.
Tek karar ağaçları dengesizliğe ve aşırılığa sahip olmakla birlikte, bu birçok telecom kullanım durumu ile yönetilebilir veya daha derin modellere benzeyen bir ağacın birleşimine yol açabilir - en iyi geri dönüş için en iyi şekilde yatırıma yol açmalı.
Anlayışınızı derinleştirmek için, incelikli-öğrenme karar ağacı belgesi) veya genel telecom churn datasets like aTELFLT:2)Telco Müşteri Churn on Kaggle gelişmiş teknikler için, rekabetçi bir avantaja teknik olarak giriş yapabilecektir.