Straciłeś klienta? Sztuczna inteligencja mogła pomóc to przewidzieć

Komentarze ekspertów / Technologie i innowacje

Ostatni rok w gospodarce wpłynął na zmianę wielu zachowań wśród konsumentów. Jeszcze rok lub dwa lata temu firmy bały się utraty pracowników – dziś obawiają się utraty klientów. Ta sytuacja dotyczy również sektorów bankowego i finansowego, które zaczęły mierzyć się ze wzmożoną liczbą odejść usługobiorców. Można to jednak przewidzieć, wykorzystując sztuczną inteligencję. Jak sprawić, aby wskazywała nam, który klient będzie chciał zrezygnować z naszych usług? Należy odpowiedzieć na kilka poniższych pytań, które pozwolą przejść przez proces przygotowania modeli prognozujących odejścia klientów ‒ pisze Barbara Sobkowiak, Data Science Manager, Britenet.

nowe technologie, bank, klient
Źródło: Britenet

Ostatni rok w gospodarce wpłynął na zmianę wielu zachowań wśród konsumentów. Jeszcze rok lub dwa lata temu firmy bały się utraty pracowników – dziś obawiają się utraty klientów. Ta sytuacja dotyczy również sektorów bankowego i finansowego, które zaczęły mierzyć się ze wzmożoną liczbą odejść usługobiorców. Można to jednak przewidzieć, wykorzystując sztuczną inteligencję. Jak sprawić, aby wskazywała nam, który klient będzie chciał zrezygnować z naszych usług? Należy odpowiedzieć na kilka poniższych pytań, które pozwolą przejść przez proces przygotowania modeli prognozujących odejścia klientów ‒ pisze Barbara Sobkowiak, Data Science Manager, Britenet.

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.

Kreatywność Feature Engineering, czyli tworzenie nowych zmiennych jest sztuką. Trudno powiedzieć komuś, kto dopiero zaczyna swoją przygodę z Data Science jak tworzyć takie zmienne. Tutaj właśnie potrzebna jest kreatywność i wiedza domenowa. Proces doboru danych nie jest prosty i nie podlega ścisłym regułom. Właśnie wtedy należy zastanowić się, co może być pomocne, a co nie. Czy informacja o liczbie dni od ostatniej kampanii klienta pomoże w wykrywaniu potencjalnego churna, a może lepiej sprawdzi się zmienna dotycząca opiekuna klienta? A być może nie jest istotna liczba dni od ostatniej kampanii, tylko liczba tygodni albo liczba dni, ale roboczych? Dodatkowo dane, z których korzystają eksperci Data Science zazwyczaj nie są idealne co może negatywnie wpływać na model. Wówczas trzeba rozwiązać ten problem albo od strony danych, albo algorytmu. Kreatywność przydaje się również wtedy, kiedy trzeba obejść niestandardowe problemy, kiedy zwykły XGBoost już nie wystarczy. Wówczas należy wykorzystać inne metody, czasem połączyć kilka w jeden algorytm, a w innej sytuacji przetestować wiele rozwiązań, aby znaleźć to właściwe. W Data Science zazwyczaj nie ma utartych szlaków, więc trzeba za każdym razem znajdować nowe najlepiej pasujące rozwiązania. Umiejętności miękkie pojawiają się w różnych momentach życia Data Scientista. Ich rozwój trwa cały czas, nie wystarczy kurs na jednej z popularnych platform, jak Udemy i czy Courser. Kompetencje techniczne i miękkie są naczyniami połączonymi. Każde z nich trzeba sukcesywnie napełniać, aby rozwój był zbalansowany. Przychodzą one wraz z ogólnym wzrostem doświadczenia i ważne jest, aby zwracać na nie uwagę, szlifować i trenować. Nie mniej istotne jest również, aby firmy zaczęły zwracać uwagę na poziom różnych kompetencji swoich pracowników i wspierały ich w jego podnoszeniu. Na nic zda nam się dobry model, jeśli nikt nie będzie potrafił wytłumaczyć jak działa, czy odpowiada na potrzeby biznesu oraz co tak naprawdę oznaczają jego wyniki? Zwłaszcza kiedy rynek finansów i bankowości podlega wielu regulacjom. Czas, aby Data Scientist był człowiekiem, do którego można mówić nie tylko nazwami algorytmów. Barbara Sobkowiak, Data Science Manager, Britenet Sp. z o.o.

Barbara Sobkowiak,

Data Science Manager,

Britenet.

Źródło: aleBank.pl
Udostępnij artykuł: