azureml - creating and using machine learning solutions (italian)

24
#sqlsatTorino #sqlsat400 May 23, 2015 AzureML - Creating and Using Machine Learning Solutions Davide Mauri @mauridb www.davidemauri.it dmauri@solidq

Upload: davide-mauri

Post on 22-Jul-2015

87 views

Category:

Data & Analytics


0 download

TRANSCRIPT

#sqlsatTorino

#sqlsat400May 23, 2015

AzureML - Creating and Using Machine

Learning Solutions

Davide Mauri

@mauridb

www.davidemauri.it

dmauri@solidq

#sqlsatTorino

#sqlsat400May 23, 2015

Sponsors

#sqlsatTorino

#sqlsat400May 23, 2015

Organizers

#sqlsatTorino

#sqlsat400May 23, 2015

Davide Mauri

Microsoft SQL Server MVP

Works with SQL Server from 6.5, on BI from 2003

Specialized in Data Solution Architecture, Database Design, Performance Tuning, High-Performance Data Warehousing, BI, Big Data

President of UGISS (Italian SQL Server UG)

Regular Speaker @ SQL Server events

Consulting & Training, Mentor @ SolidQ

E-mail: [email protected]

Twitter: @mauridb

Blog: http://sqlblog.com/blogs/davide_mauri/default.aspx

#sqlsatTorino

#sqlsat400May 23, 2015

Agenda

Machine Learning, uats dat?

Supervised & Unsupervised Methods

Tool e Linguaggi

Esperimenti On-Premises

Azure Machine Learning

Integrazione di AzureML nelle applicazioni

#sqlsatTorino

#sqlsat400May 23, 2015

MACHINE LEARNING

Uats dat?

#sqlsatTorino

#sqlsat400May 23, 2015

Machine Learning

Algoritmi che apprendono dai dati

Niente di nuovo dal punto di vista scientifico "Field of study that gives computers the ability to learn

without being explicitly programmed“ - 1959, Arthur Samuel

In Italiano: «Apprendimento Automatico» Nome meno bello ma più vicino alla realtà

Richiede *molta* potenza di calcolo (anche per Not-So-Big Data) Azure, here we come!

#sqlsatTorino

#sqlsat400May 23, 2015

Machine Learning

Molto, molto, molto, molto utile per Identificare pattern sconosciuti e non “umanamente”

identificabili Ad es. in spazi multi-dimensionali (da un punto di vista

matematico e pratico, sono oggetti con cui ci relazioniamo tutti i giorni)

Identificare correlazioni nascoste Es. relazioni di causa/effetto per identificare frodi, eventi

specifici (rottura di un pezzo)

Classificare in automatico insiemi di dati Es. autore di provenienza di un testo, sentiment analysis,

pattern recognition

Anticipare il futuro basandosi su conoscenza passata Es. Analisi delle tendenze di prezzi, stock, costi

#sqlsatTorino

#sqlsat400May 23, 2015

Machine Learning

Ci sono due (ma alcuni le dividono in cinque!) grosse categorie Supervised Learning

Unsupervised Learning

Supervised: agli algoritmi viene insegnato qual è il risultato atteso

Unsupervised: gli algoritmi identificano in autonomia le regole / i pattern

#sqlsatTorino

#sqlsat400May 23, 2015

Linguaggi

Linguaggi comuni ed utilizzati attualmente R (MS ha appena acquisito Revolution Analytics)

Pyton (Scikit-Learn – pron: “sy-kit learn”)

In ambito .NET Infer.NET

http://research.microsoft.com/en-us/um/cambridge/projects/infernet/

F# http://fsharp.org/guides/machine-learning/index.html

http://stackoverflow.com/questions/8068040/resources-for-working-with-machine-learning-in-f

Azure ML Net# - Linguaggo specifico per Reti Neurali Artificiali

#sqlsatTorino

#sqlsat400May 23, 2015

AzureML

“Democratize Machine Learning”

https://studio.azureml.net/

Gratis (“Free Tier”) per dati fino a 10GB e per attività di test/sviluppo

Sviluppo di esperimenti e pubblicazione degli algoritmi tramite Web API / Service

#sqlsatTorino

#sqlsat400May 23, 2015

Tool

R + RStudio IDE free per R, molto ben fatto

http://www.rstudio.com/

Anaconda Python Distribuzione di Python con tutti i package necessari per fare

Data Science

http://www.continuum.io/

PyTools For Visual Studio Estensione per sviluppare con Python con Visual Studio

Team di sviluppo assorbito da AzureML

https://pytools.codeplex.com/

#sqlsatTorino

#sqlsat400May 23, 2015

ESPERIMENTI ON-PREMISES

Flower Power!

#sqlsatTorino

#sqlsat400May 23, 2015

IRIS Dataset

Disponibile presso il sito UC Irvine Machine Learning Repository http://archive.ics.uci.edu/ml/datasets/Iris

150 classificazioni di fiori “iris” 3 classi: Virginica, Versicolor, Setosa

4 feature (dimensioni): Sepal Width & Length, Petal Width & Length

Uno dei set più famosi Una classe linearmente separabile

Le alter due classi NON sono linearmente separabili

#sqlsatTorino

#sqlsat400May 23, 2015

IRIS Dataset

http://www.anselm.edu/homepage/jpitocch/genbi101/diversity3Plants.html

#sqlsatTorino

#sqlsat400May 23, 2015

DEMO

IRIS Dataset

#sqlsatTorino

#sqlsat400May 23, 2015

AZURE MACHINE LEARNING

#sqlsatTorino

#sqlsat400May 23, 2015

Azure Machine Learning

www.azureml.com

Azure ML Studio Web application per lo sviluppo dei modelli

Processo di sviluppo Experiment

Score

Evaluate

Publish

#sqlsatTorino

#sqlsat400May 23, 2015

DEMO

Azure Machine Learning Studio

#sqlsatTorino

#sqlsat400May 23, 2015

INTEGRAZIONE CON

APPLICAZIONI CUSTOM

#sqlsatTorino

#sqlsat400May 23, 2015

Web Endpoint

Azure Machine Learning permette di creare un endpoint web per invocare l’algoritmo di ML da applicazioni custom

Protocollo basato su JSON

Insieme al web service viene creato anche Pagina di Help

Endpoint per chiamata singola

Endpoint per chiamata batch

#sqlsatTorino

#sqlsat400May 23, 2015

DEMO

Custom Application

#sqlsatTorino

#sqlsat400May 23, 2015

Valutazioni

Sessione

http://speakerscore.com/7M4M

Conferenza

http://speakerscore.com/MK1T

#sqlsatTorino

#sqlsat400May 23, 2015

THANKS!

SPEAKERSCORE

http://speakerscore.com/MK1T

#sqlsatTorino

#sqlsat400