Conceção para reciclagem
Ao preparar seu modelo para produção em uma solução de operações de aprendizado de máquina (MLOps), você precisa projetar para reciclagem.
Geralmente, há duas abordagens para quando você deseja treinar novamente um modelo:
- Com base num calendário: quando sabe que precisa sempre da versão mais recente do modelo, pode decidir reciclar o seu modelo todas as semanas, ou todos os meses, com base num calendário.
- Com base em métricas: se você quiser treinar novamente seu modelo apenas quando necessário, poderá monitorar o desempenho do modelo e o desvio de dados para decidir quando precisará treinar novamente o modelo.
Em ambos os casos, você precisa projetar para reciclagem. Para treinar facilmente seu modelo, você deve preparar seu código para automação.
Prepare o seu código
O ideal é 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 dados de treinamento ou valores de hiperparâmetros. Ao parametrizar seus scripts, você pode facilmente treinar novamente o modelo em 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 a um local onde todos os arquivos relevantes para um projeto são 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.
Quando você aplica o controle do código-fonte ao seu projeto, você pode colaborar facilmente em um projeto. Você pode designar alguém para melhorar o modelo atualizando o código. Você poderá ver as alterações anteriores e revisá-las antes que elas sejam confirmadas no repositório principal.
Automatize seu código
Quando quiser executar automaticamente seu código, você pode configurar trabalhos do Aprendizado de Máquina do Azure para executar scripts. No Azure Machine Learning, você também pode criar e agendar pipelines para executar scripts.
Se quiser que os scripts sejam executados com base em um gatilho ou evento que acontece fora do Azure Machine Learning, convém acionar o trabalho do Azure Machine Learning a partir de outra ferramenta.
Duas ferramentas que são comumente usadas em projetos MLOps são o Azure DevOps e o GitHub (Actions). Ambas as ferramentas permitem criar pipelines de automação e podem acionar pipelines do Azure Machine Learning.
Como cientista de dados, você pode preferir trabalhar com o SDK Python do Azure Machine Learning. 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 do Azure Machine Learning. A CLI do Azure foi projetada para automatizar tarefas e pode ser mais fácil de usar com o Azure DevOps e o GitHub.
Gorjeta
Se você quiser saber mais sobre MLOps, explore a introdução às operações de aprendizado de máquina (MLOps) ou tente criar seu primeiro pipeline de automação de MLOps com o GitHub Actions