data mining - politechnika gdańska · automatyczna analiza dużych ilości danych w celu...

79
Data mining Maciej Jędrzejczyk Paulina Konecka Wydzial Fizyki Technicznej i Matematyki Stosowanej Politechnika Gdańska 14 czerwca 2018 Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 1 / 79

Upload: others

Post on 08-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Data mining

Maciej Jędrzejczyk Paulina Konecka

Wydział Fizyki Technicznej i Matematyki StosowanejPolitechnika Gdańska

14 czerwca 2018

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 1 / 79

Page 2: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Spis treści

1 WstępDefinicjaSAS EnterpriseSEMMAOpis Danych

2 SampleWczytywanie danychPartycjonowanie

3 Explore

4 Modify

5 ModelDrzewa decyzyjneRegresjaSieci neuronowe

6 Assess

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 2 / 79

Page 3: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Czym jest Data Mining?

Data Mining (eksploracja danych) - jest to proces odkrywania wzorców wdużych zbiorach danych. Jeden z etapów procesu odkrywania wiedzy z bazdanych (ang. Knowledge Discovery in Databases, KDD).

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 3 / 79

Page 4: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Cel Data Mining’u

Ogólnym celem procesu eksploracji danych jest wydobycie informacji zzestawu danych i przekształcenie go w zrozumiałą strukturę. Termin jestmylący, ponieważ celem jest wydobywanie wzorców i wiedzy z dużych ilościdanych, a nie eksploracja (wydobywanie) samych danych.

Rzeczywiste zadanie eksploracji danych to półautomatyczna lubautomatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniejnieznanych, interesujących wzorców, takich jak grupy rekordów danych(analiza skupień), nietypowe rekordy (wykrywanie anomalii) i zależności(wyszukiwanie reguł asocjacyjnych, sekwencyjne modelowanie).

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 4 / 79

Page 5: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Zastosowanie Data Mining’u

Wzorce te można następnie postrzegać jako rodzaj podsumowania danychwejściowych i można je wykorzystać w dalszej analizie, uczeniumaszynowym, analizie predykcyjnej itp.. Na przykład, etap eksploracjidanych może identyfikować wiele grup w danych, które można następniewykorzystać do uzyskania bardziej dokładnych wyników prognozowania zapomocą systemu wspomagania decyzji.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 5 / 79

Page 6: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Metody Data Mining’u

Data Mining nie narzuca nam konkretnej metody działania, możemyposłużyć się wieloma metodami statystycznymi takimi jak:

Drzewa decyzyjne,

Regresja,

Sieci neuronowe,

Metody ewolucyjne,

Metody uczenia maszynowego,

Zbiory przybliżone.

W prezentacji przybliżymy trzy pierwsze metody.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 6 / 79

Page 7: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

SAS Enterprise Miner

SAS Enterprise Miner jest narzędziem umożliwiającym tworzenie modelipredykcyjnych i opisywania dużych zbiorów danych. Jest jednym zpopularniejszych programów używanych do Data Mining’u. Dodatkowomamy możliwość wygenerowania kodu w języku SAS 4GL.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 7 / 79

Page 8: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

SEMMA

SEMMA(Sample, Explore, Modify, Model, Asses) opisuje calość DataMining’u z poziomu narzędzi analitycznych SAS. Jest ona rozumiana jakorozbicie tego procesu na pięc powiązanych ze sobą etapów:

Sample -przygotowanie i podział wejściowej próby danych,

Explore-exploracja danych, służąca ocenie ich jakokści oraz wstęonejidentyfikacji zależności pomiędzy zmiennymi,

Modify- modyfikacja danych, służąca poprawie ich jakości, spełnieniuzałożeń metod modelowania,

Model-modelowanie przy użyciu takich metod jak drzewa decyzyjne ,regresja czy sieci neuronowe,

Assess- ocena modeli i wybór najlepszego z nich.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 8 / 79

Page 9: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Dane

Analizie poddany zostanie zbiór HMEQ, zanjdujący się w biblioteceSAMPSIO. ZAwiera on 13 zmiennych. Poniżej przedstawiono opis tychzmiennych.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 9 / 79

Page 10: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Dane

Nazwa Typ Opis

BAD Binarna 1 gdy kredutobiorca nie spłacił kredytuCLADGE Przedziałowa czas najdłuższego kredytu w miesiącach

CLNO Przedziałowa ilość zobowiązań kredytowychDEBTINC Przedziałowa stosunek kredytu do dochodu

DELINQ Przedziałowa liczba zobowiązań z zalegającą zapłatąDEROG Przedziałowa liczba krytycznych raportów

JOB Nominalna rodzaj wykonywanego zawoduLOAN Przedziałowa kwota pozostała do spłaty

MORTDUE Przedziałowa wysokość hipotekiNINQ Przedziałowa ilość złożónych wniosków kredytowych

REASON Binarna powód wzięcia kredytuVALUE Przedziałowa wartośc obecna hipoteki

YOJ Przedziałowa staż w obecnej pracy w latach

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 10 / 79

Page 11: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

SampleImport danych

Aby wczytać zródło danych przechodzimy doUtwórz źrodło danych 7−→ Tabela sasowa 7−→ Przeglądaj 7−→ Sampsio7−→ HMEQ.Następnie musimy zmienić rolę i poziom danych ,tak jak jest toprzedstawione poniżej.

Rysunek: Wczytywanie danychMaciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 11 / 79

Page 12: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

SamplePartycjonowanie

Kolejnym etapem jest partycjonowanie. Węzeł ten jest węzłem podziałuzbioru danych na zbiory: treningowy, walidacyjny i testowy. Gdzie zbiór:

treningowy jest zbiorem danych, na podstawie których wykrywamymożliwe zależności między zmiennymi, jest używany do wstępnegooszacowania parametrów modelu, liczebność tej próby powinnawynosić od 40% do 70% próby wejściowej

walidacyjny jest używany do dostrojenia parametrów modelu, którezostały oszacowane w oparciu o zbiór treningowy,

testowy jest zbiorem, który służy do zbadania, na ile wykrytezaleności są prawdziwe dla innych zbiorów danych.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 12 / 79

Page 13: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

SampleMetody partycjonowania

Simple Random dokonuje podziału zbioru danych na podzbiory:treningowy, walidacyjny i testowy w sposób losowy, oparty nalosowaniu, gdzie prawdopodobieństwo wejścia do każdego zpodzbiorów jest dla każdej obserwacji takie samo,

Stratified czyli losowanie warstwowe ,

Cluster czyli losowanie klastrowe ,

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 13 / 79

Page 14: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

SamplePartycjonowanie

Jeżeli mamy wybraną zmienną celu(objaśnianą) to wybieramy domyślnąmetodę partycjonowania:

Rysunek: Parametry patrycjonowania

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 14 / 79

Page 15: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreEksploracja danych

W tej części zajmiemy się badaniem danych, czyli zaprezentowaniemstatystyk opisowych. W tym celu posłużymy się wezłęm o nazwie”Exploracja statystyk”. Aby korelacje pomiędzy zmiennymi o różnychtypach były obliczne tą samą metodą, trzeba umożliwić oblicznie statystykiChi-kwadrat dla zmiennych przedziałowych:

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 15 / 79

Page 16: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreStatystyki opisowe

Rysunek: Statystyki opisowe

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 16 / 79

Page 17: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreStatystyka Chi-kwadrat

SAS wyświetla nam również statystykę Chi-kwadrat dzięki której możemyokreślić istotność zmiennych.

Rysunek: Statystyka Chi-kwadratMaciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 17 / 79

Page 18: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Informacje na temat zmiennych możemy także uzyskać poprzez :HMEQ 7−→ Edytuj zmienne 7−→ EksplorujW ten sposób np dla zmiennej CLAGE uzyskujemy następujący wykresrozkładu :

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 18 / 79

Page 19: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreWykresy

Ważną rolę podczas eksploracji danych pełnią wykresy dzięki kórymmożemy ”zobaczyć” dane. Użyjemy do tego węzła Wykresy różne, węzełten generuje wykresy słupkowe zliczające ilość wystąpień wartości danejzmiennej.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 19 / 79

Page 20: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreWykresy

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 20 / 79

Page 21: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreWykresy

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 21 / 79

Page 22: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreWykresy

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 22 / 79

Page 23: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreKorelacja

Silne korelacje między niezależnymi zmiennymi mogą działać na niekorzyśćtworzonych modeli, macierz korelacji możemy wywołać za pomocą edytoraprogramów i poniższego kodu.

Rysunek: Korelacja

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 23 / 79

Page 24: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ExploreKorelacja

Rysunek: Korelacja

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 24 / 79

Page 25: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Modify

Gdy już posiadamy pewną wiedzę o danych, należy przygotować zbiór domodelowania. Zajmiemy się porzuceniem nieistotnych oraz silnieskorelowanych zmiennych. Na tym etapie obserwujemy pierwsze różnicemiędzy wybranymi przez nas modelami. Dzieje się tak, ponieważ drzewadecyzyjne radzą sobie z brakami danych, natomiast regresja logistyczna isieci neuronowe pomijają zmienne, w których występują braki danych.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 25 / 79

Page 26: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

ModifyPorzucanie zmiennych

Podczas eksploracji statystyk otrzymaliśmy, że zmienna Reason jestnieistotna oraz można spróbować usunąć zmienną Mortdue, która jestsilnie skorelowana ze zmienną Value (korelacja wynosi około 0,88). Robimyto za pośrednictwem węzła ”Porzucanie” w następujący sposób:

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 26 / 79

Page 27: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

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 zbioruwarunków logicznych.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 27 / 79

Page 28: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneBudowa drzewa

Budowa drzewa rozpoczyna się od podziału korzenia. Szukamy takiegopodziału. który pozwoli znaleźć grupę charakteryzującą się wysokąjednorodnością ze względu na wartość zmiennej objaśnianej. Zatemdokonujemy podziału za pomocą wzoru:

Wzór

∆Z = Z0 +r∑

n=i

nin0

Zi

Z0-stopień niejednorodności dzielonego elementu,Zi - stopień niejeednorodności i-tego elementu powstającego w wynikupodziału,n0-liczebność dzielonego elementu,ni -liczebność i-tego elementu powstającego w wyniku podziału,r-liczba elementów powstających w wyniku podziału.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 28 / 79

Page 29: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneMiary niejednorodności

Współczynnik Giniego

Z = 1−k∑

n=i

p2i

Współczynnik Entropii

Z = H(p1, . . . , pk) = −k∑

n=i

p2i log2(pi )

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 29 / 79

Page 30: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Współczynnik Giniego - przykład

Weźmy przykładowy zbiór danych:

Id Wiek Typ sam Ryzyko0 23 family high1 17 sport high2 43 sport high3 68 family low4 32 truck low5 20 family high

Zmienna Ryzyko jest naszą zmienną celu, atrybutami względem, którychbędziemy dzielić zbiór wejściowy to Wiek i Typ sam.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 30 / 79

Page 31: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Współczynnik Giniego - przykład

Punkt podziału gsplit dany jest wzorem:

gsplit =m1 + n1m + n

Z1 +m2 + n2m + n

Z2,

gdzie:mi , ni - liczba elementów w Si należących do klas High i Low .Dla wieku mamy następujące punkty podziału:

Wiek¬ 17,

Wiek¬ 20,

Wiek¬ 23,

Wiek¬ 32,

Wiek¬ 43,

Wiek¬ 68,

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 31 / 79

Page 32: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Współczynnik Giniego - przykład

Rozważmy Wiek¬ 23, otrzymujemy tabelę:

High LowWiek¬ 23 3 0Wiek> 23 1 2

Wartości współczynników Ginniego oraz punkt podziału wynoszą:

Z1 = Z (Wiek ¬ 23) = 1− ((33)2 + 02) = 0

Z2 = Z (Wiek > 23) = 1− ((13)2 + (23)

2) = 49

gsplit = 0 + 36 ·49 = 2

9

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 32 / 79

Page 33: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Współczynnik Giniego - przykład

Analogicznie liczymy współczynniki Giniego i punkty podziału dlapozostałych przedziałów wieku. Wyniki prezentują się następująco:

Wiek¬ 17, gsplit = 0, 4,

Wiek¬ 20, gsplit = 0, 33,

Wiek¬ 32, gsplit = 0, 42,

Wiek¬ 43, gsplit = 0, 4,

Wiek¬ 68, gsplit = 0, 44.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 33 / 79

Page 34: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Współczynnik Giniego - przykład

Najmniejszą wartość gsplit = 0, 22 otrzymaliśmy dla podziału Wiek¬ 23więc dostajemy drzewo postaci:

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 34 / 79

Page 35: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Współczynnik Giniego - przykład

Zauważamy, że dla Wiek¬ 23 Ryzyko zawsze jest wysokie więc tej gałęzijuż nie rozwijamy. Przyjrzyjmy się przypadku, gdy Wiek>23, jeżeliTyp sam={sport} to ryzyko jest wysokie, a dla pozostałych ryzyko jestniskie. Co ostatecznie do drzewa postaci:

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 35 / 79

Page 36: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny

Do wyboru atrybutu testowego w wierzchołku drzewa decyzyjnegowykorzystujemy miare zysku informacyjnego. W tym celu wybieramyatrybut o najwiekszej wartosci zysku (lub o najwiekszej redukcji entropii).Niech S oznacza zbiór przykładów, oraz atrybut decyzyjny posiada mróżnych wartości(definującyh klasy Ci , i = 1, 2, . . . ,m).

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 36 / 79

Page 37: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny

EntropiaEntropię podziału zbioru S, ze względu na atrybut A definiujemy:

E (a1, a2, . . . , ak) =k∑

j=1

(s1j + s2j + . . .+ smj )

sH(s1j , s2j , . . . , smj ),

gdzie:

ai - wartości przyjmowane przez argument A,

H - współczynnik entropii.

Zysk inforacyjnyGain(A) = H(s1, s2, . . . , sm)− E (A)

A = {a1, a2, . . . , ak}

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 37 / 79

Page 38: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Rozważmy tabelę:

Niech atrybutem decyzyjnym będzie atrybut kupi komputer.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 38 / 79

Page 39: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Atrybut kupi komputer przyjmuje dwie wartości, stąd otrzymujemy dwieklasy:C1 - kupi komputer=”tak”, zawiera 9 elementów,C2 - kupi komputer=”nie”, zawiera 5 elementów.Obliczmy współczynnik entropi dla zmiennej kupi komputer:

H(9, 5) = − 914

log2(9

14)− 5

14log2(

514

) = 0, 94

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 39 / 79

Page 40: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Następnie obliczmy entropię dla zmiennych. Przyjżyjmy się zmiennejDochód, widzimy że przyjmuje 3 wartości więc musimy obliczyć trzynastępujące współczynniki entropi.

”wysoki”s11 = 2-ilość osób z wysokim dochodem, które kupią komputer,s21 = 2-ilość osób z wysokim dochodem, które nie kupią komputeraH(2, 2) = 1

”średni”s12 = 4, s22 = 2 H(4, 2) = 0, 918

”niski”s13 = 3, s23 = 1 H(3, 1) = 0, 811

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 40 / 79

Page 41: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Entropię dla dochodu wynosi:

E (”Dochód”) =4

14∗ 1 +

614∗ 0, 918 +

414∗ 0, 811 = 0, 911

Kolejno podstawiamy otrzymane wartości do wzoru na zysk informacyjny:

Gain(”Dochód”) = 0, 94− 0, 911 = 0, 029

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 41 / 79

Page 42: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Analogicznie liczymy zysk informacyjny dla pozostałych zmiennych:

Zysk informacyjnyGain(”Wiek”) = 0, 277

Gain(”student”) = 0, 151

Gain(”Status”) = 0, 048

Jako pierwszy wybieramy atrybut z największym zyskiem informacyjnym.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 42 / 79

Page 43: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Więc pierwszego podziału dokonamy dla zmiennej Wiek.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 43 / 79

Page 44: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Entropia i zysk informacyjny - przykład

Dalej postępując analogicznie obliczamy zysk informacyjny dla pozostałychzmiennych dla zmiennej Wiek przyjmującej wartość ¬ 30 oraz > 40.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 44 / 79

Page 45: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneUstawienia drzewa

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 45 / 79

Page 46: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneScore Ranking Overlay

Jest to porównanie wykresów wzrostu lift(korzysci, pozytywnychodpowiedzi) dla zbioru treningowego i walidacyjnego. Obie krzywe niepowinny dużo różnić się od siebie, jesli tak jest, świadczy to oprzetrenowaniu lub niedotrenowaniu modelu.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 46 / 79

Page 47: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneScore Ranking Overlay

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 47 / 79

Page 48: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneStatystyki liściowe

Kolejne kryterium to statystyki liściowe. Poniższy wykres porównuje w tymprzypadku udział procentowy wartości Unknown zmiennej objasnianej wewszystkich lisciach dla danych treningowych i walidacyjnych. Jeżeli są dużeróżnice w wysokościach słupków, to dany liść należy przyciąć.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 48 / 79

Page 49: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Frame Title

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 49 / 79

Page 50: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneFit Statistics

Kolejnym elementem , który omówimy sa statystyki dopasowania. Poniższatabela pokazuje porównanie statystyk dopasowania w zbiorze treningowymi walidacyjnym. Duże różnice w wartościach statystyk dopasowania mogąwskazywać na przetrenowanie lub niedotrenowanie modelu.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 50 / 79

Page 51: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneMapa drzewa

Wykres pokazuje strukturę drzewa. Powierzchnia prostokątów odpowiadaliczebności w danych węzłach drzewa. Kolory wskazują jednorodnośćpopulacji w węzłach (czerwone najbardziej jednorodne)

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 51 / 79

Page 52: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneMapa drzewa

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 52 / 79

Page 53: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneDrzewo

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 53 / 79

Page 54: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Drzewa decyzyjneInterpretacja

Na wykresie widzimy nazwę zmiennej oraz warunek według, którychdokonywany jest podział. Widzimy również procentowy rozkład danych wzbiorze uczącym i walidacyjnym informuje nas o tym także kolor węzła (imciemniejszy tym mniej różnorodne dane).

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 54 / 79

Page 55: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Regresja

Węzeł Regresja umożliwia dopasowanie do danych zarówno modeli regresjiliniowej, jak i logistycznej. Jako danych wejściowych można używaćzmiennych ciągłych i dyskretnych. Węzeł obsługuje metody wybieraniakrokowego, do przodu i do tyłu.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 55 / 79

Page 56: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaPrzygotowanie danych

Zanim przejdziemy do regresji musimy odpowiednio przygotować dane.Zatem na początek za pomocą węzła ”Imputacja” uzupełnimy brakidanych. Można to zrobic na kilka sposobów:

Wykorystująć miary tendencji centralnej, czyli średnią ,modę ,medianę,

Wylosowując wartości zgodnie z rozkładem zmiennej,

Wykorzystując drzewo decyzyjne,

W tym przykładzie do zastąpienia braków danych zastosowano medianę.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 56 / 79

Page 57: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaPrzygotowanie danych

Aby zastosować regresje logistyczną, ważne jest żeby rozkład zmiennychciągłych miał skośność bliską zeru. Jeśli w statystykach opisowych wartościskośności wyszły powyżej 5 trzeba zastosować węzęł ”Przekształceniezmiennych”

Dla węzła ”Przekształcenia zmiennych” wszelkie ustawienia pozastawiamydomyślne.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 57 / 79

Page 58: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Regresja

Często przy dużej ilości zmiennych klasyfikujących możemy mieć problem zich optymalnym doborem do modelu. Można je wyselekcjonowaćnastępującymi metodami:

Krokowa wprzód(Forward)-Najpierw dobieramy wyraz wolny,następnie dobieramy pojedynczo zmienne,

Krokowa wstecz(Backward)- Zaczynamy od doboru wszystichzmiennych i usuwamy kolejno najmniej istotne,

Krokowa- Metoda analogiczna do metody Forward, z różnicą, że pokażdym kroku bada się istotność zmiennych obecnych już w modelu.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 58 / 79

Page 59: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaUstawienia modelu

Dodatkowo z naszego modelu regresji wyrzucamy zmienne tekstowe. Wtym celu klikamy prawym przyciskiem na węzeł Regresja Edytuj zmiennedla zmiennych IMP JOB wybieramy w kolumnie użyj - Nie.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 59 / 79

Page 60: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaSkumulowany lift

Tak jak w przypadku drzew decyzyjnych tak i w tym przypadku obiekrzywe nie powinny znacząco różnić się od siebie.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 60 / 79

Page 61: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaWykres wyników

Wykres efektów pokazuje wartości współczynników regresji. Zaznaczone sąosobnymi kolorami współczynniki dodatnie i ujemne.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 61 / 79

Page 62: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaStatystyki dopasowania

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 62 / 79

Page 63: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

RegresjaOstateczny wzór modelu

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 63 / 79

Page 64: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronoweDefinicja

Zbiór połączonych ze sobą jednostek wejściowo-wyjściowych. Z każdympołączeniem skojarzona jest waga, która może zostać zmieniona w trakcieuczenia.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 64 / 79

Page 65: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

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. Wskutek połączenia szeregu neuronów o stosunkowo prostej budowie iniewielkich możliwościach uzyskuje się strukturę zdolną doprzeprowadzania bardzo skomplikowanych procesów rozpoznawaniawzorców i klasyfkacji.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 65 / 79

Page 66: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronowe

Prosta sieć neuronowa składa się z warstwy wejściowej zawierającej nneuronów (odpowiadających zmiennym) oraz warstwy wyjściowejsumującej ważone impulsy i transformującą¡ je do skali oryginalnejzmiennej Y.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 66 / 79

Page 67: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronowe

Podstawowym rozszerzeniem tak opisanej architektury jest modelperceptronu wielowarstwowego (MLP - Multi Layer Perceptron), którydodatkowo zawiera warstwę ukrytą. Składa się ona z określonej ilościneuronów, które nieliniowo przekształcają kombinację liniową otrzymanychsygnałów. Pojedynczy neuron z warstwy ukrytej składa się z dwóchelementów: sumatora i funkcji aktywacji. Pierwszy z nich dokonujesumowania ważonych sygnałów z warstwy wejściowej oraz wyrazu wolnego,drugi tak otrzymaną sumę przekształca przy użyciu określonej funkcjiciągłej.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 67 / 79

Page 68: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronowe

Schemat sieci neuronowej z jedną warstwą ukrytą zawierającą n neuronów.Model opisany dla m zmiennych objaśniających

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 68 / 79

Page 69: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronoweUstawienia

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 69 / 79

Page 70: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronoweUstawienia

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 70 / 79

Page 71: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronoweWyniki

Tak jak w poprzednich modelach, również tu wyświetla nam się wykresskumulowanego liftu. Najlepiej jakby obie krzywe nie różniły się znaczącood siebie.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 71 / 79

Page 72: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronoweWyniki

Kolejnym wykresem jaki się ukazuje jest wykres błęduśrednokwadratowego. Pionowa kreska pokazuje nam w którym krokuiteracyjnym osiągnięto najlepszy model. W tym przupadku jest to 6 krok.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 72 / 79

Page 73: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Sieci neuronoweWyniki

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 73 / 79

Page 74: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Porównywanie modeliStatystyki dopasowania

Po wybudowaniu kilku modeli należy wybrać, który z nich jest najlepszy imoże być wukorystany dla danych. Dopasowanie modelu może byćocenione za pomocą stytystyk dopasowania, oto niektóre z nich

Skuteczność klasyfkacji - odsetek poprawnie zaklasyfikowanychprzypadków. Miara często używana do oceny modeli klasyfikacyjnychwtedy, gdy każdy z obserwowanych przypadków można traktować zrówną wagą.

Błąd średniokwadratowy - średnia wartość kwadratu różnicy pomiędzypredykcją a rzeczywistą wartością. W przypadku binarnych zagadnieńklasyfikacyjnych wartością przewidywaną jest prawdopodobieństwo, awartością rzeczywistą 0 lub 1.

Maksymalny błąd bezwzględny - wartość bezwzględna największejróżnicy pomiędzy wartością przewidywaną a rzeczywistą. Miaraoceniająca maksymalny spodziewany błąd predykcji.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 74 / 79

Page 75: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Porównywanie modeliStatystyki dopasowania

Statystyka Kołmogorowa-Smirnowa - określa, jak dobrze dwie klasyzmiennej objaśnianej są rozróżniane przez model. Jej wartośćobliczana jest jako:

maxt |F1(t)− F0(t)|

gdzie F1(t),F0(t) wartości dystrybuanty empirycznej predykcji dlagrup obserwacji, w których zmienna objaśniana przyjmujeodpowiednio wartoci 0 i 1. Im większa wartość tej statystyki, tymwiększe różnice w prawdopodobieństwach przydzielanych obu grupom,a więc tym większa moc dyskryminacyjna modelu.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 75 / 79

Page 76: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Porównywanie modeliStatystyki dopasowania

Wzrost (Lift) - miara dla określonego odsetka populacji będącejprzedmiotem zagadnienia klasyfikacyjnego. Obliczana jest poprzezpodzielenie odsetka zaobserwowanych zdarzeń w górnych n %populacji posortowanej malejąco według przewidywanychprawdopodobieństw przez procent tych samych zdarzeń w całejpopulacji.

Indeks ROC - miara określająca skuteczność modelu w rozpoznawaniuróżnic pomiędzy podpopulacjami o różnych wartościach zmiennejobjaśnianej. Powstaje poprzez obliczenie pola pod krzywą ROC, imbardziej wykres krzywej skierowany jest w stronę lewego górnegorogu, tym lepsze własności klasyfikacyjne badanego modelu.

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 76 / 79

Page 77: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Porównanie modeli

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 77 / 79

Page 78: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Porównanie modeliWykres ROC

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 78 / 79

Page 79: Data mining - Politechnika Gdańska · automatyczna analiza dużych ilości danych w celu wyodrębnienia wcześniej ... W praktycznych zastosowaniach modeli predykcyjnych istotna

Porównanie modeliLift

Maciej Jędrzejczyk, Paulina Konecka Data mining 14 czerwca 2018 79 / 79