Ir para o conteúdo
Ir para insights Blog

Data Science 3.0 com MLOps

Data Science 3.0 com MLOps
Escrito por
Data Science Lab
Publicado em
23 de novembro de 2020

Implementar MLOps

MLOps é um termo relativamente recente que tem surgido cada vez mais. E não é por acaso! Tendo em conta o estado atual da data science, pode ajudar a tornar os processos de data science mais eficazes, eficientes, seguros e fiáveis. Parece interessante, mas o que é exatamente MLOps, como funciona e por onde pode começar? Ou por que razão haveria sequer de se preocupar com isso? Vamos explorar estas questões neste artigo!

O estado da data science

A data science é uma área relativamente recente e ainda está em desenvolvimento na maioria das organizações. Umas estão mais avançadas do que outras, mas é possível identificar uma tendência geral:

Fase 1: o laboratório

Tudo começa com um laboratório: uma oficina para alquimistas que transformam dados em ouro com algoritmos complexos (ou assim pensamos).

Fotografia de uma mulher com um cão, com caixas de deteção à volta de ambos.

Quando se percebe que, tirando algumas apresentações de PowerPoint com gráficos interessantes, ainda não surgiram resultados com valor, a pressão começa a aumentar: é preciso obter resultados, é preciso entregar algo!

Fase 2: em produção

Finalmente, encontrou-se um caso de negócio sólido e, alguns meses depois, até existe um modelo preditivo que funciona bem. Seguem-se, porém, mais 9 meses a reescrever código e a discutir com as equipas de IT e os arquitetos (target landscape, ferramentas suportadas, OTAP, segurança) antes de o modelo finalmente entrar em produção. Mas, enfim: está lá, está a funcionar e dá resultados! Viva!

Até que, de repente, deixa de funcionar. As previsões não são boas, os utilizadores querem outra coisa ou descobre-se que o processo deixou de funcionar há um mês. Mas quem vai tratar disto? Jantje, que construiu o modelo, já saiu há muito tempo. Pietje não consegue perceber os notebooks sem documentação que ele deixou e, depois de várias tentativas de reparação, conclui que mais vale reconstruir o modelo ‘from scratch’ .

Fase 3: maturidade

Depois de aprender com os erros, tudo funciona agora como uma máquina bem oleada. Quer se trate de obter, carregar e partilhar dados, gerir diferentes experiências com modelos, fazer o deployment automático de APIs e apps baseadas em IA com CI/CD ou explicar previsões… Cada membro da equipa faz tudo isso com um clique e um sorriso. Pois é: isto é ficção científica.

MLOps em socorro

Se resumirmos o cenário acima de forma um pouco mais formal:

  • Fase 1: Experimentação
    • A data science funciona isolada das áreas de negócio e de TI
    • Poucos resultados concretos
    • Nenhum valor real gerado
  • Fase 2: Entrada em produção
    • Os resultados são colocados em produção
    • Mas a gestão, a monitorização, a reprodutibilidade, a segurança, etc. ainda não estão asseguradas
    • Começa a gerar-se valor, mas de forma não sustentável
  • Fase 3: Maturidade
    • Os processos são eficazes, eficientes, reproduzíveis e seguros
    • O valor é gerado continuamente

É aqui que entra o MLOps: é uma forma de chegar à fase 3.

O que é MLOps?

“Com a gestão da operacionalização de modelos de machine learning (MLOps), queremos disponibilizar um processo de desenvolvimento de machine learning de ponta a ponta para conceber, criar e gerir software baseado em ML que seja reproduzível, testável e evolutivo.”

⎼ CDF sig-MLOps

“a extensão da metodologia DevOps para incluir os recursos de machine learning e data science como elementos de pleno direito no ecossistema DevOps”

⎼ também CDF sig-MLOps

“O MLOps permite aos cientistas de dados e aos programadores de aplicações ajudar a colocar modelos de ML em produção. O MLOps permite acompanhar / versionar / auditar / certificar / reutilizar todos os recursos no ciclo de vida de ML e disponibiliza serviços de orquestração para simplificar a gestão deste ciclo de vida.”

⎼ Microsoft

Em resumo, pode dizer-se que o MLOps é DevOps para machine learning / data science.

  • Em DS/ML/IA, também desenvolvemos software
  • Por isso, podemos aplicar DevOps
  • Mas DS/ML/IA envolve mais do que desenvolvimento de software: pense em conjuntos de dados, modelos e resultados de treino
  • Por isso, é necessário alargar o DevOps: MLOps

O objetivo do MLOps é:

Os nossos processos de data science são

  • Eficazes
  • Com eficácia demonstrável
  • Eficientes (rápidos)
  • Reproduzíveis
  • Seguros
  • Robustos/fiáveis
  • Fáceis de utilizar

Ok, parece bem, mais uma fórmula mágica… Então, basta dizer MLOps para que todos os problemas de data science desapareçam por magia, tal como agile ia resolver todos os problemas de negócio?

O que MLOps não é?

Está tudo mal  -> Introduzimos MLOps -> Está tudo bem.

Portanto, não é uma fórmula mágica.

  • Existem boas práticas, mas…
  • É preciso configurar o MLOps para os seus próprios processos
  • de acordo com as suas necessidades e prioridades

Mas vamos ao concreto

Vamos deixar as generalidades de lado. De que processos estamos a falar?

Ciclo de vida de data science

Esquema de um processo de MLOps, desde a ideia, passando pela prova de conceito, até ao desenvolvimento contínuo.

Blog

Também poderá ter interesse nisto,

Subscreva a nossa newsletter.

Quer ser a primeira pessoa a saber quando publicamos um novo artigo no blogue?

Introduza um endereço de e-mail válido.