Apache Marvin AI é um projeto open source que visa simplificar o processo de exploração, construção, teste e implantação de projetos de machine learning de forma reproduzível através da abstração e padronização. O projeto consiste em componentes como engines para código de ML, toolboxes de suporte, artefatos gerados e um executor de engines para controle de versão e disponibilidade.
3. Desafios em projetos de Machine Learning
Os conhecimentos para
entender, pesquisar, criar e
entregar projetos de ML são
muitos e muito distintos.
Ter um time com todos estes
perfis torna o projeto mais
caro!
4. Desafios em projetos de Machine Learning
A maioria dos cientistas de
dados (tipo A) não tem os skills
de engenharia de software
necessários para construir
soluções para produção.
Bons profissionais do tipo B são
unicórnios!
5. Desafios em projetos de Machine Learning
Quanto mais rápido terminamos
a primeira versão, mais rápido
podemos iniciar o processo de
melhorias.
Ter um MVP rapidamente é
estratégico para o sucesso do
projeto!
6. Desafios em projetos de Machine Learning
O código é prototipado
localmente em um Notebook
(algo como uma IDE interativa)
em qualquer linguagem.
Os modelos são gerados com
datasets de teste e não são
escaláveis para a produção.
7. Desafios em projetos de Machine Learning
Como simplificar o processo de
exploração, construção, teste e
implantação de projetos de machine
learning de forma reproduzível?
10. Marvin???
● Início na B2W Digital em 2016 para atender problemas internos
● Lançado como código aberto em 09/2017 com a licença Apache 2
● Artigo publicado na conferência Papis.io (Boston) em 09/2017*
● Quatro versões lançadas desde 09/2017
* http://proceedings.mlr.press/v82/miguel18a.html
11. Marvin???
● Treinamentos de Marvin interno e externo
● Meetup criado em 01/2018
● Primeira versão do projeto de AutoML em 05/2018
● Aceito pela Apache S. F. para incubação em 08/2018*
● Comunidade está crescendo…
* http://incubator.apache.org/projects/marvin.html
13. Engine - Projeto em uma linguagem específica que contem o código fonte
relacionado ao modelo de ML. É a implementação do padrão DASFE.
Toolbox - Conjunto de CLI’s, utilitários, classes, bibliotecas específicos de cada
linguagem, que da suporte a todo o processo de exploração, desenvolvimento, teste e
entrega de uma engine.
Artefatos - São arquivos que são persistidos e versionados durante o processo de
criação e treinamento do modelo de machine learning.
Engine Executor - Implementação de abstração arquitetônica em torno da
Engine, como paralelismo, distribuição, controle de versão, APIs, disponibilidade e
assim por diante.
Marvin AI: Componentes Principais