Analiza estymacji prawdopodobieństwa - czyli ocena jakości klasyfikacji (część 9)

Właśnie czytasz część #9 cyklu "Ocena jakości klasyfikacji" - a to oznacza, że posiadasz już sporą wiedzę - i masz ochotę na więcej - gratuluję! 🙂

Korelacja rangowa ... czy to wystarczy?

W częściach 1-8 skupiałem się na analizie korelacji rangowej. W tym przypadku korelacja rangowa odpowiada na pytanie "jak dobrze uporządkowany jest target w zależności od oceny modelem" - tzn. jak silnie monotoniczna jest zależności pomiędzy score i targetem? Innymi słowy - czy wraz ze wzrostem score, rośnie frakcja True-Positive, i jak silny jest to wzrost? Krzywa lift, czy Captured Response, doskonale to obrazują. Jednak to nie wszystko ... W wielu przypadkach niezbędne jest prawidłowe oszacowanie prawdopodobieństwa z jakim zaobserwujemy klasę pozytywną.

Tarcze estymacji prawdopodobieństwa - schemat

Ocena estymacji prawdopodobieństwa - co to?

Załóżmy, że określoną grupę klientów podzieliśmy na dane trenujące i uczące oraz, że na próbie uczącej przygotowaliśmy model predykcyjny szacujący prawdopodobieństwo "bycia klasą pozytywną". Przyjmijmy, że dla pewnego klienta x model zwrócił prawdopodobieństwo 0.3. W tym przypadku wskaźnik 0.3 oznacza, że np. dla 100 klientów, o tych samych cechach, spodziewamy się około 30 z "klasy pozytywnej" oraz około 70 z "klasy negatywnej". Ocena estymacji prawdopodobieństwa to weryfikacja na ile możemy ufać oszacowaniu, tutaj 30 vs 70.

W ogólności - chodzi o stwierdzenie czy estymator (czyli nasz model) jest nieobciążony (czyli wolny od błędu systematycznego), a jeżeli jest obciążony, to na ile i w jakich przypadkach. Statystyka matematyczna dostarcza szeregu różnych wskaźników wyznaczających błąd oszacowania dla zmiennej ciągłej - np. błąd średnio-kwadratowy - w tym tekście nie będę się na nich skupiał. Nasz przypadek jest mniej ogólny, a i samej weryfikacji najwygodniej dokonać "organoleptycznie" - tzn. metodą wizualną w wielu krokach 🙂

Kiedy oceniać jakość estymacji prawdopodobieństwa?

Generalnie zawsze! Często same techniki modelowania optymalizują prawdopodobieństwo - np. regresja logistyczna wykorzystująca metodę największej wiarygodności - tu konieczność badania jest oczywista. Inne metody, takie jak drzewa decyzyjne, wraz ze wzrostem drzewa, starają się zmniejszyć zmienność klas w węzłach potomkach / liściach - tu nadal możemy ocenić finalne prawdopodobieństwo - np. na bazie rozkładu klas (o ile liczności są odpowiednio duże). Zasada jest taka - ocena prawdopodobieństwa daje zawsze dodatkową cenną informację w procesie weryfikacji jakości modelu! Jest jednak kilka szczególnych przypadków, kiedy ocena poprawności prawdopodobieństwa jest absolutnie konieczna:

  • Model będzie stosowany w wyznaczaniu wartości oczekiwanych (np. oczekiwany przychód).
  • Kwestie regulacyjne / modele ryzyka kredytowego  (np. modele PD - Probability Default).
  • Modele Anti-Fraud.
  • Modele churn (np. oczekiwana wartość utracona).
  • Modele up-lift (np. efekt inkrementalny na bazie różnicy dwóch modeli) - o tym opowiemy kiedyś w szczegółach.
  • Rekomendatory na bazie "głosowania" modelami propensity (modelami skłonności do skorzystania z produktu / usługi).
  • I wiele innych ...

Tarcza prawdopodobieństwa - typowe sytuacje w praktyce

Tarcza prawdopodobieństwa - nazwa moja, nie szukajcie po Wikipedii 🙂 - to ciekawe i proste narzędzie obrazujące schematycznie (w dalszej części również praktycznie) typowe przypadki, na jakie z pewnością natkniecie się w pracy z rzeczywistymi modelami. Czasami jeden obraz wart jest znacznie więcej niż potok słów - zatem zaczynamy.

Silny model - schemat

Tarcze estymacji prawdopodobieństwa - model słaby

  • Przypadek 1: Silny model z dobrą estymacją prawdopodobieństwa

Schemat obrazuje sytuację, kiedy model trafia "w punkt" - czyli powtarzalnie i precyzyjnie odróżniany jest "cel" od reszty "tarczy". Świadczy to o wysokiej separacji klas (klasa pozytywna vs klasa negatywna), spodziewany wysoki indeks Giniego, jak też oczekiwana dobra jakość estymacji prawdopodobieństwa. Na schemacie "centrum" jest tym miejscem, w które trafia model.

Akcja: Model gotowy do wykorzystania.

  • Przypadek 2: Silny model z obciążoną estymacją prawdopodobieństwa

Tym razem schemat przedstawia model o wysokim skupieniu - czyli mamy dużą powtarzalność wyników wraz z ich skupieniem, natomiast samo skupienie jest przesunięte w stosunku do punktu środkowego. Interpretacja - mamy do czynienia z silną separacją klas (wysoki indeks Giniego), natomiast szacowanie prawdopodobieństwa obarczone jest systematycznym błędem (obciążeniem).

Akcja: Model wymaga kalibracji, może być warunkowo stosowany w sytuacjach, kiedy opieramy się wyłącznie na korelacji rangowej.

Model z siłą predykcyjną w ograniczeniu do podgrup - schemat

Tarcze estymacji prawdopodobieństwa - przypadek mieszany

  • Przypadek 1: Silny model w ograniczeniu do podgrup

Sytuacja nieco bardziej złożona. Model, jako całość, nie jest zbyt dobry, natomiast w ograniczeniu do pewnych segmentów (np. klient "młody", klient "zamożny", etc…) separacja klas jest wysoka. Niestety, w tych segmentach, estymacja prawdopodobieństwa jest obarczona błędem systematycznym, co skutkuje niską siłą modelu dla całej populacji.

Akcja: Model wymaga dalszych prac, typowo niezbędne jest przygotowanie osobnych modeli dla wskazanych segmentów, następnie połączenie ich w całość.

  • Przypadek 2: Silny model wyłącznie dla wybranych segmentów

Podobnie jak wyżej, z tą różnicą, że istnieją podgrupy, w których model traci siłę separacji klas.

Akcja: Model wymaga dalszych prac, być może został popełniony błąd w kodzie i/lub w przetwarzaniu danych. Sprawdź cały eksperyment.

Słaby model - schemat

Tarcze estymacji prawdopodobieństwa - model słaby

"Model strzela na oślep", trafienia są nieprzewidywalne, nie ma skupienia. Interpretacja - brak separacji klas, indeks Giniego bardzo niski. Samo prawdopodobieństwo może być nieobciążone, tzn. średnia może zgadzać się z oczekiwanym a-priori.

Akcja: Zdecydowanie sytuacja negatywna, należy powtórzyć całość eksperymentu - prawdopodobnie błąd w kodzie, błąd w danych, błąd w założeniach, ewentualnie (choć mniej prawdopodobne) zmienne nie posiadają siły predykcyjnej.

Tarcza prawdopodobieństwa - praktyczna realizacja

Wizualizacja tarczy, aby ocena mogła być dokonana wiarygodnie,  wymaga odpowiedniej liczby "strzałów". Proponuję stosować wykres zawierający 100 punktów, każdy dla osobnego centyla score (przy założeniu, że mamy odpowiednio dużo danych wejściowych).

Kroki:

  • Dane testowe (osobno uczące) dzielimy na 100 grup, gdzie każda grupa to centyl względem rosnącej wartości szacowanego prawdopodobieństwa (score).
  • W każdej grupie wyznaczamy frakcję klasy pozytywnej.
  • W każdej grupie wyznaczamy średnie estymowane prawdopodobieństwo (średni score).
  • Wykres:
    • oś pozioma "X": frakcja klasy pozytywnej
    • oś pionowa "Y" średni score.

Praktyczna Realizacja Tarczy Prawdopodobieństwa

  • TR_i - target rate w grupie "i"
  • P_i - estymowane prawdopodobieństwo w grupie "i"

Interpretacja:

  • Model idealny znajduje się na prostej y = x (tzn. brak błędu estymacji prawdopodobieństwa).
  • Model praktycznie dobry powinien dawać wyniki "w pobliżu" prostej y = x, przy czym "wahania pod / nad prostą" powinny charakteryzować się losowością, co świadczy o braku obciążenia.
  • Przestrzeń nad prostą y = x to obszar, gdzie model zawyża prawdopodobieństwo.
  • Przestrzeń pod prostą y = x to obszar, gdzie model zaniża prawdopodobieństwo.

Typowe proces oceny jakości estymacji prawdopodobieństwa

  1. Ocena dla całej populacji: średni score vs a-priori / target rate całej populacji.
  2. Ocena dla głównych segmentów: jeśli pracujemy na rzeczywistych obiektach (np. zbiór klientów) typowo dysponujemy szeregiem łatwych w interpretacji cech, które generują naturalne segmenty - będą to np.: wiek, płeć, miejsce zamieszkania (populacja), posiadane produkty, klient zamożny, klient indywidualny, i wiele innych. Często model szacuje prawidłowe prawdopodobieństwo dla całej populacji, niestety myląc się w podgrupach.
  3. Ocena na bazie "tarczy prawdopodobieństwa":  tym razem zadajemy pytanie czy błąd estymacji zależy od wartości score? Idealna sytuacja jest tak, że nie zależy, tzn. że błąd pojawia się losowo. Score jest wypadkową szeregu zmiennych, więc pośrednio pokazujemy, że błąd zależy / nie zależy od każdej ze zmiennych osobno.

Przykłady

Przykład 1: Estymacja silnie zawyżona w segmentach wysokiego prawdopodobieństwa (wysokiej skłonności)

Tarcza Prawdopodobieństwa - Przykład 1

Przykład 2: Umiarkowane zawyżenie w segmentach niskiego prawdopodobieństwa

Tarcza Prawdopodobieństwa - Przykład 2

Przykład 3: Widoczne 3 segmenty z obciążeniem: 1. dość istotne zawyżenie, 2. umiarkowane zawyżenie, 3. umiarkowane zaniżenie

Tarcza Prawdopodobieństwa - Przykład 3

Przykład 4: Całkiem niezły model

Tarcza Prawdopodobieństwa - Przykład 4

Pozdrowienia,

Mariusz Gromada

 

Captured Response = ROC x apriori - czyli ocena jakości klasyfikacji (część 8)

W części #6 oraz części #7 cyklu "Ocena jakości klasyfikacji" przedstawiłem krzywą zysku (aka: Gain, Captured Response) oraz krzywą ROC. Dzisiaj skupię się na mało znanej, acz bardzo prostej i przydatnej, relacji pomiędzy tymi krzywymi - okazuje się bowiem, że wykresy są "niemal identyczne" 🙂

Captured Response vs ROC

Wzór łączący ROC z Captured Response

X_{cr}=Y_{roc}\times apriori+X_{roc}\times \Big(1-apriori\Big)

Y_{cr}=Y_{roc}

Geometryczne podobieństwo Captured Response i ROC

Odpowiednio spoglądając na umieszczone obok siebie wykresy ciężko odeprzeć wrażenie, że krzywe są bardzo podobne. Intuicja podpowiada, że mamy tu do czynienia z tymi samymi funkcjami, jedynie naszkicowanymi w nieco różnych układach współrzędnych.

Captured Response vs ROC

W obu przypadkach to "przestrzeń" pomiędzy modelem losowym i modelem idealnym definiuje odpowiedni układ współrzędnych, a różnica obecna w Captured Response powiązana jest z a-priori (CR jest zależna od a-priori, ROC nie zależy od a-priori). Idąc za kolejnym przeczuciem powiemy, że najprawdopodobniej dla tej samej wartości "Y" różnić się będą wartości "X" (ze względu na "ściśniecie" obecne w Captured Response).

Wzór na bazie macierzy przekształcenia liniowego - jedynie poglądowo

Uwaga: poniższe wyprowadzenie jest jedynie pomocnicze, nie stanowi wystarczającej argumentacji uzasadniającej "identyczność" krzywych Captured Response i ROC!!! Formalna argumentacja znajduje się w kolejnej sekcji.

ROC w CR - przekształcenie liniowe - wektory

Zauważmy, że wektor

\begin{bmatrix}X_{ROC}=0\\Y_{ROC}=1\end{bmatrix} przechodzi w \begin{bmatrix}X_{CR}=apriori\\Y_{CR}=1\end{bmatrix}

oraz wektor

\begin{bmatrix}X_{ROC}=1\\Y_{ROC}=1\end{bmatrix} przechodzi w \begin{bmatrix}X_{CR}=1\\Y_{CR}=1\end{bmatrix}

Zatem macierz przekształcenia liniowego przyjmuje postać (potrzeba rozwiązać prościutki układ równań):

A=\begin{bmatrix}1-apriori & apriori\\0 & 1\end{bmatrix}

Finalne przekształcenie ROC w Capture Response to:

\begin{bmatrix}1-apriori & apriori\\0 & 1\end{bmatrix}\times\begin{bmatrix}X_{ROC}\\Y_{ROC}\end{bmatrix}=\begin{bmatrix}X_{CR}\\Y_{CR}\end{bmatrix}

Wynik bardzo ciekawy - faktycznie wystarczy a-priori 🙂 Jednak to nie jest dowód, wyprowadzenie bazowało na intuicji ...

Wzór na bazie proporcji - jedynie poglądowo

Uwaga: Ponownie - poniższe wyprowadzenie jest jedynie pomocnicze, nie stanowi wystarczającej argumentacji uzasadniającej "identyczność" krzywych Captured Response i ROC!!! Formalna argumentacja znajduje się w kolejnej sekcji.

Oznaczmy punkty (wykres powyżej):

B_{cr}=\Big(X_{cr}, Y_{cr}\Big) - punkt na krzywej Captured Response

B_{roc}=\Big(X_{roc}, Y_{roc}\Big) - punkt na krzywej ROC

Podążając za "głosem wewnętrznym" 🙂 napiszemy równość

Y_{cr}=Y_{roc}

oraz równość proporcji długości odcinków

{\Large\frac{a_{cr}}{a_{cr}+b_{cr}}=\frac{a_{roc}}{a_{roc}+b_{roc}}}

To pozwoli wyprowadzić formułę dla wartość X_{cr} w zależności od współrzędnych \Big(X_{roc}, Y_{roc}\Big).

Długość odcinka: a_{roc}=X_{roc}

Długość odcinka: a_{roc}+b_{roc}=Y_{roc} (wynika z pozycji punktu C_{roc}=C_{cr}).

Przechodzimy od wyznaczenia współrzędnych punktu A_{cr} leżącego na krzywej idealnej wykresu Capture Response.

Prosta "idealna" jest opisana równaniem: y={\Large\frac{x}{apriori}} dla x mniejszych od a-priori, zatem

x=y\times apriori

I dalej współrzędne

A_{cr}=\Big(Y_{cr}\times apriori, Y_{cr}\Big)=\Big(Y_{roc}\times apriori, Y_{roc}\Big)

Zaś współrzędne

B_{cr}=\Big(X_{cr}, Y_{cr}\Big)=\Big(X_{cr}, Y_{roc}\Big)

C_{cr}=\Big(Y_{cr}, Y_{cr}\Big)=\Big(Y_{roc}, Y_{roc}\Big)

W tej chwili przystępujemy do wyznaczenia długości odcinków

Długość odcinka: a_{cr}=X_{cr}-Y_{roc}\times apriori

Długość odcinka: a_{cr}+b_{cr}=Y_{roc}-Y_{roc}\times apriori=Y_{roc}\Big(1-apriori\Big)

Kilka ostatnich kroków

{\Large\frac{a_{cr}}{a_{cr}+b_{cr}}=\frac{a_{roc}}{a_{roc}+b_{roc}}}

{\Large\frac{X_{cr}-Y_{roc}\times apriori}{Y_{roc}\Big(1-apriori\Big)}=\frac{X_{roc}}{Y_{roc}}}

Mnożymy przez Y_{roc}

{\Large\frac{X_{cr}-Y_{roc}\times apriori}{1-aprior}}=X_{roc}

X_{cr}-Y_{roc}\times apriori=X_{roc}\times \Big(1-apriori\Big)

I finalnie

X_{cr}=Y_{roc}\times apriori+X_{roc}\times \Big(1-apriori\Big)

Y_{cr}=Y_{roc}

Wynik identyczny - jednak to nadal nie dowód ...

Pełny dowód na bazie macierzy błędu i prawdopodobieństw

Oś "Y" w przypadku ROC to True-Positive Rate, czyli

TPR={\Large\frac{TP}{TP+FN}}={\Large\frac{TP}{Faktyczne.P}}=P(1|1)

Macierz błędu

Z powyższego bezpośrednio wynika, że

Y_{cr}=Y_{roc}

Współrzędna "X" krzywej Captured Response to kwantyl bazy, tzn. gdyby założyć, że X% bazy klasyfikujemy pozytywnie, to dotrzemy do Y% frakcji targetu - zatem X_{cr} jest rozmiarem frakcji przewidywania pozytywnego. Rozważmy poniższy rozkład oceny modelem.

True-Positive, False-Positive, True-Negative, False-Negative vs ocena modelem

Przewidywanie pozytywne składa się z frakcji TP+FP, ale

Klasyf.P=TP+FP=...

...=TPR\times Faktyczne.P+FPR\times Faktyczne.N

P(klasyf=P)=...

...=TPR\times apriori+FPR\times (1-apriori)=...

...=P(1|1)P(1)+P(1|0)P(0)

Finalnie

X_{cr}=Y_{roc}\times apriori+X_{roc}\times \Big(1-apriori\Big)

Y_{cr}=Y_{roc}

Co z tego wynika?

  • Rozumiejąc relację pomiędzy krzywą ROC a krzywą Captured Response analiza modelu jest znacznie prostsza, szczególnie jeśli korzystamy z narzędzia, które prezentuje tylko jeden wariant krzywej (często ROC). Przy małych apriori oś "X" krzywej ROC można praktycznie uznać za oś "X" krzywej Captured Response. Przy większych apriori należy intuicyjnie przesuwać "X" w prawo aby z ROC uzyskać Captured Response.
  • Gini policzone na ROC oraz na CR (pamiętając o przestrzeni pomiędzy modelem losowym i modelem idealnym) bedą sobie równe.

Przykład działania wzoru

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Captured Response

Pozdrowienia,

Mariusz Gromada

Receiver Operating Characteristic - Krzywa ROC - czyli ocena jakości klasyfikacji (część 7)

Receiver Operating Characteristic - Krzywa ROC - geneza nazwy

Termin "Krzywa ROC" wywodzi się z teorii detekcji sygnałów, której zadaniem jest odróżnienie sygnału będącego informacją (np. sygnały z maszyn / urządzeń elektronicznych, bodźce pochodzące z organizmów żywych) od wzorców przypadkowych nie zawierających informacji (szum, tło, aktywność losowa). Pierwsze wykorzystanie krzywej ROC datuję się na okres II Wojny Światowej. Po ataku na Pearl Harbor w 1941, USA zaczęły poszukiwać lepszej metody analizy sygnałów radarowych w celu zwiększenia wykrywalności Japońskich samolotów.

Receiver Operating Characteristic - Krzywa ROC - definicja

W statystyce matematycznej krzywa ROC jest graficzną reprezentacją efektywności modelu predykcyjnego poprzez wykreślenie charakterystyki jakościowej klasyfikatorów binarnych powstałych z modelu przy zastosowaniu wielu różnych punktów odcięcia. Mówiąc inaczej - każdy punkt krzywej ROC odpowiada innej macierzy błędu (zobacz tutaj) uzyskanej przez modyfikowanie "cut-off point" (zobacz tu). Im więcej różnych punktów odcięcia zbadamy, tym więcej uzyskamy punktów na krzywej ROC. Finalnie na wykres nanosimy TPR (True-Positive Rate - oś pionowa) oraz FPR (False-Positive Rate - oś pozioma).

c - punkt odcięcia

\quad c\mapsto \Big(x(c),y(c)\Big)=\Big(FPR(c),TPR(c)\Big)

Krzywa ROC - Receiver Operating Characteristic

Krzywa ROC, będąc funkcją punktu odcięcia, przedstawia zmienność TPR (miary pokrycia / wychwycenia klasy faktycznie pozytywnej) w zależności od FPR (poziomu błędu popełnianego na klasie faktycznie negatywnej). Jak zawsze chodzi o pewien kompromis, tzn. dobierając "cut-off" chcemy maksymalizować TPR "trzymając w ryzach" błąd FPR. Analiza relacji TPR(FPR) jest niezwykle przydatna, ale najpierw przypomnijmy kilka podstawowych definicji.

Krótkie przypomnienie podstawowych definicji

Macierz błędu

TPR, TNR, PPV, NPV

TPR True-Positive Rate (czyli czułość)

TPR=\frac{TP}{TP+FN}=P(pred=P|fakt=P)=

=P(pred=1|fakt=1)=P(1|1)

FPR False-Positive Rate (czyli 1-specyficzność)

FPR=\frac{FP}{FP+TN}=P(pred=P|fakt=N)=

P(pred=1|fakt=0)=P(1|0)=1-P(0|0)=1-TNR

Interpretacja ROC

ROC - Klasyfikator teoretycznie idealny + Klasyfikator losowy

Klasyfikator teoretycznie idealny reprezentowany jest przez punkt (0,1), natomiast klasyfikatory powstałe z modelu losowego "leżą" na prostej TPR=FPR.

Krzywa ROC - Interpretacja - Receiver Operating Characteristic

 

ROC - Punkt równowagi (czułość = specyficzność)

Punkt równowagi leży na przecięciu ROC z prostą TPR = 1-FPR = TNR i reprezentuje "cut-off" point, dla którego klasyfikator osiąga równowagę czułość = specyficzność.

Krzywa ROC - Punkt równowagi - Receiver Operating Characteristic

 

ROC - Współczynnik Giniego

Współczynnik Giniego to pole powierzani pomiędzy krzywą ROC dla badanego modelu oraz krzywą ROC dla modelu losowego w interpretacji procentowej do wartości 1/2 - czyli pola powierzchni dla klasyfikatora teoretycznie idealnego. Współczynnik Giniego jest doskonałą miarą jakości modelu i może być interpretowany jako % "idealności" danego modelu predykcyjnego.

Krzywa ROC - Współczynnik Giniego - Receiver Operating Characteristic

  • Im większy wskaźnik Giniego tym lepiej
  • Wartość wskaźnika Giniego nie zależy od apriori (teoretycznie), w praktyce trudniej o silny model jeśli apriori jest duże
  • Gini = 100% dla modelu teoretycznie idealnego
  • Gini = 0% dla modelu losowego

 

Pole powierzani pod krzywą ROC - AUC, AUROC

Tym razem wyznaczamy całość pola powierzchni pod wykresem ROC odnosząc wartość do analogicznego pola dla modelu idealnego - w tym przypadku pola kwadratu o boku 1. Interpretacja AUROC (Area Under the ROC) to prawdopodobieństwo, że badany model predykcyjny oceni wyżej (wartość score) losowy element klasy pozytywnej od losowego elementu klasy negatywnej.

Krzywa ROC - AUROC - Receiver Operating Characteristic

  • Im większy wskaźnik AUROC tym lepiej
  • Wartość AUROC nie zależy od apriori (teoretycznie), w praktyce trudniej o silny model jeśli apriori jest duże
  • AUROC = 100% dla modelu teoretycznie idealnego
  • AUROC = 50% dla modelu losowego
  • AUROC = 0% dla modelu idealnego klasy przeciwnej do pozytywnej

 

Ciąg dalszy nastąpi ...

Pozdrowienia,

Mariusz Gromada

Skumulowane miary siły modelu predykcyjnego - czyli ocena jakości klasyfikacji (część 6)

W części 4 cyklu "ocena jakości klasyfikacji" opisałem podstawowe statystyki w wariancie nieskumulowanym służące inspekcji modelu predykcyjnego. Nieskumulowane prawdopodobieństwo i nieskumulowany lift, choć bardzo przydatne na etapie budowy modelu (praca analityka), sprawdzają się nieco gorzej w kontaktach analityk - odbiorca biznesowy. Odbiorcę biznesowego zazwyczaj interesują informacje takie jak "do jakiej części zainteresowanych produktem dotrę?" lub "o ile skuteczniejsze jest targetowanie na bazie modelu?" (tu uwaga dla bardziej zaawansowanego czytelnika - celowo pomijam kwestie wpływu inkrementalnego - tzw. uplift będzie tematem przyszłych wpisów).

Założenia - przypomnienie

Podobnie do poprzednich część cyklu załóżmy, że rozważamy przypadek klasyfikacji binarnej (dwie klasy: "Pozytywna - 1" nazywana targetem oraz "Negatywna  - 0"). Załóżmy ponadto, że dysponujemy modelem predykcyjnym p zwracającym prawdopodobieństwo p(1|x) przynależności obserwacji x do klasy "Pozytywnej - 1" (inaczej "P od 1 pod warunkiem, że x"). I jeszcze ostatnie założenie, wyłącznie dla uproszczenia wizualizacji - dotyczy rozmiaru klasy pozytywnej - tym razem ustalmy, że jest to 5%, inaczej, że prawdopodobieństwo a-priori P(1)=0.05.

Skumulowane prawdopodobieństwo i skumulowany lift - czyli o ile skuteczniejsze jest targetowanie na bazie modelu?

Pojęcie liftu dobrze jest utożsamiać z krotnością rozumianą jako "o ile razy częściej zaobserwuję target w grupie wybranej modelem w stosunku do wyboru losowego". Interpretacja "krotnościowa" ma zastosowaniu zarówno do liftu skumulowanego i nieskumulowanego. Lift nieskumulowany powstaje na bazie obserwacji targetu w określonym przedziale estymowanego prawdopodobieństwa (np. pojedynczy centyl, pojedynczy decyl), natomiast lift skumulowany odnosi się do targetu analizowanego we wszystkich przedziałach estymowanego prawdopodobieństwa, które leżą "na lewo" od ustalonego puntu (czyli np. 20 pierwszych centyli, 2 pierwsze decyle).

Ideę liftu najlepiej obrazuje wykres prawdopodobieństwa i liftu:

  • Oś pozioma - frakcja bazy względem oceny modelem - czyli baza posortowana względem estymowanego prawdopodobieństwa (czasami mówimy również względem score) w porządku od wartości największej do najmniejszej.
  • Lewa oś pionowa - prawdopodobieństwo / target rate - częstość obserwacji targetu w określonym przedziale / przedziałach.
  • Prawa oś pionowa - lift - normalizacja do średniego target rate (dzielenie przez a-priori).

Model predykcyjny - Lift skumulowany

I tak - dla powyższego przykładu - mamy lift ponad 3 przy decyzji, że "cut-off point" umieszczamy dokładnie w 20 centylu. Ale zaraz - przecież na 10 centylu mamy lift ponad 4 - czyli lepiej? ...

Krzywa zysku aka Gain Curve lub Captured Response - czyli do jakiej części zainteresowanych produktem dotrę?

... Rozwiązaniem powyższego dylematu jest analiza krzywej zysku. Krzywa zysku łączy w sobie ideę liftu wraz z "zasięgiem" grupy. Przykładowo: z bazy 100 tys. klientów, w której 5 tys. zainteresowanych jest produktem, do kampanii wybrano 10 tys. Po realizacji komunikacji okazało się, że spośród 10 tys. zakupu dokonało 3 tys. klientów. I dochodzimy łatwo do definicji zasięgu jako pokrycia 3 tys. z 5 tys, czyli dotarcie do targetu na poziomie 3/5 = 60%.

Ideę zasięgu bardzo dobrze obrazuje wykres krzywej zysku:

  • Oś pozioma - tak jak dla liftu - frakcja bazy względem oceny modelem.
  • Oś pionowa - zasięg

Model predykcyjny - Krzywa zysku

Analizując powyższy przykład - zasięg na 10% to około 45%, na 20% to już około 65% - czyli "chyba warto się pochylić" 🙂 ... cdn ...

Pozdrowienia,

Mariusz Gromada

[aleBank.pl] Raport Specjalny ANALYTICS w Biznesie Bankowym: Pęd do wiedzy

Pęd do wiedzy - aleBank.pl

Serdecznie zapraszam do zapoznania się z "Raportem Specjalnym ANALYTICS w Biznesie Bankowym: Pęd do wiedzy" przygotowanym przez Miesięcznik Finansowy Bank, gdzie miałem przyjemność podzielenia się kilkoma spostrzeżeniami z zakresu Business Intelligence.

"Człowiek i maszyna

[...] Business Intelligence to znacznie więcej niż możliwość raportowania wyników/faktów z przeszłości, dziś to przede wszystkim przewidywanie, prognozowanie i wspieranie działań przyszłych. W czasach gdy sukces biznesowy jest coraz bardziej zależny od szybkości i elastyczności w dostosowywaniu się do zmian, istotnym aspektem jest trafne identyfikowanie i wykorzystywanie/mitygowanie pojawiających się szans i ryzyk. Jest to szczególnie prawdziwe w odniesieniu do bankowości, gdzie procesy decyzyjne niemal w całości opierają się na pogłębionej analizie danych. Business Intelligence to zaawansowane narzędzia i technologie, ale również utalentowani ludzie z wielką pasją – taka kombinacja to klucz, to gwarant, że wydobycie praktycznych informacji z dużych wolumenów danych wewnętrznych i zewnętrznych, nieustannie wzrastających, stanie się osiągalne. Możliwości są nawet większe, obecnie wielką szansą staje się ekstrakcja wiedzy w czasie rzeczywistym, przy jednoczesnym wsparciu ogromnej liczby różnych formatów danych. Obecne rozwiązania technologiczne sprawiają, że jest to wykonalne i akceptowalne kosztowo. [...]"

Mariusz Gromada

 

Raport Specjalny ANALYTICS w Biznesie Bankowym: Pęd do wiedzy

Raport Specjalny ANALYTICS w Biznesie Bankowym: Pęd do wiedzy

Pozdrowienia,

Mariusz Gromada

 

 

 

Strategie doboru punktów odcięcia - czyli ocena jakości klasyfikacji (część 5)

Cut-off point

W części 4 cyklu "Ocena jakości klasyfikacji" przedstawiłem podstawowe statystyki prawdopodobieństwa oraz liftu (w wersji nieskumulowanej) służące do inspekcji modelu predykcyjnego w zakresie siły separacji klas. W części 3 skupiłem się na koncepcji punktu odcięcia (cut-off point), który model predykcyjny (z ciągłą zmienną odpowiedzi) transformuje w klasyfikator. Dziś przybliżę strategie doboru punktu odcięcia, celowo pomijając aspekty techniczne związane z analityką predykcyjną - tym zajmiemy się w kolejnym odcinku (opisując skumulowane prawdopodobieństwo, skumulowany lift, krzywą zysku aka Gain Curve lub Captured Response oraz krzywą ROC).

Dobór punktu odcięcia - strategie (z którymi miałem do czynienia w pracy zawodowej)

  • Całkowicie biznesowa - metoda najprostsza, nadal popularna, jednak coraz rzadziej stosowana.
  • Wyłącznie analityczna - rzadko stosowane w biznesie, częściej widoczna pracach / badaniach naukowych.
  • Hybryda powyższych - wariant dziś preferowany przez różne jednostki CRM.

Dobór całkowicie biznesowy

Nadal częsta praktyka, która przy wnikliwej analizie okazuje się nie być najbardziej optymalną. W strategii "całkowicie biznesowej" dobór punktu odcięcia jest pochodną zasobów (np. dostępność / pojemność kanałów komunikacji). Przykładowo - współpracujemy z call center, które miesięcznie może zadzwonić do 100 tys. Klientów. W takiej sytuacji dosyć naturalnie powstaje potrzeba wybrania "100 tys. najlepszych Klientów" (najlepszych do danej akcji). Model predykcyjny posłuży więc do "posortowania" Klientów, a punkt odcięcia będzie zależny od wskazanej oczekiwanej liczby 100 tys. Problem ze strategią całkowicie biznesową polega na tym, że "najlepszy" mylony jest z "dobry". Dodatkowo zdarza się, że siła modelu jest błędnie interpretowana jako zdolność do znalezienie większej liczby "dobrych" klientów - w rzeczywistości jest na odwrót - im lepszy model, tym mniejsze optymalne bazy. Równie istotna kwestia to skąd się właściwie wzięła liczba 100 tys?

Dobór wyłącznie analityczny

Dobór wyłącznie analityczny polega na optymalizacji błędów klasyfikacji - w nieco bardziej zgeneralizowanym podejściu optymalizuje się funkcję kosztu błędów (najczęściej jeśli koszty są mocno asymetryczne). Podejście analityczne jest zupełnie poprawna i uzasadnione, jednak w biznesie prawie nieobecne ze względu na brak uwzględnionego aspektu celu biznesowego, priorytetów, zasobów, itp.

Dobór analityczno-biznesowy

Dobór analityczno-biznesowy (jako połączenie powyższych strategii) najlepiej sprawdza się w sytuacji analizy szerszego portfela produktów (tzn. bazy i cut-off’y dobierane do różnych działań stanowią element realizacji szerszej polityki CRM). Zaczynamy od celów biznesowych, priorytetów, analizy zasobów, pojemności kanałów. Następnie weryfikujemy Klientów, ich potrzeby w kontekście możliwie wielu produktów. Ostatecznie - w wyniku kilku iteracji - dążymy do "zmapowania" segmentów Klientów na cele i zasoby, zawsze koniecznie modyfikując obie strony równania. Jest to trudne i wielowymiarowe zadanie, zadanie zawsze "niedokończone", coraz bardziej opierające się na różnego rodzaju eksperymentach ... ale o tym w kolejnych częściach cyklu ...

Pozdrowienia,

Mariusz Gromada

Danych trzeba używać - Wywiad dla Miesięcznika Finansowego Bank

Miesięcznik Finansowy Bank

W najbliższym wydaniu Miesięcznika Finansowego Bank będą miał okazję odpowiedzieć na kilka bardzo ciekawych pytań z obszaru BI oraz Customer Intelligence. Część wywiadu jest już dostępna pod poniższym linkiem. Serdecznie zapraszam 🙂

"Danych trzeba używać

W jaki sposób dbać o jakość danych niezbędnych do przeprowadzania wiarygodnych analiz? Mariusz Gromada, kierownik Zespołu Analitycznego Wsparcia Kampanii, Departament Zarządzania Kampaniami w Banku Millennium.

Dosyć często miałem okazję odpowiadać na to pytanie i zawsze moją główną radą było, aby danych używać. Wykorzystywanie danych, to pierwszy krok do identyfikacji nieprawidłowości w danych. Nie istnieje system informatyczny bez błędów, hurtowania danych bez błędów w danych – natomiast z pewnością istnieją nieujawnione błędy, których ujawnienie to sytuacja pozytywna. Największym ryzykiem dla jakości danych w środowisku BI jest wytworzenie w organizacji dodatkowego obiegu informacji, bazującego na alternatywnych źródłach. Analogicznie - największym wyzwaniem dla projektów wdrożenia hurtowni danych jest skuteczne zastąpienie już funkcjonującego obiegu informacji, co jest bezpośrednią konsekwencją braku zaufania do nowych źródeł – i koło się zamyka…

Jak temu zaradzić? Kluczowe jest, aby jednostka odpowiedzialna za obszar BI działała w sposób szybki, elastyczny, bardzo pro-biznesowy, wychodziła naprzeciw potrzebom użytkowników z różnym poziomem wiedzy technicznej i biznesowej. Jednostka BI musi w pełni akceptować, że jakość danych jest inaczej rozumiana przez odbiorców biznesowych (aktualność/terminowość, poprawność/kompletność, czytelność, szybkość/dostępność, spójność) oraz przez partnerów IT (główny nacisk na integralny i znormalizowany model danych, elastyczność struktur danych, wydajność rozwiązania). Ponadto jednostka BI musi odpowiednio reagować na zgłoszone błędy, skutecznie i szybko je poprawiając. Nie ma nic gorszego dla procesu poprawy jakości danych niż bardzo długi okres rozwiązywania problemu. Taka sytuacja powoduje irytację odbiorców, skutecznie ich zniechęcając do zgłaszania kolejnych błędów w przyszłości, oraz motywując do wytworzenie alternatywnego obiegu informacji.

Analiza błędów i ich naprawa musi być realizowana z naciskiem na architekturę aplikacji IT (łącznie z usługami integrującymi się w czasie rzeczywistym), w tym weryfikację i eliminację redundancji danych, stosowanie kontroli i walidacji zarówno na etapie wprowadzania danych, jak też na styku aplikacji i systemów. To są podstawy, których spełnienie jest niezbędne, aby zacząć rozważać wdrażanie systemów kontroli jakości danych. Bardzo dużą część błędów można wykryć już na etapie pozyskiwania danych, w sposób automatyczny, poprzez odpowiednie zaprojektowanie i użycie scenariuszy kontrolnych.

Scenariusze kontrolne opisują te sytuacje, co do których przewidujemy, że mogą się wydarzyć. Dotyczy to zarówno technicznych aspektów jakości, takich jak spójność/integralność danych, poprawność formatu pól, sumy kontrolne, wartości ekstremalne, jak i niektórych kwestii biznesowych – np.: reguły eksperckie, rozkłady wartości, trendy, czy odchylenia od zdefiniowanych wzorców. Rynek oferuje wiele rozwiązań klasy Data Quality, w równie wielu przypadkach organizacje wytwarzają takie rozwiązania samodzielnie."

Mariusz Gromada

Danych trzeba używać - www.alebank.pl

Pozdrowienia,

Mariusz Gromada

Model predykcyjny i siła separacji klas - czyli ocena jakości klasyfikacji (część 4)

Ze statystyk odwiedzin wynika, że cykl "Ocena jakości klasyfikacji" cieszy się Waszym zainteresowaniem - zatem wracam do tej tematyki. Dziś przedstawię wstęp do analizy jakości modeli predykcyjnych, skupiając się na jednym tylko aspekcie jakości - tzn. na sile modelu w kontekście separacji klas. Zapraszam 🙂

Jakość modelu predykcyjnego

Matematyka dostarcza wielu różnych miar służących ocenie siły modelu predykcyjnego. Różne miary są często ze sobą mocno powiązane, i choć przedstawiają bardzo podobne informacje, umożliwiają spojrzenie na zagadnienie z innych perspektyw. Przez jakość modelu predykcyjnego rozumiemy typowo ocenę jakości w trzech obszarach:

  1. Analiza siły separacji klas - czyli jak dalece wskazania modelu są w stanie "rozdzielić" faktycznie różne klasy pozytywny i negatywne;
  2. Analiza jakość estymacji prawdopodobieństwa - bardzo ważne w sytuacjach wymagających oceny wartości oczekiwanych, tzn. poszukujemy wszelkiego rodzaju obciążeń (inaczej - błędów systematycznych);
  3. Analiza stabilności w czasie - kluczowy aspekt rzutujący na możliwość wykorzystywania modelu w faktycznych przyszłych działaniach.

Wszystkie wymienione obszary są ze sobą powiązane terminem prawdopodobieństwa, za pomocą którego można wyrazić zarówno siłę separacji, jak też stabilność w czasie.

Założenia

Podobnie do poprzednich część cyklu załóżmy, że rozważamy przypadek klasyfikacji binarnej (dwie klasy: "Pozytywna - 1" oraz "Negatywna  - 0"). Załóżmy ponadto, że dysponujemy modelem predykcyjnym p zwracającym prawdopodobieństwo p(1|x) przynależności obserwacji x do klasy "Pozytywnej  -1" (inaczej "P od 1 pod warunkiem, że x"). I jeszcze ostatnie założenie, wyłącznie dla uproszczenia wizualizacji i obliczeń - dotyczy rozmiaru klasy pozytywnej - ustalmy, że jej rozmiar to 20%, inaczej, że prawdopodobieństwo a-priori P(1)=0.2.

Model predykcyjny a siła separacji klas - nieskumulowane prawdopodobieństwo

Poniżej przedstawiamy różne przypadki wizualnej oceny siły modelu. Interpretacja zamieszczonych wykresów jest następująca:

  • Oś pozioma reprezentuje kolejne segmenty populacji, tu zostały użyte decyle bazy względem zwracanej wartości prawdopodobieństwa przez model. Zatem 1 decyl agreguje 10% populacji z największym estymowanym prawdopodobieństwem, kolejne decyle - analogicznie.
  • Oś pionowa przedstawia prawdopodobieństwo warunkowe, że obserwacja z danego segmentu populacji (tutaj decyl bazy) faktycznie pochodzi z klasy "Pozytywnej - 1".

Model - nieskumulowane prawdopodobieństwo - brak separacji klas

Naturalnym jest, że model predykcyjny posiadający dodatnią siłę separacji klas, wykorzystany do podziału populacji na segmenty względem wartości malejącej (tutaj 10 decyli), powinien wpłynąć na faktyczną częstość obserwacji klasy "Pozytywnej - 1". Tzn. w pierwszych decylach powinniśmy widzieć więcej klasy "1" - kolejne przykłady właśnie to obrazują.

Model - nieskumulowane prawdopodobieństwo - niska separacja klas

Model - nieskumulowane prawdopodobieństwo - wysoka separacja klas

Dla każdego przypadku klasyfikacji istnieje również teoretyczny model idealny, z możliwie najwyższą siłą separacji klas. Tak model się "nie myli", co obrazuje poniższy schemat.

Model - nieskumulowane prawdopodobieństwo - maksymalna separacja klas

Inne "nietypowe" przypadki (jednak czasami spotykane w praktyce) to modele z ujemną korelacją w stosunku do targetu.

Model - nieskumulowane prawdopodobieństwo - ujemna separacja klasOstatecznie możliwy jest również wariant "mieszany", obserwowany często po długim czasie wykorzystywania modelu, bez jego aktualizacji, w wyniku zmian w danych, błędów w danych, zmian definicji klas (tzw, targetu), itp.

model_wariant_mieszany

Model predykcyjny a siła separacji klas - nieskumulowany lift

Lift jest normalizacją oceny prawdopodobieństwa do rozmiaru klasy pozytywnej, czyli do rozmiaru reprezentowanego przez prawdopodobieństwo a-priori P(1). Lift powstaje przez podzielenie wartości prawdopodobieństwa właściwej dla segmentu przez prawdopodobieństwo a-priori. W ten sposób powstaje naturalna interpretacja liftu, jako krotności w stosunku do modelu losowego (czyli modeli bez separacji klas):

  • lift < 1 - mniejsza częstość "klasy 1" niż średnio w populacji
  • lift = 1 - częstość "klasy 1" na średnim poziomie dla populacji
  • lift > 1 - większa częstość "klasy 1" niż średnio w populacji

Poniżej prezentacja graficzna

Model - nieskumulowany lift - brak separacji klas

Model - nieskumulowany lift - niska separacja klas

Model - nieskumulowany lift - wysoka separacja klas

Model - nieskumulowany lift - maksymalna separacja klas

Model - nieskumulowany lift - ujemna separacja klas

model_lift_wariant_mieszany

Pozdrowienia,

Mariusz Gromada

 

 

Model predykcyjny i punkt odcięcia (cut-off point) - czyli ocena jakości klasyfikacji (część 3)

W poprzednich częściach omówiliśmy sposób tworzenia macierzy błędu oraz podstawowe miary oceny jakości klasyfikacji: czułość (TPR), specyficzność (TNR), precyzję przewidywania pozytywnego (PPV), precyzję przewidywania negatywnego (NPV). Opisane miary określone są dla klasyfikatora binarnego (klasyfikacja pozytywna bądź negatywna), jednak w praktyce najczęściej stosuje się modele predykcyjne z ciągłą zmienną odpowiedzi (np. estymator prawdopodobieństwa skorzystania z produktu, gdzie wynikiem działania modelu jest wartość z przedziału [0, 1] interpretowana właśnie jako wspomniane prawdopodobieństwo określane również skłonnością).

Model predykcyjny

Dla lepszego zrozumienia załóżmy, że analizujemy bazę n-klientów oznaczonych odpowiednio x_1, x_2, \ldots, x_n. Model predykcyjny to np. funkcja (estymator) zwracająca dla każdego klienta właściwe dla niego prawdopodobieństwo zakupienia produktu - oznaczmy więc fakt zakupienia produktu klasą pozytywną "1". Teraz możemy podać bardziej formalne określenie - zatem model predykcyjny to estymator prawdopodobieństwa warunkowego p(1|x_i), że wystąpi zakup produktu (klasa "1"), pod warunkiem, że zaobserwujemy cechy klienta x_i.

p(1| \cdot ) : \{x_1, x_2, \ldots, x_n\} \to [0;1]

x_i\mapsto p(1| x_i ) \in [0;1]

Obserwacja cech klienta, a nie samego klienta, jest tu niezwykle istotna. Mianowicie danego klienta mamy dokładnie jednego, natomiast klientów o tych samych / podobnych cechach (np. miejsce zamieszkania, wiek, itp.) możemy posiadać wielu, co dalej umożliwia wnioskowanie indukcyjne, a w wyniku otrzymanie upragnionego modelu 🙂 .

Segment wysokiej skłonności

Typowo mniejszość klientów charakteryzuje się "wysoką" skłonnością, natomiast "średnia" i "niska" skłonność jest przypisywana do znacznie większej części bazy. Łatwo to uzasadnić - zazwyczaj w określonym okresie czasu produkt kupuje maksymalnie kilka procent bazy klientów. Jeśli model predykcyjny posiada faktyczną wartość predykcyjną, wysokie prawdopodobieństwo przypisze do relatywnie niewielkiej części klientów. Idąc dalej - im lepszy model, tym segment o wysokiej skłonności jest mniejszy i bliższy rozmiarem do oszacowania pochodzącego ze średniej sprzedaży mierzonej dla całej analizowanej bazy klientów (tzw. oszacowanie a-priori).

Model predykcyjny i punkt odcięcia

Punkt odcięcia (cut-off point)

Zadaniem punktu odcięcia jest stworzenie na bazie ciągłej zmiennej odpowiedzi (np. szacowanego prawdopodobieństwa) segmentów (klas) - dla uproszczenia załóżmy, że dwóch (jeden punkt odcięcia). Oznaczmy przez p_0 \in [0;1] punkt rozgraniczający segment wysokiej skłonności od segmentów średniej i niskiej skłonności. Jeśli szacowane prawdopodobieństwo p(1|x_i) \geq p_0 klientowi x_i przypiszemy klasę pozytywną "1", w przeciwnym wypadku klientowi przypisujemy klasę negatywną "0".

W powyższy sposób z "ciągłego" modelu predykcyjnego otrzymaliśmy klasyfikator binarny - co, w zestawieniu z faktycznymi zdarzeniami zakupu, umożliwia utworzenie macierzy błędu i wyznaczenie wszystkich istotnych miar oceny jakości dokonanej klasyfikacji.

Ale jak dobrać punkt odcięcia? O tym w następnej części 🙂

Pozdrowienia,

Mariusz Gromada

Relacja z IV Konferencji Customer Intelligence

Konferencja Customer Intelligence

W dniach 14-15 października odbyła się IV Konferencja Customer Intelligence organizowana przez Blue Business Media. Miałem przyjemność uczestniczyć w Konferencji w roli prelegenta przybliżając obszar "Skutecznej operacjonalizacji środowiska analitycznego - czyli powtarzalnego i efektywnego procesu tworzenia oraz wdrażania modeli predykcyjnych". Prezentacja skupiała się na poniższych aspektach:

  • Z jakich komponentów powinno składać się dojrzałe środowisko analityczne
  • Jak integrować środowisko analityczne z systemem klasy Campaign Management
  • Jak efektywnie budować, wdrażać i monitorować jakość modeli predykcyjnych
  • Jak mierzyć wartość biznesową płynącą z wykorzystania środowiska analitycznego

Prelekcja spotkała się z dobrym odbiorem, co mnie niezwykle cieszy 🙂 . Zapraszam do zapoznania się z relacją z wydarzenia!

Pozdrawiam,

Mariusz Gromada