SlideShare a Scribd company logo
1 of 21
Download to read offline
Java al servizio della Data Science
Uno sguardo a H2O.ai e KNIME
Chi siamo
Francesco Vettoretti
DevOps
Studente in Data Analytics
francesco@datatellers.info
Silvia Fracalossi
Dev & Data Management
Studente in Data Management
silvia@datatellers.info
Contenuti
Introduzione
Perché Java per la Data Science?
Perché H2O.ai e KNIME?
Ruolo dei due software
In che fase di progetto
eccellono questi due engine?
Funzionalità
Alcuni riferimenti ad esempi
pratici ed alle performance
Stack di progetto
Trarre vantaggio dal poter
integrare le due tecnologie
Introduzione
Perché JAVA?
● Velocità di calcolo (soprattutto in multithread)
● Adattabilità ad altri sistemi preesistenti
● Librerie di Data Science affidabili (WEKA, Java-ML...)
● Scalabilità e manutenibilità
Perché H2O.ai e KNIME?
Open-Source (community, bugfixing)
Tra i leader nel settore
Facilità di utilizzo
Predisposizione alla scalabilità
Facilità di integrazione con
numerose altre tecnologie
Perché H2O.ai e KNIME?
Ruolo dei due software
KNIME
Cosa
Piattaforma di Data Analysis,
Predictive Analysis e Modeling
Come
Procedure in un workflow, a loro
volta composte da nodi
Perché
Intuitivo, permette sia al Data
Scientist di testare velocemente
i modelli, che al Business Owner
di visualizzarne i risultati con
facilità. Open Source!
H2O.ai
Cosa
Motore avanzato e libreria di
Data Modeling e Machine Learning
Come
Nativamente con Java o Scala, o
tramite API (già accessibile con
librerie per R, Python, etc..)
Perché
Vantaggioso soprattutto
nell’ambito dei Big Data grazie
all’ottimo multithreading. Open
Source!
Funzionalità dei due software
KNIME
Data Access
MySQL, PGSQL, Oracle DB, JSON,
XML, file di testo, immagini…
Big Data
Spark, Hive, Teradata…
Trasformazione dati
Righe, colonne, matrici, testo,
serie temporali, immagini…
KNIME
Data Analysis & Mining
Statistica, ML, Data Mining, Web
Analytics… (con H2O.ai, Java,
Scala, R, Python…)
Data Visualization
JS, Python, R…
Deployment
JSON, XML, DBs, Excel, immagini…
H2O.ai
SUPERVISED LEARNING
Analisi statistica
Generalized Linear Models
(binomiale, gaussiana, poisson…)
e classificatore Bayesiano
Ensembles
Distributed Random Forest
(regression) e Gradient Boosting
Machine (decision tree)
Deep Neural Networks
Trasformazioni non lineari
multilivello
H2O.ai
UNSUPERVISED LEARNING
Clustering
K-Means (con autodetect di k)
Riduzione dimensionale
Principal Component Analysis
(riduzione lineare) e
Generalized Low Rank Models
(estensione della PCA per dati
arbitrari e mancanti)
Rivelazione di anomalie
Autoencoders (deep learning con
riduzione dimensionale non
lineare)
Performance
Risultati benchmark per regressione lineare Risultati benchmark per random forest
Fonte: github.com/szilard/benchm-ml
Stack di progetto
Stack di progetto
Scarica lo stack | Guarda la descrizione
Grazie per l’attenzione
Slide disponibili su bit.ly/2L3IiZK
Link utili
Documentazione H2O.ai
Documentazione
Documentazione KNIME
Documentazione
Booklet di H2O.ai
- R
- Python
Quickstart KNIME
- Getting started
- Cheatsheet
Link utili
Esempi di H2O.ai
Esempi multilinguaggio
Esempi di KNIME
KNIME examples server
Esempi di KNIME e H2O.ai
combinati
KAGGLE competition

More Related Content

Similar to Java al servizio della data science - Java developers' meeting

Cloud – l’ecosistema platform
Cloud – l’ecosistema platformCloud – l’ecosistema platform
Cloud – l’ecosistema platform
VMEngine
 
Trovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWS
Trovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWSTrovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWS
Trovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWS
Amazon Web Services
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
DotNetMarche
 

Similar to Java al servizio della data science - Java developers' meeting (20)

MongoDB SpringFramework Meeting september 2009
MongoDB SpringFramework Meeting september 2009MongoDB SpringFramework Meeting september 2009
MongoDB SpringFramework Meeting september 2009
 
AWR analysis (o di come utilizzare l’AWR per condurre un’analisi di un databa...
AWR analysis (o di come utilizzare l’AWR per condurre un’analisi di un databa...AWR analysis (o di come utilizzare l’AWR per condurre un’analisi di un databa...
AWR analysis (o di come utilizzare l’AWR per condurre un’analisi di un databa...
 
S354 php-5.x-e-my sql-5.x
S354 php-5.x-e-my sql-5.xS354 php-5.x-e-my sql-5.x
S354 php-5.x-e-my sql-5.x
 
Slides marcosabatini
Slides marcosabatiniSlides marcosabatini
Slides marcosabatini
 
ORM - Introduzione
ORM - IntroduzioneORM - Introduzione
ORM - Introduzione
 
Azure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT SolutionsAzure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT Solutions
 
Cloud, l’ecosistema platform
Cloud, l’ecosistema platformCloud, l’ecosistema platform
Cloud, l’ecosistema platform
 
Introduzione a Ruby On Rails
Introduzione a Ruby On RailsIntroduzione a Ruby On Rails
Introduzione a Ruby On Rails
 
Entity Framework 4.0 vs NHibernate
Entity Framework 4.0 vs NHibernateEntity Framework 4.0 vs NHibernate
Entity Framework 4.0 vs NHibernate
 
Cloud – l’ecosistema platform
Cloud – l’ecosistema platformCloud – l’ecosistema platform
Cloud – l’ecosistema platform
 
Database Data Aggregator
Database Data AggregatorDatabase Data Aggregator
Database Data Aggregator
 
Trovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWS
Trovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWSTrovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWS
Trovare ciò che serve nella confusione: comprendere i Big Data con l'analisi AWS
 
Utilizzo di tecnologie big data per addestramento di metamodelli matematici p...
Utilizzo di tecnologie big data per addestramento di metamodelli matematici p...Utilizzo di tecnologie big data per addestramento di metamodelli matematici p...
Utilizzo di tecnologie big data per addestramento di metamodelli matematici p...
 
Business intelligence
Business intelligenceBusiness intelligence
Business intelligence
 
Struttin' on, novità in casa Struts
Struttin' on, novità in casa StrutsStruttin' on, novità in casa Struts
Struttin' on, novità in casa Struts
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
 
Oracle Apex - Presentazione
Oracle Apex - PresentazioneOracle Apex - Presentazione
Oracle Apex - Presentazione
 
Business Intelligence & Analytics
Business Intelligence & AnalyticsBusiness Intelligence & Analytics
Business Intelligence & Analytics
 
Elasticsearch in architetture Big Data - EsInADay-2017
Elasticsearch in architetture Big Data - EsInADay-2017Elasticsearch in architetture Big Data - EsInADay-2017
Elasticsearch in architetture Big Data - EsInADay-2017
 
Archeo foss 2012 slides 1
Archeo foss 2012 slides 1Archeo foss 2012 slides 1
Archeo foss 2012 slides 1
 

More from Nicola Pedot (13)

AI, ML e l'anello mancante
AI, ML e l'anello mancanteAI, ML e l'anello mancante
AI, ML e l'anello mancante
 
Ethic clean
Ethic cleanEthic clean
Ethic clean
 
Say No To Dependency Hell
Say No To Dependency Hell Say No To Dependency Hell
Say No To Dependency Hell
 
Jakarta EE 2018
Jakarta EE 2018Jakarta EE 2018
Jakarta EE 2018
 
Lazy Java
Lazy JavaLazy Java
Lazy Java
 
Java 9-10 What's New
Java 9-10 What's NewJava 9-10 What's New
Java 9-10 What's New
 
JavaEE6 my way
JavaEE6 my wayJavaEE6 my way
JavaEE6 my way
 
Java 8 Overview
Java 8 OverviewJava 8 Overview
Java 8 Overview
 
BDD & design paradoxes appunti devoxx2012
BDD & design paradoxes   appunti devoxx2012BDD & design paradoxes   appunti devoxx2012
BDD & design paradoxes appunti devoxx2012
 
Tom EE appunti devoxx2012
Tom EE   appunti devoxx2012 Tom EE   appunti devoxx2012
Tom EE appunti devoxx2012
 
Eclipse Svn
Eclipse SvnEclipse Svn
Eclipse Svn
 
Eclipse
EclipseEclipse
Eclipse
 
Presentazione+Android
Presentazione+AndroidPresentazione+Android
Presentazione+Android
 

Java al servizio della data science - Java developers' meeting

  • 1. Java al servizio della Data Science Uno sguardo a H2O.ai e KNIME
  • 2. Chi siamo Francesco Vettoretti DevOps Studente in Data Analytics francesco@datatellers.info Silvia Fracalossi Dev & Data Management Studente in Data Management silvia@datatellers.info
  • 3. Contenuti Introduzione Perché Java per la Data Science? Perché H2O.ai e KNIME? Ruolo dei due software In che fase di progetto eccellono questi due engine? Funzionalità Alcuni riferimenti ad esempi pratici ed alle performance Stack di progetto Trarre vantaggio dal poter integrare le due tecnologie
  • 5. Perché JAVA? ● Velocità di calcolo (soprattutto in multithread) ● Adattabilità ad altri sistemi preesistenti ● Librerie di Data Science affidabili (WEKA, Java-ML...) ● Scalabilità e manutenibilità
  • 6. Perché H2O.ai e KNIME? Open-Source (community, bugfixing) Tra i leader nel settore Facilità di utilizzo Predisposizione alla scalabilità Facilità di integrazione con numerose altre tecnologie
  • 8. Ruolo dei due software
  • 9. KNIME Cosa Piattaforma di Data Analysis, Predictive Analysis e Modeling Come Procedure in un workflow, a loro volta composte da nodi Perché Intuitivo, permette sia al Data Scientist di testare velocemente i modelli, che al Business Owner di visualizzarne i risultati con facilità. Open Source!
  • 10. H2O.ai Cosa Motore avanzato e libreria di Data Modeling e Machine Learning Come Nativamente con Java o Scala, o tramite API (già accessibile con librerie per R, Python, etc..) Perché Vantaggioso soprattutto nell’ambito dei Big Data grazie all’ottimo multithreading. Open Source!
  • 12. KNIME Data Access MySQL, PGSQL, Oracle DB, JSON, XML, file di testo, immagini… Big Data Spark, Hive, Teradata… Trasformazione dati Righe, colonne, matrici, testo, serie temporali, immagini…
  • 13. KNIME Data Analysis & Mining Statistica, ML, Data Mining, Web Analytics… (con H2O.ai, Java, Scala, R, Python…) Data Visualization JS, Python, R… Deployment JSON, XML, DBs, Excel, immagini…
  • 14. H2O.ai SUPERVISED LEARNING Analisi statistica Generalized Linear Models (binomiale, gaussiana, poisson…) e classificatore Bayesiano Ensembles Distributed Random Forest (regression) e Gradient Boosting Machine (decision tree) Deep Neural Networks Trasformazioni non lineari multilivello
  • 15. H2O.ai UNSUPERVISED LEARNING Clustering K-Means (con autodetect di k) Riduzione dimensionale Principal Component Analysis (riduzione lineare) e Generalized Low Rank Models (estensione della PCA per dati arbitrari e mancanti) Rivelazione di anomalie Autoencoders (deep learning con riduzione dimensionale non lineare)
  • 16. Performance Risultati benchmark per regressione lineare Risultati benchmark per random forest Fonte: github.com/szilard/benchm-ml
  • 18. Stack di progetto Scarica lo stack | Guarda la descrizione
  • 19. Grazie per l’attenzione Slide disponibili su bit.ly/2L3IiZK
  • 20. Link utili Documentazione H2O.ai Documentazione Documentazione KNIME Documentazione Booklet di H2O.ai - R - Python Quickstart KNIME - Getting started - Cheatsheet
  • 21. Link utili Esempi di H2O.ai Esempi multilinguaggio Esempi di KNIME KNIME examples server Esempi di KNIME e H2O.ai combinati KAGGLE competition