Preparará o modelo para implantação
Para obter valor de um modelo de machine learning , implante-o para que ele possa gerar previsões sempre que a empresa precisar delas. Antes de implantar, no entanto, você toma algumas decisões que moldam como o restante do pipeline funciona.
Na Proseware, uma empresa de tecnologia de saúde, a equipe de ciência de dados treina um modelo de classificação que prevê se um paciente provavelmente perderá uma próxima consulta clínica. A equipe da clínica usa essa pontuação de risco de não comparecimento para decidir para quais pacientes ligar com antecedência para confirmar a consulta, para que a clínica possa preencher horários que, de outra forma, ficariam vazios. O modelo é preciso o suficiente para uso em produção. Seu desafio é fazer com que ele forneça previsões de forma confiável, por meio de um processo que a equipe possa repetir sempre que o modelo for retreinado.
Escolher um tipo de ponto de extremidade
O Azure Machine Learning oferece suporte a dois tipos de ponto de extremidade, e a escolha depende de como a previsão será consumida. Um endpoint em lote gera previsões para um grande conjunto de registros de forma programada, o que é adequado para tarefas periódicas de pontuação. Um ponto de extremidade online retorna uma previsão de forma síncrona, com baixa latência, no momento em que recebe uma solicitação.
O sistema de agendamento do Proseware chama o modelo assim que os funcionários reservam ou reagendam um compromisso, para que ele possa sinalizar imediatamente compromissos de alto risco para uma chamada de confirmação naquele dia. Como a predição precisa ser retornada imediatamente, a equipe implanta o modelo em um endpoint online gerenciado.
Registrar o modelo com o MLflow
A equipe de ciência de dados treina o modelo de risco sem exibição e o empacota com o MLflow, uma plataforma de software livre para acompanhar experimentos de machine learning e empacotar modelos em um formato padrão. Quando o script de treinamento chama mlflow.autolog(), o MLflow registra automaticamente o modelo, seus parâmetros e suas métricas como parte da saída do trabalho de treinamento.
Como o modelo é empacotado como um modelo de MLflow, você pode registrá-lo diretamente na saída do trabalho sem escrever um script de pontuação personalizado ou definir um ambiente por conta própria. Azure Machine Learning gera os dois metadados do MLflow do modelo durante a implantação, uma funcionalidade conhecida como implantação sem código. Uma equipe que usa um formato de modelo personalizado, como um arquivo pickle, precisaria criar e manter esse script de pontuação e o ambiente correspondente.
Dica
Saiba mais sobre como implantar modelos de MLflow em Azure Machine Learning.
Para registrar o modelo, você deve indicar a saída de um trabalho de treinamento concluído ou um arquivo de modelo armazenado em um datastore do workspace. Depois de registrado, o modelo se torna um ativo com versão no workspace que você, ou um fluxo de trabalho automatizado, pode referenciar por nome e versão ao criar uma implantação.
À medida que o modelo evolui, registre artefatos alterados como novas versões em vez de substituir uma versão existente. Você pode atualizar a descrição e as marcas de uma versão, mas outras alterações exigem uma nova versão. Arquive as versões que você não deseja mais nas listas padrão. O arquivamento não exclui um modelo e os fluxos de trabalho ainda podem referenciar uma versão arquivada quando necessário.
Dica
Saiba mais sobre como gerenciar modelos registrados.
Planeje uma implantação reproduzível
Registrar e implantar um modelo manualmente funciona para um primeiro lançamento, mas a Proseware pretende retreinar regularmente o modelo de não comparecimento à medida que novos dados de agendamentos são recebidos. Repetir as mesmas etapas manuais para cada nova versão é lento e propenso a erros, portanto, a meta da equipe é automatizar o registro, a implantação e o teste por meio de um pipeline, que é o que o restante deste módulo cria.