Straciłeś klienta? Sztuczna inteligencja mogła pomóc to przewidzieć
Analizujesz swój churn rate?
Zazwyczaj każda firma bada poziom odejść swoich klientów oraz główne czynniki, które powodują, że klient rezygnuje z usług. Przygotowywane są raporty, zestawienia i analizy, które mogą pokazać, jaki typ klienta najczęściej odchodzi, kiedy rezygnuje czy też jakiekolwiek inne jego charakterystyki.
Taka analiza ułatwia zbudowanie modelu machine learning, ponieważ wiedza ekspercka jest bezcenna w przygotowywaniu zmiennych i danych pod model.
Dla przykładu, jeśli wiemy, że najczęściej odchodzącymi klientami są osoby młode, w wieku pomiędzy 20 a 25 rokiem życia, to w zmiennych najprawdopodobniej powinna znaleźć się informacja o wieku klienta. Jeśli analizy, nawet wizualne, wykazują, że nasi klienci najczęściej rezygnują w danym okresie roku, przykładowo w styczniu, to też będzie to bezcenna informacja do przygotowania zmiennych oraz rozważenia odpowiedniego typu algorytmu.
Należy również rozpoznać dane, które owszem, wskazują na chęć rezygnacji z usług (mają bardzo silną korelację), ale informacje o nich pojawiają się po jakimś czasie lub są zbyt oczywiste. Przykładowo, jeśli w zmiennych pojawi się flaga informująca o tym czy klient złożył rezygnację w systemie, to najprawdopodobniej będzie ona miała bardzo silną korelację z informacją czy klient odszedł. Po złożeniu takiej rezygnacji jest już zazwyczaj za późno, aby skłonić naszego klienta do zmiany zdania.
Do zdobycia wiedzy o skali problemu potrzebna jest również informacja o tym, jak kształtuje się churn rate (wskaźnik odejść). Inne techniki i algorytmy będzie trzeba zastosować do zjawiska, w którym wskaźnik wynosi około 2%, a inne można wykorzystać, gdy wskaźnik wynosi 30%. Dużo łatwiej zbudować model na zjawisku, gdzie poszukiwana próbka stanowi kilkanaście czy więcej procent całej populacji.
Najważniejsza jest jednak wiedza o tym, jak oznaczyć klienta, który zrezygnował z naszych usług. Czy to ktoś, kto nie przedłużył umowy albo nie zapłacił ostatniej raty lub nie loguje się do systemu od bardzo dawna itd. Bardzo ważne jest, aby umieć zdefiniować na poziomie biznesowym i danych, kim tak naprawdę jest klient, który odszedł.
Najważniejsza jest jednak wiedza o tym, jak oznaczyć klienta, który zrezygnował z naszych usług
Jeśli już teraz analizujesz swój churn rate, to masz za sobą pierwszy krok do zbudowania modelu opartego o algorytmy machine learning. Wiesz już, jakich zmiennych i danych możesz potrzebować oraz jakiego algorytmu możesz użyć pod daną wielkość churn rate.
Czy Twoja organizacja jest gotowa na wdrożenie AI?
Wdrożenie w skali produkcyjnej w przedsiębiorstwie sztucznej inteligencji oraz rozwiązań opartych o machine learning wymaga tego, aby organizacja była na to przygotowana. Jeśli twoja firma jest duża i masz wielu klientów, będziesz przetwarzał dużą ilość danych, potrzebował środowiska do obliczeń i miejsca do przechowywania modeli, a to wszystko kosztuje.
Modele potrzebują mocy obliczeniowej oraz danych, w związku z tym organizacja musi być przygotowana na to, że taki projekt oraz jego utrzymanie może być kosztowne. Oczywiście, jeśli zwrot inwestycji będzie dużo wyższy, jest to projekt wart finansowania.
Należy jednak uczulić użytkowników biznesowych na to, że żaden model nigdy nie będzie w stu procentach skuteczny. Warto im również uświadomić, że model służący wykrywaniu potencjalnych churnów to nie magiczne pudełko, w którym umieszczamy konkretne dane, a w zamian otrzymujemy listę najciekawszych przypadków, czy też wszystkich powodów, dla których ktoś chce zrezygnować z naszych usług. Ten model będzie służył temu, aby wykazać, z pewnym prawdopodobieństwem, że ktoś chce nas opuścić i te wyniki trzeba dalej wykorzystać.
Należy jednak uczulić użytkowników biznesowych na to, że żaden model nigdy nie będzie w stu procentach skuteczny
Jeśli jesteś gotowy na koszty projektu, infrastruktury i utrzymania, a Twoi użytkownicy biznesowi są świadomi, że machine learning to nie magia, zrobiłeś drugi krok, aby wdrożyć sztuczną inteligencję w swojej organizacji.
Czytaj także: Jak sztuczna inteligencja pomaga ubezpieczycielom?
A strategie biznesowego wdrożenia już przygotowałeś?
Zanim przystąpisz do budowy modelu i przygotowywania danych, zastanów się, w jaki sposób będziesz chciał wykorzystać wyniki. Czy będziesz potrzebował predykcji codziennie, raz w tygodniu, raz w miesiącu, czy być może będą potrzebne w czasie rzeczywistym.
To, co jest ważne w przypadku wdrażania systemu prognozującego, to odpowiedzenie na pytanie, do czego będziemy porównywać jego wyniki
Zdefiniuj czy twoje wyniki będą miały służyć jako podstawa do automatycznych kampanii marketingowych, wysyłania SMS-ów, informacji dla pracowników call center, czy być może w jeszcze inny sposób chcesz zbudować swój proces biznesowy wykorzystujący informacje o potencjalnym odejściu klienta, a następnie tej sytuacji zapobiegający.
To, co jest ważne w przypadku wdrażania systemu prognozującego, to odpowiedzenie na pytanie, do czego będziemy porównywać jego wyniki. Może obecnie funkcjonuje już jakiś prosty algorytm i nasz model musi być od niego lepszy? To pozwoli uniknąć rozczarowania, gdy wyniki nie będą wystarczająco dobre i pozwoli łatwiej pracować nad ich poprawą.
Następnie musimy przygotować grupę referencyjną klientów. Dlaczego? Przykładowo, model zaczyna działać 1.07. przez dwa miesiące i przez ten czas spada odsetek rezygnacji klientów. Ale czy aby na pewno dlatego, że nasz model działał tak dobrze, czy może po prostu mniej klientów odchodziło i jest to efekt globalnego trendu?
Aby to sprawdzić, potrzebujemy grupy referencyjnej i monitorowania efektów. Jeśli już masz swoją strategię biznesowego wdrożenia, to możesz wykonać kolejny krok: zebrać dane.
Zebrałeś już dane?
Parafrazując piosenkę ABBY: „Data, data, data, must be funny in the data’s world”, czas na przygotowanie danych. Idealnie byłoby gdybyś miał już hurtownię danych, inaczej czeka Cię więcej pracy i większe ryzyko, że zmienne w raportach i do modelu mogą być inaczej wyliczane. Dlaczego? Ponieważ zazwyczaj okazuje się, że ktoś gdzieś uwzględnił jedne warunki, inny nie. I potem ta sama miara jak np. liczba wykorzystywanych usług będzie różna.
Zadbaj o to, aby jeden klient był jednym rekordem
Obojętnie czy masz hurtownie, czy nie, będziesz potrzebował zbudować tabelę pod model zawierającą w kolumnach zmienne opisujące charakterystyki klienta, które mogą wskazywać, że będzie chciał odejść. Dlatego tak ważne było odpowiedzenie na pytanie, czy analizujesz swój churn rate. Najprawdopodobniej czeka Cię zebranie w tej jednej tabeli danych z systemu CRM, Call Center, plików excel i jeszcze innych źródeł.
Zadbaj o to, aby jeden klient był jednym rekordem. Często korzystając z kilku, kilkunastu systemów w firmie, to jedna osoba jest wpisana pod wieloma identyfikatorami i trudno w szybki sposób zweryfikować czy dane z CRMu dla osoby XYZ to dane pasujące do osoby XYZ z systemu Call Center. Jeśli tego nie dopilnujesz, to model może się gubić i działać niepoprawnie.
Strzeż się codziennego prostego czyszczenia tabel i zapełniania jej nowymi danym
A jakie zmienne powinny się tam znaleźć? To już zależy od wiedzy eksperckiej, ale dobrze by było, gdyby były to zmienne zmieniające się w czasie, jak np. liczba dni od ostatniej wysłanej kampanii marketingowej, miesiąc, dzień tygodnia, liczba logowań do systemu klienckiego, liczba kontaktów z Call Center, jak długo dana osoba jest naszym klientem, segment sprzedaży itd. Ten punkt projektu jest zawsze specyficzny dla konkretnej firmy i zachowań jej klientów.
Jeśli zebrałeś już te dane w jednej tabeli oraz masz proces ETL ją odświeżający i trzymający historie, to jesteś już na półmetku. Pamiętaj, by tych danych nie kasować – przynajmniej przez jakiś czas należy trzymać te, na których były uczone modele i wykonywane predykcje, by móc walidować modele. Strzeż się codziennego prostego czyszczenia tabel i zapełniania jej nowymi danymi.
Czytaj także: Zdiagnozuj swoją hurtownię danych
Przygotowałeś model machine learning?
Jako modele predykcyjne dotyczące przewidywania czy ktoś może odejść, czy nie, dobrze sprawdzają się modele klasyfikujące. Tutaj w szczególności należy przetestować algorytmy z rodziny algorytmów drzewiastych, takie jak XGBoost czyli LGBM.
Standardowo, należy wykorzystać techniki walidacyjne modelu, sprawdzić, czy się nie przeuczył oraz, co bardzo ważne, spojrzeć na macierz pomyłek (confusion matrix).
Przy klasyfikacji binarnej (2 klasy 0/1) ma ona cztery wskaźniki:
– True Positive – model przewidział odejście, klient odszedł;
– True negative – model przewidział brak odejścia, klient nie odszedł;
– False positive – model przewidział odejście, a klient nie odszedł;
– False Negative – model przewidział brak odejścia, a klient odszedł.
Jak wiadomo, dążymy do tego, aby pierwsza miara oceny modelu była jak najwyższa, ale należy zwrócić uwagę na to, które spośród innych metryk będą dla naszej organizacji najbardziej kosztowne. Czy to, że wyślemy np. kampanię do klienta, który i tak nie chciał odejść, a może gorszą sytuacją będzie brak naszej reakcji wobec klienta skłaniającego się ku opuszczeniu firmy? To, o który wskaźnik należy jeszcze powalczyć, jest już kwestią biznesowych decyzji.
Warto zwrócić uwagę na to, aby dokładność modelu nie była bardzo zbliżona lub taka sama, jak udział klientów pozostających w całej puli klientów
Jak można ulepszać modele? Korzystając z ich hiperparametrów, tzn. parametrów algorytmów, dokładając nowe zmienne czy też testując różne algorytmy.
Warto zwrócić uwagę na to, aby dokładność modelu nie była bardzo zbliżona lub taka sama, jak udział klientów pozostających w całej puli klientów. Co to tak naprawdę znaczy? Jeśli 5% naszych klientów odchodzi, a dokładność modelu wynosi 95%, to wystarczy, że wszystkie rekordy oznaczymy jako klient nieodchodzący, a nie takiego rozwiązania szukamy.
Dlatego należy patrzeć na różne metryki. Jeśli już masz gotowy model, z wynikami odpowiadającymi użytkownikom biznesowym, to już prawie skończyłeś. Prawie, bo został jeszcze etap wdrożenia na produkcję.
Jesteś gotowy na wdrożenie produkcyjne?
Skoro masz już model, dane i wiesz, jak będzie wyglądał proces biznesowy wykorzystujący wyniki, to pozostaje już tylko ostatni krok, czyli wdrożenie produkcyjne modelu. Jest to jeden z najbardziej karkołomnych procesów oraz równocześnie jeden z najmniej ciekawych dla analityków.
Na pewno potrzebny jest monitoring wyników
Kod powinien być odporny na braki danych, wartości odstające oraz zakres wartości i kategorii. W całym flow należy mieć funkcje pobierające dane, liczące predykcje na gotowych modelach, zapisujące wyniki oraz cyklicznie trenujące modele. Należy przygotować repozytorium modeli, czyli miejsce, gdzie będą składowane wyuczone modele wykorzystywane w predykcji.
Następnie należy zaharmonogramować predykcje lub przygotować wyzwalacze procesu działające na określone wydarzenia, na przykład w sytuacji gdy klient skontaktował się z Call Center. Dodatkowo na pewno potrzebny jest monitoring wyników – możesz zacząć od prostego dashboardu pokazującego wyniki po każdym przebiegu predykcji, na przykład w granulacji dziennej.
Jeśli to wszystko masz, a proces wykonuje się w odpowiednim czasie i wyniki są stabilne, to właśnie wdrożyłeś model na produkcję.
Możesz cieszyć się z każdego uratowanego klienta
Jeśli na wszystkie wcześniejsze pytania odpowiedziałeś już sobie i zrealizowałeś wszystkie opisane kroki, to gratulacje. Udało ci się zbudować system prognozujący to, czy twój klient będzie chciał zrezygnować z Twoich usług.
Teraz już tylko od Twoich działań biznesowych zależy czy zatrzymasz takiego klienta przy sobie. Oby sztuczna inteligencja pozwoliła Ci cieszyć się z każdego klienta, którego odejściu uda się w porę zapobiec.
Barbara Sobkowiak,
Data Science Manager,
Britenet.