+ All Categories
Home > Documents > QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform...

QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform...

Date post: 17-Aug-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
26
Title of the Presentation Goes Here © 2018 Carnegie Mellon University QCon 2018 SÃO PAULO, BRASIL 1 Marvin AI - An Open Source Platform to Deploy and Manage Machine Learning Models Daniel Takabayashi
Transcript
Page 1: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

Title of the Presentation Goes Here © 2018 Carnegie Mellon University

QCon 2018 SÃO PAULO, BRASIL

1

Marvin AI - An Open Source Platform to Deploy and Manage Machine Learning ModelsDaniel Takabayashi

Page 2: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

2

About me…

Daniel Takabayashi • Technology Manager and Software Architect @ B2W Digital (São Paulo - Brazil) • Startups Mentor @ Founder Institute (San Francisco - USA) • Startups Mentor @ Aceleradora Cotidiano (Brasilia - Brazil) • Co-Founder of Boolabs, an Brazilian artificial intelligence startup acquired by B2W in 2016 • MSc in Computer Engineering (IPT - Brazil)

and my contacts… [email protected] @DanTakabayashi linkedin.com/danieltakabayashi github.com/takabayashi

Page 3: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

3

B2W Digital is the leading e-commerce company in Latin America.

Page 4: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

4

Agenda

1.Some Problems in Machine Learning Projects (8 slides)

2.Marvin AI Platform (10 slides)

2.1.Main Components

2.2.Architecture Views

3.Hands on…

Page 5: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

5

Some Problems in ML Projects

Page 6: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

6

The knowledge domains to understand, research, build and deploy ML projects are huge and distinct.

Building a “team" with complementary profiles makes the project more expensive.

Some Problems in Machine Learning Projects (1 of 5)

Page 7: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

7

Almost all data scientists (Type A) do not have the necessary software engineer skills to build a production grade solution.

And good Type B professionals are unicorns!

Some Problems in Machine Learning Projects (2 of 5)

Page 8: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

8

The faster the creation process ends, the sooner the improvement process starts.

Rapidly establishing a baseline MVP (around few weeks) is strategic to the project success!

Some Problems in Machine Learning Projects (3 of 5)

Page 9: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

9

ML Teams must save the hypothesis, data, code and metrics for each new iteration of the project.

Reproducibility is always a requirement !!!

Some Problems in Machine Learning Projects (4 of 5)

Page 10: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

10

Code is prototyped locally or in Jupyter notebooks (interactive IDE) in any language.

Models run over test datasets, but are not scalable for production.

Some Problems in Machine Learning Projects (5 of 5)

Page 11: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

How to simplify the process of exploring, building, testing and

deploying machine learning projects in a reproducible way?

Page 12: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

ABSTRACTION +

STANDARDIZATION

Page 13: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

github.com/marvin-ai

Page 14: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

14

Marvin AI Platform

Page 15: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

15

Marvin AI Platform: General Infos

• Started at B2W Digital in 2016 to solve internal problems • Released as open source on 09/2017 with Apache 2 licence • First Paper published in Papis.io conference (Boston) on 09/2017 • Three versions released since 09/2017 • Meetup Group created in 01/2018 - https://www.meetup.com/pt-BR/

marvin-ai/ • Community is growing…

Page 16: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

16

Marvin AI Platform: Quality Attributes

For Data Scientists: • Interoperability - to support different programmer languages • Usability - to accelerate and simplify the model creation process

For Administrators: • Manageability - to simplify the distributed deploy/management process • Scalability - to support from tiny to intensive loads

For Marvin Developers: • Modifiability - to improve and release new versions constantly • Maintainability - to allow all type of programmer (from beginners to experts) to

contribute

Page 17: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

17

Marvin AI Platform: Main components (1 of 3)

DASFE* Data Acquisition, Serving, Feedback and Evaluation

Page 18: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

18

Marvin AI Platform: Main components (2 of 3)

Engine - Specific language project that contains source code related to the model.

Implementation of DASFE pattern.

Artefacts - Persistent and versioned binaries (initial dataset, dataset, model, and metrics).

Engine Executor - Architectural abstraction implementation around the Engine such as

parallelism, distribution, versioning, rest apis, availability and so on.

Toolbox - Set of CLI's, utilities, classes and libraries, specific per programming language,

that supports the whole process of exploring, developing, testing and deploying an engine

(Eg. python-toolbox, scala-toolbox, r-toolbox etc).

Page 19: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

19

Marvin AI Platform: Main components (3 of 3)

Page 20: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

20

Marvin AI Platform: Some Architectural TacticsQuality Attributes Main Tactics

InteroperabilityUsing gRPC connections between the EngineExecutor and the UserCode code and a DSL to describe the interfaces.

UsabilityCLI’s with default parameters and Generic Rest APIs to manage and request everything in the system. Marvin defines external and coherent concepts (Eg. Executor, Engine, Action and Toolbox).

ManageabilityA Manager actor to control (locally or remotely) everything in the system and a cluster concept to help in distributed installations.

ScalabilityActor model architecture to increase parallelism and distribution throughout the system. Containerisation as deployment solution.

ModifiabilityEncapsulation through Actor model and base classes, minimum responsibility of each actor and a lot of abstraction.

MaintainabilityScala as implementation language, encapsulation, unit tests and continuous delivery. Virtualized development environment (vagrant and docker).

Page 21: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

21

Context Diagram

Marvin AI Platform: Architecture Views (1 of 4)

Page 22: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

22

Components Diagram 1

Marvin AI Platform: Architecture Views (2 of 4)

Page 23: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

23

Components Diagram 2

Marvin AI Platform: Architecture Views (3 of 4)

Page 24: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

QCON 2018

24

Deployment Diagram (draft)

Marvin AI Platform: Architecture Views (4 of 4)

Page 25: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

Hands On…

Page 26: QCON2018-MarvinAI · 1.Some Problems in Machine Learning Projects (8 slides) 2.Marvin AI Platform ... • Three versions released since 09/2017 • Meetup Group created in 01/2018

Fork me on Github.com/marvin-ai and fell free to contribute.

Thank you!

twitter.com/_marvin_aigitter.im/marvin-ai


Recommended