Projetar para novo treinamento
Ao preparar seu modelo para produção em uma solução de MLOps (operações de aprendizado de máquina), você precisa projetar para novo treinamento.
Geralmente, existem duas abordagens para quando deseja treinar novamente um modelo:
- Com base em um cronograma: quando você sabe que sempre precisa da versão mais recente do modelo, pode decidir treinar novamente seu modelo toda semana ou todos os meses, com base em um cronograma.
- Com base nas métricas: se você quiser treinar novamente o modelo somente quando necessário, poderá monitorar o desempenho e o descompasso de dados do modelo para decidir quando você precisa treiná-lo novamente.
Em ambos os casos, você precisa projetar para treinar novamente. Para treinar novamente seu modelo com facilidade, você deve preparar seu código para automação.
Preparar o código
Idealmente, você deve treinar modelos com scripts em vez de notebooks. Os scripts são mais adequados para automação. Você pode adicionar parâmetros a um script e alterar parâmetros de entrada, como os dados de treinamento ou valores de hiperparâmetro. Ao parametrizar seus scripts, você pode facilmente treinar de novo o modelo com novos dados, se necessário.
Outra coisa importante para preparar seu código é hospedar o código em um repositório central. Um repositório refere-se ao local em que todos os arquivos relevantes para um projeto podem ser armazenados. Com projetos de aprendizado de máquina, os repositórios baseados em Git são ideais para obter o controle do código-fonte.
Ao aplicar o controle do código-fonte ao seu projeto, você pode colaborar facilmente em um projeto. Você pode atribuir alguém para melhorar o modelo atualizando o código. Você poderá ver as alterações passadas e examinar as alterações antes que elas sejam confirmadas no repositório principal.
Automatizar seu código
Quando você quiser executar automaticamente seu código, poderá configurar trabalhos do AML (Azure Machine Learning) para executar scripts. No AML, você também pode criar e agendar pipelines para executar scripts.
Se você quiser que os scripts sejam executados com base em um gatilho ou evento que ocorre fora do AML, convém disparar o trabalho do AML de outra ferramenta.
Duas ferramentas comumente usadas em projetos de MLOps são o Azure DevOps e o GitHub (Actions). Ambas as ferramentas permitem que você crie pipelines de automação e possa disparar pipelines do AML.
Como cientista de dados, talvez você prefira trabalhar com o SDK (Software Development Kit) de Python do AML. No entanto, ao trabalhar com ferramentas como o Azure DevOps e o GitHub, você pode preferir configurar os recursos e trabalhos necessários com a extensão da CLI (Common Language Infrastructure) do AML. A CLI do Azure foi projetada para automatizar tarefas e pode ser mais fácil de usar com o Azure DevOps e o GitHub.
Dica
Se você quiser saber mais sobre as MLOps, explore a introdução às MLOps (operações de aprendizado de máquina) ou tente criar seu primeiro pipeline de automação da MLOps com GitHub Actions