statystyka w sas - politechnika gdańska · techniki eksploracji danych techniki eksploracji...
TRANSCRIPT
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Statystyka w SASData Mining
Krzysztof Glapiak, Mateusz Borsuk,Jakub Gierasimczyk, Arkadiusz Gałecki
Matematyka Finansowa
15 czerwca 2015
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Plan prezentacji1 Wstęp - czym jest Data Mining2 Partycjonowanie danych3 Drzewa decyzyjne4 Regresja5 Sieci neuronowe6 Ocena i wybór modelu
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Czym jest Data Mining?
Definicja
Data Mining (eksploracja danych) jest to jeden z etapów procesuodkrywania wiedzy z baz danych (ang. Knowledge Discovery inDatabases, KDD). Polega na wykorzystaniu zaawansowanychmetod do modelowania relacji w dużych zbiorach danych.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Techniki eksploracji danych
Techniki eksploracji danych:
regresja
drzewa decyzyjne
sieci neuronowe
metody uczenia maszynowego
metody ewolucyjne
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Metody przetwarzania
Metody przetwarzania:
poszukiwanie asocjacji
analiza jakościowa danych
analiza ilościowa danych
klasyfikacja
grupowanie
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Etapy procesu Data Mining w SAS
Wszystkie omawiane w prezentacji kroki stanowią składowe metodologiSEMMA (Sample, Explore, Modify, Model, Assess), która opisuje całość DataMining z poziomu narzędzi analitycznych SAS. Jest ona rozumiana jakorozbicie tego procesu na pięć powiązanych ze sobą etapów:
1 Sample - przygotowanie i podział wejściowej próby danych.
2 Explore - eksploracja danych, służąca ocenie ich jakości oraz wstępnejidentyfikacji zależności pomiędzy zmiennymi.
3 Modify - modyfikacja danych, służąca poprawie ich jakości, spełnieniuzałożeń metod modelowania lub zwiększaniu ich elastyczności poprzeztransformację zmiennych.
4 Model - modelowanie przy użyciu takich metod jak wspomniane drzewadecyzyjne, regresja czy sieci neuronowe.
5 Assess - ocena jakości budowanych modeli i wybór najlepszego z nich, anastępnie monitorowanie jego skuteczności na nowo napływającychdanych.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Import danych
Po otwarciu nowego projektu w SAS Enterprise Miner Workstation ukazujenam się okno diagramu, na którym będziemy pracować.
Analizować będziemy dane dotyczące kredytobiorców.Aby zaimportować dane należy wybrać Plik → Nowy → Źródło danych.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Import danych
Pojawia się tabela z atrybutami zmiennych. Analizować będziemy zmiennąBAD objaśniającą czy kredytobiorca spłacił pożyczkę, dlatego rolę zmiennejokreślamy jako Zmienną celu.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Wyświetlanie zbioru danych
Aby wyświetlić zaimportowany zbiór należy przeciągnąć źródło danych HMEQ zlewego górnego okna na pole diagramu → zaznaczyć kafelkę → w lewymdolnym oknie nacisnąć [...] obok pola Importowane dane → nacisnąćPrzegladaj...
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
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
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Czym jest Data MiningOmówienie danych
Omówienie badanych zmiennychAnalizowany zbiór danych przedstawia informację na temat kredytobiorców:
BAD - zmienna celu - przyjmuje wartość 1, gdy kredytobiorca nie spłacił kredytu
CLADGE - długość trwania najdłuższego z aktywnych zobowiązań kredytowychzacią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 nakonsolidację innego kredytu, wartość HomeImp, gdy jest przeznaczony nazwiększenie wartości hipoteki
VALUE - wartość obecna hipoteki
YOJ - staż w obecnej pracy (w latach)
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł Partycjonowanie
Węzeł Partycjonowanie
Aby wykonać partycjonowanie przeciągamy ikonę Partycjonowania na polediagramu → łączymy węzeł Zbioru danych z węzłem Partycjonowania →uruchamiamy.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł Partycjonowanie
Podział zbioru
Zbiór dzielimy na trzy części:
treningowa - służy do zbudowania modelu. Liczność tej próby powinnabyć pomiędzy 40% a 70% próby wejściowej
walidacyjna - służy do porównania różnych modeli między sobą, powinnabyć między 20% do 30% próby wejściowej
testowa - próba używana do ostatecznej oceny modelu wybranego napodstawie danych walidacyjnych, powinna być między 20% do 30% próbywejściowej
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł Partycjonowanie
Metody partycjonowania
Wyróżniamy następujące metody:
losowanie warstwowe (Stratified) - pozwala utrzymać rozkład zmiennejobjaśnianej w powstających próbach
losowanie klastrowe (Cluster) - losowanie proporcjonalne z klastrówwykrytych w badanej populacji
prosta próba losowa (Simple random)
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Węzeł Drzewa decyzyjne
W zakładce Modelowanie wybieramy ikonę Drzewa decyzyjne i przeciągamy napole diagramu analogicznie jak w przypadku Partycjonowania → łączymy węzełDrzewa decyzyjnego z węzłem Partycjonowania.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Analiza danych za pomocą drzewa decyzyjnego
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.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Analiza danych za pomocą drzewa decyzyjnego
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Wykres klasyfikacji
Wybieramy Rezultaty → Widok → Ocena → Wykres klasyfikacji.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Postać modelu
Budując model drzewa dokonujemy podziału za pomocą wzoru:
∆Z = Z0 −r∑
i=1
nin0
Zi ,
gdzie Z0 - stopień niejednorodności dzielonego elementu,n0 - liczność dzielonego elementu,r - liczba elementów powstających w wyniku podziału,Zi - niejednorodność i-tego elementu powstałego w wyniku podziału,ni - liczność i-tego elementu powstałego w wyniku podziału.
Wybieramy ten podział, dla którego różnica ∆Z jest największa.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Stopień niejednorodności
Stopień niejednorodności (zanieczyszczenia) może być oceniany przy użyciunastępujących miar:
Współczynnik Giniego
Z = 1−k∑
i=1
p2i ,
gdzie k - liczba kategorii przyjmowanych przez zmienną objaśnianą,pi - odsetek obserwacji przyjmujących i-tą wartość zmiennej objaśnianej.
Współczynnik entropii
Z = H(p1, ..., pk) = −k∑
i=1
pi log2(pi )
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład
Rozważmy tabelę z danymi:
Chcemy wyznaczyć czy dana osoba należy do grupy wysokiego czy niskiegoryzyka.Atrybutami, względem których możemy podzielić zbiór wejściowy są Wiek orazTyp samochodu. Możliwe punkty podziału dla wieku to: Wiek ≤ 17,Wiek ≤ 20, Wiek ≤ 23, Wiek ≤ 32, Wiek ≤ 43, Wiek ≤ 68 oraz dla typusamochodu: {sport}, {truck}, {family}. Klasy to Low oraz High.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład c.d.
Punkt podziału gsplit dany jest wzorem:
gsplit =m1 + n1
m + nZ1 +
m2 + n2
m + nZ2, gdzie
m1, n1 - liczba elementów w S1 należących do klas odpowiednio High i Low,m2, n2 - liczba elementów w S2 należących do klas odpowiednio High i Low.W przypadku Wiek ≤ 17 mamy:
Wartości współczynników Giniego oraz punktu podziału wynoszą:
Z1 = Z(S1) = Z(Wiek ≤ 17) = 1− (12 + 02) = 0,
Z2 = Z(S2) = Z(Wiek ≥ 17) = 1− ((3/5)2 + (2/5)2) = 0.73,
gsplit =m1 + n1
m + nZ1 +
m2 + n2
m + nZ2 = (1/6) · 0 + (5/6) · 0.73 = 0.61
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład c.d.
Postępując analogicznie dla kolejnych punktów podziału: Wiek ≤ 20,Wiek ≤ 23, Wiek ≤ 32, Wiek ≤ 43, Wiek ≤ 68 otrzymamy:
Wiek ≤ 20, gsplit = 0.33
Wiek ≤ 23, gsplit = 0.22
Wiek ≤ 32, gsplit = 0.29
Wiek ≤ 43, gsplit = 0.27
Wiek ≤ 68, gsplit = 0.44
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład c.d.
Podobnie postępujemy przy podziale ze względu na typ samochodu.
Z(Typ sam ∈ {sport}) = 1− ((2/2)2 + 02) = 0,Z(Typ sam ∈ {family , truck}) = 1− ((2/4)2 + (2/4)2) = 0.5,gsplit = (2/6) · 0 + (4/6) · 0.5 = 0.33,
Z(Typ sam ∈ {truck}) = 0,Z(Typ sam ∈ {family , sport}) = 0.32,gsplit = (1/6) · 0 + (5/6) · 0.32 = 0.27,
Z(Typ sam ∈ {family}) = 0.44,Z(Typ sam ∈ {truck, sport}) = 0.44,gsplit = (3/6) · 0.44 + (3/6) · 0.44 = 0.44.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład c.d.
Najmniejsza wartość gsplit = 0.22 jest przyjmowana w przypadku punktupodziału Wiek ≤ 23. Ostatecznie, ze względu na dużą rozpiętość międzykolejnymi danymi na temat wieku, punkt podziału ustalamy nagsplit = (23 + 32)/2 = 27.5. Na skutek takiego podziału dostajemy drzewopostaci:
Możemy zauważyć, że w każdym przypadku gdy Wiek ≤ 27.5 Ryzyko wpada doklasy High, więc lewa gałąź nie będzie rozwijana - doszliśmy do liścia.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład c.d.
Podział prawego węzła ze względu na Typ samochodu przebiega analogicznie zuwzględnieniem, że Wiek > 27.5, czyli na danych:
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik Giniego - przykład c.d.
Ostatecznie drzewo ma postać:
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik entropii
Do wyboru atrybutu testowego w wierzchołku drzewa decyzyjnegowykorzystujemy miarę zysku informacyjnego. W tym celu wybieramyatrybut o największej wartości zysku (lub o największej redukcji entropii)
Atrybut testowy minimalizuje ilość informacji niezbędnej do klasyfikacjiprzykładów w partycjach uzyskanych w wyniku podziału
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Współczynnik entropii
Dany jest zbiór przykładów S, zbiór kategorii Ci oraz zbiory si należące do Ci .Wartość współczynnika entropii możemy obliczyć przy użyciu poniższego wzoru:
Współczynnik entropii
H(s1, . . . , s2) = −m∑i=1
pi log2(pi ),
gdzie:
m - liczba różnych wartości przyjmowanych przez zmienną objaśniającą
pi = sis
- odsetek obserwacji przyjmujących i-tą wartość zmiennejobjaśnianej.
UWAGA
Przyjmuje się 0 · log2 0 = 0.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Entropia
Entropię podziału zbioru S, ze względu na atrybut A definiujemy następująco:
Entropia
E(a1, . . . , ak) =k∑
j=1
(s1j+···+smj )
sH(s1j , . . . , smj),
gdzie:
H(s1j , . . . , smj) = −m∑i=1
pij log2(pij)
pij =sij|Sj |
, Sj - dana partycja.
Im mniejsza wartość entropii, tym mniejsze zanieczyszczenie podziału zbioru Sna partycje.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Zysk informacyjny
Zysk informacyjny, wynikający z podziału zbioru S, ze względu na atrybut A,definiujemy:
Zysk informacyjny
Gain(A) = H(s1, . . . , sm)− E(A).
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Przykład
Jako atrybut decyzyjny przyjmujemy ”kupi komputer”.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Przykład
Atrybut ”kupi komputer” posiada dwie wartości: tak i nie, stąd otrzymujemydwie klasy:
C1 - odpowiada wartości tak i zawiera s1 = 9 elementów
C2 - odpowiada wartości nie i zawiera s2 = 5 elementów
Otrzymujemy:
H(s1, s2) = H(9, 5) = − 914 log2
914 −
514 log2
514 = 0.94.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Kolejnym krokiem jest obliczenie entropii każdego atrybutu testowego.Pierwszym będzie wiek, który składa się z 3 partycji.
wiek=’≤30’
s11 = 2 ∧ s21 = 3⇒ H(s11, s21) = 0.971.
wiek=’31..40’
s12 = 4 ∧ s22 = 0⇒ H(s12, s22) = 0.
wiek=’>40’
s13 = 2 ∧ s23 = 3⇒ H(s13, s23) = 0.971.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Entropia atrybutu ’wiek’ wynosi:
E(′wiek ′) = 514H(s11, s21) + 4
14H(s12, s22) + 514H(s13, s23) = 0.694
Zysk informacyjny wynikający z podziału zbioru S, ze względu na atrybut”wiek” wynosi:
Gain(′wiek ′) = I (s1, s2)− E(′wiek ′) = 0.94− 0.694 = 0.277
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Analogicznie postępujemy z pozostałymi atrybutami. W ten sposóbotrzymujemy:
Zysk informacyjny wszystkich atrybutów
Gain(′wiek ′) = 0.277
Gain(’dochód’)= 0.029
Gain(′student′) = 0.151
Gain(′status ′) = 0.048
Jako pierwszy atrybut testowy wybieramy ten z największym zyskieminformacyjnym, w tym przypadku ’wiek’.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Tworzymy wierzchołek o etykiecie ’wiek’ oraz łuki wychodzące łączącewierzchołek ’wiek’ z wierzchołkami odpowiadającymi partycjom utworzonymzgodnie z podziałem zbioru S wg atrybutu ’wiek’.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Budowa modeluWspółczynnik GiniegoEntropia
Postępując analogicznie dla wierzchołków S1 oraz S3, okazuje się, żenajlepszym atrybutem testowym dla wierzchołka odpowiadającym dla pierwszejpartycji jest atrybut ’student’, a dla trzeciej partycji - atrybut ’status’.Ostateczny kształt drzewa decyzyjnego przedstawiono na rysunku poniżej.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł ImputacjaWęzeł Regresja
Przygotowanie danych
Aby wykonać regresję należy uzupełnić braki danych. W tym celu posłużymysię węzłem Imputacja.Wybrać zakładkę Modyfikacja → Imputacja, przeciągnąć na pole diagramu oraz
połączyć z węzłem Partycjonowanie.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł ImputacjaWęzeł Regresja
Metody uzupełniania danych
Spośród metod uzupełniania danych są między innymi:
Dominanta
Średnia
Mediana
Wartość wylosowana zgodnie z rozkładem
Wartość uzyskana na podstawie drzewa decyzyjnego
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł ImputacjaWęzeł Regresja
W zakładce Modelowanie wybieramy Regresja → przeciągamy na polediagramu i łączymy z węzłem Imputacja.
Dodatkowo z naszego modelu regresji wyrzucamy zmienne tekstowe. W tymcelu klikamy prawym przyciskiem na węzeł Regresja → Edytuj zmienne → dlazmiennych IMP JOB oraz IMP REASON wybieramy w kolumnie użyj - Nie.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł ImputacjaWęzeł Regresja
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł ImputacjaWęzeł Regresja
Wykres efektów pokazuje wartości współczynników regresji. Zaznaczone sąosobnymi kolorami współczynniki dodatnie i ujemne.
Dodatkowo po zaznaczeniu okna wykresu, klikając w lewym górnym rogu naikonę Tabela wyświetlają się rezultaty z dokładnymi watościamiwspółczynników oraz test istotności dla parametrów.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł ImputacjaWęzeł Regresja
Postać modelu
W naszym przypadku jako funkcji łączącej (link function) użyliśmy funkcjilogitowej.Zatem wartość oczekiwana w naszym modelu przyjmuje postać:
G(E(BAD)) =k∑
i=1
aiXi , gdzie k - liczba zmiennych,
ai - wartość współczynnika,xi - wartość zmiennej,funkcja G(x) = log( x
1−x).
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
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.Poniżej jest przedstawiony prosty model regresyjny w postaci sieci neuronowej.Warstwa wejściowa zawiera n neuronów (odpowiadających zmiennym) orazwarstwę wyjściową sumującą ważone impulsy i transformującą je do skalioryginalnej zmiennej Y.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
Podstawowym rozszerzeniem tak opisanej architektury jest model perceptronuwielowarstwowego (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 ifunkcji aktywacji.Pierwszy z nich dokonuje sumowania ważonych sygnałów z warstwy wejściowej orazwyrazu wolnego, drugi tak otrzymaną sumę przekształca przy użyciu określonej funkcjiciągłej.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
Schemat sieci neuronowej z jedną warstwą ukrytą zawierającą n neuronów.Model opisany dla m zmiennych objaśniających
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
W zakładce Modelowanie wybieramy Sieć neuronowa → przeciągamy na polediagramu i łączymy z węzłem Imputacja → w lewym dolnym oknie wybieramyprzycisk [...] w wierszu Sieć → ustawiamy Liczbę jednostek ukrytych na 20.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
Wykres klasyfikacji.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
W Rezultatach wybieramy Widok → Model → Wagi końcowe.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Informacje ogólneWęzeł Sieci neuronowePrzetwarzanie informacji w neuronach
Przetwarzanie informacji w neuronach
Pobudzeniem neuronu p domyślnie jest liniowa funkcja sygnałów wejściowych zwagami połączeń jako współczynnikami (combination function).
p =
n∑i=1
wixi ,
gdzie xi - wartość zmiennejwi - waga zmiennej.
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∑i=1
wixi )
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Węzeł porównanie modeli
W zakładce Ocena wybieramy Porównanie modeli → przeciągamy na polediagramu i łączymy z węzłami wszystkich prezentowanych metod.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Statystyki dopasowania
Dopasowanie modelu może być ocenione przy użyciu różnych statystyk.Przykładowe to:
Skuteczność klasyfikacji
Błąd średniokwadratowy (ASE) ASE = 1n
n∑i=1
(y∗i − yi )2
Statystyka Kołmogorowa-Smirnowa KS = max{t : |F1(t)− F0(t)|}Indeks ROC
Wzrost (lift)
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Porównanie modeli
Krzywe ROC dla trzech modeli dla każdej partycji. Miarą dopasowania jest polepod wykresem - im wartość bliższa 1 tym lepiej dopasowany model.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Krzywa ROC - przykład
W badaniach dopasowania zmiennej binarnej korzysta się z takich miar jakspecyficzność i wrażliwość.Załóżmy, że przeprowadzamy test na HIV. W populacji są osoby zdrowe oraz chore.Osoby zarażone oznaczymy yi = 1. Jeśli nasz test wskaże, że osoba jest choraoznaczymy yi = 1, a gdy zdrowa yi = 0
Wrażliwość (czułość) jest to prawdopodobieństwo, że chorą osobę test zakwalifikujejako rzeczywiście chorą P(yi = 1|yi = 1) w przybliżeniu jest to udział osób, które sąchore i u których test wyszedł poprawnie spośród wszystkich chorych osób.P(yi = 1|yi = 1) ≈ n11
n11+n01Wrażliwość to true positive.
Specyficzność (swoistość) jest to prawdopodobieństwo, że zdrową osobę testzakwalifikuje jako rzeczywiście zdrową P(yi = 0|yi = 0) w przybliżeniu jest to udziałosób, które są zdrowe i u których test wyszedł poprawnie spośród wszystkich zdrowychosób. P(yi = 0|yi = 0) ≈ n00
n00+n10Wrażliwość to true negative.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Na wykresie krzywej ROC na jednej osi odkłada się wrażliwość, a na drugiej1-specyficzność.
1-specyficzność to udział osób, które są zdrowe ale test wykazał, że są choreP(yi = 1|yi = 0) = 1− P(yi = 0|yi = 0). 1-specyficzność to false positives.
Zatem krzywa ROC obrazuje stosunek true positives do false positives.W przypadku idealnego modelu krzywa ROC przedstawia lewą i górną krawędź.Jeśli losowo byśmy podawali wyniki testu to krzywa byłaby przekątną kwadratu.Natomiast krzywa leżąca pod przekątną oznacza, że lepsze prognozyuzyskalibyśmy gdybyśmy losowo mówili osobom czy są chore czy nie, niżprzeprowadzali test.Dlatego używa się pola pod krzywą ROC jako miary dopasowania.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Wykres liftu łącznego
Wykres przyrostu pokazuje o ile częściej niż w danych źródłowych przewidywana klasawystępuje w próbie wskazanej przez dany model. Uzyskana w ten sposób krzywapowinna 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 zrzeczywistością przewiduje szansę przynależności do klasy: tam gdzie wg modelu jestona mniejsza, w rzeczywistości jest większa).
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Statystyki dopasowania
Na podstawie przedstawionych poniżej kryteriów najlepszym modelem jestdrzewo decyzyjne.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining
WstępPartycjonowanie danych
Drzewa decyzyjneRegresja
Sieci NeuronoweOcena i wybór modelu
Węzeł porównanie modeliStatystyki dopasowaniaPorównanie modeli
Instalacja i uruchomienie.
Ze względu na często niepoprawną instalację, Miner niekiedy nie działa.Dokładną instrukcję instalacji można znaleźć pod linkiem:http://www.sas.com/pl pl/support/dokumenty.htmlWłączając Minera należy uruchomić go jako Administrator.
K.Glapiak M.Borsuk J.Gierasimczyk A.Gałecki Data Mining