36
Adam Bartos Analityka wysokiej wydajności. Przegląd możliwości technologii SAS.

Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

  • Upload
    vanlien

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Adam Bartos

Analityka wysokiej wydajności. Przegląd możliwości technologii SAS.

Page 2: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Big Data – 3xV

Competing on Analytics

Analityka wysokiej wydajności …. Właściwie po co?

Page 3: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Aspekty wysokiej wydajności

Evaluate Ask

Act

Model

Implement

Prepare

Data

Explore

Wydajność procesu

Modelowanie „masowe”

Przekazanie na produkcję

Zarządzanie modelami

Wydajność obliczeń

Integracja danych

Eksploracja analityczna

Transformacja danych

Modelowanie

Skoring

Page 4: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Enterprise Miner

Serwer SMP

Źródła danych

Enterprise Guide

Workspace

Server

Workspace

Server

Klasyka czyli Single User SMP

Silnik analityczny jest uruchamiany niezależnie dla każdego użytkownika na wspólnymserwerze (np. AIX)

Algorytm analityczny wykorzystuje wielowątkowość w ramach jednegoprocesu (thread level) do przetwarzania jednego zbioru danych

Uproszczona architektura rozwiązań analitycznych SAS

SAS Factory Miner

Page 5: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Enterprise Miner

Serwer SMP

Źródła danych

Enterprise Guide

Workspace

Server

Workspace

Server

Prawie klasyka czyliSingle User + GRID

Silnik analityczny jest uruchamiany niezależnie dla każdego użytkownika na jednym z serwerów w GRID

Algorytm analityczny wykorzystuje wielowątkowość w ramach jednegoprocesu do przetwarzania jednego zbioru danych

Wiele algorytmów może być równocześnie uruchomionych na kilku maszynach (np. różne metody modelowania w Enterprise Miner)

Uproszczona architektura rozwiązań analitycznych SAS

Serwer SMP

Workspace

Server

Workspace

Server…

SAS Factory Miner

Page 6: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Enterprise Miner

Serwer SMP

Enterprise Guide

Workspace

Server

Workspace

Server

Rodzina HPASingle User + MPP

Silnik analityczny jest uruchamiany niezależnie dla każdego użytkownika na wspólnym klastrze maszyn

Algorytm analityczny wykorzystuje wielowątkowość w ramach wielu procesów (thread & proces level) do przetwarzania jednego zbioru danych

Analizowany zbiór danych ładowany do pamięci tymczasowo

Uproszczona architektura rozwiązań analitycznych SAS

Klaster MPP

Źródła danych

Węzeł MPP Węzeł MPP Węzeł MPP Węzeł MPPProces Master

NodeProces Worker

Node

MPP Data Store

Proces WorkerNode

Proces WorkerNode

SAS Factory Miner

Proces MasterNode

Proces WorkerNode

Proces WorkerNode

Proces WorkerNode

Page 7: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

LASR Server:Multi User Server + MPP

Wszyscy użytkownicy korzystają ze wspólnego silnika analitycznego na wspólnym klastrze maszyn

Algorytm analityczny wykorzystuje wielowątkowość w ramach wielu procesów (thread & proces level) do przetwarzania jednego zbioru danych

Współdzielone zbiory danych stale w pamięci

Uproszczona architektura rozwiązań analitycznych SAS

Źródła danych MPP Data Store

SAS Studio

(In-Memory

Statistics)

Visual Analytics Visual Statistics

Klaster MPP

Węzeł MPP Węzeł MPP Węzeł MPP Węzeł MPP

Server MasterNode

Server WorkerNode

Server WorkerNode

Server WorkerNode

Page 8: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Prawie klasyka czyli Single User + GRID

Workspace

Server 4GL

GRID NODE 1

GRID NODE 2Workspace

Server

GRID NODE NWorkspace

Server

GRID CONTROL SERVERWorkspace

Server

Aplikacje SAS z opcją GRID

Zarządzanie Obciążeniem

• Zarządzanie zadaniami, hostami oraz użytkownikami

• Priorytetyzacja i szeregowanie poprzez zaawansowany mechanizm kolejek

• Identyfikacja, alokacja i zarządzanie zasobami

Wysoka Dostępność

• Wykrywanie awarii grid i automatyczne przywracanie działania

• Automatyczny wznawianie zadań z uwzględnieniem wykonanej pracy

Wydajność

• Podział sekwencji zadań na podzadania do wykonania równoległego

• Podział, dystrybucja i parametryzacja zadań (wybrane zadania ETL, modelowanie)

Page 9: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Procedury zaawansowanej analityki zaimplementowane jako algorytmy przetwarzania równoległego dostępne z poziomu:

Kodu SAS 4GL

SAS Enterprise Miner/Text Miner (jako węzły w interfejsie użytkownika)

SAS Factory Miner

Najważniejsze założenia architektoniczne

Dane In-Memory (tymczasowo)

» Pobierane do pamięci na czas działania procedury, dystrybuowane w całym klastrze

» Równoległe ładowanie danych do pamięci

» Szybka analiza danych dla algorytmów wieloprzebiegowych

» Kopia danych dla każdego wywołania procedury HP*

Distributed Computing Model

» Wykorzystanie wielowątkowości (thread) i wielu węzłów (node)

» Protokół MPI do komunikacji pomiędzy jednostkami pracy

MPP (w tym w środowisku Hadoop) lub SMP (pojedyncza maszyna)

Rodzina Procedur HPA „High Performance XXX”

RAM

CPU CPU

Page 10: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Text Mining

• Parsing large-

scale text

collections

• Extract

entities

• Auto.

stemming &

synonym

detection

Data Mining

• Complex

relationships

• Tree- and

Forest-based

Classification

• Segmentation/

Clustering

• Variable

Selection

Optimization

• Local search

optimization

• Large-scale

linear & mixed

integer

problems

Econometrics

• Probability of

events

• Severity of

random

events

FUNKCJONALNOŚĆ SAS® HIGH-PERFORMANCE

Statistics

• Binary target

& continuous

no. predictions

• Linear, Non-

Linear, &

Mixed Linear

modeling

Page 11: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

C op yr i g h t © 2012 , SAS Ins t i t u te Inc . A l l r i g h ts r eser v ed .

11

JAKO TO DZIAŁA?

Kontroler

SAS® Enterprise Miner™

SAS® Text Miner

SAS® Enterprise Guide

(SAS/STAT®, SAS/ETS®, SAS/OR®)

Klaster MPP

Page 12: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Jako to działa? Integracja z SAS® Enterprise Miner™

Page 13: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Lista węzłów SAS® Enterprise Miner™

AppendData

PartitionFile Import Filter Merge SampleSAMPLE

Association DMDB

MultiPlotEXPLORE

Graph

Explore

Link Analysis

Path AnalysisSOM/Kohonen

StatExplore

Variable

Clustering

Variable

Selection

Market Basket

Cluster

MODIFY DropRules

BuilderReplacementPrincipal

ComponentsInteractive

BinningImpute

Transform

Variables

Decision

Tree

AutoNeuralNeural

NetworkRegression

Partial Least

Squares

Dmine

Regression

MODEL

DM Neural

Ensemble

Rule

InductionGradient

Boosting

LARS

MBR

Two Stage

Model Import

Incremental

Response

Survival

AnalysisCredit

Scoring*

TS

Correlation

TS Data

Prep

TS Dimension

Reduction

TS

Decomp.

TS

Similarity

TS Exponential

Smoothing

HP Explore

HP Impute

HP

RegressionHP Transform

HP Variable

Selection

HP Neural

HP Forest

HP Decision

Tree

HP Data

Partition

HP GLM HP

Cluster

HP Principal

ComponentsHP SVM

Cutoff Segment ProfileASSESSModel

ComparisonScoreDecisions

UTILITYControl

PointMetadata

SAS CodeReporter

End Groups Score Code

ExportStart Groups

*Requires Credit Scoring for SAS Enterprise Miner Add-on License.

Ext Demo

Input

Data

Open Source

Integration

Register

Metadata

Save

Data

Page 14: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

84SECONDS

DA

TA

EX

PLO

RA

TIO

N

MO

DE

LD

EV

EL

OP

ME

NT

MO

DE

LD

EP

LO

YM

EN

T

SAS® High-Performance Data MiningCo można uzyskać?

Klasyczny proces Proces z użyciem High-

Performance

Metoda Sieci Neuronowej (1 iteracja) Metoda Sieci Neuronowej (100 iteracji)

5 godzin na policzenie modelu 6 minut na policzenie model

Model lift 1.6% Model lift 3.2%

Ograniczenie do 1-2 metod Możliwe eksperymenty z wieloma

metodami

Page 15: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

High Performance Data Mining na HadoopKlaster 8 Węzłów, 64-rdzenie, Apache YARN, dane w formacie SASHDAT

Data Mining

Dane:

• 2 miliony rekordów

• 7.6GB

• 250 przedziałowych zmiennych

wejściowych

• 125 kategoryzujących zmiennych

wejściowych

• 125 binarnych zmiennych wejściowych

• 1 binarna zmienna objaśniana

Obciążenie w tle

(ETL w Map Reduce)

• 1 milion rekordów

• 3.05GB danych

• 200 przedziałowych zmiennych

wejściowych

• 100 kategoryzujących zmiennych

wejściowych

• 100 binarny zmiennych wejściowych

• 1 binarna zmienna objaśniana

Konfiguracja Systemu:

Osiem wirtualnych węzłów w ramach VMWare ESXi 5.5.0

vCPU: Intel Xeon CPU E7-4880 v2 , 2.50GHz (8 core na węzeł)

Memory: 64GB RAM (na węzeł), razem 512GB

Storage: XIV version 11.4.1a with 5TB storage

Network: 10GB Ethernet (na każdym węźle)

Węzeł EM

SAS High-

Performance Data

Mining

SAS High-

Performance Data

Mining i zadania w tle

Input Data Source Files 00:03:25 00:04:39

HP Explore 00:01:12 00:01:43

HP Partition 00:01:43 00:03:08

HP Impute 00:01:22 00:01:41

HP Variable Selection 00:03:29 00:04:33

HP Transform 00:00:54 00:00:54

HP Regression: Forward 00:02:05 00:02:22

HP Regression: Stepwise 00:02:02 00:02:07

HP Neural 00:02:25 00:02:13

HP Tree 00:02:04 00:02:06

Model Comparison 00:00:02 00:00:02

Total (flow) Run Time 00:20:30 00:24:58

Page 16: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

High Performance Data MiningCzy jest sens na PC?

Analiza Procedura Czas procedury Czas węzła

Regresja logistyczna Proc dmreg

Proc hplogistic

1:16 (cpu 1:16)

0:24 (cpu 1:10)

2m 31 s

1m 32 s

Drzewo decyzyjne Proc arbor

Proc hpsplit

1:56 (cpu 1:56)

0:41 (cpu 2:23)

2m 20 s

1m 09 s

Sieć neuronowa Proc neural

Proc hpneural

35:37 (cpu 35:27)

2:12 (cpu 4:35)

37 m

4m 7s

Data Mining

Dane:

• 6 miliony rekordów

• 625 MB

Konfiguracja Systemu:

Pojedynczy PC z Windows 64-bit

CPU: 4 Core+Hyper Threading

Memory: 64GB RAM

Page 17: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS® High-Performance Data Mining Co jest potrzebne?

Client Environment

(SAS 9.4)

• Windows x64 (64-bit)

• Linux x64 (64-bit): Novell SuSE; RHEL; OEL

• IBM AIX (64-bit)

• HP/UX on Itanium (64-bit)

• Solaris x64 (64-bit), Solaris on SPARC (64-bit)

SAS Software• SAS Enterprise Miner (Licencjonowany Odrębnie)

• SAS/ACCESS Engine

Server Environment• Linux x64 (64-bit): Novell SuSE 11 SP1;

• RHEL 6.1; OEL 6.1

Page 18: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Serwer obliczeniowy in-memory zaprojektowany specjalnie dla potrzeb interaktywnej zaawansowanej analityki i wizualizacji danych

Najważniejsze założenia architektoniczne

Dane In-Memory

» Dane dystrybuowane w całym klastrze - partycjonowanie

» Pozwala na szybką analizę danych dla algorytmów wieloprzebiegowe (multipass)

» Współdzielony dostęp do danych dla wielu procesów

Hybrid Distributed Computing Model

» Wykorzystanie wielowątkowości (thread level)

» Wykorzystanie wielu węzłów (node level)

» Algorytmy równoległe „świadome” rozłożenia jednostek pracy (maszyna i jej rdzenie)

Wbudowane algorytmy zaawansowanej analityki, dziedzictwo 38lat rozwoju narzędzi SAS. Regresja logistyczna nie zawsze znaczy to samo

2 miliardy kolumn

Multi-User = Setki jednoczesnych użytkowników

Stateless = nie ma potrzeby wyliczeń a-priori

MPP (w tym w środowisku Hadoop) lub SMP (pojedyncza maszyna)

SAS® LASR Analytics Server

RAM

CPU CPU

Page 19: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Data Manipulation• SAS Data Step

• BALANCE

• COLUMINFO

• COMPUTE

• DELETEROWS

• DISTINCT

• DROPTABLE

• FETCH

• GROUPBY

• PARTITION

• PROMOTE

• PURGETEMPTABLES

• SET

• TABLE

• TRANSFORM

• UPDATE

Data Exploration/

Visualization• BOXPLOT

• CORR

• CROSSTAB

• CONTOURPLOT

• DISTRIBUTIONINFO

• FREQUENCY

• HISTOGRAM

• HYPERGROUP

• KDE

• REPLAY

• SUMMARY

Deployment/

Miscellaneous• EXTERNAL (C API)

• FREE

• SAVE

• STORE

• SCORE

Predictive Modeling• DECISIONTREE

• FORECAST

• LOGISTIC

• GENMODEL

• GLM

• RANDOMWOODS

• ASSESMENT

• ARM

• NEURAL

• OPTIMIZE

Descriptive Modeling• CLUSTER

• SVD

Recommender• CLUSTER

• KNN

• ASSOCIATIONS

• SVD

Text Analytics• PARSING

• SVD

Data ManipulationExploration / Visualization

Modeling Deployment

SAS® LASR Analytics Server Funkcje silnika (tzw. Akcje)

Page 20: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS® LASR Analytics Server

Jak korzystamy?

Klaster MPP

LASR Server MasterNode

LASR Server WorkerNode

LASR Server WorkerNode

LASR Server WorkerNode

Visual Analytics Visual Statistics In-Memory Statistics

Page 21: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

In-Memory Statistics (SAS® LASR Server) Przykłady wydajności

ZadanieCzas

(sec)

Akcja PROC

IMSTAT

Statystyki opisowe dla jednej zmiennej numerycznej (n, min, max, mean, std) 0.03 summary

Mediana i decyle dla jednej zmiennej numerycznej 0.11 percentile

Rozkład częstości dla jednej zmiennej tekstowej 0.03 frequency

Regresja liniowa dla 1 ilościowej zmiennej objaśnianej oraz 20 predyktorów

ilościowych wraz z kodem skoringowym 2.43 glm

Regresja liniowa dla 1 ilościowej zmiennej objaśnianej oraz 10 predyktorów

ilościowych i 10 jakościowych 0.55 glm

Regresja logistyczna dla 1 binarnej zmiennej objaśnianej oraz 20 predyktorów

ilościowych 1.10 logistic

Uogólniony model liniowy dla ilościowej zmiennej objaśnianej , 20 predyktorów

ilościowych, rozkład gamma 5.49 genmodel

k-means clustering dla 20 aktywnych zmiennych 0.64 cluster

k-means clustering dla 100 aktywnych zmiennych 2.18 cluster

Konfiguracja Systemu:

CPU: 4 x 4 rdzenie

Dane (Modelowanie):

• 5 000 175 rekordów

• 134 zmienne

• Łącznie wszystkie zadania

12.56s

Skoring:

• 50 milionów rekordów

• Regresja liniowa

• 1.34 s

Page 22: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

LASR Server i SAS® High-Performance

Możliwe architektury w relacji do klastra Hadoop

DEDYKOWANY KLASTER DLA LASR/HPA SERVER

• Węzły LASR/HPA zainstalowane poza węzłami klastra Hadoop

• Przetwarzanie Hadoop separowane od przetwarzania LASR

• Asymetryczna architektura ładowania danych, z wykorzystaniem

SAS Embedded Process lub tzw. Front Loading

HadoopNode

HadoopNode

HadoopNode

HadoopNode

LASR Node

LASR Node

LASR Node

LASR Node

HadoopNode

LASR Node

HadoopNode

HadoopNode

HadoopNode

HadoopNode

LASR Node

LASR Node

LASR Node

Network

EP EP EP EP EP

HadoopNode

HadoopNode

HadoopNode

HadoopNode

HadoopNode

LASR Node

LASR Node

LASR Node

LASR Node

HadoopNode

EP EP EP EP EPEP

ASYMETRYCZNY KLASTER WSPÓŁDZIELONY

• Węzły LASR/HPA zainstalowane na wybranych węzłach klastra Hadoop

• Konfiguracja klastra musi uwzględniać potencjalne konkurowanie o zasoby

(np. wykorzystując YARN)

• Asymetryczna architektura ładowania danych, z wykorzystaniem

SAS Embedded Process

SYMETRYCZNY KLASTER WSPÓŁDZIELONY

• Węzły LASR/HPA zainstalowane na wszystkich węzłach klastra Hadoop

• Konfiguracja klastra musi uwzględniać potencjalne konkurowanie o zasoby

(np. wykorzystując YARN)

• Możliwa symetryczna (kolokowana) architektura dla ładowania danych z

wykorzystaniem formatu SASHDAT

Page 23: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

LASR Server i SAS® High-Performance

Inne wspierane architektury sprzętowe

• Teradata 720 appliance połączony do Teradata Database

Teradata

• Pivotal (Greenplum) Data Compute Appliance połączony do Greenplum Database

EMC Pivotal

• Oracle Exalogic/Big Data Appliance/Commodity połączony do Exadata Database (Linux)

Oracle

Page 24: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

A co z wydajnością w innych aspektach?

Aspekt Rozwiązania/technologie SAS

Wydajność obliczeń

Integracja Danych • SAS Data Loader for Hadoop

• SAS Data Management

Skoring • Rodzina SAS® Scoring Accelerator

• SAS Event Stream Processing

Wydajność procesu

Modelowanie „masowe” • SAS® Factory Miner

Przekazanie na produkcję • SAS® Model Manager

• SAS® Decision Manager

Zarządzanie modelami • SAS® Model Manager

Page 25: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

• Agenda

• Informacje o

prezentacjach i

prelegentach

• Możliwość oceny

prezentacji

Page 26: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Dziękuję za uwagę

Page 27: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS®

High-Performance

Data Mining 13.2

CORE CAPABILITIES

Data summarization

High-performance DS2

High-performance data mining database

Correlation

Sampling

Binning

Imputation

Page 28: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS®

High-Performance

Data Mining 13.2

SAS® HIGH-PERFORMANCE STATISTICS

Logistic regression and model selection

Linear regression and model selection

Nonlinear regression

Partial least squares

Quantile regression analysis

Generalized linear modeling and model selection

Decision trees

Finite mixture models

Principal components analysis

Canonical discriminant analysis

Page 29: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS®

High-Performance

Data Mining 13.2

SAS® HIGH-PERFORMANCE DATA MINING

Variable reduction

Time series dimensional reduction

Neural networks

Random forests

Random forest scoring

Decisions

Bayesian network

Clustering

Support vector machines

Page 30: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS® High-Performance Data Mining 13.2

Champion models are automatically selected using selectable criteria:

Kolmogorov-Smirnnov.

Lift and cumulative lift.

Gain and cumulative gain.

Misclassification rate.

Percent captured event.

Average percent captured event.

Average square error.

Page 31: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS® High-Performance Data Mining 13.2

Bayesian Network Model

A Bayesian network is a directed acyclic graphical model in which nodes represent random variables and

the links between nodes represent conditional dependency of the random variables.

Features:

structure learning through efficient local learning algorithms

efficient variable selection through independence tests

automatic selection of the best parameters by using a validation data subset

learning of different types of Bayesian network structures

handling of both nominal and interval input variables

binning of the interval input variables

handling of missing values

multithreading during the training and scoring phases

Page 32: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS® High-Performance Data Mining 13.2

Decision Tree Model

Splitting criteria:

CHAID

Chi-square

Entropy

Fast CHAID

Gini

Information Gain Ratio

F Test

Variance

Subtree methods:

Assessment

C4.5

Cost-complexity

Page 33: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS in-database

EMBEDDED PROCESS. CO TO JEST? EP udostępnia run-time SAS (tzw. TK) w „platformach MPP”

Wykonuje program w języku SAS DS2

Implementacja specyficzna (zoptymalizowana) dla danego środowiska MPP (skalowalność taka jak środowiska)

Wykorzystuje rozproszoną architekturę Hadoop (Map-Reduce) lub mechanizmy platformy MPP (integracja poprzez Table Function UDF) dla optymalizacji i przetwarzania równoległego

Jest zarządzany przez mechanizm workload management platformy MPP(np. przez YARN – jak każda aplikacja M-R)

W środowisku Hadoop wykorzystuje Hive, HCatalog oraz natywny dostęp do HDFS aby zapisywać/odczytywać dane (Avro, ORC, Parquet, RCFile, sequence, binary, delimited, XML)

W środowisku MPP RDBMS korzysta z wewnętrznej komunikacji bazy do odczytu/zapisu danych, wykorzystuje mechanizmy optymalizacji platformy (np. Degree of Parelelism w Oracle Exadata)

Oprócz Hadoop EP jest

dostępny również w

środowiskach MPP:

• IBM DB2

• Pivotal Greenplum

• SAP HANA

• IBM Netezza

• Oracle

• Teradata

Page 34: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

Capabilities of SAS®

In-memory StatisticsData Manipulation

• Aggregate

• Compute

• Update

• Append

• Set

• Schema

• DeleteRows

• DropTables

• PurgeTempTables

Data Exploration

• Boxplot

• Corr

• Crosstab

• Distinct

• Fetch

• Frequency

• Histogram

• KDE

• MDSummary

• Percentile

• Summary

• TopK

Descriptive Modeling

• Association

• Path Analysis

• Clustering (k-means)

• Clustering (DBSCAN)

Evaluation, Deployment

• Assess

Misclassification matrix

Lift, ROC, Concordance

• Score

• Training / Validation

Modeling

Model Evaluation

& Deployment

ANALYTICAL

LIFE CYCLE

Utilities

• Where

• GroupBy

• TableInfo, ColumnInfo, ServerInfo

• Partition, Balance

• Store, Replay, Free

• Table, Promote

Text Analytics

• Parsing

• SVD

• Topic generation

• Document projection

Recommendation Systems

• Association

• Clustering

• kNN

• SVD

• Ensemble

Predictive Modeling

• Decision Tree

• Forecast

• Gen Linear Model

• Linear Regression

• Logistic Regression

• Random Forests

• Neural Networks

HDFS I/O

• Sasiola

• Sashdat

• Anyfile Reader

TEXT

PREPARE

DATA EX

PL

OR

E

DA

TA

DEVELOP

MODELS

SC

OR

E

Page 35: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS Model Manager or

SAS Program Interface

SAS

Embedded

Process

SAS® Enterprise

Miner™

Model Publish

Database

DS2 Program Published

SAS Scoring Code or Model Package Generated

SQL query

used to run the

SAS Program

Registered

DS2

Program

SAS/Access®

Interface

Registered

SAS

Formats

SAS/STAT®

Model

SAS Model Manager

Publish

SAS Scoring Code or ItemstoreGenerated

Database Systems Supported (EP Publishing):

Teradata, DB2, IBM Netezza, Aster Data, Oracle, SAP HANA, Hadoop & Pivotal (previously Greenplum)

SAS®

Scoring

Accelerator

EMBEDDED PROCESSING (EP)

MODEL PUBLISHING METHOD

Page 36: Analityka wysokiej wydajności. - SAS · procesów (thread & proces ... •Priorytetyzacja i szeregowanie poprzez ... 5 godzin na policzenie modelu 6 minut na policzenie model Model

SAS®

Scoring

Accelerator WYDAJNOŚĆ