Data Mining Klaudia Malinowska Simona Pikuła Statystyka w SAS Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 1 / 98
Plan prezentacji 1 Data Mining-co to jest? 2 Metodologia SEMMA 3 Analiza danych Sample Explore Modyfikowanie danych Badanie i przygotowanie danych Ocena i wybór modelu Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 2 / 98
Data Mining-co to jest? Data mining jest to proces analityczny, służący do odkrywania nietrywialnych, dotychczas nieznanych zależności, trendów w dużych bazach danych, wykorzystując przy tym między innymi metody statystyczne. Gromadzonych danych jest coraz więcej, dlatego też problemem jest wydobycie z nich jak największej ilości informacji. Data mining, jako złożony proces selekcji i transformacji danych, ułatwia interpretacje uzyskanych wyników. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 3 / 98
Główne zastosowania W procesie data mining możemy wyróżnić sześć podstawowych zastosowań. opis szacowanie klasyfikacja grupowanie odkrywanie reguł odkrywanie anomalii. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 4 / 98
Metodologie Aby eksploracja danych przebiegła sprawnie, stworzono metodologie, które uporządkowują poszczególne etapy analizy. Do najbardziej popularnych należą: CRISP-DM SEMMA Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 5 / 98
CRISP-DM Rysunek: Etapy metodologii CRISP-DM Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 6 / 98
SEMMA W tej prezentacji wykorzystamy drugą z metodologii SEMMA, która składa się z 5 etapów: Sample-przygotowanie i podział wejściowej próby danych, Explore-eksploracja danych, służąca ocenie ich jakości oraz wstępnej identyfikacji zależności pomiędzy zmiennymi, Modify-modyfikacja danych, służąca poprawie ich jakości, spełnieniu założeń metod modelowania lub zwiększaniu ich elastyczności poprzez transformację zmiennych, Model- modelowanie przy użyciu takich metod jak drzewa decyzyjne, regresja czy sieci neuronowe, Asses-ocena jakości budowanych modeli i wybór najlepszego z nich, a następnie monitorowanie jego skuteczności na nowo napływających danych. W systemie SAS model SEMMA realizowany jest w oparciu o tzw. diagramy przepływu, które można tworzyć przy użyciu wygodnego GUI Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 7 / 98
SEMMA Została ona stworzona z myślą o oprogramowaniu Enterprise Miner. Koncentruje się na opracowywaniu modeli i kładzie mniejszy nacisk na początkowe fazy planowania objęte CRISP-DM (Rozumienie biznesowe i fazy Zrozumienia Danych) oraz całkowicie pomija fazę wdrożenia. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 8 / 98
Cel Firma świadcząca usługi finansowe oferuje swoim klientom kredyt hipoteczny. Firma rozszerzyła w przeszłości kilka tysięcy linii kredytowych, a wiele z nich, które zaakceptowali wnioskodawcy (około 20 %) zalegają z pożyczkami. Używając zmiennych geograficznych, demograficznych i finansowych, firma chce zbudować model aby przewidzieć, czy wnioskodawca się nie wywiąże. Po przeanalizowaniu danych firma wybrała podzbiór 12 predyktorów zmiennych do modelowania. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 9 / 98
Opis danych BAD - zmienna celu - przyjmuje wartość 1, gdy kredytobiorca nie spłacił kredytu CLAGE- długość trwania najdłuższego z aktywnych zobowiązań kredytowych zaciągniętych przez kredytobiorcę (w miesiącach) CLNO - ilość aktywnych zobowiązań kredytowych DEBTINC - współczynnik zadłużenia do przychodu DELINQ - historyczna liczba zaległości kredytowych DEROG - ilość negatywnych informacji kredytowych JOB - wykonywany zawód LOAN - kwota pozostała do spłaty MORTDUE - kwota do spłaty bieżącej hipoteki NINQ - ilość ostatnio złożonych wniosków kredytowych REASON - przyjmuje wartość DebCon, gdy kredyt jest przeznaczony na konsolidację innego kredytu, wartość Homelmp, gdy jest przeznaczony na zwiększenie wartości hipoteki VALUE - wartość obecna hipoteki YOJ - staż w obecnej pracy (w latach) Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 10 / 98
Rodzaj i rola zmiennych W zakresie ról zmiennych najczęściej wykorzystywanymi są: Wejściowa (Input) - zmienna objaśniająca Zmienna celu (Target) - zmienna objaśniana Odrzucona (Rejected) - nie bierze udziału w analizie ID - identyfikator Dostępne jest pięć skal pomiarowych: Przedziałowa (Interval) - zmienna ciągła Nominalna (Nominal) Porządkowa (Ordinal) Binarna (Binary) Unarna (Unary) - zmienna o jednej wartości Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 11 / 98
Sample Węzeł Sample umożliwia pobieranie losowych, podzielonych losowo i klastrowych próbek zestawów danych. Pierwszy etap medodologii SEMMA składa się z trzech części: Importowanie danych Dobór próby (Sampling) Partycjonowanie. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 12 / 98
Import danych Ten węzeł może wykonać następujące działania: Dla każdej zmiennej tworzy metadane pobierając losowo 2000 obserwacji. W przypadku danych mających mniej niż 2000 obserwacji SAS wykorzystuje wszystkie dane. Na podstawie metadanych sprawdza poziom zmiennych oraz ich granice. Tworzy statystyki opisowe dla każdych zmiennych(na podstawie pobranych metadanych). Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 13 / 98
Sampling Próbkowanie jest zalecane w przypadku bardzo dużych baz danych, ponieważ może znacznie zmniejszyć czas szkolenia modeli. Jeśli próbka jest wystarczająco reprezentatywna, można oczekiwać, że relacje znalezione w próbce będą uogólniane do pełnego zestawu danych. Sampling polega na doborze próby z większego zbioru w taki sposób, aby dobór próby był reprezentatywny.można tego dokonać na kilka sposobów: N pierwszych Losowanie zwykłe-każda obserwacja ma to samo prawdopodobieństwo zostania wylosowanej. Losowanie warstwowe- losowanie to ma następujące kryteria: proporcjonalne (Udział obserwacji na każdej z warstw będzie taki sam w populacji) równe(węzeł losuje tę samą liczbę obserwacji z każdej z warstw) optymalne (Udział obserwacji na warstwach jak i wariancja będą takie same jak w populacji) Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 14 / 98
Partycjonowanie Partycjonowanie polega na podziale zbioru na 3 części: Uczący-Służy do zbudowania modelu.próba powinna być liczebności 40-70 % próby wejściowej Walidacyjna-Wykorzystuje się ją do porównywania skuteczności różnych modeli między sobą, powinna być między 20-30 % próby wejściowej. Testowa-próba używana do ostatecznej oceny modelu wybranego na podstawie danych walidacyjnych, powinna być między 20-30% próby wejściowej. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 15 / 98
Metody partycjonowania Wyróżniamy następujące metody: losowanie warstwowe (Stratified) - pozwala utrzymać rozkład zmiennej objaśnianej w powstających próbach losowanie klastrowe (Cluster) - losowanie proporcjonalne z klastrów wykrytych w badanej populacji prosta próba losowa (Simple random) Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 16 / 98
Identyfikacja danych wejściowych Rozpoczynamy od dodania źródła danych do projektu. Źródło: tabela SASowa Z biblioteki SAMPSIO wybieramy zbiór HMEQ W opcji Metadane kolumn dokonujemy następujących zmian: Rysunek: Metadane kolumn Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 17 / 98
Identyfikacja danych wejściowych Przetwarzanie decyzji - opcja Nie jest wybierana automatycznie. Oznacza to, że SAS nie podejmie decyzji co do przetwarzania danych dla tego źródła. Utwórz próbkę - opcja Nie jest wybierana automatycznie. Oznacza to, że próbka nie zostanie utworzona. Zamiast tego wykorzystywany jest cały zestaw danych do analizy. Atrybuty źródła danych - można zmienić nazwę pliku źródła danych, zmienić jego rolę, posegmentować źródło danych lub dodać uwagi. Nasz zbiór HMEQ zawiera znane wartości binarnej zmiennej docelowej BAD, czyli użyjemy danych do szkolenia naszego modelu predykcyjnego. Ustawiamy rolę źródła danych na Uczące. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 18 / 98
Dodawanie węzłów i partycjonowanie Prawym przyciskiem klikamy na Diagramy a następnie Utwórz diagram. Aby dodać dane wejściowe przeciągamy zestaw danych HMEQ z sekcji Źródła danych do obszaru roboczego diagramu. Aby wykonać partycjonowanie przeciągamy ikonę Partycjonowania na pole diagramu łączymy węzeł Zbioru danych z węzłem Partycjonowania uruchamiamy. Rysunek: Partycjonowanie Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 19 / 98
Eksploracja danych W tym etapie będziemy starać się zrozumieć dane. Będziemy badać rozkłady poszczególnych zmiennych oraz ich statystyki opisowe, a także analizować zależności występujące między nimi. Sprawdzimy, czy występują braki danych, a także czy w zbiorze nie ma obserwacji odstających (błędy w danych) Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 20 / 98
Sprawdzanie dystrybucji Możesz sprawdzić rozkład wartości w zestawie danych wejściowych dla każdej zmiennej. Aby wyświetlić dystrybucję dla zmiennej BAD, wykonaj następujące kroki: 1. Dodaj Eksploracja wykresów. 2. W oknie Zmienne wybierz zmienną BAD. 3. Kliknij ikonę Eksploruj w prawym dolnym rogu ekranu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 21 / 98
Na wykresie słupkowym widać, że około 80% obserwacji w BAD mają wartość 0, a 20% ma wartość 1. Oznacza to, że około 20% klientów z tego przykładu danych nie wywiązała się ze swoich pożyczek. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 22 / 98
Badanie statystyki opisowej Do naszego diagramu dorzucamy węzeł Eksploracja statystyk znajdujący się w zakładce Eksploracja. Węzeł ten umożliwia obliczenie podstawowych statystyk opisowych oraz wstępną analizę współzależności zmiennych. Aby badane korelacje pomiędzy zmienną zależną a zmiennymi niezależnymi obliczane były jedną metodą, należy umożliwić obliczenie statystyk Chi-kwadrat również dla zmiennych ciągłych (przedziałowych). Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 23 / 98
Współczynnik V Cramera Umożliwi to zastosowanie współczynnika V Cramera, przyjmującego wartości od 0 do 1. Współczynnik ten jest unormowaną miarą współzależności zmiennych. Współczynnik V Cramera oblicza się w następujący sposób: χ 2 = (n i,j n i n j n )2 n i n j i,j n V = ϕ 2 min(k 1, r 1) = χ 2 /n min(k 1, r 1) Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 24 / 98
Rezultaty Rysunek: Wykres współzależności zmiennych niezależnych ze zmienną zależną Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 25 / 98
Rezultaty Rysunek: Statystyki opisowe dla zmiennych klasyfikujących Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 26 / 98
Rezultaty Rysunek: Statystyki opisowe dla zmiennych przedziałowych Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 27 / 98
Rezultaty Na tym etapie widzimy, że wszystkie zmienne są istotne. Rysunek: Wartości statystyki Chi-kwadrat wraz z wartościami p Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 28 / 98
Modyfikowanie danych Modyfikacja to etap w którym należy przygotować dane do modelowania. Przygotowanie danych do budowy drzew decyzyjnych różni się od przygotowywania ich do regresji i sieci neuronowych. Podstawowa modyfikacja danych którą można zastosować zarówno do drzew,regresji oraz sieci neuronowych polega na: Porzuceniu nieistotnych dla budowy modelu oraz silnie skorelowanych zmiennych Sprawdzeniu obserwacji pod kątem zakodowanych braków danych Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 29 / 98
Regresja 1 Stworzymy teraz pierwszy model regresji. Przeciągamy węzeł Regresja do diagramu i łączymy z Partycjonowaniem. Węzły modelowania wymagają zmiennej docelowej. Naszą zmienną docelową jest zmienna BAD, która jest binarna. Dlatego domyślnym modelem będzie regresja logistyczna. Uruchamiamy. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 30 / 98
Regresja 1 - rezultaty Rysunek: Rezultaty-Regresja 1 Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 31 / 98
Regresja 1 - rezultaty Okno wykresu efektów zawiera wykres słupkowy bezwzględnej wartości efektów modelu. Im większa wartość, tym ważniejsza jest zmienna dla regresji. W tym przykładzie najważniejsze zmienne prognostyczne to DELINQ, JOB, NINQ, DEROG. Okno nakładka rankingów wyników punktowych umożliwia przeglądanie wykresów oceny. Domyślny wykres przedstawia skumulowany lift. Innym jest np. skumulowana odpowiedź procentowa. Ten wykres rozmieszcza obserwacje w decylach na podstawie ich przewidywanego prawdopodobieństwa odpowiedzi. To kreśli rzeczywisty odsetek badanych. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 32 / 98
Regresja 1 - rezultaty W tym przykładzie osoby posortowane są w malejącej kolejności ich przewidywanych prawdopodobieństw niewypłacalności kredytu. Okno wyniki wyświetla informacje zarówno dla zestawów danych treningowych, jak i walidacyjnych. Przypomnijmy, że zmienna DEBTINC ma wysoki procent brakujących wartości. Z tego powodu niewłaściwym jest stosowanie domyślnego modelu regresji bezpośrednio do danych treningowych. Powinniśmy rozważyć węzeł imputancji przed dopasowaniem modelu regresji. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 33 / 98
Imputancja Węzeł Imputancja umożliwia przypisywanie brakujących wartości danych wejściowych. Aby model był wiarygodny, należy pozbyć się braków danych. W tym węźle mamy możliwość określenia metody imputancji, która zastępuje każdą brakująca wartość pewną statystyką. Domyślnie zmienne przedziałowe są zastępowane przez średnią tej zmiennej. Zmienne klasowe są zastępowane przez najczęściej występującą wartość. W tym przykładzie użyjemy domyślnych wartości. Na karcie Modyfikacja przeciągamy węzeł Imputancja do diagramu. Łączymy z węzłem Partycjonowanie. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 34 / 98
Regresja 2 Budujemy model regresji oparty na imputowanym zbiorze danych. Przeciągamy węzeł Regresja do diagramu i łączymy z węzłem Imputancja. Użyjemy domyślnych ustawień węzła regresji. Model regresji pasuje do modeli zmiennych docelowych, porządkowych, nominalnych i binarnych. Ponieważ zmienna BAD jest zmienną binarną, domyślnym modelem jest regresja logistyczna. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 35 / 98
Rezultaty Ten wykres rozmieszcza obserwacje w decylach na podstawie ich przewidywanego prawdopodobieństwa odpowiedzi. Nakreśla rzeczywisty odsetek respondentów. Jeśli najedziemy kursorem na miejsce przecięcia się wykresów, będziemy mogli odczytać, że przy 10% najlepszych danych około 69% pożyczkobiorców nie wywiązuje się z zaciągniętej pożyczki. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 36 / 98
Rezultaty Wykresy lift przedstawiają te same informacje, ale w innej skali. Jak wspomniałyśmy wcześniej, ogólny odsetek respondentów wynosi 20%. Odsetek respondentów w pierwszym decylu wynosił 69%. Więc wzrost dla tego decyla wynosi 69 20 = 3, 44. Jak ustawimy kursor na wykresie na pierwszym decylu, możemy zobaczyć, że wartość dla tego punktu wynosi 3,4. Wskazuje to na to, że odsetek respondentów w pierwszym decylu jest ponad 3 razy większy niż odsetek respondentów w populacji. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 37 / 98
Rezultaty Można wyświetlić również wykres efektów dla tego modelu. Wykres efektów zawiera wartości dla zmiennych z wartościami imputowanymi. Zmiennymi imputowanymi są identyfikowane przez prefiks IMP. Zauważmy, że w tym modelu najważniejsze zmienne w Wykresie efektów to DELINQ (IMP DELINQ), JOB (IMP JOBOFFICE, IMP JOBSALES, IMP JOBPROFEXE, IMP JOBMGR), DEROG (IMP DEROG), NINQ (IMP NINQ) i REASON (IMP REASONDEBTCON). Rysunek: Wykres efektów Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 38 / 98
Wstępne badanie Aby zbadać rozkład wszystkich zmiennych w zbiorze, należy kliknąć na węzeł Partycjonowanie, a następnie w właściwościach w nagłówku Uczenie na trzy kropki przy Zmienne. Zaznaczamy wszystkie zmienne i klikamy Eksploruj. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 39 / 98
Wstępne badanie Okno podglądu zawiera próbki statystyk dla wszystkich zmiennych, histogram dla zmiennych interwałowych i wykresy słupkowe dla każdej klasy zmiennych. Rysunek: Eksploracja zmiennych Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 40 / 98
Wstępne badanie Okno właściwości próby zawiera informacje o próbkach zbioru danych, które użyto do statystyk i grafik w oknie podglądu. Wielkość pobrania wskazuje liczbę obserwacji użytych w próbce. Okno próbek statystycznych pokazuje obliczoną średnią,minimum, maksimum dla zmiennych interwałowych i liczbę poziomu klas, wartość modalną, oraz procent obserwacji w wartości modalnej dla zmiennej klasowej. Procent brakującej zmiennej jest obliczany dla każdej zmiennej. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 41 / 98
Wstępne badanie Zmienna CLAGE długość trwania najstarszej linii kredytowej klienta w miesiącu. Szary słupek w lewej części histogramu prezentuje brakujące wartości. Zauważmy, że zdecydowana większość obserwacji jest mniejsza od 350. Zbiór danych CLAGE jest przekrzywiony w prawo. Rysunek: CLAGE Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 42 / 98
Wstępne badanie Okno przyczyn pokazuje podane powody, dla których klient wziął pożyczkę. Nieopisany słupek pokazuje brakujące wartości.zauważmy, że więcej ludzi bierze pożyczkę na kredyt konsolidacyjny niż ulepszanie domu. Rysunek: REASON Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 43 / 98
Przekształcanie zmiennych Po przejrzeniu próbek statystycznych i zmiennych dystrybucyjnych, możemy zauważyć,że rozkład niektórych zmiennych ma asymetrię. W tym rozkładzie mały procent danych możne mieć duży wpływ na końcowy model. Czasami wykonując transformacje na wejściowej zmiennej można otrzymać lepsze dopasowanie modelu. Do diagramu dorzucamy węzeł Przekształcanie zmiennych w module Modyfikacja i łączymy z Partycjonowaniem. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 44 / 98
Przekształcanie zmiennych Skośność wskazuje poziom i kierunek asymetrii. Wartość skośności równa zero mówi, że rozkład jest perfekcyjnie symetryczny. Dodatnia wartość skośności pokazuje że ma prawostronną asymetrię, co opisuje wszystkie zmienne w tym zbiorze danych. Ujemna wartość skośności wskazuje, że rozkład ma lewostronną asymetrię. Kurtoza pokazuje spłaszczenie rozkładu. Jednakże ten przykład skupia się tylko na skośności statystycznej. Węzeł przekształconych zmiennych umożliwia szybkie przekształcenie zmiennych interwałowych używając standardowych przekształceń. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 45 / 98
Przekształcanie zmiennych Aby zmniejszyć skośność w naszych zmiennych, klikamy na węzeł Przekształcanie zmiennych. Po lewej stronie we właściwościach odnajdujemy Metody domyślne i przy Przedziałowe zmienne wejściowe zmieniamy na Logarytmiczna. Następnie uruchamiamy węzeł. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 46 / 98
Przekształcanie zmiennych W oknie Statystyki przekształceń znajdują się statystyki dla oryginalnych zmiennych i przekształconych. Kolumna Formuła wskazuje wyrażenie użyte do przekształcenia każdej zmiennej. Zauważmy,że wartość bezwzględna skośności statystycznej dla przekształconej zmiennej jest typowo mniejsza niż dla oryginalnej zmiennej. Rysunek: Statystyki-skośność Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 47 / 98
Interakcyjne dzielenie na klasy Dodatkową techniką procesowa przed modelowaniem jest interaktywne dzielenie, do którego odnosi się grupowanie. Metoda ta pozwala automatycznie grupować zmienne w klasy na podstawie ustawień węzła. Przez używanie interaktywnego grupowania węzła, można kontrolować liczbę grup zmiennych, udoskonalić moc przewidywania zmiennej, wybrać zmienne przewidujące, generować wagi danych dla każdej grupy zmiennych (WOE-Weight of evidence) oraz sprawić by zmieniało się płynnie przez grupy. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 48 / 98
Interakcyjne dzielenie na klasy WOE dla grup zdefiniowane jest jako logarytm stosunku proporcji nieważnych obserwacji w grupie przez proporcje ważnych obserwacji w grupie. Dla binarnego celu zmiennej BAD w tym przykładzie, BAD= 1 jest poziomem ważnym, a BAD= 0 jest poziomem nieważnym. WOE mierzy relatywne ryzyko grup. Wysokie negatywne wartości WOE odnoszą się do wysokiego ryzyka domyślnej pożyczki. Wysokie pozytywne wartości odnoszą się do niskiego ryzyka. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 49 / 98
Interakcyjne dzielenie na klasy Po dzieleniu interakcyjnym wartości zdefiniowanej zmiennej można oszacować jej moc predykcyjną. Moc przewidywań jest umiejętnością zmiennej do rozróżniania zdarzeń i nieistniejących obserwacji. W naszym przykładzie jest to umiejętność oddzielenia złych od dobrych klientów kredytowych. Siłę predykcyjną możemy ocenić za pomocą jednego z następujących kryteriów: wartość informacji - jest ważoną sumą WOE w stosunku do grup. Waga jest różnicą między proporcją nieistniejących elementów i proporcją zdarzeń w każdej grupie, współczynnik Giniego - jest taki sam jak współczynnik Giniego w drzewach decyzyjnych. Zmienne WOE są zwykle używane jako dane wejściowe w kolejnych węzłach modelujących. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 50 / 98
Interakcyjne dzielenie na klasy Zmienna NINQ była to ilość ostatnio złożonych indywidualnych wniosków kredytowych. NINQ jest zmienną obliczeniową, ale większość obserwacji ma wartość zarówno 0, 1 albo 2. Może być to użyteczne przy tworzeniu zgrupowanej wersji NINQ, gdzie wartości są większe od 2, na nowy poziom 2+ Taki zabieg stworzy nową 3-poziomową zmienną grupującą z NINQ. Prawdą jest że tworzenie zgrupowanej zmiennej, która kondensuje wiele poziomów w jeden złożony poziom może skutkować utratą informacji o dokładnej liczbie zapytań kredytowych. Jednakże taki zabieg umożliwia obsługę nieliniowości w relacji pomiędzy NINQ a zmienną odpowiadająca. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 51 / 98
Interakcyjne dzielenie na klasy By dokonać podziału NINQ, dodajemy Interakcyjne dzielenie na klasy do diagramu. Jednakże nie wolno transformować za pomocą tego węzła. Należy zablokować tę funkcje. Używamy tej funkcji do ręcznego podziału zmiennych wejściowych. Prawym przyciskiem myszy klikamy na węzeł Przekształcanie zmiennych i wybieramy opcje Edytuj zmienne. Zmieniamy metodę przy NINQ na Brak. Węzeł ten nie przekształci wtedy tej zmiennej. Uruchamiamy węzeł. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 52 / 98
Interakcyjne dzielenie na klasy Przed podziałem NINQ, zauważmy że większość zmiennych ma Wyliczaną rolę Rejected (Odrzucony). W celu użycia tych zmiennych w procesie eksploracji danych, należy ustawić im nową role jako wejście. Rysunek: Interakcyjne dzielenie na klasy Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 53 / 98
Interakcyjne dzielenie na klasy W właściwościach uczenie klikamy na trzy kropki przy Interakcyjnych dzieleniach na klasy. Zaznaczamy wszystkie zmienne i prawym przyciskiem myszy klikając na Nową rolę zmieniamy na Input. Rysunek: Interakcyjne dzielenie na klasy-wejście Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 54 / 98
Interakcyjne dzielenie na klasy Następnie klikamy na zakładkę Grupowanie, aby wyświetlić poszczególne podziały zmiennych. Rysunek: Grupowanie Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 55 / 98
Interakcyjne dzielenie na klasy Węzeł interakcyjnego dzielenia tworzy pięć grup dla NINQ. Zauważmy ze 2 grupy zawierają odpowiednio brakujące i ujemne wartości. Grupa zawierająca ujemne wartości jest pusta. Dla rozpatrywanego przykładu oznacza to, że ostatnio żadne wnioski kredytowe nie zostały złożone. Dlatego chcemy połączyć te dwie grupy w trzecią. Prawym przyciskiem myszy klikamy na grupę 1 a następnie Przypisz do i wybieramy grupę 3. Zauważmy, że grupy zostały ponownie ponumerowane. Następnie powtarzamy ten proces dla pustej grupy zawierającej wartości ujemne, z tym, że przypisujemy to do grupy 2. Nasze grupy ponownie zostają ponumerowane. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 56 / 98
Interakcyjne dzielenie na klasy Mamy teraz trzy grupy dla zmiennej NINQ. Chcemy dodać czwartą grupę, która zawiera wszystkie wartości > 2 i zachowuje grupę zawierającą tylko 2. Rysunek: Grupowanie Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 57 / 98
Interakcyjne dzielenie na klasy Aby to zrobić, wybieramy wiersz NINQ>= 2 i klikamy prawym przyciskiem myszy. Następnie Podziel klasę. Nazwę nowego obcięcia wpisujemy 2.5 (ponieważ wartości NINQ to tylko liczby całkowite, możemy wybrać dowolną wartość między 2 a 3). Tworzy to nowy zbiór, ale wciąż należy on do tej samej grupy. Aby stworzyć z niego nową grupę klikamy prawym przyciskiem myszy na 2.5 >=NINQ i Grupa= 4. Aby wprowadzić zmiany klikamy Zastosuj w lewym dolnym rogu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 58 / 98
Regresja 3 Wykonamy teraz kolejny model regresji. Przeciągamy węzeł Regresja do diagramu i łączymy z Interakcyjnym dzieleniem na klasy. We właściwościach odszukujemy Wybór modelu. Możemy wybrać jedną z następujących opcji: wsteczna-uczenie rozpoczyna się przy obecności w modelu wszystkich kandydujących efektów. Usuwanie efektów trwa aż do osiągnięcia poziomu istotności pozostania lub spełnienia kryterium stopu. postępująca-uczenie rozpoczyna się przy nieobecności w modelu wszystkich kandydujących efektów i towarzyszy mu dodawanie efektów aż do osiągnięcia poziomu istotności wejścia lub spełnienia kryterium stopu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 59 / 98
Regresja 3 krokowa- uczenie rozpoczyna się jak w modelu Postępującym, lecz może towarzyszyć mu usuwanie efektów już istniejących w modelu. I tak aż do osiągnięcia poziomu istotności pozostania lub spełnienia kryterium stopu. brak-do dopasowania modelu użyte zostaną wszystkie dane wejściowe. W tym przykładzie wybierzemy model Postępujący. W opcji Użyj wyborów domyślnych wybieramy Nie. Opcje wyboru stają się dostępne. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 60 / 98
Regresja 3 Rysunek: Opcje wyboru Okno Opcje wyboru otwiera okienko służące do dostosowania ustawień wyboru do własnych potrzeb. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 61 / 98
Regresja 3 Rysunek: Opcje wyboru W tym przykładzie ustawiamy wartość poziomu istotności pozostania na 0.025, a początkową liczbę zmiennych na 10 (zapewnia to użycie co najmniej 10 efektów modelu regresji). Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 62 / 98
Regresja 3 Analizę tej regresji możemy wykonać analogicznie jak w poprzednich przykładach. Ocenę tego modelu przedstawimy na końcu, podczas porównania wszystkich modeli. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 63 / 98
Drzewa decyzyjne W praktycznych zastosowaniach modeli predykcyjnych istotna jest łatwość interpretacji i wyjaśnienia generowanych wyników. Bardzo pomocne są przy tym drzewa decyzyjne, które generują zależności w postaci zbioru warunków logicznych. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 64 / 98
Budowa drzewa Budowę drzewa zaczynamy od podziału korzenia.w pierwszym kroku poszukujemy podziału,który pozwoli odnaleźć grupy charakteryzujące się dużą jednorodnością ze względu na wartość zmiennej objaśnianej.warunkiem koniecznym jest poprawa stopnia takiej jednorodności względem elementu,który jest dzielony.szukany jest podział,który zmaksymalizuje różnicę: Z = Z 0 r i=1 n i n 0 Z i gdzie: Z 0 -stopień niejednorodności dzielonego elementu; Z i -stopień niejednorodności i-tego elementu powstającego w wyniku podziału; n 0 -liczebność dzielonego elementu; n i -liczebność i-tego elementu powstającego w wyniku podziału; r-liczba elementów powstających w wyniku podziału; Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 65 / 98
Stopień niejednorodności Stopień niejednorodności (zanieczyszczenia) może być oceniany przy użyciu następujących miar: Współczynnik Diniego k Z = 1 pi 2 i=1 gdzie k - liczba kategorii przyjmowanych przez zmienną objaśnianą, p i - odsetek obserwacji przyjmujących i-tą wartość zmiennej objaśnianej. Współczynnik entropii Z = H(p 1,.., p k ) = k p i log 2 (p i ) i=1 Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 66 / 98
Węzeł drzewa decyzyjnego W zakładce Modelowanie wybieramy ikonę Drzewa decyzyjne i przeciągamy na pole diagramu analogicznie jak w przypadku Partycjonowania łączymy węzeł Drzewa decyzyjnego z węzłem Partycjonowania. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 67 / 98
Nakładka rankingów ocen punktowych Porównanie wykresów wzrostu liftu dla zbioru treningowego i walidacyjnego. Jeżeli krzywe się istotnie różnią,to świadczy to o przetrenowaniu lub niedotrenowaniu modelu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 68 / 98
Statystyki liściowe Wykres porównuje procentowy udział wartości zmiennej objaśnianej równej 1 we wszystkich liściach dla danych treningowych i walidacyjnych.duże różnice w wysokości słupków wskazują, że dany liść należy przyciąć. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 69 / 98
Mapa drzewa Mapa drzewa pokazuje jego strukturę,powierzchnia prostokątów odpowiada liczebności w danych węzłach drzewa.natężenie koloru pokazuje stopień jednorodności populacji w danym węźle. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 70 / 98
Statystyki dopasowania Tabela pokazuje statystyki dopasowania na zbiorach treningowym, walidacyjnym i ewentualnie testowym. Duże różnice w wartościach statystyk dopasowania mogą wskazywać na przetrenowanie lub niedotrenowanie modelu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 71 / 98
Wynik W wyniku warto zwrócić uwagę na tabelę klasyfkacji,pokazującą udział dobrze i źle sklasyfkowanych obserwacji na zbiorach treningowym i walidacyjnym. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 72 / 98
Analiza danych-drzewo 1 Wartość zmiennej objaśnianej. 2 Dane treningowe. 3 Dane walidacyjne. 4 Liczba obserwacji. 5 Udział procentowy dla każdej wartości zmiennej objaśnianej. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 73 / 98
Drzewo Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 74 / 98
Interpretacja fragmentu drzewa W zbiorze jest 19,94% zadłużonych ludzi, zaś w podzbiorze ludzi o wysokim współczynniku zadłużenia mniejszym niż 44.7337 jest 7,25%. Dzieląc dalej ten podzbiór poprzez wartość obecną hipoteki dostajemy, że spośród zadłużonych ludzi 6.55% z nich ma wartość hipoteki mniejszą niż 303 749. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 75 / 98
Wykres Klasyfikacji Wybieramy Rezultaty Widok Ocena Wykres klasyfikacji. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 76 / 98
Budowa odpowiedniego drzewa Zbyt złożone drzewo (wielokrotnść podziałów,duża głębokość i ilość liści) jest nadmiernie dopasowane do zależności charakterystycznych dla zbioru treningowego,przez co jest bardziej niestabilne (przetrenowanie).zbyt małe drzewo ma większy odsetek błędnych klasyfikacji.optymalną wielkość drzewa możemy wybrać posługując się wykresem błędu średniokwadratowego lub skuteczności klasyfkacji względem liczby liści drzewa. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 77 / 98
MSE W rezultatach klikamy: widok model wykres oceny poddrzewa Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 78 / 98
Sieci neuronowe Definicja1 Zbiór prostych jednostek obliczeniowych przetwarzających dane, komunikujących się ze sobą i pracujących równolegle. Definicja2 Zbiór połączonych ze sobą jednostek wejściowo-wyjściowych. Z każdym połączeniem skojarzona jest waga, która może zostać zmieniona w trakcie uczenia. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 79 / 98
Czym jest sieć neuronowa? Sieci neuronowe w założeniu są to obiekty, które swoim działaniem naśladują aktywność rzeczywistych układów nerwowych w mózgach organizmów żywych.w skutek połączenia szeregu neuronów o stosunkowo prostej budowie i niewielkich możliwościach uzyskuje się strukturę zdolną do przeprowadzania bardzo skomplikowanych procesów rozpoznawania wzorców i klasyfikacji. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 80 / 98
Poniżej jest przedstawiony prosty model regresyjny w postaci sieci neuronowej. Warstwa wejściowa zawiera n neuronów (odpowiadających zmiennym) oraz warstwę wyjściową sumującą ważone impulsy i transformującą je do skali oryginalnej zmiennej Y. Rysunek: Przykład sieci neuronowej Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 81 / 98
Sieci neuronowe Rozszerzeniem tak opisanej architektury jest model perceptronu wielowarstwowego (MLP - Multi Layer Perceptron), który dodatkowo zawiera warstwę ukrytą. Składa się ona z określonej ilości neuronów, które nieliniowo przekształcają kombinację liniową otrzymanych sygnałów.pojedynczy neuron z warstwy ukrytej składa się z dwóch elementów: sumatora (funkcji łączenia) funkcji aktywacji Pierwszy z nich dokonuje sumowania ważonych sygnałów z warstwy wejściowej oraz wyrazu wolnego, drugi tak otrzymaną sumę przekształca przy użyciu określonej funkcji ciągłej. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 82 / 98
Rysunek: Przykład sieci neuronowej Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 83 / 98
Funkcja łączenia odpowiada za wytworzenie jednej wartości wejściowej dla danego neuronu z wartości jego poprzedników. Duża część dostępnych w SAS Enterprise Miner funkcji opiera się na radialnej funkcji bazowej - jest to funkcja, której wartości zależą tylko od odległości od ustalonego punktu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 84 / 98
Rodzaj funkcji łączenia addytywna liniowa EQSlopes EQRadial EHRadial Charakterystyka sumuje wszystkie wartości wejściowe stanowi kombinację liniową wartości wejściowych i wag stanowi kombinację liniową wartości wejściowych i wag, przy czym w danej warstwie używa się tej samej wagi, dodając inną wartość współczynnika przesunięcia( ang.bias) dla każdej wartości wejściowej radialna funkcja bazowa z równymi wysokościami i szerokościami w obrębie warstwy radialna funkcja bazowa z równymi wysokościami i nierównymi szerokościami w obrębie warstwy Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 85 / 98
Rodzaj funkcji aktywacji Wzór tożsamościowa g liniowa g weight + b wykładnicza exp(g) 1 odwrotna g kwadratowa g 2 1 logistyczna 1+e g Gaussa exp( g 2 ) sinus sin g Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 86 / 98
Przetwarzanie informacji w neuronach Pobudzeniem neuronu p domyślnie jest liniowa funkcja sygnałów wejściowych z wagami połączeń jako współczynnikami (combination function). gdzie: x i - wartość zmiennej; w i - waga zmiennej. n p = w i x i, i=1 Sygnał wyjściowy y jest zależny od całkowitego pobudzenia neuronu, transformowanego przez funkcję aktywacji. Pozwala to wprowadzić nieliniowość. y = f (p) = f ( n w i x i ) Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 87 / 98 i=1
Węzeł sieci neuronowej Węzeł sieci neuronowej umożliwia konstruowanie, szkolenie i sprawdzanie wielowarstwowych sieci neuronowych feedforward. Użytkownicy mogą wybierać spośród kilku predefiniowanych architektur lub ręcznie wybierać funkcje i opcje wejściowe, ukryte i docelowe warstwy. Dołączamy do diagramu węzeł Sieć neuronowa i łączymy z węzłem Interakcyjne dzielenie na klasy, a następnie uruchamiamy. Domyślnie węzeł ten tworzy wielowarstwowy model perceptonu (MLP-multilayer percepton) bez bezpośrednich połączeń, a liczba ukrytych warstw zależy od danych. Uruchamiamy węzeł. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 88 / 98
Sieć neuronowa - rezultaty Okno Statystyki dopasowania wyświetla różne obliczone statystyki dla modelu sieci neuronowej. Okno Wykres iteracji wyświetla różne statystyki, które zostały obliczone w każdej iteracji podczas tworzenia sieci neuronowej. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 89 / 98
Sieć neuronowa - rezultaty Wybieramy Widok Ocena Wykres klasyfikacji. Rysunek: Wykres klasyfikacji Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 90 / 98
Ocena i porównanie modeli W zakładce Ocena wybieramy Porównanie modeli przeciągamy na pole diagramu i łączymy z węzłami wszystkich prezentowanych metod. Rysunek: Porównanie modeli Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 91 / 98
Ocena i porównanie modeli Po wybudowaniu wielu konkurencyjnych modeli predykcyjnych pozostaje zagadnienie wyboru najlepszego z nich, który będzie mógł być zastosowany dla nowo napływających danych. Dopasowanie modelu może być ocenione przy użyciu różnych statystyk. Przykładowe z nich to: Skuteczność klasyfkacji - odsetek poprawnie zaklasyfikowanych przypadków. Miara często używana do oceny modeli klasyfikacyjnych wtedy, gdy każdy z obserwowanych przypadków można traktować z równą wagą. Błąd średniokwadratowy - średnia wartość kwadratu różnicy pomiędzy predykcją a rzeczywistą wartością. W przypadku binarnych zagadnień klasyfikacyjnych wartością przewidywaną jest prawdopodobieństwo, a wartością rzeczywistą 0 lub 1. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 92 / 98
Statystyki dopasowania Maksymalny błąd bezwzględny - wartość bezwzględna największej różnicy pomiędzy wartością przewidywaną a rzeczywistą. Miara oceniająca maksymalny spodziewany błąd predykcji. Statystyka Kołmogorowa-Smirnowa - określa, jak dobrze dwie klasy zmiennej objaśnianej są rozróżniane przez model. Jej wartość obliczana jest jako: max F 1 (t) F 0 (t) t F 0 (t), F 1 (t) - wartości dystrybuanty empirycznej predykcji dla grup obserwacji, w których zmienna objaśniana przyjmuje odpowiednio wartości 0 i 1. Im większa wartość tej statystyki, tym większe różnice w prawdopodobieństwach przydzielanych obu grupom, a więc tym większa moc dyskryminacyjna modelu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 93 / 98
Wzrost (Lift) - miara dla określonego odsetka populacji będącej przedmiotem zagadnienia klasyfikacyjnego. Obliczana jest poprzez podzielenie odsetka zaobserwowanych zdarzeń w górnych n% populacji posortowanej malejąco według przewidywanych prawdopodobieństw przez procent tych samych zdarzeń w całej populacji. Indeks ROC - miara określająca skuteczność modelu w rozpoznawaniu różnic pomiędzy popopulacjami o różnych wartościach zmiennej objaśnianej. Powstaje poprzez obliczenie pola pod krzywą ROC, która konstruowana jest w następujący sposób: z populacji posortowanej malejąco według przydzielonych prawdopodobieństw wybierane jest górne k% obserwacji; przy założeniu, że w wybranej podpopulacji znajduje się x jedynek i y zer oraz oznaczając przez n 1 in 0 liczności tych klas w całej rozpatrywanej próbie, obliczane są następujące wartości: 1-specyficzność= y n 0 wrażliwość = x n 1 Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 94 / 98
tak opisane operacje powtarzane są dla różnych wartości k, a otrzymane wartości łączone są w krzywą. W związku z powyższym im bardziej wykres krzywej skierowany jest w stronę lewego górnego rogu, tym lepsze własności klasyfikacyjne badanego modelu. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 95 / 98
Krzywa ROC Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 96 / 98
Skumulowany lift Wykres przyrostu pokazuje o ile częściej niż w danych źródłowych przewidywana klasa występuje w próbie wskazanej przez dany model. Uzyskana w ten sposób krzywa powinna gładko spadać od największej wartości do 1. Gwałtowne skoki w górę sugerują, że model jest nieodpowiedni (oznaczają one, że model niezgodnie z rzeczywistością przewiduje szansę przynależności do klasy: tam gdzie według modelu jest ona mniejsza, w rzeczywistości jest większa). Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 97 / 98
Statystyki dopasowania Na podstawie przedstawionych statystyk najlepszym modelem jest drzewo decyzyjne. Klaudia Malinowska, Simona Pikuła Data Mining Statystyka w SAS 98 / 98