Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Procesy eksploracji danych RafalLukawiecki StrategicConsultant, Project Botticelli Ltd

Podobne prezentacje


Prezentacja na temat: "Procesy eksploracji danych RafalLukawiecki StrategicConsultant, Project Botticelli Ltd"— Zapis prezentacji:

1 Procesy eksploracji danych RafalLukawiecki StrategicConsultant, Project Botticelli Ltd

2 2 Cele Poznanie procesu eksploracji danych Dobre zrozumienie kluczowej terminologii Podane tu informacje mają wyłącznie cel ilustracyjny i stanowią opinie i poglądy firmy Botticelli i/lub Rafała Lukawieckiego. Zaprezentowane materiały nie są pewne i mogą się zmieniać w zależności od kilku czynników. sFirma Microsoft nie udziela żadnych gwarancji, wyrażonych wprost, dorozumianych ani ustawowych odnośnie do informacji zawartych w tej prezentacji. © 2007 Project Botticelli Ltd & Microsoft Corp. Niektóre slajdy zawierają cytaty z chronionych prawem autorskim materiałów innych autorów wskazanych za każdym razem. Wszelkie prawa zastrzeżone. Microsoft, Windows, Windows Vista i inne nazwy produktów są lub mogą być zarejestrowanymi znakami handlowymi i/lub znakami handlowymi w Stanach Zjednoczonych i innych krajach. Podane tu informacje mają wyłącznie cel ilustracyjny i stanowią aktualne poglądy firmy Project Botticelli Ltd w dniu tej prezentacji. Ponieważ firmy Project Botticelli i Microsoft muszą reagować na zmiany sytuacji rynkowej, nie można interpretować tych poglądów jako zobowiązanie składane w imieniu firmy Microsoft, a firmy Microsoft i Project Botticelli nie mogą zagwarantować dokładności jakichkolwiek informacji po dacie tej prezentacji. Firma Project Botticelli nie udziela żadnych gwarancji, wyrażonych wprost, dorozumianych ani ustawowych odnośnie do informacji zawartych w tej prezentacji. Możliwe, że prezentacja zawiera błędy i pominięcia. To seminarium bazuje na książce Data Mining autorstwa ZhaoHui Tang i Jamie MacLennan, oraz na prezentacjach Jamiego. Dziękuję Jamiemu i Donaldowi Farmerowi za pomoc podczas przygotowywania tej sesji. Dziękuję Roni Karassik za slajd. Dziękuję Mike'owi Tsalidisowi, Oldze Londer i Marinowi Bezicowi za wszelką pomoc. Dziziękuję Maciejowi Pileckiemu za pomoc przy pokazach.

3 3 Program Rozważania dotyczące serwerów Proces eksploracji danych Kluczowe pojęcia i terminologia Eksploracja danych za pomocą DMX

4 4 Rozważania dotyczące serwerów

5 5 DM – część Microsoft SQL Server

6 6 SQL Server Analysis Services OLEDB ADOMD.NET AMO IIS TCP HTTP XMLA ADOMD Aplikacje klienckie BIDS SSMS Profiler Excel Protokoły

7 7 Rozważania na temat usług Analysis Services Składniki DM zawarte wydaniach Standard, Enterprise i Developer programu SQL Server 2005 Usługi SSAS 2008 i 2005 mogą działać równolegle Usługi SSAS nie muszą działać na tym samym serwerze co aparat BD SQL Potrzeby dotyczące wydajności Względy bezpieczeństwa Usługi SSAS umożliwiają analizę danych ze źródeł innych niż SQL Server

8 8 Bezpieczeństwo usług SSAS Wskazówki dotyczące zabezpieczania usług SSAS można znaleźć w SQL Books Online Potrzeby dotyczące uprawnień (nadmierne upraszczanie): Standardowy użytkownik BD SQL może: Wyświetlać modele i korzystać z nich Wdrażać tymczasowe modele sesyjne (jeśli opcja jest włączona) Administratorzy BD mogą też: Wdrażać i zmieniać modele trwałe, używając SSMS (Management Studio) lub trybu online BIDS Administratorzy serwera mogą też: Używać trybu offline BIDS i modeli wdrażania wsadowego

9 9 Zalecenia dotyczące bezpieczeństwa usług SSAS W mocno obciążonych środowiskach programowania w wielkiej korporacji: Dwa serwery usług SSAS: produkcyjny i projektowy/testowy Programiści administrują serwerami projektowymi, ale nie produkcyjnymi Dzięki temu jest możliwy pełny tryb offline BIDS Ręczna lub automatyczna replikacja między serwerej projektowym i produkcyjnym Użytkownicy końcowi to użytkownicy BD wdrożonych modeli (używający ich w programach Excel, Visio itp.)

10 10 Omówienie procesu eksploracji danych

11 11 Model eksploracji Proceseksploracji DM Engine Aparat DM Dane treningowe Dane do przewidzenia Model eksploracji Z przewidywaniem

12 12 Etapy procesu życia modelu DM 1.Definicja modelu Definiowanie kolumn dla przypadków: wizualnie (BIDS), przy użyciu DMX lub z języka PMML 2.Trening modelu Wprowadzenie wielkich ilości danych z rzeczywistej BD lub z dziennika systemu 3.Testowanie modelu Dane testowe muszą być inne niż treningowe 4.Używanie modelu (eksploracja i przewidywanie) Używanie modelu na nowych danych w celu przewidywania wyników 5.Aktualizacja modelu Co miesiąc, co tydzień, co noc lub częściej – ponowne testowanie

13 13 Wiele podejść Praca według własnego uznania: Eksperci BD i weterani języka SQL: DMX (jak T-SQL) Import/eksport za pomocą języka PMML Wszyscy: Business Intelligence Development Studio (BIDS) Obsługiwany w Visual Studio (dołączony!) Nie ma potrzeby pisania kodu – praca przy użyciu myszy Excel/Visio 2007 z dodatkami Data Mining Add-Ins Karta Data Mining – wszystko Karta Table Analysis – łatwiej za to prościej

14 14 Uwaga Łatwiej wyjaśnić kluczową terminologię na slajdach programu PowerPoint, pokazując rozszerzenia DMX Łatwiej wyjaśnić kluczową terminologię na pokazach, przedstawiając środowisko BIDS i umożliwiając klikanie Zastosujemy obie metody! 1.Najpierw DMX i slajdy 2.Potem (zwłaszcza po południu), głównie pokazy

15 15 Kluczowe pojęcia i terminologia

16 16 Struktura eksploracji (Mining Structure) Opisuje dane, którymi trzeba się zająć Kolumny ze źródeł danych i ich: Typy danych Typy zawartości Zawiera modele eksploracji Często buduje się kilka różnych modeli w jednej strukturze Przechowuje dane treningowe, zwane przypadkami (cases) (jeśli to konieczne) Przechowuje dane testowe, określane jako wydzielone (holdout) (w programie SQL 2008)

17 17 Model eksploracji danych (Data Mining Model) Kontener układów odkrywanych za pomocą algorytmu eksploracji danych w przypadkach treningowych Tabela zawierająca układy Wyrażone przez wizualizatory Określa użyciekolumn już zdefiniowanych w strukturze eksploracji

18 18 Przypadki: to, co badamy (Cases) Przypadek – zbiór kolumn (atrybutów), które mają być analizowane Wiek, płeć, region, roczne wydatki Klucz przypadku – unikatowy identyfikator przypadku Kolumna ma: Typ danych Typ zawartości I opcjonalnie: Dystrybucję Dyskretyzację Pokrewne kolumny Flagi (np. NOT NULL)

19 19 Typy danych kolumny (Column Data Types) Nie zajmujemy się typami niskiego poziomu Typy używane w eksploracji danych : Text Long Boolean Double Date i niektóre algorytmy innych firm: Time i Sequence

20 20 Typy zawartości kolumny (Content Types) Sterują algorytmami Typowe: DISCRETE Czerwony, Niebieski, Zielony CONTINOUS 6511,49 DISCRETIZED 1-5, 6-20, 21+ Oznacza klucz: KEY Do celów specjalnych: KEY SEQUENCE KEY TIME ORDERED CYCLICAL

21 21 Użycie kolumn (Column Usage) W niektórych algorytmach interpretacja tego nieznacznie się różni, ale na ogół kolumny służą do: Wejście W celu przewidywania innej kolumny PREDICT Te kolumny są zarówno przewidywane, jak i działają jako wejściowe do przewidywania innych PREDICT_ONLY Nieużywane jako dane wejściowe Wszystkie kolumny mogą być wejściowymi i przewidywanymi

22 22 Dyskretyzacja Bardzo ważna technika Gdy nie ma potrzeby analizowania pełnego ciągłego zakresu Eksploracja danych może automatycznie konwertować dane na przedziały Domyślnie na 5 Techniki: AUTOMATIC CLUSTERS EQUAL_AREAS THRESHOLDS

23 23 Dystrybucje kolumn Jeśli jest znana dystrybucja danych (należy znać), trzeba ją podać: NORMAL Typowa krzywa Gaussa (dzwonowa) LOG NORMAL Większość wartości na początku skali UNIFORM Linia płaska – jednakowo prawdopodobna lub idealnie losowa Mogą istnieć inne dystrybucje, ale nie można ich podać – algorytm będzie działać prawidłowo

24 24 I wreszcie Przypadek zagnieżdżony (Nested Case) – przypadek zawierający tabelę kolumn Zakupy klienta Używany do analizy układów w relacji Ma zagnieżdżony klucz (Nested Key) Nie relacyjny klucz obcy! Na ogół klucz zagnieżdżony to kolumna, która ma być analizowana Np.: Nazwa produktu lub model

25 25 Szczegóły procesu eksploracji danych przy użyciu DMX

26 26 Rozszerzania eksploracji danych DMX T-SQL do eksploracji danych Proste! Jak skrypty dla specjalistów IT Dwa typy instrukcji: Definicja danych CREATE, ALTER, EXPORT, IMPORT, DROP Manipulowanie danymi INSERT INTO, SELECT, DELETE

27 27 DMX – jak T-SQL CREATE MINING MODEL RyzykoKred (KlientIDLONG KEY, Płeć TEXT DISCRETE, Przychód LONG CONTINUOUS, Zawód TEXT DISCRETE, Ryzyko TEXT DISCRETE PREDICT) USING Drzewa_Decyzyjne_Microsoft INSERT INTO RyzykoKred (KlientID, Płeć, Przychód, Zawód, Ryzyko) Select IDklienta, Płeć, Przychód, Zawód,Ryzyko From Klienci Select NowiKlienci. IDklienta, RyzykoKred. Ryzyko, PrzewidPrawdop (RyzykoKred. Ryzyko) FROM RyzykoKred PREDICTION JOIN NowiKlienci ON RyzykoKred.Płeć=NowyKlient.Płeć AND RyzykoKred. Przychód=NowyKlient.Przychód AND RyzykoKred. Zawód=NowyKlient.Zawód

28 28 CREATE MINING MODEL CREATE MINING MODEL ( ) USING [( )] [WITH DRILLTHROUGH] CREATE MINING MODEL

29 29 CREATE MINING MODEL MójModel ( ) USINGMicrosoft_Decision_Trees CREATE MINING MODEL

30 30 CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, ) USINGMicrosoft_Decision_Trees Nazwa Typ danych TextLongDoubleBooleanDate CREATE MINING MODEL

31 31 CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, ) USINGMicrosoft_Decision_Trees Nazwa Typ danych Typ zawartości Key Key Time DiscreteContinuousDiscretized CREATE MINING MODEL

32 32 CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, ) USINGMicrosoft_Decision_Trees CREATE MINING MODEL

33 33 CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, [Płeć] TEXT DISCRETE, ) USINGMicrosoft_Decision_Trees CREATE MINING MODEL

34 34 CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, [Płeć] TEXT DISCRETE, [Stan cywilny] TEXT DISCRETE, ) USINGMicrosoft_Decision_Trees CREATE MINING MODEL

35 35 CREATE MINING MODEL CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, [Płeć] TEXT DISCRETE, [Stan cywilny] TEXT DISCRETE, [Wykształcenie] TEXT DISCRETE, ) USINGMicrosoft_Decision_Trees

36 36 CREATE MINING MODEL CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, [Płeć] TEXT DISCRETE, [Stan cywilny] TEXT DISCRETE, [Wykształcenie] TEXT DISCRETE, [Własnośćdomu] TEXT DISCRETE PREDICT, ) USINGMicrosoft_Decision_Trees Użycie Predict Predict Only

37 37 CREATE MINING MODEL CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, [Płeć] TEXT DISCRETE, [Stan cywilny] TEXT DISCRETE, [Wykształcenie] TEXT DISCRETE, [Własnośćdomu] TEXT DISCRETE PREDICT, [Wiek] LONG CONTINUOUS, [Przychód] DOUBLE CONTINUOUS ) USINGMicrosoft_Decision_Trees

38 38 Tabele zagnieżdżone KlientIDPłećStan cywilny WykształcenieWłasność domu MZamŻonLicencjaciWynajem MZamŻonLicencjaciWłasność KWolnyMagistrowieWłasność MWolnyŚrednieWłasność KZamŻonLicencjaciWynajem KZamŻonMagistrowieWynajem Mebel Sofa Telewizor Drabina Boiler Sofa Leżanka Boiler Telewizor Odtwarzacz DVD Stelaż Telewizor Regał na książki Mata do jogi Waza

39 39 CREATE MINING MODEL MójModel ( [KlientID] LONG KEY, [Płeć] TEXT DISCRETE, [Stan cywilny] TEXT DISCRETE, [Wykształcenie] TEXT DISCRETE, [Własnośćdomu] TEXT DISCRETE PREDICT, [Wiek] LONG CONTINUOUS, [Przychód] DOUBLE CONTINUOUS, [Produkty] TABLE ( [Nazwaproduktu] TEXT KEY ) ) USINGMicrosoft_Decision_Trees CREATE MINING MODEL Zagnieżdżenie

40 40 Trening Użycie instrukcji INSERT INTO To wprowadza przypadki do aparatu Użycie składni SHAPE do tworzenia zagnieżdżonych zestawów wierszy wejściowych Ważne: Używać jedynie danych treningowych (na ogół ok. 70%) Pozostawić z boku trochę danych testowych

41 41 Ile treningu? Brak sztywnych reguł odnośnie do liczby przypadków Niemożliwe przetrenowanie przez podanie zbyt wielu przypadków Możliwe przetrenowanie w źle sparametryzowanych modelach Zbyt szczegółowe modele o za małym stopniu ogólności Czy są używane reprezentatywne próbki? Nie jest potrzebna duża ilość danych treningowych Trening jest wystarczający, gdy walidacja modelu jest poprawna (patrz później)

42 42 Podział danych do testowania Wydzielanie (Holdout) Za pomocą programu SQL Server 2005 Łatwo realizowane za pomocą zadania SSIS (Integration Services) Percentage Sampling Kilka sposobów wykonania w języku T-SQL Za pomocą programu SQL Server 2008 Program robi to za użytkownika! Określić WITH HOLDOUT w CREATE MINING STRUCTURE Lub wybrać ilość w oknie kreatora/właściwości GUI w środowisku BIDS

43 Pokaz 1.Używanie usług SQL Server Integration Services do podziału danych na zestawy treningowe i testowe 2.Używanie języka T-SQL w powyższym celu

44 44 INSERT INTO Możliwe dane źródłowe: Kwerenda danych Kwerenda DMX Kwerenda MDX Wywołanie procedury przechowywanej Parametr zestawu danych INSERT INTO [MINING MODEL | MINING STRUCTURE] [MINING MODEL | MINING STRUCTURE] [( )]

45 45 Testowanie i walidacja Sprawdzenie poprawności modelu Dokładność Czy zapewnia poprawne korelacje i przewidywania? Wiarygodność Czy działa podobnie w odniesieniu do innych danych testowych? Przydatność Czy zapewnia wgląd w dane czy tylko oczywistości?

46 46 Walidacja modelu Typowe podejścia: Dokładność Wykresy wzrostu i zysku Wykresy punktowe Macierz klasyfikacji Wiarygodność Walidacja krzyżowa Przewidywania danych zewnętrznych Przydatność Wymaga przejrzenia przez eksperta z konkretnej dziedziny Może wystarczyć proste sprawdzenie korelacji atrybutów

47 47 Zautomatyzowane testowanie Znakomita funkcja DM programu SQL Server Klikniecie karty Mining Accuracy automatycznie i szybko wykonuje test: 1.Do przewidywania wartości są używane dane testowe 2.Wyniki tego przewidywania są porównywane ze znaną wartością (w wydzieleniu) 3.Wyniki to: Wykres wzrostu, wykres zysku, wykres punktowy, macierz klasyfikacji, statystyki walidacji krzyżowej

48 48 Przewidywanie! Zastosowanie modelu do przewidywania nieznanych danych Użycie instrukcji SELECT Nowa instrukcja PREDICTION JOIN Zwrócone wartości mogą zawierać tabele Na zagnieżdżonych tabelach można wykonywać dalsze instrukcje SELECT

49 49 PREDICTION JOIN SELECT [TOP ] FROM FROM [ [NATURAL] PREDICTION JOIN AS AS [ ON ] [ WHERE ] [ ORDER BY ] ]

50 50 Nie zapominać o eksploracji i analizie Kilka znakomitych wizualizatorów firmy Microsoft Dostępne w: BIDS, SSMS, SSRS, Excel, Visio oraz w wersji dla aplikacji użytkownika Wiele z nich będzie można obejrzeć dziś po południu! Wyszukując układy, można też wykonywać kwerendy bezpośrednio na modelu eksploracji Wiele przykładów można znaleźć w witrynie SQL Books Online. Można też postarać się o książkę Data Mining with SQL Server 2005 (autorzy Jamie McLennan i ZhaoHui Tang)

51 51 Podsumowanie Tworzenie modelu eksploracji rozpoczyna się od zrozumienia danych: przypadki Należy dobrze zdefiniować typy danych i zawartości w kolumnach oraz ich użycie Zbudować model i trenować go przy użyciu osobnego zestawu danych Przetestować i przeprowadzić walidację przed podjęciem dalszych kroków Przeprowadzić wizualną eksplorację, przewidzieć i ucieszyć się

52 Microsoft Corporation & Project Botticelli Ltd. Wszelkie prawa zastrzeżone. Podane tu informacje mają wyłącznie cel ilustracyjny i stanowią opinie i poglądy firmy Botticelli i/lub Rafała Lukawieckiego. Zaprezentowane materiały nie są pewne i mogą się zmieniać w zależności od kilku czynników. Firma Microsoft nie udziela żadnych gwarancji, wyrażonych wprost, dorozumianych ani ustawowych odnośnie do informacji zawartych w tej prezentacji. © 2007 Project Botticelli Ltd & Microsoft Corp. Niektóre slajdy zawierają cytaty z chronionych prawem autorskim materiałów innych autorów wskazanych za każdym razem. Wszelkie prawa zastrzeżone. Microsoft, Windows, Windows Vista i inne nazwy produktów są lub mogą być zarejestrowanymi znakami handlowymi i/lub znakami handlowymi w Stanach Zjednoczonych i innych krajach. Podane tu informacje mają wyłącznie cel ilustracyjny i stanowią aktualne poglądy firmy Project Botticelli Ltd w dniu tej prezentacji. Ponieważ firmy Project Botticelli & Microsoft muszą reagować na zmiany sytuacji rynkowej, nie można interpretować tych poglądów jako zobowiązanie składane w imieniu firmy Microsoft, a firmy Microsoft i Project Botticelli nie mogą zagwarantować dokładności jakichkolwiek informacji po dacie tej prezentacji. Firma Project Botticelli nie udziela żadnych gwarancji, wyrażonych wprost, dorozumianych ani ustawowych odnośnie do informacji zawartych w tej prezentacji. Możliwe, że prezentacja zawiera błędy i pominięcia.


Pobierz ppt "Procesy eksploracji danych RafalLukawiecki StrategicConsultant, Project Botticelli Ltd"

Podobne prezentacje


Reklamy Google