Try   HackMD

Modelowanie predykcyjne

tags: Business Intelligence Tableau

Wprowadzenie - cel ćwiczenia

W ramach ćwiczenia zostaną omówione techniki modelowania predykcyjnego wykorzystujące funkcje wbudowane w Tableau:

  • MODEL_QUANTILE,
  • MODEL_PERCENTILE.

Dane źródłowe do ćwiczenia to data source zapisane w Tableau: World Indicators. Ćwiczenie polega na badaniu zależności między następującymi miarami zawartymi w ww. pliku:

  • wydatki na zdrowie per capita,
  • oczekiwana długość życia kobiet,
  • współczynnik urodzeń.

Zakładamy, że istnieje związek (trend) pomiędzy następującymi miarami:
a - oczekiwana długość życia kobiet i wydatki na zdrowie,
b - oczekiwana długość życia kobiet i współczynnik urodzeń (na 1000 mieszkańców).
W ćwiczeniu postaramy się zbadać, które kraje dobrze wpisują się w obserowowany trend, a które oddalają się od niego.

1. Oczekiwana długość życia a wydatki na zdrowie

Badamy zależność między wskaźnikami:

  • Life Expectancy Female,
  • Health Exp/Capita (wydatki na zdrowie na osobę).

Wykreślamy ww. zaleźność (używająca funkcji agregujących AVG oraz MEDIAN) ja na Rys.1. Dodatkowo, aby sprawdzić trend pomiędzy miarami na rysunku dodano najlepiej doasowaną linię trendu (proszę samodzielnie wybrać którą).

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Rys.1

Aby zniwelować efekt dużej róźnicy wartości współczynnika związanego z wydatkai na osobę można zastosować skalę logarytmiczną na osi OX - Rys.2.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Rys.2

Zakładając, że zależność logarytmiczna jest trendem dobrze opisującym analizowany zestaw danych, przyjmijmy, że dalszą analizę będziemy prowadzić między:

  • AVG(Life Expectancy Female)
  • LOG(MEDIAN(Health Exp/Capita)).

W tym celu należy zdefiniować pole obliczeniowe np. LifeExpPerc zgodnie z formułą:

MODEL_PERCENTILE(AVG([Life Expectancy Female]), LOG(MEDIAN([Health Exp/Capita])))

Następnie należy dodać zdefiniowane pole obliczeniowe MODEL_PERCENTILE do widoku, zgodnie z poniższymi punktami.

  1. Drag LifeExpPerc to Color on the Marks card.
  2. Click the drop-down arrow on the pill and select Compute Using > Country/Region.
  3. Click Color on the Marks card, and then click Edit Colors.
  4. Under Palette, select Orange-Blue Diverging.
  5. Select the Stepped Color checkbox.
  6. Select the Reversed checkbox.
  7. Click OK.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Na Rys. można zobaczyć rozkład krajów, w których oczekiwana długość życiajest zarówno wyższa, jak i niższa niż oczekiwano, na podstawie poziomu wydatków. Należy zauważyć, że ogólnie ciemnoczerwone znaki wskazują, że oczekiwana długość życia jest wysoka w stosunku do wydatków na opiekę zdrowotną, ciemnoniebieska oznacza, że oczekiwana długość życia jest niska w porównaniu z wydatkami na opiekę zdrowotną, a kolor szary oznacza, że oczekiwana długość życia jest zbliżona do oczekiwanej przez model, na podstawie poziomu wydatków na opiekę zdrowotną.

MODEL_PERCENTILE zwraca prawdopodobieństwo, że nieobserwowana wartość jest mniejsza lub równa obserwowanemu znacznikowi, zdefiniowanemu przez target_expression i na podstawie innych predyktorów (predyktor - zmienna modelu statystycznego, stosowana w prognozowaniu; zmienna niezależna, zmienna objaśniająca), które użytkownik może wybrać. Jest to funkcja przewidywania a posteriori, znana również jako funkcja skumulowanej gęstości (CDF). To obliczenie zwróci wartość z przedziału od 0 do 1.

Percentyl, w praktyce pomiarowej nazywany również centylem (centyl) jest jednostką statystyczną opisującą położenie danego wyniku względem całej grupy wyników. Poszczególne centyle określają nam jaki ile wyników (procentowo) było niższych bądź wyższych od pewnego wyniki.

Grupowanie kolorami

Aby uprościć analizę, użyj wyników prognozowania w polu obliczeniowym, aby wizualnie pogrupować wyniki. Zbudujemy grupy w taki sposób, aby zgrupowane były razem znaczniki powyżej 90. i poniżej 10. percentyla, punkty z przedziału od 80 do 90 centyla oraz z przedziału od 10 do 20 centyla i tak dalej.

IF
ISNULL([LifeExpPerc])
THEN "Null"
ELSEIF [LifeExpPerc] >=0.9 OR
[LifeExpPerc] <=0.1
THEN "<10th & >90th percentile"
ELSEIF [LifeExpPerc] >=0.8 OR
[LifeExpPerc] <=0.2
THEN "<20th & >80th percentile"
ELSEIF [LifeExpPerc] >=0.7 OR
[LifeExpPerc] <=0.3
THEN "<30th & >70th percentile"
ELSEIF [LifeExpPerc] >=0.6 OR
[LifeExpPerc] <=0.4
THEN "<40th & >60th percentile"
ELSE "50th percentile +-10"
END

Następnie nalezy dodać ww. pole obliczeniowe do znacznika kolor menu podręcznego wybierając Compute Using > Country/Region. Proszę ponadto wybrać paletę kolorów Traffic Light oraz kolor szary dla Nulls.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Patrząc na pomarańczowy znak w rogu, zauważ, że Stany Zjednoczone wydają 8895 USD na kobietę przy średniej długości życia 81 lat. Poruszając się wzdłuż osi X w lewo, widać, że inne kraje wydają mniej i mają taką samą długość życia.

Model ocenia siłę relacji dla każdego kraju.

2. Oczekiwana długość życia a współczynnik urodzeń

W kolejnym kroku zbadamy trend pomiędzy długością życia kobiet i współczynnikiem urodzeń.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Zgodnie z poprzednią procedurą zrealizujemy modelowanie za pomocą funkcji MODEL_PERCENTILE

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Niestety, nie wszystkie punkty wpisują się w trend.

Do weryfikacji bardziej subtelnych zależności można użyć funkcji MODEL_QUANTILE. MODEL_QUANTILE jest używana do generowania prognoz numerycznych na podstawie docelowego percentyla, wyrażenia docelowego i predyktorów. Jest odwrotnością MODEL_PERCENTILE.

Zdefiniujmy zmienną Quantile of Life Expectancy vs Spending

MODEL_QUANTILE(0.5, AVG([Life Expectancy Female]), LOG(MEDIAN([Health Exp/Capita])))

Objaśmijmy obliczenia, aby lepiej je zrozumieć:

  • Zaczynamy od MODEL_QUANTILE, gdzie pierwszy argument to 0,5, określający, jaki percentyl przewidywać.
  • Wyrażenie docelowe to średnia długość życia kobiet.
  • Predyktorem jest mediana wydatków na zdrowie na mieszkańca.

Dodajmy ww. wyrażenie do tooltipa jako Przewidywana przez model długość życia kobiet. Proszę wykorzystać tą zmienną do opisania każdego punktu (Państwa) w tooltip.