Machine Translated by Google
2.1 Configurando um ambiente de desenvolvimento 25
Esse ciclo de implantação em produção, observação de problemas e correção deles usando o loop de prototipagem
forma um loop de ordem superior, que chamamos de interação com implantações de produção.
Como mostrado na Figura 2.3, uma implantação em produção não é uma cascata unidirecional, mas um ciclo
iterativo, trabalhando em conjunto com o ciclo de prototipagem. Queremos facilitar para o cientista de dados
entender como e por que o modelo falha em produção e ajudá-lo a reproduzir quaisquer problemas localmente,
para que possa aprimorar o modelo usando seu ciclo de prototipagem familiar. Notavelmente, em projetos bem-
sucedidos, esses ciclos se tornam ciclos infinitos: um modelo bem-sucedido está sujeito a melhorias e depurações
contínuas.
Protótipo
Implantar
Desenvolver
Produção
Analisar Avaliar
Figura 2.3 Interação com
Depurar
implantações de produção
No mundo da engenharia de software, o conceito é chamado de entrega contínua (CD).
Embora sistemas de CD, como o GitHub Actions ([Link]/features/actions), possam ser usados para facilitar
implantações de ciência de dados, existem algumas diferenças cruciais entre aplicativos de ciência de dados e
softwares tradicionais. Considere o seguinte:
ÿ Correção — É relativamente fácil confirmar, por meio de testes automatizados, que o software tradicional
funciona corretamente antes de ser implantado em produção. Isso normalmente não ocorre com a ciência
de dados. O objetivo da implantação, como a realização de um experimento A/B, é validar a correção após
a implantação. ÿ Estabilidade — Novamente, é relativamente fácil confirmar, por meio de testes
automatizados, que o software tradicional funciona conforme o esperado em seu ambiente bem definido. Em
contraste, os aplicativos de ciência de dados estão sujeitos a dados em constante mudança, o que os
expõe a surpresas que acontecem após a implantação.
ÿ Variedade — É possível desenvolver um componente de software tradicional que execute a tarefa pretendida
com mais ou menos perfeição. Em contraste, é difícil atingir esse nível de perfeição com modelos, pois
sempre temos novas ideias e dados para testar. Da mesma forma, é desejável poder implantar várias
versões do modelo em paralelo e iterar rapidamente. ÿ Cultura — O mundo do DevOps e da engenharia de
infraestrutura possui uma cultura e jargões próprios, que não são
abordados pela maioria dos currículos de ciência de dados.
Seguindo nosso ethos centrado no ser humano, não é razoável esperar que cientistas de dados, que são
especialistas em seu próprio domínio, de repente se tornem especialistas em outro domínio.