Алгоритми класифікації машинного навчання можуть заощадити гроші компаній, здійснюючи прогнозування відтоку клієнтів. Щоб розібратися в цій темі, необхідно з’ясувати, що таке churn. Churn – це відтік. Відтік – це втрата клієнтів компанією, що може бути пов’язана з різними причинами. Причини відтоку клієнтів можуть бути пов’язані з недостатньою вивченістю цільового ринку, відсутністю переваг на тлі інших компаній, недостатнім професіоналізмом служби підтримки, відсутністю програми лояльності, надмірною настирливістю за відношенням до клієнтів. Що таке churn rate? Відтік клієнтів (churn rate) — це показник втрати клієнтів за певний період часу. Churn метрика використовується для різних онлайн-платформ, включаючи мобільні додатки, банки, операторів зв’язку та маркетплейси.
Для побудови такого класифікатора вам знадобиться доступ до профілів ваших клієнтів та початковий показник відтоку клієнтів. Таким чином, це типове завдання так званого контрольованого навчання. Кожен продавець повинен знати, як порахувати відтік клієнтів, тому в цій статті ми розповімо, як рахувати churn rate.
Але перш за все компаніям, можливо, доведеться провести аналіз відтоку клієнтів, щоб спрогнозувати, коли відбудуться ці втрати. Знаючи, що вони матимуть можливість просувати перші персональні рекламні пропозиції, сподіваючись зберегти клієнтів.
Останнє, здається, складнішим завданням, враховуючи, що в реальних умовах, щоб керувати, ви часто маєте не більше, ніж список замовлень на одного клієнта. У RBC Group ми знайшли рішення для отримання (майже) онлайн-маркування для клієнтів, які входять до churn rate, ґрунтуючись виключно на частоті та сумі їхніх попередніх замовлень.
Щоб розрахувати коефіцієнт відтоку клієнтів повинна бути використана формула churn rate. Формула відтоку клієнтів свідчить, що необхідно розділити кількість втрачених клієнтів за певний період на загальну кількість клієнтів на момент початку періоду і помножити на 100.
Таким чином, згідно з вищесказаним, єдиними даними, які ми будемо використовувати для демонстрації нашого підходу, є випадково згенеровані набори даних, що містять записи суми та дати замовлення протягом двох років для 1000 унікальних клієнтів. Частота замовлення розглядатиметься як різниця між двома наступними замовленнями.
Таким чином, наша кінцева мета полягає в тому, щоб спрогнозувати, чи знаходиться кількість днів з моменту останнього відомого замовлення в межах частоти регулярного замовлення клієнта. Іншими словами, ми розрахуємо ймовірність того, що вищезазначене число днів перевищить очікувану відому функцію розподілу частоти замовлення покупця. Якщо ця можливість перевищує певний поріг — клієнт, швидше за все, йде.
Налаштування життєвого циклу клієнта (тобто його регулярної частоти замовлення) далі буде виконано з scipy.stats.truncnorm. Проте, ми пропонуємо розглянути як перерви між замовленнями (тобто. періодичність замовлень), а й суму цих замовлень. Це другий доступний нам прогноз для моделювання поведінки наших клієнтів. Можна припустити, що середня сума замовлень (як модель споживання) така ж важлива, як і їх регулярність. Це означає, що в більшій мірі нам слід покладатися на замовлення з сплаченими грошовими сумами (далі — сума замовлення), які є близькими до середнього рівня витрат клієнта.
Таким чином, налаштовуючи нашу вибіркову функцію розподілу, ми розрахуємо середню частоту замовлення для даного клієнта як середньозважене значення зі зворотно пропорційними значеннями (тобто згасання) пропорційно сумі замовлення до середньої кількості всіх замовлень відомого замовника (тобто стандартизована оцінка).
Це те, що ми назвали налаштуванням ймовірності функції розподілу.

Саме так наш підхід буде працювати на практиці, вдаючи, що використовує останнє замовлення клієнта як тест. (Зверніть увагу, що всі ймовірності тут, у межах зони ризику “відтік клієнтів” є хибнопозитивними, оскільки досліджувані замовлення були зроблені клієнтами, ми просто виділили їх із відповідних підгруп, моделюючи вибіркову функцію розподілу).
Для цього нам необхідно розбити наш створений набір даних на поїзд і провести випробування з використанням емпіричного правила трьох сигм, а це означає, що ми розраховуватимемо тривалість випробувального періоду таким чином:
(Середня частота замовлень (в днях) для всіх клієнтів + 3 х SD)
Усі клієнти, які зробили хоча б один закуп протягом тестового періоду, вважаються “вірними”, тоді як решта (тобто ті, хто зробив свій останній закуп лише протягом періоду навчання) — ”справжній відтік клієнтів”.
Закінченням періоду навчання є так звана ”контрольна дата”. Це означає, що ми розрахуємо різницю між останнім замовленням кліента та ”контрольною датою”, щоб оцінити впевненість (ймовірність) цієї різниці (щодня) поза регулярною частотою замовлення, використовуючи налаштовану вибіркову функцію розподілу.
Як основний підхід ми будемо використовувати вищеназване емпіричне правило трьох сигм: якщо різниця між ”контрольною датою” та датою останнього замовлення вище (середня + 3 x SD) — клієнт промаркований як “відтік, що прогнозується”. Як альтернатива, ми будемо застосовувати наш метод вибіркової функції розподілу для класифікації клієнтів на основі їх календаря замовлень з використанням різних порогових значень для функції маркування.
Ось матриця збентеження для всіх експериментів. (Зверніть увагу: оскільки дані генеруються випадковим чином, коефіцієнт відтоку клієнтів може здатися неправдоподібним).
Тут ви бачите, як запропонований нами підхід перевершив правило трьох сигм з погляду точнішого визначення відтоку клієнтів. Також зверніть увагу на те, як збільшення порога зменшує кількість помилково-негативних помилок, що означає – менша кількість клієнтів отримуватиме потенційно дратівливі нагадування від вас (спам). Вибір, як завжди, залежить від характеру вашого бізнесу.
