Michał Żyliński: Cortana dla niewtajemniczonych

70

Transcript of Michał Żyliński: Cortana dla niewtajemniczonych

Machine Learning

Chmura

Big Data

PP

T R

EM

12

• W szczycie• 1600 rdzeni

• 5.6 TB RAM

• Ponad 2000 zdjęć/sekundę

Efekt pracy jednego programisty (3 tygodnie pracy) * Dane z września 2015

CHALLENGE

Dartmouth-Hitchcock Medical Center is a leading

regional medical center in New England with 1.2

million patients and more than 1,000 physicians in

virtually all areas of medicine. It wanted to replace

static treatment plans based on outdated, generic

data with highly personalized treatment plans or

“pathways” that would evolve based on the patient’s

own data and near-real-time information such as

vital signs, moods, and exercise habits from similar

people in the same region.

o Empowered, healthier patients with

personalized, evidence-based treatment plans

and collaborative care

o Millions of dollars saved in readmission costs,

unnecessary ER and doctor visits, and missed

work

o Improved quality of life with 360-degree view

of patient health, mood, and behavior

o More effective population health management

BENEFITSSOLUTION

Dartmouth-Hitchcock created ImagineCare, a new

consumer-focused solution based on the Microsoft

Cortana Analytics Suite and Microsoft Dynamics CRM.

ImagineCare collects and analyzes real-time and

historical data from medical and health devices and

electronic health records, and then surfaces metrics

including predictive analytics in clinical dashboards

and mobile apps. Clinicians can adjust treatment

plans and immediately alert patients to changes, and

patients and doctors can collaborate in real time.

DARTMOUTH-HITCHCOCK

Personalized care delivers

healthier populations

“This system is really transforming how we can deliver health and wellness to

the population. Despite all of the technology involved, ImagineCare does

not lose that human touch, which is so important.”

Nathan LarsonDirector of Remote Medical Sensing

Przykładowe rozwiązania

Hadoop w chmurach

Azure HDInsight

Hadoop w modelu IaaS

HDInsight działa na Windows i Linux

• Wolność wyboru

Środowiska hybrydowe

Azure Storage

Architektura klastra

Azu

re V

Net

Secure gateway

AuthN

HTTP Proxy

Highly available

Head nodes

xWorker nodes

HT

TP

S

traff

ic

ODBC/JDBC WebHCatalog Oozie Ambari

Customizecluster?

Proces tworzenia klastra (technicznie)

Sesja RDP do klastra (ale

bez gwarancji trwałości)

Ręcznie

Zarządzanie i konfiguracja

Hive/Oozie Metastore

Storage accounts & VNET’s

ScriptAction

Za pomocą portalu

Ready for deployment

AcceptedCluster storage

provisioned

AzureVMconfiguration

Running

Timed Out

Error

Cluster operational

Configuring HDInsight

Cluster customization (custom script

running

Config values

JAR file placement in

cluster

PowerShell/SDK

No

Yes

Integracja z Visual StudioDostarczana razem z Azure SDK

Wsparcie dla VS 2012, 2013 i 2015

Proste zarządzanie klastrem (głownie z perspektywy Hive)

Podgląd powiązanych zasobów

Tworzenie tabel

Uruchamianie kwerend Hive

Podgląd postępów przetwarzania

Lokalna walidacja skryptów

IntelliSense

Integracja z Visual Studio

27

Budowanie topologii Storm

Gotowe szablony

Wsparcie dla spoutów i boltów tworzonych w C#

Topologie heterogeniczne (.NET i Java)

Monitorowanie topologii

Debugger

Azure Data Lake Store

Proces ETL

Specjalizowane narzędzia ETL (np. SSIS)

Zdefiniowany schemat

Kwerendy

Rezultat

Relacyjne

Aplikacje

biznesowe

Tradycyjny sposób patrzenia na analitykę1. Zebranie wymagań od użytkowników na potrzebne zestawienia i

raporty

2. Określenie schematu danych i optymalnych zapytań

3. Zidentyfikowanie potrzebnych źródeł danych

4. Budowa procesu ETL w oparciu o z góry narzucony schemat

danych.

5. Stworzenie raportów.

Niepotrzebne dane są usuwane lub archiwizowane

30

Jak najdłuższe

przechowywanieAnaliza Rezultaty

Zebranie informacji

ze wszystkich

źródeł

Iteracja

Nowe podejście: Wszystkie dane mają wartość

Nie jesteśmy w stanie określić wartości danych z góry

Kolekcjonowanie danych staje się nawykiem

Brak narzuconych schematów danych – różne formaty natywne

Schemat danych zależy od sposobu ich przetwarzania i zależny jest od zapytań

Aplikacje i użytkownicy traktują dane jako dobro wspólne

31

Zintegrowana usługa

przechowywania i analizy danych

W pełni zarządzana

Łatwa w użyciu

Sprawdzona w dużej skali

Dowolny typ, rozmiar i format

danych

Oparta o otwarte standardy

Microsoft Azure Data Lake

YARN

HDFS

HDInsightAnalytics

Service

Store

Partners

U-SQL

Clickstream

Sensors

Video

Social

Web

Devices

Relational

Applications

32

Rozproszony system plików

Zoptymalizowany pod kątem

przetwarzania danych

Brak ograniczeń pojemności

Dowolny format danych

Wysoka dostępność (w tym

georeplikacja)

WebHDFS REST API

Wspierany przez wszystkie

wiodące dystrybucje Hadoop

Przystosowane również dla

scenariuszy IoT

Azure Data Lake: Store

YARN

HDFS

HDInsightAnalytics

Service

Store

U-SQL

Clickstream

Sensors

Video

Social

Web

Devices

Relational

Applications

33

ADL Store jest kompatybilny z HDFS

Map reduceHBase

transactionsAny HDFS applicationHive query

Azure HDInsight

Hadoop WebHDFS clientHadoop WebHDFS client

WebHDFS

endpointWebHDFS

REST API

WebHDFS

REST API

34

ADL Store file ADL Store file ADL Store file ADL Store fileADL Store file

Azure Data Lake Store

ADL Store i bezpieczeństwo: RBAC

Każdy plik i katalog ma swojego

właściciela (grupę)

Osobne uprawnienia (RWX) dla

właścicieli, członków grupy i

pozostałych użytkowników

Można zarządzać ACLami z portalu

lub za pomocą linii komend

35

ADL Store i bezpieczeństwo: szyfrowanie

Szyfrowanie danych podczas

transmisji (HTTPS) i przy zapisie

Użytkownicy będą mogli samodzielnie

zarządzać kluczami lub skorzystać z

usługi Azure Key Vault

36

Azure Data Lake Analytics Service

Azure Data Lake Analytics Service

Alternatywa do Hadoop

Oparty o Apache YARN

Dynamiczne skalowanie bez myślenia o klastrach

Opłaty za ilość zapytań

Wsparcie dla Azure AD w celu kontroli dostępu i integracji z lokalnymi środowiskami

Korzysta z U-SQL aby połączyć wygodę SQL z elastycznością C#

38

Po co kolejna usługa?

39

Nieograniczona

pojemnośćAutomatyczne

skalowanie

Zrównoleglanie

skryptów U-SQL

010010

100100

010101

Ten sam kod Integracja z VS

Debugger,

optymalizacja zapytań,

monitorowanie itd..

Łatwiejsza

nauka

Pochodna SQL i C#

Jak to wygląda w praktyce?

Wiele języków:U-SQL, Hive, & Pig

Łatwa integracja z .NET

ADLA ma uzupełniać HDInsightPodobne zastosowania, narzędzia i klienci

HDInsight

Dla miłośników open source: Java, Eclipse, Hive itd.

Konfigurowalne i elastyczne klastry w postaci zarządzanej usługi

ADLA

Dla dotychczasowych użytkowników

C#, SQL i PowerShella

Wygoda, wydajność i automatyczna

skalowalność – „job service”

Zapytania U-SQL: Wzorzec działaniaPrzetwarzanieOdczyt Zapis

INSERT

OUTPUT

OUTPUT

RowSetSELECT…

FROM…

WHERE…

EXTRACT

EXTRACT

SELECT

SELECT

Azure

Data

Lake

Azure

Data

Lake

Azure

SQL

DB

Azure

Storage

Blobs

Azure

Storage

Blobs

15

RowSet

U-SQL i rozszerzenia

Wbudowane

operatory, funkcje i

agregaty

C# expressions (in SELECT statements)

User-defined aggregates (UDAGGs)

User-defined functions (UDFs)

User-defined operators (UDOs)

43

Azure SQL Data WarehouseRelacyjna hurtownia danych w modelu usługowym, zarządzana w chmurze przez Microsoft.

Najbardziej elastyczny model rozliczeniowy na rynku z wbudowanymi możliwościami klasy Enterprise.

Możliwość integracji ze środowiskami chmurowymi lub on-premise.

Prosty model rozliczeniowy oparty o przechowywane dane i czas obliczeń

Płatność zależna od realnych potrzeb

Wysoka wydajność bez potrzeby zmiany architektury aplikacji

Niski koszt przechowywanianieużywanych danych

Zarządzanie, wsparcie i niezbędna infrastruktura zawarta w cenie

Przetwarzanie MPP petabajtów danych

Przeskalowanie środowiska w mniej niż minutę

Szybsze rezultaty obliczeń

Płatność tylko za realne zużycie

Ścisła integracja z pozostałymi składnikami platformy Azure

Możliwość budowy rozwiązań hybrydowych

SQL Server w tle

App Service

Intelligent App

Hadoop

Azure Machine Learning

Power BI

Platforma zbudowana z myślą o chmurze

Azure SQL Database

SQL

Azure SQL DataWarehouse

Storm on HDInsight Azure Stream Analytics

Spark Streaming on HDInsight

ASA jako element architektury systemu

Data Source Collect Process ConsumeDeliver

Event Inputs- Event Hub

- Azure Blob

Transform- Temporal joins

- Filter

- Aggregates

- Projections

- Windows

- Etc.

Enrich

Correlate

Outputs- SQL Database

- Blob Storage

- Event Hub

- Power BI

- Table Storage

- Service Bus Queue

- Service Bus Topic

- DocumentDb*

Azure

Storage

• Temporal Semantics

• Guaranteed delivery

• Guaranteed up time

Azure Stream Analytics

Reference Data- Azure Blob

- …

PyGame Pacman by David Reilly

Wykrywanie nieprawidłowości

{"user_id":"michalz", "session_id": "28e12480-724d-11e5-80ca-cc3d821e73b3", "event_type": "START", "event_value": ""}

{"user_id":"michalz", "session_id": "cf1498ee-724d-11e5-9408-cc3d821e73b3", "event_type": "SCORE", "event_value": "10"}

{"user_id":"michalz", "session_id": "cf1498ee-724d-11e5-9408-cc3d821e73b3", "event_type": "SCORE", "event_value": "400"}

{"user_id":"michalz", "session_id": "2a8bf6e1-7264-11e5-a7ca-cc3d821e73b3", "event_type": "STOP", "event_value": "410"}

Wykrywanie anomalii

• Wykrywanie włamań• Wadliwe egzemplarze produktów• Zaawansowany monitoring infrastruktury IT

Nietypowa aktywnośćDziałalność hakerów lub terrorystów, próby włamań do systemów bankowych, telekomunikacyjnych…

Błąd narzędziowyUszkodzenia lub zużycie sprzętuZmiana środowiska

• Pogoda, nowe wzorce zakupowe, mutacje w genach

Błąd ludzkiPrzekładający się zwykle na różnicę w danych wejściowych

Input Dataset

Feature Selection

Training set Testing set

Algorithm

Train Model Score Model

Evaluate Model

Budowa modelu ML

Age Workclass Education Occupation Sex Hours-per-week Income

39 State-gov Bachelors Adm-clerical Male 40 <=50K

50 Self-emp-not-inc Bachelors Exec-managerial Male 13 <=50K

38 Private HS-grad Handlers-cleaners Male 40 <=50K

53 Private 11th Handlers-cleaners Male 40 <=50K

28 Private Bachelors Prof-specialty Female 40 <=50K

37 Private Masters Exec-managerial Female 40 <=50K

49 Private 9th Other-service Female 16 <=50KPublish Model

Azure Data Factory

Elastyczność

ELASTYCZNOŚĆ KONTROLA

Kontro la

Azure Data Factory

Przykład: profilowanie użytkowników

Przykład: profilowanie użytkowników

Copy new users to blob storage

Join and aggregateactivity per week and user table

WeeklyPrivacy:Refresh:

Xbox New

Users

Game New

Users

Game Activity

Per WeekDaily

New User Activity Per

Week

Contains PIIWeekly, Monby 8AM