+ All Categories
Home > Data & Analytics > Le tecnologie dei Big Data

Le tecnologie dei Big Data

Date post: 05-Jul-2015
Category:
Upload: vincenzo-manzoni
View: 261 times
Download: 0 times
Share this document with a friend
Description:
Presentazione introduttiva alle tecnologie dei Big Data fatta all'Ordine degli Ingegneri della provincia di Bergamo il 7 giugno 2014.
38

Click here to load reader

Transcript
Page 1: Le tecnologie dei Big Data

LE TECNOLOGIE DEI BIG DATA

Ordine degli Ingegneri della Provincia di Bergamo, 7 giugno 2014 !

Ing. Vincenzo Manzoni, [email protected]

Page 2: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

WORKFLOW

2

Dati grezzi (raw)

Processing

Dataset

Modelli statistici (Analisi)

Machine Learning (Previsione)

Data driven products

Report, visualizzazioni, post su blog

Acquisizione Elaborazione Output

Page 3: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

WORKFLOW

3

Dati grezzi (raw)

Processing

Dataset

Modelli statistici (Analisi)

Machine Learning (Previsione)

Data driven products

Report, visualizzazioni, post su blog

Acquisizione Elaborazione Output

Page 4: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

MACHINE LEARNING DEFINIZIONE

4

• In italiano, apprendimento automatico • Area dell’Intelligenza Artificiale (AI, Artificial Intelligence) che studia gli

algoritmi che permettono alle macchine di apprendere. • Gli algoritmi si basano su osservazioni - dati - per fare la sintesi della

conoscenza. • Usi:

• Sistemi di raccomandazione • Anomaly/fraud detection • Customer churn • Market segmentation

Page 5: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

MACHINE LEARNING PROCESSO DI ADDESTRAMENTO

5

Creazione degli insieme di addestramento e di test

Dataset

Insieme di addestramento

Insieme di test

Creazione del modello

Validazione del modello

Modello validato

Modello

Page 6: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

MACHINE LEARNING PRINCIPALI TIPOLOGIE DI ALGORITMI

6

• Apprendimento supervisionato • Apprendimento non supervisionato

Page 7: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

MACHINE LEARNING APPRENDIMENTO SUPERVISIONATO

7

Page 8: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

APPRENDIMENTO SUPERVISIONATO CLASSE DISCRETA

8

x1

x2

?

A priori ho informazioni sulla classe (grigia o arancione) a cui appartengono le osservazioni.

A quale classe appartiene un nuovo punto, mai osservato, di cui non conosco a priori la classe? Problema di classificazione

Page 9: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

APPRENDIMENTO SUPERVISIONATO CLASSE DISCRETA

9

x1

x2

Con un primo separatore, la nuova istanza viene attribuita alla classe arancione.

Page 10: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

APPRENDIMENTO SUPERVISIONATO CLASSE DISCRETA

10

x1

x2

Con un secondo separatore, la nuova istanza viene attribuita alla classe grigia.

Esiste un separatore ottimo?

Page 11: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

APPRENDIMENTO SUPERVISIONATO CLASSE DISCRETA

11

x1

x2

Gli algoritmi di apprendimento supervisionato permettono, dato un insieme di addestramento (training) di determinare il separatore ottimo secondo una certa funzione di costo.

Separatore ottimo secondo una certa funzione di costo

Page 12: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

K-NEAREST NEIGHBORS

• Il riconoscimento avviene sulla base degli oggetti vicini a quello considerato. • Il parametro k indica quanti vicini considerare. • Può essere usato per stimare classi discrete

(classificazione) o variabili continue (regressione)

12

x1

x2

k=1

k=5

k=2

Page 13: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

ALBERI DI DECISIONE

• E’ un algoritmo di classificazione trasparente. Una volta addestrato, è rappresentabile con una serie di se, allora, altrimenti.

• Una versione evoluta è il Random Forest prevede l’utilizzo di più alberi.

13

Page 14: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

MACHINE LEARNING APPRENDIMENTO NON SUPERVISIONATO

14

Page 15: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

APPRENDIMENTO NON SUPERVISIONATO

15

x1

x2

A priori, non ho informazioni sulla classe a cui appartengono le mie osservazioni.

Page 16: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

APPRENDIMENTO NON SUPERVISIONATO

16

Anche in questo caso, si possono raggruppare i punti secondo criteri diversi.

x1

x2

x1

x2

Esiste un raggruppamento ottimo?

Page 17: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

DEMO 1

17

Anche in questo caso, si possono raggruppare i punti secondo criteri diversi.

x1

x2

x1

x2

Esiste un raggruppamento ottimo?

Page 18: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Siete l’analista dati di un provider di telefonia. Il vostro obiettivo è di capire se nei prossimi 6 mesi un cliente lascerà sulla base del suo profilo d’uso.

• Il profilo d’uso di un utente è descritto da 4 variabili: 1. Uso voce (minuti / mese) 2. Uso dati (MB / mese) 3. Chiamate al servizio clienti 4. Ritardo nei pagamenti (mesi)

Id Uso  voce Uso  da+ Chiamate  al  servizio  clien+

Ritardo  pagamen+ Lascia?

1 3.20 22.85 0 1 VERO2 36.42 67.40 2 1 FALSO3 5.44 148.13 1 0 FALSO

DEMODEMO 1

Page 19: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

DEMO 1

Ritardo (mesi) Non chiude Chiude0 100 01 89 112 73 243 77 23

Mesi di ritardo nei pagamenti

Considerando solo mesi di ritardo, il nostro sistema correttamente solo il 24% delle istanze.

Proviamo a aggiungere una variabile…

Page 20: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

DEMODEMO 1Mesi di ritardo nei pagamentiChiamate al servizio clienti

Si può arrivare al 50% di accuratezza, ma i clienti coinvolti sono pochi.

Proviamo con un nuovo approccio!

Page 21: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

DEMODEMO 1

http://orange.biolab.si

Page 22: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Framework che supporta applicazioni distribuite con alto accesso ai dati.

• Sviluppato attivamente da Yahoo, è stato ispirato dalla MapReduce di Google e dal Google File System.

• È composto da: • HDFS: un filesystem distribuito • Hadoop Common: un insieme di librerie

per l’accesso a HDFS.

HADOOP

Page 23: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

LE TECNOLOGIE DEI BIG DATA PROCESSO DI ADDESTRAMENTO

23

Page 24: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

HADOOP ARCHITETTURA

Page 25: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Tecnologia per interrogare i Big Data come se fossero tabelle SQL.

• HiveQL • Produce in modo trasparente software Map

Reduce. • Inizialmente sviluppato da Facebook.

HIVE

Page 26: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Linguaggio dichiarativo • Si specifica cosa si vuole, non come ottenerle (come SQL).

• Simile, ma non del tutto identico a SQL. • Esempi:

• SELECT  COUNT(*)  FROM  nyse_stocks  

• SELECT  AVG(stock_price_close)  FROM  nyse_stocks  WHERE  stock_symbols=‘IBM’

HIVEQL

Page 27: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Piattaforma per creare programmi Map Reduce.

• Astrae la scrittura di programmi Map Reduce in un linguaggio di più alto livello (Pig Latin).

• Inizialmente sviluppato da Yahoo.

PIG

Page 28: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Linguaggio procedurale. • Si specificano i vari passi per ottenere un risultato (come C,

Python, R, Java, …) • Esempio:

a  =  LOAD  'nyse_stocks'  using      org.apache.hcatalog.pig.HCatLoader(); b  =  filter  a  by  stock_symbol  ==  'IBM';c  =  group  b  all;d  =  foreach  c  generate  AVG(b.stock_price_close); dump  d;

PIG

Page 29: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

Hive PigLinguaggio di interrogazione HiveQL Pig Latin

Introdotto da Facebook YahooTipologia di linguaggio Dichiarativo Procedurale

Simile a SQL C, Java, Python, R

HIVE VS PIG

Page 30: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Esempio d’uso di Hive da pannello di controllo web

• Confronto delle prestazioni con una interrogazione MySQL

• Esempio d’uso di Hive da console

• Esempio d’uso di Pig

DEMO 2

Page 31: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

DEMO 2

Page 32: Le tecnologie dei Big Data

Pres

tazio

ni (m

inore

è m

eglio

)

0

10

20

30

40

Dimensione del dataset (GB)

0 50 100 150 200

MySQL Hadoop

Hadoop inizia ad essere conveniente per dataset > di 100-150 GB.

CONFRONTO PRESTAZIONI HADOOP VS MYSQL

Page 33: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Insieme di tecnologie offerta da un provider che permettono di memorizzare e elaborare dati grazie a risorse hardware e software distribuite e virtualizzate.

IL CLOUD COMPUTING

Page 34: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

IL CLOUD COMPUTING CONFRONTO TRA PROVIDERS

Provider Servizi offerti URL

Dropbox Storage dropbox.com

Amazon Web Services (AWS)

Storage, calcolo, Hadoop… e molto altro aws.amazon.com

Microsoft Azure Storage, calcolo, Hadoop azure.microsoft.com

Google Cloud Storage, calcolo, Hadoop, Machine Learning cloud.google.com

BigML Machine Learning bigml.com

Page 35: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

AMAZON WEB SERVICES

Page 36: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

• Servizio che rende trasparente all’utente il processo di scelta del miglior algoritmo di apprendimento supervisionato

• L’utente carica nel servizio il proprio dataset di addestramento (spesso, anche quello di test).

• Il sistema addestra un modello e notifica l’utente al termine dell’operazione.

• A questo punto l’utentepuò chiedere al modellodi classificare nuoveistanze.

ML AS A SERVICE

Page 37: Le tecnologie dei Big Data

Introduzione ai Big Data e alla scienza dei dati, Ordine degli Ingegneri della Provincia di Bergamo, 2014. Copyright: Vincenzo Manzoni

LIBRI DI RIFERIMENTO

37

Page 38: Le tecnologie dei Big Data

LE TECNOLOGIE DEI BIG DATA

Ordine degli Ingegneri della Provincia di Bergamo, 7 giugno 2014 !

Ing. Vincenzo Manzoni, [email protected]

Slide disponibili qui: http://www.vincenzomanzoni.com/corsi/


Recommended