
Projetos de ciência de dados têm várias partes que precisam de colaboração para chegar à produção com sucesso. Com tantos componentes conectados, uma abordagem ágil é essencial tanto no desenvolvimento quanto na implantação. Essa forma de trabalhar permite que as organizações aprendam rápido e iterem continuamente. Em um webinar recente da DataCamp, Brian Campbell, Engineering Manager de Internal Engineering na Lucid Software, apresentou as melhores práticas para colocar projetos de ciência de dados em produção com sucesso.
Primeiros passos para viabilizar o desenvolvimento ágil
Brian explica que dois passos iniciais liberam o progresso em paralelo no desenvolvimento e na implantação de um modelo: trabalhar com modelos de baseline e criar um protótipo. Embora essas abordagens deixem a linha do tempo mais complexa, elas aceleram bastante o resultado e elevam a qualidade final.
Trabalhe com modelos de baseline
Um passo valioso para conseguir entregar projetos de machine learning é criar um modelo de baseline. Um baseline gera as mesmas saídas do modelo final. No entanto, ele é construído antes da maior parte do desenvolvimento e pode se basear em heurísticas ou dados aleatórios. Esse baseline vira a referência a ser superada nas próximas iterações.
À medida que o time desenvolve novos modelos, os resultados podem ser comparados ao baseline e orientar o aprendizado. O gap entre o baseline e o estado desejado ajuda a definir requisitos do projeto e a identificar quais dados e soluções agregam mais valor ao problema.
Trabalhe com protótipos
Protótipos são modelos que consomem os mesmos inputs e fornecem saídas no mesmo formato do modelo final. Esse modelo pode ser guiado pelo baseline. Quando o protótipo está pronto, quem cuida da implantação já pode começar a integração com o caso de uso. O protótipo permite avançar em paralelo: os cientistas de dados evoluem o modelo enquanto o time de implementação trabalha em como o modelo será entregue aos clientes ou incorporado ao processo de negócio.
Protótipos só funcionam quando o modelo final se comporta como o protótipo. Por isso, é essencial entender os dados disponíveis e o formato de saída desejado antes de criar o protótipo. Isso exige conhecimento além da formulação inicial do problema e forte colaboração com especialistas no problema.
Caso de uso real de baselines e protótipos
Brian conta como seu time na Lucid usou baselines e protótipos para acelerar o desenvolvimento de um modelo de clusterização para um produto de post-its usado por times de produto, design e engenharia. Esses times costumam rodar sessões de design thinking nas quais um facilitador precisa agrupar manualmente post-its semelhantes em uma categoria. O objetivo do sistema era reduzir o tempo entre o brainstorming e a discussão ao agrupar automaticamente ideias em categorias e remover duplicatas.

O modelo de baseline recebia ideias aleatórias e gerava categorias aleatórias para elas. Em seguida, criaram um protótipo desse modelo para que os especialistas em implementação pudessem começar a trabalhar já nas primeiras etapas do desenvolvimento. Com o tempo, aprimoraram o baseline usando processamento de linguagem natural e machine learning para agrupar post-its semelhantes.
Comunicação é fundamental nesses modelos
A primeira iteração do projeto enfrentou problemas por falta de colaboração consistente entre o time de implantação e os cientistas de dados que desenvolviam o modelo. Essa falta de alinhamento levou a problemas de performance, testes imprecisos e uma experiência de produto aquém do esperado. Eles não conseguiram colher os ganhos de desenvolver o modelo em paralelo.
Quando relançaram o projeto com colaboração efetiva, resolveram essas questões e alinharam expectativas realistas. Isso só foi possível porque havia um protótipo para o time de implantação trabalhar em paralelo ao time de data science que evoluía o modelo.
Para entender as lições aprendidas e como conduzir projetos complexos de ciência de dados com eficiência, assista ao webinar on-demand.

