Projetar para monitoramento

Concluído

Como parte de uma arquitetura de MLOps, você deve pensar em como monitorar sua solução de aprendizado de máquina.

O monitoramento é benéfico em qualquer ambiente MLOps. Você desejará monitorar o modelo, os dados e a infraestrutura para coletar métricas que ajudam você a decidir as próximas etapas necessárias.

Monitorar o modelo

Mais comumente, você deseja monitorar o desempenho do modelo. Durante o desenvolvimento, você usa o MLflow para treinar e acompanhar seus modelos de machine learning. Dependendo do modelo que você treina, há métricas diferentes que você pode usar para avaliar se o modelo está funcionando conforme o esperado.

Para monitorar um modelo em produção, você pode usar o modelo treinado para gerar previsões em um pequeno subconjunto de novos dados de entrada. Ao gerar as métricas de desempenho nesses dados de teste, você poderá verificar se o modelo ainda está atingindo sua meta.

Além disso, talvez você também queira monitorar quaisquer problemas de IA (inteligência artificial) responsável. Por exemplo, se o modelo está fazendo previsões justas.

Antes de monitorar um modelo, é importante decidir quais métricas de desempenho você deseja monitorar e qual deve ser o parâmetro de comparação para cada métrica. Quando você deve ser alertado de que o modelo não é mais exato?

Monitorar os dados

Normalmente, você treina um modelo de machine learning usando um conjunto de dados de histórico que representa os novos dados que seu modelo receberá quando implantado. No entanto, ao longo do tempo pode haver tendências que alteram o perfil dos dados, tornando o modelo menos exato.

Por exemplo, suponha que um modelo seja treinado para prever o consumo de combustível de um automóvel com base no número de cilindros, tamanho do motor, peso e outros recursos. Ao longo do tempo, com o avanço das tecnologias de motor e de fabricação de carros, a eficiência típica de combustível pode melhorar drasticamente, tornando menos exatas as previsões feitas pelo modelo treinado com os dados mais antigos.

Diagram of different hyperparameter values resulting in different models by performing hyperparameter tuning.

Essa alteração nos perfis de dados entre os dados de treinamento e atuais é conhecida como descompasso de dados e pode ser um problema significativo para modelos de previsão usados na produção. Portanto, é importante ser capaz de monitorar o descompasso de dados ao longo do tempo e treinar novamente os modelos, conforme necessário, para manter a exatidão da previsão.

Monitorar a infraestrutura

Além de monitorar o modelo e os dados, você também deve monitorar a infraestrutura para minimizar o custo e otimizar o desempenho.

Durante todo o ciclo de vida do aprendizado de máquina, você usa a computação para treinar e implantar modelos. Com projetos de aprendizado de máquina na nuvem, a computação pode ser uma das suas maiores despesas. Portanto, você deseja monitorar se está usando sua computação com eficiência.

Por exemplo, você pode monitorar a utilização de computação de sua computação durante o treinamento e durante a implantação. Ao examinar a utilização da computação, você sabe se pode reduzir verticalmente sua computação provisionada ou se precisa escalar horizontalmente para evitar restrições de capacidade.