micro architecture for machine learning big data

27
Micro Architecture for Machine Learning/Big Data Adam Gibson - East Bay JUG Sep 2015

Upload: adam-gibson

Post on 21-Apr-2017

3.364 views

Category:

Data & Analytics


3 download

TRANSCRIPT

Page 1: Micro architecture for machine learning big data

Micro Architecture for Machine Learning/Big Data

Adam Gibson - East Bay JUG Sep 2015

Page 2: Micro architecture for machine learning big data

Me:

CTO and Co founder of Skymind

GU Faculty Advisor

Book Author - Deep Learning: A Practitioner's Approach

Page 3: Micro architecture for machine learning big data

Micro Services

Page 4: Micro architecture for machine learning big data

Benefits/Trade offs

Monolithic - One app Easy to update at first

Microservices - meant for scale, modular components, easier for bigger teams

Page 5: Micro architecture for machine learning big data

Software Development Life Cycle

Starts small

Early - Minimum Viable product/ Move fast break things

Mid stage - Company will actually last - now let’s focus a bit on scale might have growing pains

Late stage - too many cooks in the kitchen needs separation of concerns

Page 6: Micro architecture for machine learning big data

Credit: http://startupquote.com/post/1624569753

Page 7: Micro architecture for machine learning big data
Page 8: Micro architecture for machine learning big data
Page 9: Micro architecture for machine learning big data

No Silver Bullet - Different stages/sizes

In the SDLC - different incentives for different teams/companies of different sizes

Microservices can also go wrong:http://martinfowler.com/articles/microservice-trade-offs.html

Page 10: Micro architecture for machine learning big data

Takeaway - Do what’s right for your product

Page 11: Micro architecture for machine learning big data

Data Science and ML

Page 12: Micro architecture for machine learning big data

Stats + Software engineering

(Not actually true: We WISH it was)

Page 13: Micro architecture for machine learning big data

Analytics and Products

A/B Testing (does this button increase my revenue/CTR?)

Data/Analytics Products: Think BI + some machine learning depending on the application

Page 14: Micro architecture for machine learning big data

Machine Learning

Given some observations make some inference based on trends in data

Label stuff (supervised learning)

Predict something (regression)

Group stuff (clustering)

Page 15: Micro architecture for machine learning big data

Regression

Given some attributes (features) predict some continuous value

Attributes of house - predict price

Pricing movements in stock market

Page 16: Micro architecture for machine learning big data

Classification

Churn Prediction (Will churn or not churn)Big Spender or not big spammerSpam or not spamFraud or not FraudPicture of? (cat/dog/cow)

Page 17: Micro architecture for machine learning big data

Clustering

Page 18: Micro architecture for machine learning big data

Work flowSome problem needs to be solved

Page 19: Micro architecture for machine learning big data

Exploratory Data Analysis

Extract Transform LoadNormalize (maybe a part of the loading process depending on data warehousing process if any)

Visualize

Determine way to solve problem if any

Get some cursory results

Page 20: Micro architecture for machine learning big data

EDA Cont.

Validate results

Scope out problem

Deploy results

Page 21: Micro architecture for machine learning big data

Parallels to software engineeringBoth have a lifecuylce to follow with different standards for different stages

Data science teams are also similar in that you start by building the data infrastructure adding on the analysis later

Page 22: Micro architecture for machine learning big data

Machine Learning + Software

Machine learning is integrated in to software

Often a second class citizen in engineering standards

Data scientists don’t often think about production

Page 23: Micro architecture for machine learning big data

ML Software

Data pipelines (complete process of data all the way through to modeL) are often messy/adhoc)

To be done right involves 2 + teams of data engineers AND scientists

Data engineers don’t often know much ML and scientists don’t know much about software infrastructure

Page 24: Micro architecture for machine learning big data

Components

ETL/Vectorization

Data Manipulation

Data Exploration

Model building

Model integration with serving system (lambda architecture)

Page 25: Micro architecture for machine learning big data

Should be separated

ETL not tied to machine learning models

Everything should be swappable

Should run interchangeably on different platforms

Page 26: Micro architecture for machine learning big data

Deeplearning4j

Page 27: Micro architecture for machine learning big data

Questions? [email protected]