Standaryzacja zmiennej losowej / Standaryzacja funkcji gęstości

Standaryzacja zmiennej losowej $X$ to proces jej „normalizacji”, którego wynikiem jest taka zmienna losowa $Z$, że

$$\text{E}Z=0$$

$$\text{Var}(Z)=1$$

Standaryzację łatwo wyobrazić sobie jako działanie, które obywa się w dwóch krokach:

  1. adekwatne „przesunięcie” zmiennej – tu chodzi o uzyskanie zerowej miary położenia, którą jest wartość oczekiwana (wartość średnia) zmiennej
  2. odpowiednia „zmiana skali wartości” zmiennej – w tym przypadku „poprawiamy” miarę rozproszenia, którą jest wariancja.

Standaryzacja Z: jeśli X jest taką zmienną losową, że

Continue reading

Prelekcja wygłoszona w dniu 25.04.2017 podczas Konferencji Big Data – Bigger opportunities – zapraszam.

Omówione zagadnienia:

  • Analityka Predykcyjna
  • Model Predykcyjny
  • Confusion Matrix / Macierz błędu
  • Strategie doboru punktu odcięcia
  • Ocena jakości klasyfikacji
  • Krzywa zysku
  • Krzywa Lift
  • Krzywa ROC i wskaźnik Giniego
  • Krzywa Zysku vs ROC – równoważność?
  • Modele teoretycznie idealne

Odczarowujemy modele predykcyjne

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Wartość oczekiwana dla klasy pozytywnej

W trakcie minionej nocy, około godziny 02:00, miałem nagły przebłysk 🙂 Jakoś tak, nie wiem dlaczego, przypomniałem sobie pewną zależność dla wartości oczekiwanej zmiennej losowej o wartościach nieujemnych. Zdałem sobie sprawę, że na tej podstawie, jestem w stanie opracować twierdzenie dotyczące wskaźnika Giniego (dla modelu predykcyjnego), dające elegancką postać oraz łatwe narzędzie jego estymacji. Wzór, który wyprowadziłem, bazuje na wartości oczekiwanej, dającej się z powodzeniem przybliżyć średnią (np. w SQL). Zaczynamy część #19 cyklu „Ocena jakości klasyfikacji”, jest to „hardcorowy” wpis z serii „Tips & Tricks na krzywych” 🙂 Zapraszam!

Zmienna losowa reprezentująca rząd kwantyla (pozycję) elementu w populacji

  • Niech będzie dana zmienna losowa $Q\in[0;1]$, której wartość reprezentuje rząd kwantyla odpowiadający danemu elementowi, gdzie porządek jest dany malejącą oceną modelem. Inaczej – $Q$ to frakcja bazy.
  • Niech $y\in\{0,1\}$ oznacza klasę faktyczną.
  • Rozważmy zmienne losowe: $Q|y=1$ oraz $Q|y=0$.
  • W częściach #13 oraz #14 wykazałem, że zmienne $Q|y=1$ oraz $Q|y=0$ są opisane funkcjami gęstości podanymi przez: lifty nieskumulowane odpowiednio dla klasy „1” oraz klasy „0”.
  • Również w częściach #13 oraz #14 wykazałem, że zmienne $Q|y=1$ oraz $Q|y=0$ są opisane dystrybuantami podanymi przez: odpowiednio TPR dla klasy „1” oraz TNR dla klasy „0” (tam te funkcje nazywałem Captured Response).
  • W części #15 wykazałem, że wskaźniki Giniego, zdefiniowane osobno dla klasy „1” oraz klasy „0”, są sobie równe – grafika poniżej.

Równość wskaźników Giniego

  • Również w części #15 pokazałem, że

$$Gini=\frac{2G_1}{1-apriori}=\frac{2G_0}{apriori}$$

  • Z powyższego, po drobnych przekształceniach

$$G_1=\frac{(1-apriori)\times Gini}{2}$$

$$G_0=\frac{apriori\times Gini}{2}$$

Wartość oczekiwana zmienne losowej o wartościach nieujemnych

Poniższą zależność pamiętam z analizy przeżycia, gdzie średnią długość przeżycia liczono jako całkę pod funkcją przeżycia 🙂 Każda funkcja przeżycia ma postać $S(t)=1-F(t)$, gdzie $F$ to pewna dystrybuanta.

Twierdzenie: Jeśli zmienna losowa $X$, o ciągłym rozkładzie, przyjmuje wartości nieujemne to:

$$EX=\displaystyle\int_0^\infty P(X\geq x)dx$$

Zakładając, że $F$ jest dystrybuantą zmiennej $X$, bazując na ciągłości rozkładu, możemy zapisać

$$EX=\displaystyle\int_0^\infty \Big(1-F(x)\Big)dx$$

W takim przypadku wartość oczekiwana to pole powierzchni „nad” dystrybuantą ograniczone prostą o wartości 1.

Wskaźniki Giniego na bazie $E(Q|y=1)$

Załóżmy, że $Q|y=1$ ma rozkład ciągły, wtedy

$$E(Q|y=1)=\displaystyle\int_0^1\Big(1-TPR(q)\Big)dq$$

Wartość oczekiwana dla klasy pozytywnej

Ale

$$\displaystyle\int_0^1\Big(1-TPR(q)\Big)dq=\frac{1}{2}-G_1$$

Więc

$$E(Q|y=1)=\frac{1}{2}-G_1$$

Podstawiając

$$E(Q|y=1)=\frac{1}{2}-G_1=$$

$$=\frac{1}{2}-\frac{(1-apriori)\times Gini}{2}$$

$$E(Q|y=1)=\frac{1-(1-apriori)\times Gini}{2}$$

Przekształcając

$$2\times E(Q|y=1)=1-(1-apriori)\times Gini$$

$$(1-apriori)\times Gini=1-2\times E(Q|y=1)$$

Twierdzenie:

$$Gini=\frac{1-2\times E(Q|y=1)}{1-apriori}$$

Wow – wystarczy średni rząd kwantyla na targecie pozytywnym i apriori 🙂

Wskaźniki Giniego na bazie $E(Q|y=0)$

Załóżmy, że $Q|y=0$ ma rozkład ciągły, wtedy

$$E(Q|y=0)=\displaystyle\int_0^1\Big(1-TNR(q)\Big)dq$$

Wartość oczekiwana dla klasy negatywnej

Ale

$$\displaystyle\int_0^1\Big(1-TNR(q)\Big)dq=\frac{1}{2}+G_0$$

Więc

$$E(Q|y=0)=\frac{1}{2}+G_0$$

Podstawiając

$$E(Q|y=0)=\frac{1}{2}+G_0=$$

$$=\frac{1}{2}+\frac{apriori\times Gini}{2}$$

$$E(Q|y=0)=\frac{1+apriori\times Gini}{2}$$

Przekształcając

$$2\times E(Q|y=0)=1+apriori\times Gini$$

$$apriori\times Gini=2\times E(Q|y=0)-1$$

Twierdzenie:

$$Gini=\frac{2\times E(Q|y=0)-1}{apriori}$$

Wow – tym razem wystarczy średni rząd kwantyla na targecie negatywnym i apriori 🙂

Wniosek:

$$\frac{1-2\times E(Q|y=1)}{1-apriori}=\frac{2\times E(Q|y=0)-1}{apriori}$$

Przypadki graniczne

Gini dla modelu losowego powinien wynosić 0, a dla modelu teoretycznie idealnego oczekujemy wartości 1 – sprawdźmy.

Wartość oczekiwana dla przypadków skrajnych

Model losowy

  • $E(Q|y=1)=0.5$
  • $E(Q|y=0)=0.5$

$$Gini=\frac{1-2\times E(Q|y=1)}{1-apriori}=$$

$$=\frac{1-2\times 0.5}{1-apriori}=$$

$=\frac{0}{apriori}=0$ – jest ok 🙂

$$Gini=\frac{2\times E(Q|y=0)-1}{apriori}=$$

$$=\frac{2\times 0.5-1}{apriori}=$$

$=\frac{0}{apriori}=0$ – jest ok 🙂

Model teoretycznie idealny

  • $E(Q|y=1)=\frac{apriori}{2}$
  • $E(Q|y=0)=\frac{aprior+1}{2}$

$$Gini=\frac{1-2\times E(Q|y=1)}{1-apriori}=$$

$$=\frac{1-2\times\frac{apriori}{2}}{1-apriori}=$$

$=\frac{1-apriori}{1-apriori}=1$ – jest ok 🙂

$$Gini=\frac{2\times E(Q|y=0)-1}{apriori}=$$

$$=\frac{2\times\frac{aprior+1}{2}-1}{apriori}=$$

$=\frac{apriori+1-1}{apriori}=1$ – jest ok 🙂

Uwaga praktyczna

Jeśli model predykcyjny zwraca dużo nieunikalnych wartości, licząc rząd kwantyla, warto zastąpić go rzędem na bazie pozycji elementu – inaczej wyniki na bazie średniej mogą być nieprzewidywalne (szczególnie dla małych apriori). Wzory testowane na realnych danych 🙂

Pozdrowienia 🙂

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

TPR i FNR na bazie Liftu Skumulowanego

Część #18 cyklu „Ocena jakości klasyfikacji” to pogłębienie interpretacji krzywej Liftu Skumulowanego – mam wrażenie, że to już ostatni wpis z serii „Tips & Tricks na krzywych”.

TPR (Captured Response) i FNR na bazie Liftu Skumulowanego

Dla modelu idealnego krzywa liftu skumulowanego przyjmuje następującą postać:

$$Lift.Skum(q)=\begin{cases}\frac{1}{apriori}&\text{dla}\quad q\leq apriori\\\frac{1}{q}&\text{dla}\quad q>apriori\end{cases}$$

$q$ – kwantyl (rząd) bazy (malejąco względem oceny modelem)

Stosując technikę „przedłużania modelu idealnego”, analogicznie do zastosowanej w części #17 „PPV i FDR na bazie TPR”, tworzymy „skalę” umożliwiającą wyznaczenie TPR (True-Positive Rate) oraz FNR (False-Negative Rate).

TPR i FNR na bazie Liftu Skumulowanego

Zależności

$$TPR(q)=q\times Lift.Skum(q)=\frac{A}{B}$$

$$A=Lift.Skum(q)$$

$$B=\frac{1}{q}$$

Dowód: w części #11 „Captured Response vs Lift” pokazałem, że

$$\frac{CR(q)}{q}=Lift.Skum(q)$$

ale $CR(q)$ to to samo co $TPR(q)$ – różni się tylko nazwą 🙂

Nieco inny dowód podałem również w części #17 „PPV i FDR na bazie TPR”

$$PPV(q)=\frac{apriori\times TPR(q)}{q}$$

trochę przekształcając otrzymujemy

$$\frac{PPV(q)}{apriori}\times q=TPR(q)$$

Dalej wystarczy zauważyć, że

$$\frac{PPV(q)}{apriori}=Lift.Skum(q)$$

cbdo. 🙂

I ponownie – wydaje mi się, że analogicznie można naszkicować TNR oraz FPR – tylko tu analizując: klasyfikację do klasy negatywnej, krzywą Liftu Skumulowanego dla klasy „0” oraz „przedłużenie” modelu idealnego dla klasy „0” – wymaga sprawdzenia 🙂

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

PPV i FDR na bazie TPR - Captured Response

W części #17 cyklu „Ocena jakości klasyfikacji” wydobędę kolejne informacje z krzywej Captured Response, która, na pierwszy rzut oka, prezentuje wyłącznie TPR (True-Positive-Rate). Kontynuuję zatem serię „Tips & Tricks na krzywych”.

Prawdopodobieństwo skumulowane (PPV, PRECISION) na bazie TPR czyli Captured Response

Dla modelu idealnego krzywa Captured Response ma postać

$$Capt.Resp(q)=\begin{cases}\frac{q}{apriori}&\text{dla}\quad q\leq apriori\\1&\text{dla}\quad q>apriori\end{cases}$$

$q$ – kwantyl (rząd) bazy (malejąco względem oceny modelem)

Rozważając „przedłużenie pierwszej części” definicji na cały odcinek $[0;1]$ otrzymujemy „skalę”, na bazie której łatwo wyznaczyć PPV (Positive Predicted Value) oraz FDR (False Discovery Rate).

$$PPV=\frac{TP}{TP+FP}$$

$$FDR=\frac{FP}{TP+FP}=1-PPV$$

TPR, TNR, PPV, NPV

Zależności

$$PPV(q)=\frac{apriori\times TPR(q)}{q}$$

$$FDR(q)=1-PPV(q)=1-\frac{apriori\times TPR(q)}{q}$$

$q$ – cut-off jako kwantyl (rząd) bazy (malejąco względem oceny modelem)

PPV i FDR na bazie TPR - Captured Response

Dowód: zaczynamy od oznaczeń

  • $N=N_1+N_0$ – liczba obiektów w populacji: total, z klasy pozytywnej „1”, z klasy negatywnej „0”;
  • $q$ – cut-off (jako kwantyl – a dokładnie jego rząd – względem malejącej oceny modelem);
  • $[0,q]$ – klasyfikacja pozytywna;
  • $(q,1]$ – klasyfikacja negatywna;
  • $n_1$ – true positive;
  • $n_0$ – false positive;
  • $n=n_1+n_0$
  • $q=\frac{n}{N}$
  • $apriori=\frac{N_1}{N}$

$$PPV(q)=\frac{n_1}{n}$$

$$A=TPR(q)=\frac{n_1}{N_1}$$

$$C=\frac{q}{apriori}=\frac{n}{N}\times\frac{N}{N_1}=\frac{n}{N_1}$$

$$\frac{A}{C}=\frac{n_1}{N_1}\times\frac{N_1}{n}=\frac{n_1}{n}$$

$$\frac{A}{C}=PPV(q)$$

$$\frac{A}{C}=TPR(q)\times\frac{apriori}{q}=\frac{apriori\times TPR(q)}{q}$$

$$PPV(q)=\frac{apriori\times TPR(q)}{q}$$

cbdo. 🙂

Wydaje mi się, że analogicznie można wyznaczyć NPV – tylko tu analizując: klasyfikację do klasy negatywnej, krzywą Captured Response dla klasy „0” (TNR) oraz „przedłużenie” modelu idealnego dla klasy „0” – sprawdzimy 🙂

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

TPR vs Precision

Do napisania 16 części cyklu „Ocena jakości klasyfikacji” zainspirował mnie Kolega i dawny współpracownik! Michał – dzięki za „hint” 🙂 Dziś wskażę pewien sympatyczny punkt przecięcia, którego znajomość jest przydatna, a już z pewnością można „zaszpanować” 🙂 Wpis stanowi zdecydowane wzbogacenie serii „Tips & Tricks na krzywych”.

Krzywe Captured Response (TPR) i prawdopodobieństwo skumulowane (PPV, Precision) przecinają się w punkcie a-priori 🙂

TPR vs Precision

Dowód: zaczynamy od oznaczeń:

  • $N=N_1+N_0$ – liczba obiektów w populacji: total, z klasy pozytywnej „1”, z klasy negatywnej „0”;
  • $q$ – cut-off (jako kwantyl – a dokładnie jego rząd – względem malejącej oceny modelem);
  • $[0,q]$ – klasyfikacja pozytywna;
  • $(q,1]$ – klasyfikacja negatywna;
  • $n_1(q)$ – true positive;
  • $n_0(q)$ – false positive;
  • $n(q)=n_1(q)+n_0(q)=q\cdot N$

Wtedy

$$TPR(q)=CR_1(q)=\frac{n_1(q)}{N_1}=\frac{n_1(q)}{apriori\times N}$$

$$PPV(q)=P\big(~1~|~[0,q]~\big)=\frac{n_1(q)}{n(q)}=\frac{n_1(q)}{qN}$$

Porównując

$$PPV(q)=TPR(q)$$

$$\frac{n_1(q)}{qN}=\frac{n_1(q)}{apriori\times N}$$

Zakładając, że $n_1(q)\neq 0$

$$q=apriori$$

cbdo 🙂

Do czego „sympatyczny” punkt przecięcia może się przydać?

Znajomość punktu przecięcia może się przydać do weryfikacji poprawności analizowanych wykresów i ich spójności z założeniami. Przykładowo – jeśli analityk na jednym wykresie naniesie Captured Response wraz z modelem idealnym, następnie do wykresu doda p-ństwo skumulowane (czyli PPV), i jeśli te krzywe przetną się w innym punkcie niż „aprirori”, to gdzieś mamy błąd! Być może prezentowane wykresy przedstawiają różne modele?

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Wskaźnik Giniego dla klasy pozytywnej + Wskaźnik Giniego dla klasy negatywnej 0

Dziś zadałem sobie pytanie: jak mają się do siebie wskaźniki Giniego, gdyby je osobno zdefiniować dla klasy pozytywnej „tzn. klasy 1” oraz klasy negatywnej „tzn. klasy 0”? Odpowiedź uzyskałem, czego efektem jest 15 część cyklu „Ocena jakości klasyfikacji”. Tytuł wpisu nawiązuje do faktu, że separację dwóch klas uzyskujemy jednym (i tym) samym modelem 🙂 co poniekąd sugeruje, że … 🙂

… wskaźniki Giniego dla klasy pozytywnej i klasy negatywnej są sobie równe!

Wskaźnik Giniego dla klasy pozytywnej + Wskaźnik Giniego dla klasy negatywnej 0

$$Gini_1=\frac{G_1}{G_1+P_1}$$

$$Gini_0=\frac{G_0}{G_0+P_0}$$

$$Gini_1=Gini_0$$

Dowód:

Wykorzystując wzór na pole trójkąta zapisujemy:

$$Gini_1=\frac{G_1}{\quad\frac{1-apriori}{2}\quad}=\frac{2G_1}{1-apriori}$$

$$Gini_0=\frac{G_0}{\quad\frac{apriori}{2}\quad}=\frac{2G_0}{apriori}$$

Zauważamy, że pole $G_0$ można wyznaczyć na bazie różnicy pomiędzy polem trójkąta i polem powierzchni pod krzywą $CR_0$:

$$G_0=\frac{1}{2}-\displaystyle\int_0^1 CR_0(q)dq$$

Korzystając z zależności pomiędzy $CR_1$ oraz $CR_0$ wyprowadzonej w części 14 „Captured Response dla klasy negatywnej” przekształcamy

$$G_0=\frac{1}{2}-\displaystyle\int_0^1\bigg(\frac{q-apriori\times CR_1(q)}{1-apriori}\bigg)dq=$$

$$=\frac{1}{2}-\frac{1}{1-apriori}\displaystyle\int_0^1\bigg(q-apriori\times CR_1(q)\bigg)dq=$$

$$=\frac{1}{2}-\frac{1}{1-apriori}\Bigg(\displaystyle\int_0^1 qdq-apriori\displaystyle\int_0^1 CR_1(q)dq\Bigg)=$$

$$=\frac{1}{2}-\frac{1}{1-apriori}\Bigg[\frac{q^2}{2}\bigg|_0^1-apriori\bigg(G_1+\frac{1}{2}\bigg)\Bigg]=$$

$$=\frac{1}{2}-\frac{1}{1-apriori}\bigg(\frac{1}{2}-apriori\times G_1-\frac{apriori}{2}\bigg)$$

$$=\frac{1}{2}-\frac{1}{2(1-apriori)}+\frac{apriori\times G_1}{1-apriori}+\frac{apriori}{2(1-apriori)}=$$

$$=\frac{1-apriori}{2(1-apriori)}-\frac{1}{2(1-apriori)}+$$

$$+\frac{apriori\times 2G_1}{2(1-apriori)}+\frac{apriori}{2(1-apriori)}=$$

$$=\frac{1-apriori-1+apriori\times 2G_1+apriori}{2(1-apriori)}=$$

$$=\frac{apriori\times 2G_1}{2(1-apriori)}=$$

$$=\frac{apriori}{2}\times\frac{2G_1}{1-apriori}=$$

$$=\frac{apriori}{2}\times Gini_1$$

$$G_0=\frac{apriori}{2}\times Gini_1$$

Ale

$$Gini_0=\frac{2G_0}{apriori}=$$

$$=\frac{2}{apriori}\times G_0=\frac{2}{apriori}\times\frac{apriori}{2}\times Gini_1$$

$$Gini_0=Gini_1$$

cbdo 🙂

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Captured Response - klasa klasa pozytywna i klasa negatywna - Statystyka KS Kołmogorowa-Smirnowa

Witaj w 14 części cyklu „Ocena jakości klasyfikacji”. Dziś rozwinę wątek oszacowania separacji klas na bazie krzywej Captured Response – będzie to kolejny odcinek z serii „Tips & Tricks na krzywych”.

Statystyka KS Kołmogorowa-Smirnowa jako miara różnicy rozkładów

Rozważmy dwie rzeczywiste zmienne losowe $X_1$ i $X_2$ oraz ich dystrybuanty odpowiednio $F_{X_1}$ oraz $F_{X_2}$. Statystyką Kołmogorowa-Smirnowa dla zmiennych $X_1$ oraz $X_2$ nazywamy odległość $D\big(X_1,X_2\big)$ zdefiniowaną następująco:

$$D\big(X_1,X_2\big)=\displaystyle\sup_{x\in\mathbb{R}}\bigg|F_{X_1}(x)-F_{X_2}(x)\bigg|$$

Statystyka KS Kołmogorowa-Smirnowa

Jeśli $x$ jest badaną wartością, to odległość KS interpretujemy jako maksymalną różnicę pomiędzy rzędem kwantyla w rozkładzie pierwszym i rzędem kwantyla w rozkładzie drugimi, które to rzędy odpowiadają wspólnej wartości $x$.

Do tanga trzeba dwojga

Przy modelach predykcyjnych, dla problemu klasyfikacji binarnej, tak naprawdę dysponujemy trzema rozkładami:

  • rozkład populacji / próby względem oceny modelem;
  • rozkład klasy pozytywnej względem oceny tym samym modelem;
  • rozkład klasy negatywnej również względem oceny tym samym modelem.

W części #13 „Lift i Captured Response to gęstość i dystrybuanta tego samego rozkładu” pokazałem jak „wygląda” rozkład klasy pozytywnej. Dziś interesuje nas odległość KS rozkładu „jedynek” od rozkładu „zer”, przechodzimy więc do zdefiniowana gęstości i dystrybuanty dla klasy negatywnej.

Lift nieskumulowany dla klasy negatywnej – tzn. „klasy 0”

Załóżmy, że dana jest funkcja $Lift.Niesk_1(\Delta q)$ liftu nieskumulowanego dla klasy pozytywnej, gdzie $\Delta q$ to przedział rzędu kwantyla (w całej populacji) względem malejącej oceny modelem.

$$Lift.Niesk_0(\Delta q)=\frac{P(0|\Delta q)}{P(0)}$$

$$Lift.Niesk_0(\Delta q)=\frac{1-P(1|\Delta q)}{1-P(1)}=$$

$$=\frac{1-P(1)\frac{P(1|\Delta q)}{P(1)}}{1-P(1)}=$$

$$=\frac{1-P(1)\cdot Lift.Niesk_1(\Delta q)}{1-P(1)}$$

$$Lift.Niesk_0(\Delta q)=\frac{1-apriori\times Lift.Niesk_1(\Delta q)}{1-apriori}$$

Przykład dla pewnej funkcji liftu nieskumulowanego i apriori = 30%.

Lift nieskumulowany - klasa "1" + klasa "0"

Warto zwrócić uwagę na punkt przecięcia tych krzywych – spotykają się w tym samym miejscu, gdzie dochodzi do zrównania z krzywą dla modelu losowego. Dosyć łatwo to uzasadnić: jeśli $P(1|\Delta q^i)=apriori$ to $P(0|\Delta q^i)=1-apriori$.

Sprawdźmy jeszcze czy $Lift.Niesk_0(\Delta q)$ spełnia warunek „unormowania”.

$$\displaystyle\int_0^1 Lift.Niesk_0(q)dq=$$

$$=\displaystyle\int_0^1 \frac{1-apriori\times Lift.Niesk_1(q)}{1-apriori}dq=$$

$$=\frac{1}{1-apriori}\displaystyle\int_0^1 \bigg(1-apriori\times Lift.Niesk_1(q)\bigg)dq=$$

$$=\frac{1}{1-apriori}\bigg(\displaystyle\int_0^1 1dq-apriori\displaystyle\int_0^1Lift.Niesk_1(q)dq\bigg)=$$

$$=\frac{1}{1-apriori}(1-apriori)=1$$

$$\displaystyle\int_0^1 Lift.Niesk_0(q)dq=1$$

Captured Response dla klasy negatywnej – tzn. „klasy 0”

Załóżmy, że dana jest funkcja $CR_1(q)$ Captured Response dla klasy pozytywnej, gdzie $q$ to rząd kwantyla (w całej populacji) względem malejącej oceny modelem.

Oznaczenia:

  • $q$ – punkt, dla którego wyznaczamy wartość krzywej;
  • $N=N_1+N_0$ – liczba obserwacji: łączna, z „klasy 1”, z „klasy 0”;
  • $n=n_1+n_2=q\cdot N$ – liczba obserwacji „na lewo” od $q$: łączna, z „klasy 1”, z „klasy 0”;

Wtedy:

$$CR_1(q)=\frac{n_1}{N_1}$$

$$CR_0(q)=\frac{n_0}{N_0}$$

Wyprowadzamy $CR_0(q)$ w zależności od $CR_1(q)$.

$$CR_0(q)=\frac{n_0}{N_0}=\frac{n-n_1}{N_0}=\frac{n-N_1\frac{n_1}{N_1}}{N_0}=$$

$$=\frac{n-N_1 CR_1(q)}{N_0}=\frac{qN-N_1 CR_1(q)}{N_0}=$$

$$=\frac{qN}{N_0}+\frac{N_1 CR_1(q)}{N_0}=q\bigg(\frac{N_0}{N}\bigg)^{-1}-\frac{N_1}{N_0}CR_1(q)=$$

$$=\frac{q}{1-apriori}-\frac{N_1 N}{NN_0}CR_1(q)=0$$

$$=\frac{q}{1-apriori}-\frac{N_1}{N}\bigg(\frac{N_0}{N}\bigg)^{-1}CR_1(q)=$$

$$=\frac{q}{1-apriori}-apriori\frac{1}{1-apriori}CR_1(q)$$

$$CR_0(q)=\frac{q-apriori\times CR_1(q)}{1-apriori}$$

Przykład dla pewnej funkcji Captured Response i apriori = 30%.

Captured Response - klasa klasa pozytywna i klasa negatywna

$CR_0(q)$ jest dystrybuantą, gdyż:

  • $CR_0(0)=\frac{0-apriori\times CR_1(0)}{1-apriori}=\frac{0-apriori\times 0}{1-apriori}=0$
  • $CR_0(1)=\frac{1-apriori\times CR_1(1)}{1-apriori}=\frac{1-apriori\times 1}{1-apriori}=1$
  • Jest funkcją niemalejącą, co wynika bezpośrednio z jej definicji.

Lift nieskumulowany dla klasy negatywnej to pochodna Captured Response dla klasy negatywnej

$$CR_0^\prime(q)=\bigg(\frac{q-apriori\times CR_1(q)}{1-apriori}\bigg)^\prime=$$

$$=\frac{\big(q-apriori\times CR_1(q)\big)^\prime}{1-apriori}=\frac{1-apriori\times CR_1^\prime(q)}{1-apriori}=$$

$$=\frac{1-apriori\times Lift.Niesk_1(q)}{1-apriori}=Lift.Niesk_0(q)$$

$$CR_0^\prime(q)=Lift.Niesk_0(q)$$

Aby w pełni zrozumieć powyższe przejścia zapoznaj się z częścią #11 „Captured Response vs Lift”, gdzie uzasadniam, że pochodna Captured Response to lift nieskumulowany.

Wniosek: Lift nieskumulowany dla klasy negatywnej oraz Captured Response dla klasy negatywnej to gęstość i dystrybuanta tego samego rozkładu.

Jeśli

$$Q=(q_1,q_2)$$

to

$$P(q\in Q|0)=\displaystyle\int_{q_1}^{q_2}Lift.Niesk_0(q)dq=$$

$$=CR_0(q_2)-CR_0(q_1)$$

$$P(q\in Q|1)=\displaystyle\int_{q_1}^{q_2}Lift.Niesk_1(q)dq=$$

$$=CR_1(q_2)-CR_1(q_1)$$

Wskaźnik KS dla $CR_1$ i $CR_0$ – czyli miara separacji klas

Wskaźnik KS dla $CR_1$ i $CR_0$ zdefiniujemy następująco:

$$D\big(CR_1,CR_0\big)=\displaystyle\sup_{q\in[0,1]}\bigg|CR_1(q)-CR_0(q)\bigg|$$

Równoważnie poszukujemy takiego $q_{max}\in[0,1]$, że

$$D\big(CR_1,CR_0\big)=\displaystyle\sup_{q\in[0,1]}\bigg|CR_1(q)-CR_0(q)\bigg|=$$

$$=CR_1(q_{max})-CR_0(q_{max})$$

Zauważmy, że

$$CR_1(q)-CR_0(q)=\bigg(CR_1(q)-q\bigg)+\bigg(q-CR_0(q)\bigg)$$

Badamy przebieg zmienności – a konkretnie typujemy punkt maksimum na podstawie pochodnej.

Dla klasy „1”:

$$\bigg(CR_1(q)-q\bigg)^\prime=0$$

$$CR_1^\prime(q)=1$$

$$Lift.Niesk_1(q)=1$$

Dla klasy „0”:

$$\bigg(q-CR_0(q)\bigg)^\prime=0$$

$$CR_0^\prime(q)=1$$

$$Lift.Niesk_0(q)=1$$

$$\frac{1-apriori\times Lift.Niesk_1(q)}{1-apriori}=1$$

$$1-apriori\times Lift.Niesk_1(q)=1-apriori$$

$$-apriori\times Lift.Niesk_1(q)=-apriori$$

$$apriori\times Lift.Niesk_1(q)=apriori$$

$$Lift.Niesk_1(q)=1$$

Wniosek: odległość $CR_1(q)-CR_0(q)$ jest maksymalizowana w punkcie, w którym funkcja liftu nieskumulowanego ma wartość 1 – tzn. w punkcie przecięcia z liftem dla modelu losowego.

Captured Response - klasa klasa pozytywna i klasa negatywna - Statystyka KS Kołmogorowa-Smirnowa

Powyższy wniosek jest dosyć intuicyjny – jeśli lift nieskumulowany „wchodzi w obszar bycia mniejszym niż 1” oznacza to, że jego efekt jest mniejszy od działania modelu losowego. Dodawanie kolejnych obserwacji zaczyna zmniejszać separację rozkładów.

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Lift nieskumulowany - całka

W 13 części cyklu „Ocena jakości klasyfikacji” przedstawię dodatkowe interpretacje dla krzywej liftu nieskumulowanego i krzywej Captured Response. Obiecuję, że będzie ciekawie 🙂 przecież robimy „deep dive into predictive model assessment curves”. W dzisiejszym odcinku zapomnimy o punktach odcięcia, klasyfikatorach binarnych, rozważając rozkłady populacji jako całość. Chwilkę się do tego przygotowywałem – było warto – seria „Tips & Tricks na krzywych” nabiera rumieńców!

Pole powierzchni pod krzywą liftu nieskumulowanego

Lift nieskumulowany dla modelu losowego to funkcja stała o wartości 1. Pole pod taką krzywą równe jest polu kwadratu o boku 1 i wynosi oczywiście 1. Model losowy „rozrzuca” obserwacje z „klasy 1” równomiernie, tzn. taka sama część otrzymuje wysoki, średni i niski score. Głównym zadaniem modelu predykcyjnego, w pewnym sensie, jest „przepchnąć” obserwacje należące do „klasy 1” z segmentu niskiego score do segmentu wysokiego score – dzięki temu pojawia się separacja klas. Powyższe dobrze obrazuję animacją, gdzie siła modelu utożsamiana jest z „siłą podmuchu wiatru” 🙂

Lift nieskumulowany - całka

Takie „przepchnięcie” nie ma wpływu na ilość „jedynek”, zatem należy podejrzewać, że pole pod krzywą liftu nieskumulowanego zawsze wynosi 1. No to całkujemy:

$$\displaystyle\int_0^1 Lift.Niesk(q)dq$$

Oznaczenia + zależności:

  • $N=N_1+N_0$ – liczba obserwacji: łączna, z „klasy 1”, z „klasy 0”;
  • $k$ – liczba przedziałów, na które dzielimy odcinek $[0;1]$;
  • $p=\frac{1}{k}$ – szerokość pojedynczego przedziału (zakres zmienności rzędu kwantyli);
  • $p\cdot N$ – liczba obserwacji w przedziale (podział po kwantylach, zatem po równo);
  • $i=\{1,2,3,\ldots,k\}$ – numer przedziału;
  • $n_1^i+n_0^i=pN$ – liczba obserwacji w przedziale, osobno „z klasy 1” i „z klasy 0”;
  • $\Delta q^i$ – przedział, na którym wyznaczona jest wartość liftu nieskumulowanego;
  • $\displaystyle\sum_{i=1}^k n_1^i=N_1$
  • $\displaystyle\sum_{i=1}^k n_0^i=N_0$
  • $\displaystyle\sum_{i=1}^k n_1^i+n_0^i=N_1+N_0=N$

Lift nieskumulowany jest funkcją przedziałami stałą:

$$Lift.Niesk(q)=Lift.Niesk(\Delta q^i)\quad\text{dla}\quad q\in\Delta q^i$$

$$Lift.Niesk(\Delta q^i)=\frac{P(1|\Delta q^i)}{P(1)}$$

$$P(1|\Delta q^i)=\frac{n_1^i}{pN}$$ oraz $$P(1)=\frac{N_1}{N}$$

$$Lift.Niesk(\Delta q^i)=\frac{n_1^i}{pN}\cdot \frac{N}{N_1}=\frac{n_1^i}{pN_1}$$

$$Lift.Niesk(\Delta q^i)=\frac{n_1^i}{pN_1}$$

$$\displaystyle\int_0^1 Lift.Niesk(q)dq=\displaystyle\sum_{i=1}^k p\cdot Lift.Niesk(\Delta q^i)$$

$$\displaystyle\sum_{i=1}^k p\cdot Lift.Niesk(\Delta q^i)=\displaystyle\sum_{i=1}^k p\frac{n_1^i}{pN_1}=$$

$$=\displaystyle\sum_{i=1}^k \frac{n_1^i}{N_1}=\frac{\displaystyle\sum_{i=1}^k n_1^i}{N_1}=\frac{N_1}{N_1}=1$$

$$\displaystyle\int_0^1 Lift.Niesk(q)dq=1$$

Lift nieskumulowany jako funkcja gęstości rozkładu prawdopodobieństwa

Funkcja liftu nieskumulowanego jest nieujemna i spełnia warunek „unormowania” (w przeciwieństwie do funkcji nieskumulowanego prawdopodobieństwa) w kontekście gęstości rozkładu prawdopodobieństwa – tzn. pole powierzchni pod krzywą wynosi 1. Taka gęstość opisuje rozkład rzędu kwantyli (kwantyle wyznaczane dla całej populacji „klasa 0 + klasa 1” względem malejącej oceny modelem) w klasie faktycznie pozytywnej – tzn. w „klasie 1”.

Lift nieskumulowany jako gęstość

Jeśli

$$Q=(q_1,q_2)$$

to

$$P(q\in Q|1)=\displaystyle\int_{q_1}^{q_2}Lift.Niesk(q)dq$$

Captured Response jako dystrybuanta rozkładu prawdopodobieństwa

Captured Response jest funkcją niemalejącą, jednostronnie ciągłą (powiedzmy, że prawostronnie), o wartościach z przedziału $[0;1]$, wartości 0 dla $q\leq 0$ oraz wartości 1 dla $q\geq 1$. Tym samym spełnione są warunki bycia dystrybuantą pewnego rozkładu prawdopodobieństwa. W części „#11 – Captured Response vs Lift” wykazałem, że pochodna z Captured Response to lift nieskumulowany. Wniosek: Captured Response i lift nieskumulowany to dystrybuanta i gęstość tego samego rozkładu prawdopodobieństwa.

Lift nieskumulowany jako gęstość, Captured Response jako dystrybuanta

Jeśli

$$Q=(q_1,q_2)$$

to

$$P(q\in Q|1)=\displaystyle\int_{q_1}^{q_2}Lift.Niesk(q)dq=CR(q_2)-CR(q_1)$$

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

ROC w CR - przekształcenie liniowe - wektory

Wskaźnik Giniego, który opisałem w części #7 poświęconej krzywej ROC, jest jednym z najważniejszych narzędzi wykorzystywanych w procesie oceny jakości klasyfikacji. Choć krzywa ROC jest ważna i bardzo przydatna, to z mojego doświadczenia wynika, że większość analityków woli wykreślać krzywą Captured Response. Sądzę, że wszyscy intuicyjnie czujemy, że „Gini z ROC” i „Gini z Captured Response” to to samo 🙂 Ale dlaczego tak jest? 🙂 Dziś odpowiem na to pytanie, jednocześnie wzbogacając serię „Tips & Tricks na krzywych”!

Wskaźnik Giniego z krzywej Captured Response

$$Gini=\frac{P_1}{P_1+P_2}=\frac{P_1^\prime}{P_1^\prime+P_2^\prime}$$

Krzywa Captured Response jako przekształcenie liniowe krzywej ROC

W części #8 wykazałem, że krzywą ROC i krzywą Captured Response łączy poniższa formuła.

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

$$Y_{cr}=Y_{roc}$$

Wskaźnik Giniego z krzywej Captured Response - wektory

Powyższy wzór można zapisać na bazie przekształcenia liniowego

$$\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}$$

 opisanego macierzą przekształcenia liniowego

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

Po szczegóły odsyłam do części #8 „Captured Response = ROC x apriori”.

Wyznacznik macierzy przekształcenia liniowego i współczynnik zmiany pola powierzchni

Przekształcenie liniowe - Pole powierzchni - Wyznacznik macierzy przekształcenia

Jeśli analizujemy przekształcenie liniowe

$$Ax$$

gdzie $A$ jest macierzą przekształcenia liniowego, a $x$ wektorem, to wyznacznik

$$\text{det}(A)$$

jest współczynnikiem o jaki zmienia się pole powierzchni / objętość / miara figury / obiektu transformowanego poprzez przekształcenie liniowe $Ax$. Polecam poniższy film.

Wyznacznik macierzy przekształcenia liniowego krzywej ROC w krzywą Captured Response

$$\text{det}(A)=\text{det}\begin{bmatrix}1-apriori & apriori\\0 & 1\end{bmatrix}=1-apriori$$

Z powyższego wynika, że pole powierzchni pomiędzy przestrzenią, w której „osadzona” jest krzywa ROC, a przestrzenią „zawierającą” krzywą Captured Response, powinno się skalować poprzez współczynniki $1-apriori$. Sprawdźmy 🙂

$$P_1+P_2=\frac{1}{2}$$

Wykorzystując wzór na pole trójkąta wyznaczamy

$$P_1^\prime+P_2^\prime=\frac{1}{2}(1-apriori)$$

Zgadza się 🙂 I ostatecznie

$$\frac{P_1^\prime}{P_1^\prime+P_2^\prime}=\frac{P_1(1-apriori)}{(P_1+P2)(1-apriori)}=\frac{P_1}{P_1+P_2}$$

czyli

$$Gini=\frac{P_1}{P_1+P_2}=\frac{P_1^\prime}{P_1^\prime+P_2^\prime}$$

Jako ciekawostka – podobnie można policzyć AUROC z Captured Response:

$$AUROC=P_1+\frac{1}{2}=\frac{P_1^\prime}{1-apriori}+\frac{1}{2}$$

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Pochodna z Captured Response to Lift nieskumulowany

W części #8 cyklu „Ocena jakości klasyfikacji” pokazałem, że ROC i Captured Response to te same krzywe, które łączy proste przekształcenie liniowe. W bieżącym odcinku #11, należącym również do serii „Tips & Tricks na krzywych”, przedstawię zależność pomiędzy Captured Response i Lift w wariantach: nieskumulowanym i skumulowanym.

!!! Uwaga: dla uproszczenia – wszędzie tam, gdzie piszę kwantyl, mam na myśli jego rząd !!!

Pochodna z Captured Response to Lift nieskumulowany

Pochodna z Captured Response to Lift nieskumulowany

Oznaczamy:

  • $N=N_1+N_0$ – liczba obiektów (np. klientów): total, z klasy „1”, z klasy”0″;
  • $\Delta q_n$ – zmiana argumentu (przyrasta kwantyl bazy), czyli przyrost % populacji;
  • $n=n_1+n_0$ – liczba obiektów składających się na przyrost $\Delta q_n$: total, z klasy „1”, z klasy”0″;
  • $\Delta q_t$ – zmiana wartości funkcji (przyrasta kwantyl targetu), czyli przyrost frakcji targetu jako % całości targetu;
  • $n_1$ – liczba klientów z klasy „1” składających się na przyrost $\Delta q_t$.
  • $\Delta q_n=\frac{n}{N}$
  • $\Delta q_t=\frac{n_1}{N_1}$

$$CR’=\frac{\Delta q_t}{\Delta q_n}$$

I wyprowadzamy 🙂

$$CR’=\frac{\Delta q_t}{\Delta q_n}=\frac{n_1}{N_1}\bigg/\frac{n}{N}=\frac{n_1}{N_1}\cdot\frac{N}{n}=\frac{n_1}{n}\cdot\frac{N}{N_1}=\frac{n_1}{n}\bigg/\frac{N_1}{N}$$

$$CR’=\frac{n_1}{n}\bigg/\frac{N_1}{N}=\frac{p(1|\Delta q_n)}{p(1)}=Lift.Niesk$$

Fajne 🙂 prawda? Lift nieskumulowany można jednoznacznie wyprowadzić z krzywej Captured Response poprzez analizę „lokalnych” przyrostów frakcji bazy $\Delta q_n$ i frakcji targetu $\Delta q_t$.

Captured Response – stosunek wartości dla badanego modelu oraz wartości dla modelu losowego to Lift skumulowany

Captured Response - stosunek wartości dla badanego modelu oraz wartości dla modelu losowego to Lift skumulowany

Oznaczamy:

  • $N=N_1+N_0$ – liczba obiektów (np. klientów): total, z klasy „1”, z klasy”0″;
  • $q_n$ – kwantyl bazy, czyli argument na osi poziomej;
  • $n=n_1+n_0$ – liczba obiektów składających się na kwantyl $q_n$: total, z klasy „1”, z klasy”0″;
  • $q_t^m$ – kwantyl targetu, czyli wartość Captured Response dla badanego modelu;
  • $q_t^l$ – kwantyl targetu, czyli wartość Captured Response dla modelu losowego;
  • $q_n=\frac{n}{N}$
  • $q_t^m=\frac{n_1}{N_1}$
  • Zauważmy, że $q_t^l=q_n=\frac{n}{N}$

$$\frac{q_t^m}{q_t^l}=\frac{n_1}{N_1}\bigg/\frac{n}{N}=\frac{n_1}{N_1}\cdot\frac{N}{n}=\frac{n_1}{n}\cdot\frac{N}{N_1}=\frac{n_1}{n}\bigg/\frac{N_1}{N}$$

$$\frac{q_t^m}{q_t^l}=\frac{n_1}{n}\bigg/\frac{N_1}{N}=\frac{p(1|q_n)}{p(1)}=Lift.Skumul$$

Kolejny fajny wniosek 🙂 , który można również łatwo uzasadnić na bazie wyżej opisanej zależności pomiędzy Captured Response i Liftem nieskumulowanym. Mianowicie wystarczy „delty liczyć” od punktu $(0,0)$ i zauważyć, że dla modelu losowego $q_t = q_n$. Pokazałem to na rysunku poniżej.

Captured Response - stosunek wartości dla badanego modelu oraz wartości dla modelu losowego to Lift skumulowany

Lift skumulowany można jednoznacznie wyprowadzić z krzywej Captured Response poprzez analizę „globalnych” przyrostów frakcji bazy $\Delta q_n$ i frakcji targetu $\Delta q_t$.

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Model Teoretycznie Idealny - Porządek - Cut-Off - Brak błędu

Kilka kolejnych części cyklu „Ocena jakości klasyfikacji” skupi się na poradach i pewnych trickach (czyli seria „Tips & Tricks na krzywych”), które zastosowane do krzywych: Lift, Captured Response, ROC, znacząco pogłębiają ich interpretację.

!!! Uwaga: dla uproszczenia – wszędzie tam, gdzie piszę kwantyl, mam na myśli jego rząd !!!

Model teoretycznie idealny a prawdopodobieństwo a-priori

Model teoretycznie idealny to taki model, który daje najlepsze możliwe uporządkowanie – inaczej mówiąc najlepszą możliwą separację klas. Taki model nie myli się przy założeniu, że punkt odcięcia odpowiada prawdopodobieństwu a-priori. Wtedy faktycznie cała klasa pozytywna jest po jednej stronie, a cała klasa negatywna po drugiej stronie punktu cut-off.

Model Teoretycznie Idealny - Porządek - Cut-Off - Brak błędu

Przy każdym innym cut-off model teoretycznie idealny popełnia mniejszy lub większy błąd.

Model Teoretycznie Idealny - Porządek - Cut-Off - Błąd

Ile istnieje różnych modeli teoretycznie idealnych?

Liczba różnych modeli teoretycznie idealnych to funkcja liczności klasy faktycznie pozytywnej i liczności klasy faktycznie negatywnej. Liczba ta będzie iloczynem możliwych permutacji w klasie pozytywnej i możliwych permutacji w klasie negatywnej. Takie modele, z punktu widzenia klasycznej oceny jakości klasyfikacji, są nierozróżnialne (dlatego na wykresach oznaczamy tylko jeden). Sytuacja może się zmienić, jeśli, w celu lepszego uporządkowania, rozważymy dodatkowe cechy (oprócz samej przynależności do badanej klasy), takie jak: wartość klienta, oczekiwany life-time, etc…

Model teoretycznie idealny i maksymalny Lift nieskumulowany

Lift nieskumulowany to stosunek prawdopodobieństwa w przedziale bazy $\Delta q_n$ i prawdopodobieństwa a-priori (w całej bazie).

$$Lift.Nieskum=\frac{p(1|\Delta n)}{p(1)}$$

Jeśli baza jest uszeregowana malejąco względem oceny modelem, maksymalny możliwy lift nieskumulowany będzie funkcją dwuwartościową.

$$Lift.Nieskum(q)=\begin{cases}\frac{1}{apriori}&\text{dla}\quad q\leq apriori\\0&\text{dla}\quad q>apriori\end{cases}$$

$q$ – kwantyl bazy (malejąco względem oceny modelem)

Model Teoretycznie Idealny - Lift Nieskumulowany

Model teoretycznie idealny i maksymalny Lift skumulowany

Również w przypadku skumulowanym, będąc „na lewo od a-priori”, maksymalny możliwy lift skumulowany wynosi $\frac{1}{apriori}$ (cały czas mamy do dyspozycji „1-dynki”). Jeśli „cut-off przekroczy kwantyl a-priori”, klasyfikacja pozytywna zaczyna być „zaśmiecana” frakcją False-Positive, gdyż nie ma już „1-dynek” – co wynika z najlepszego możliwego porządku (model teoretycznie idealny) – tzn. wszystkie obiekty z klasy faktycznie pozytywnej znajdują się w kwantylach z przedziału $[0,apriori$$.

$$Lift.Skum(q)=\begin{cases}\frac{1}{apriori}&\text{dla}\quad q\leq apriori\\\frac{1}{q}&\text{dla}\quad q>apriori\end{cases}$$

$q$ – kwantyl bazy (malejąco względem oceny modelem)

Dlaczego $\frac{1}{q}$? Przyjmijmy $q>apriori$, wtedy

  • $q$ to rozmiar „bazy”
  • $apriori$ to rozmiar klasy faktycznie pozytywnej w rozważanej „bazie”

$$p\big(1\big|~[0,q]~\big)=\frac{apriori}{q}$$

$$Lift.Skum(q)=\frac{p\big(1\big|~[0,q]~\big)}{p(1)}=\frac{apriori}{q\times apriori}=\frac{1}{q}$$

Model Teoretycznie Idealny - Lift Skumulowany

Model teoretycznie idealny i maksymalny Captured Response

Dysponując najlepszym możliwym uporządkowaniem krzywa Captured Response liniowo rośnie dla argumentów „na lewo” od apriori – każdy dodany obiekt, to klasa faktycznie pozytywna. W punkcie „apriori” całość targetu jest już pokryta – zatem wartość krzywej to 100%.

$$Capt.Resp(q)=\begin{cases}\frac{q}{apriori}&\text{dla}\quad q\leq apriori\\1&\text{dla}\quad q>apriori\end{cases}$$

$q$ – kwantyl bazy (malejąco względem oceny modelem)

Model Teoretycznie Idealny - Captured Response

Model teoretycznie idealny i ROC

  • Jeśli cut-off jest „na lewo” od a-priori: pokrywamy wyłącznie elementy klasy faktycznie pozytywnej, zatem rośnie wyłącznie TPR, przy zerowym FPR.
  • Dla cut-off odpowiadającego a-priori: pokryto 100% klasy faktycznie pozytywnej (TPR = 100%), jednocześnie nie popełniając żadnego błędu (FPR = 0%).
  • Dla cut-off większego od a-priori: TPR już wcześniej osiągnęło 100%, teraz klasyfikując pozytywnie popełniamy coraz większy błąd – tzn. FPR zaczyna rosnąć.
  • Dla cut-off = 1: pokryliśmy całość klasy faktycznie pozytywnej (TPR=100%), jednak w tym samym kroku wszelkie obiekty faktycznie negatywne zaliczyliśmy do klasy pozytywnej (FPR=100%).

Model Teoretycznie Idealny - ROC

„Przestrzeń na model” – czyli sens budowy modelu

  • Dla dużych a-priori (np. 50-60%) przestrzeń na model (tzn. możliwy do osiągnięcia lift) jest bardzo mała. W takich sytuacjach należy najpierw zadać sobie pytanie co chcemy osiągnąć, czym jest target, czy nie istnieją proste reguły biznesowe odpowiadające naszym potrzebom? Duże a-priori nie jest przypadkiem abstrakcyjnym – szereg pytań dotyczy cech / zdarzeń bardzo częstych w bazach / populacjach, np: czy rodzina ma dziecko?, czy ktoś posiada samochód?, etc..
  • Małe a-priori (np. kilka promili) daje bardzo dużą przestrzeń na model (typowo duży osiągany lift), ale należy pamiętać, że 5 razy 0 daje 0!! Przykładowa kalkulacja:
    • a-priori = 0.5%
    • lift (na którymś niskim centylu) = 10
    • wtedy prawdopodobieństwo targetu na bazie klasyfikowanej pozytywnie = 0.5% * 10 = 5%
    • wtedy w 95% przypadkach mylimy się – owszem możemy pokryć sporą część targetu, ale sami sobie odpowiedzcie czy nieprawidłowy komunikat do 95% grupy ma sens?
  • Pośrednie a-priori (kilka – kilkanaście procent) – sytuacja optymalna 🙂

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Tarcze estymacji prawdopodobieństwa - schemat

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

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Captured Response vs ROC

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

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Krzywa ROC - AUROC - Receiver Operating Characteristic

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

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

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

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

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

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

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

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Schemat oceny klasyfikacji

Wpis z dnia 26 października 2015 „Confusion matrix, Macierz błędu, tablica pomyłek – czyli ocena jakości klasyfikacji (część 1)” przedstawia wstęp do macierzy błędu i jej podstawowych zastosowań. Poniżej prezentujemy kolejne miary jakości klasyfikacji oparte na poznanej macierzy błędu. Przypomnijmy kodowanie klas:

  • 1 – Positive
  • 0 – Negative

oraz 4 możliwe wyniki przewidywań:

  • True-Positive (TP – liczba przewidywań prawdziwie pozytywnych);
  • True-Negative (TN – liczba przewidywań prawdziwie negatywnych);
  • False-Positive (FP – liczba przewidywań fałszywie pozytywnych);
  • False-Negative (FN – liczba przewidywań fałszywie negatywnych).

Confusion Matrix

Czułość i specyficzność jako miary „zasięgu”

  • Czułość = TPR = $\frac{TP}{TP+FN}$ – True-Positive Rate, miara „zasięgu / pokrycia / dotarcia” wskazująca w jakim procencie klasa faktycznie pozytywna została pokryta przewidywaniem pozytywnym (np. procent osób chorych, dla których test diagnostyczny wskazuje wynik pozytywny). TPR zapisujemy również jako

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

  • Specyficzność = TNR = $\frac{TN}{TN+FP}$ – True-Negative Rate, miara „zasięgu / pokrycia / dotarcia” wskazująca w jakim procencie klasa faktycznie negatywna została pokryta przewidywaniem negatywnym (np. procent osób zdrowych, dla których test diagnostyczny wskazuje wynik negatywny). TNR zapisujemy również jako

TNR = P( pred = N | fakt = N ) = P( pred = 0 | fakt = 0)  = P( 0 | 0 )

PPV i NPV jako miary precyzji

  • Precyzja przewidywania pozytywnego = PPV = $\frac{TP}{TP+FP}$ – Positive Predictive Value, miara precyzji wskazująca z jaką pewnością możemy ufać przewidywaniom pozytywnym, tzn. w jakim procencie przewidywania pozytywne potwierdzają się stanem faktycznie pozytywnym (np. procent osób z pozytywnym wynikiem testu medycznego, u których następnie potwierdzono diagnozę). PPV można zapisać również jako

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

  • Precyzja przewidywania negatywnego = NPV = $\frac{TN}{TN+FN}$ – Negative Predictive Value, miara precyzji wskazująca z jaką pewnością możemy ufać przewidywaniom negatywnym, tzn. w jakim procencie przewidywania negatywne potwierdzają się stanem faktycznie negatywnym (np. procent osób z negatywnym wynikiem testu medycznego, u których następnie wykluczono chorobę). NPV można zapisać również jako

NPV = P( fakt = N | pred = N) = P( fakt = 0 | pred = 0 )

Miary zasięgu i precyzji na schemacie macierzy błędu

Czułość, specyficzność oraz precyzja klasyfikacji

Miary zasięgu i precyzji na schemacie błędu klasyfikacyjnego

Czułość, specyficzność oraz precyzja klasyfikacji

Zależność pomiędzy miarami jakości klasyfikacji

  • Czułość (TPR) vs Specyficzność (TNR) – teoretycznie miary niezależne, co dobrze obrazują powyższe schematy. W praktyce jednak zwiększanie czułości prowadzi często do zmniejszenia specyficzności.
  • PPV i NPV  vs Czułość (TPR) vs Specyficzność (TNR) – korzystając z twierdzenia Bayesa można łatwo wyznaczyć zależność pomiędzy miarami precyzji i miarami zasięgu

$$\quad$$

$${\small PPV=P(fakt=1|pred=1)=}$$

$${\tiny=\frac{ P(fakt = 1) \cdot P(pred = 1 | fakt = 1) }{ P( fakt = 1)\cdot P( pred = 1 | fakt = 1) +P(fakt = 0) \cdot P(pred = 1 | fakt = 0)}=}$$

$${\small=\frac{ P(1) \cdot P(1 |1) }{ P(1)\cdot P(1|1) +P(0) \cdot P(1|0)}=}$$

$${\small=\frac{ P(1) \cdot P(1 |1) }{ P(1)\cdot P(1|1) +P(0) \cdot \big(1-P(0|0)\big)}=}$$

$${\small=\frac{ P(1) \cdot TPR}{ P(1)\cdot TPR+P(0) \cdot \big(1-TNR\big)}=}$$

$$\quad$$

$${\small NPV=P(fakt=0|pred=0)}$$

$${\tiny=\frac{ P(fakt = 0) \cdot P(pred = 0 | fakt = 0) }{ P( fakt = 0)\cdot P( pred = 0 | fakt = 0) +P(fakt = 1) \cdot P(pred = 0 | fakt = 1)}=}$$

$${\small=\frac{ P(0) \cdot P(0|0) }{ P(0)\cdot P(0|0) +P(1) \cdot P(0|1)}=}$$

$${\small=\frac{ P(0) \cdot P(0 |0) }{ P(0)\cdot P(0|0) +P(1) \cdot \big(1-P(1|1)\big)}=}$$

$${\small=\frac{ P(0) \cdot TNR}{ P(0)\cdot TNR+P(1) \cdot \big(1-TPR\big)}}$$

$$\quad$$

  • PPV vs NPV – miary mocno od siebie zależą, np. zwiększając frakcję TP zmniejszamy frakcję FN, lub zmniejszając frakcję FP zwiększamy frakcję TN.

Ciąg dalszy nastąpi 🙂

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Macierz pomyłek

Macierz pomyłek i klasyfikacja binarna

Macierz błędu jest podstawowym narzędziem stosowanym do oceny jakości klasyfikacji. Poniżej rozważymy przypadek klasyfikacji binarnej (dwie klasy).
Kodowanie klas:

  • 1 – Positive (np.: fakt skorzystania z produktu przez Klienta, pacjent z potwierdzoną chorobą, pacjentka z potwierdzoną ciążą)
  • 0Negative (np.: fakt nieskorzystania z produktu przez Klienta, pacjent z wykluczoną chorobą, pacjentka z wykluczoną ciążą)

Możliwe wyniki klasyfikacji

Macierz błędu powstaje z przecięcia klasy prognozowanej i klasy faktycznie zaobserwowanej, mamy zatem 4 przypadki (2 dla zgodności i 2 dla niezgodności prognozy ze stanem faktycznym).

  • True-Positive (TP – prawdziwie pozytywna): przewidywanie pozytywne, faktycznie zaobserwowana klasa pozytywna (np. pozytywny wynik testu ciążowego i ciąża potwierdzona)
  • True-Negative (TN – prawdziwie negatywna): przewidywanie negatywne, faktycznie zaobserwowana klasa negatywna (np. negatywny wynik testu ciążowego i brak ciąży)
  • False-Positive (FP – fałszywie pozytywna): przewidywanie pozytywne, faktycznie zaobserwowana klasa negatywna (np. pozytywny wynik testu ciążowego, jednak faktyczny brak ciąży)
  • False-Negative (FN – fałszywie negatywna): przewidywanie negatywne, faktycznie zaobserwowana klasa pozytywna (np. negatywny wynik testu ciążowego, jednak ciąża potwierdzona)
Confusion Matrix
    Stan faktyczny
    P N
Przewidywanie P TP
True-Positive
FP
False-Positive
N FN
False-Negative
TN
True-Negative

Przykład – do grupy 2000 osób skierowano komunikację marketingową zachęcającą do skorzystania z produktu. Spośród 2000 osób produkt zakupiło 600. Grupę 2000 podzielono losowo na dwie równoliczne części, każda po 1000 osób (w tym w każdej po 300 klientów, którzy skorzystali z produktu). Pierwszej grupie przydzielono rolę „danych uczących”, zaś drugiej rolę „danych testowych”.  Wykorzystując dane uczące, dostępne charakterystyki klientów oraz informacje o fakcie zakupienia produktu (tzw. target), przygotowano (wytrenowano / nauczono) klasyfikator umożliwiający przewidywanie czy dany klient skorzysta z produktu. Oceny jakości klasyfikatora dokonano przy wykorzystaniu danych testowych (tzn. danych, które nie były używane w procesie uczenia). Wyniki oceny zaprezentowano w postaci poniższej macierzy błędów.

Confusion Matrix dla powyższego przykładu
    Stan faktyczny
    P N
Przewidywanie P 250
True-Positive
100
False-Positive
N 50
False-Negative
600
True-Negative

Wnioski:

  • TP + FN + TN + FP = 250 + 50 + 600 + 100 = 1000 – liczba klientów (baza, na której dokonano oceny)
  • P = TP + FN = 250 + 50 = 300 – liczba klientów, którzy kupili produkt
  • N = TN + FP = 600 + 100 = 700 – liczba klientów, którzy nie skorzystali z produktu
  • TP + TN = 250 + 600 = 850 – liczba poprawnych klasyfikacji
  • FP + FN = 100 + 50 = 150 – liczba błędnych klasyfikacji
  • ACC = (TP + TN) / (P + N) = 850 / 1000 = 85%jakość klasyfikacji
  • ERR = (FP + FN) / (P + N) = 150 / 1000 = 15% – poziom błędu

W kolejnych częściach przyjrzymy się innym miarom jakości klasyfikacji, które powstają z macierzy błędów.

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa