Tutorial 3: Implantar modelo de risco de crédito - Machine Learning Studio (clássico)
APLICA-SE A: Machine Learning Studio (clássico) Azure Machine Learning
Importante
O suporte para o Estúdio de ML (clássico) terminará a 31 de agosto de 2024. Recomendamos a transição para o Azure Machine Learning até essa data.
A partir de 1 de dezembro de 2021, não poderá criar novos recursos do Estúdio de ML (clássico). Até 31 de agosto de 2024, pode continuar a utilizar os recursos existentes do Estúdio de ML (clássico).
- Consulte informações sobre como mover projetos de aprendizado de máquina do ML Studio (clássico) para o Azure Machine Learning.
- Saiba mais sobre o Azure Machine Learning
A documentação do Estúdio de ML (clássico) está a ser descontinuada e poderá não ser atualizada no futuro.
Neste tutorial, você analisa detalhadamente o processo de desenvolvimento de uma solução de análise preditiva. Você desenvolve um modelo simples no Machine Learning Studio (clássico). Em seguida, você implanta o modelo como um serviço Web de Aprendizado de Máquina. Esse modelo implantado pode fazer previsões usando novos dados. Este tutorial é a terceira parte de uma série de tutoriais de três partes.
Suponhamos que precisa de prever o risco de crédito de um indivíduo com base nas informações fornecidas sobre uma aplicação de crédito.
A avaliação do risco de crédito é um problema complexo, mas este tutorial irá simplificá-lo um pouco. Você o usará como um exemplo de como criar uma solução de análise preditiva usando o Machine Learning Studio (clássico). Você usará o Machine Learning Studio (clássico) e um serviço Web de Machine Learning para esta solução.
Neste tutorial de três partes, você começa com dados de risco de crédito disponíveis publicamente. Em seguida, você desenvolve e treina um modelo preditivo. Finalmente, você implanta o modelo como um serviço Web.
Na primeira parte do tutorial, você criou um espaço de trabalho (clássico) do Estúdio de Aprendizado de Máquina, carregou dados e criou um experimento.
Na segunda parte do tutorial, você treinou e avaliou modelos.
Nesta parte do tutorial, você:
- Preparar para a implementação
- Implementar o serviço Web
- Testar o serviço Web
- Gerenciar o serviço Web
- Aceder ao serviço web
Pré-requisitos
Conclua a segunda parte do tutorial.
Preparar para a implementação
Para dar a outras pessoas a chance de usar o modelo preditivo que você desenvolveu neste tutorial, você pode implantá-lo como um serviço Web no Azure.
Até este ponto, você tem experimentado treinar nosso modelo. Mas o serviço implantado não vai mais fazer treinamento - ele vai gerar novas previsões pontuando a entrada do usuário com base em nosso modelo. Então, vamos fazer alguma preparação para converter esse experimento de um experimento de treinamento para um experimento preditivo.
A preparação para a implantação é um processo de três etapas:
- Remover um dos modelos
- Converta o experimento de treinamento que você criou em um experimento preditivo
- Implantar o experimento preditivo como um serviço Web
Remover um dos modelos
Primeiro, você precisa aparar um pouco esse experimento. Atualmente, você tem dois modelos diferentes no experimento, mas só deseja usar um modelo quando implantá-lo como um serviço Web.
Digamos que você tenha decidido que o modelo de árvore impulsionada teve um desempenho melhor do que o modelo SVM. Portanto, a primeira coisa a fazer é remover o módulo Two-Class Support Vetor Machine e os módulos que foram usados para treiná-lo. Você pode fazer uma cópia do experimento primeiro clicando em Salvar como na parte inferior da tela do experimento.
Você precisa excluir os seguintes módulos:
- Máquina vetorial de suporte de duas classes
- Módulos Train Model e Score Model que estavam conectados a ele
- Normalizar dados (ambos)
- Avaliar Modelo (porque terminamos de avaliar os modelos)
Selecione cada módulo e pressione a tecla Delete ou clique com o botão direito do mouse no módulo e selecione Delete.
O nosso modelo deve agora ser mais ou menos assim:
Agora estamos prontos para implantar esse modelo usando a Árvore de Decisão Impulsionada de Duas Classes.
Converter o experimento de treinamento em um experimento preditivo
Para preparar esse modelo para implantação, você precisa converter esse experimento de treinamento em um experimento preditivo. Isto envolve três etapas:
- Guarde o modelo que treinou e, em seguida, substitua os nossos módulos de formação
- Corte o experimento para remover módulos que eram necessários apenas para treinamento
- Definir onde o serviço Web aceitará a entrada e onde ele gera a saída
você pode fazer isso manualmente, mas felizmente todas as três etapas podem ser realizadas clicando em Configurar Serviço Web na parte inferior da tela do experimento (e selecionando a opção Serviço Web Preditivo ).
Gorjeta
Se você quiser mais detalhes sobre o que acontece quando você converte um experimento de treinamento em um experimento preditivo, consulte Como preparar seu modelo para implantação no Machine Learning Studio (clássico).
Quando você clica em Configurar serviço Web, várias coisas acontecem:
- O modelo treinado é convertido em um único módulo Modelo treinado e armazenado na paleta de módulos à esquerda da tela do experimento (você pode encontrá-lo em Modelos treinados)
- Os módulos que eram usados para treinamento são removidos; Mais especificamente:
- Árvore de decisão impulsionada de duas classes
- Modelo de comboio
- Dividir dados
- o segundo módulo Execute R Script que foi usado para dados de teste
- O modelo treinado salvo é adicionado novamente ao experimento
- São adicionados módulos de entrada e saída de serviço Web (estes identificam onde os dados do usuário entrarão no modelo e quais dados são retornados quando o serviço Web é acessado)
Nota
Você pode ver que o experimento é salvo em duas partes em guias que foram adicionadas na parte superior da tela do experimento. O experimento de treinamento original está sob a guia Experimento de treinamento, e o experimento preditivo recém-criado está sob o experimento preditivo. O experimento preditivo é aquele que você implantará como um serviço Web.
Você precisa dar um passo adicional com este experimento específico. você adicionou dois módulos Execute R Script para fornecer uma função de ponderação aos dados. Esse era apenas um truque que você precisava para treinamento e testes, para que você possa tirar esses módulos no modelo final. O Machine Learning Studio (clássico) removeu um módulo Execute R Script quando removeu o módulo Split . Agora você pode remover o outro e conectar o Editor de Metadados diretamente ao Modelo de Pontuação.
Nosso experimento agora deve ser assim:
Nota
Você pode estar se perguntando por que deixou o conjunto de dados de cartão de crédito alemão UCI no experimento preditivo. O serviço vai pontuar os dados do usuário, não o conjunto de dados original, então por que deixar o conjunto de dados original no modelo?
É verdade que o serviço não precisa dos dados originais do cartão de crédito. Mas ele precisa do esquema para esses dados, que inclui informações como quantas colunas existem e quais colunas são numéricas. Essas informações de esquema são necessárias para interpretar os dados do usuário. Você deixa esses componentes conectados para que o módulo de pontuação tenha o esquema do conjunto de dados quando o serviço estiver em execução. Os dados não são usados, apenas o esquema.
Uma coisa importante a notar é que, se o seu conjunto de dados original continha o rótulo, então o esquema esperado da entrada da Web também esperará uma coluna com o rótulo! Uma maneira de contornar isso é remover o rótulo e quaisquer outros dados que estavam no conjunto de dados de treinamento, mas não estarão nas entradas da Web, antes de conectar a entrada da Web e o conjunto de dados de treinamento em um módulo comum.
Execute o experimento uma última vez (clique em Executar.) Se quiser verificar se o modelo ainda está funcionando, clique na saída do módulo Modelo de pontuação e selecione Exibir resultados. Você pode ver que os dados originais são exibidos, juntamente com o valor de risco de crédito ("Rótulos de pontuação") e o valor de probabilidade de pontuação ("Probabilidades de pontuação".)
Implementar o serviço Web
Você pode implantar o experimento como um serviço Web clássico ou como um novo serviço Web baseado no Gerenciador de Recursos do Azure.
Implantar como um serviço Web clássico
Para implantar um serviço Web clássico derivado de nosso experimento, clique em Implantar serviço Web abaixo da tela e selecione Implantar serviço Web [Clássico]. O Machine Learning Studio (clássico) implanta o experimento como um serviço Web e leva você ao painel desse serviço Web. Nesta página, você pode retornar ao experimento (Exibir instantâneo ou Exibir mais recente) e executar um teste simples do serviço Web (consulte Testar o serviço Web abaixo). Também há informações aqui para criar aplicativos que podem acessar o serviço Web (mais sobre isso na próxima etapa deste tutorial).
Você pode configurar o serviço clicando na guia CONFIGURAÇÃO . Aqui você pode modificar o nome do serviço (ele recebe o nome do experimento por padrão) e dar-lhe uma descrição. Você também pode dar rótulos mais amigáveis para os dados de entrada e saída.
Implantar como um novo serviço Web
Nota
Para implantar um Novo serviço Web, você deve ter permissões suficientes na assinatura na qual está implantando o serviço Web. Para obter mais informações, consulte Gerenciar um serviço Web usando o portal de Serviços Web de Aprendizado de Máquina.
Para implantar um novo serviço Web derivado de nosso experimento:
Clique em Implantar Serviço Web abaixo da tela e selecione Implantar Serviço Web [Novo]. O Estúdio de Aprendizado de Máquina (clássico) transfere você para a página Implantar Experiência de Serviços Web de Aprendizado de Máquina .
Insira um nome para o serviço Web.
Para Plano de Preços, você pode selecionar um plano de preços existente ou selecionar "Criar novo" e dar um nome ao novo plano e selecionar a opção de plano mensal. As camadas de plano padrão para os planos para sua região padrão e seu serviço Web é implantado nessa região.
Clique em Implementar.
Após alguns minutos, a página de início rápido do seu serviço Web é aberta.
Você pode configurar o serviço clicando na guia Configurar . Aqui você pode modificar o título do serviço e dar-lhe uma descrição.
Para testar o serviço Web, clique na guia Teste (consulte Testar o serviço Web abaixo). Para obter informações sobre como criar aplicativos que podem acessar o serviço Web, clique na guia Consumir (a próxima etapa deste tutorial será mais detalhada).
Gorjeta
Você pode atualizar o serviço Web depois de implantá-lo. Por exemplo, se você quiser alterar seu modelo, poderá editar o experimento de treinamento, ajustar os parâmetros do modelo e clicar em Implantar Serviço Web, selecionando Implantar Serviço Web [Clássico] ou Implantar Serviço Web [Novo]. Quando você implanta o experimento novamente, ele substitui o serviço Web, agora usando seu modelo atualizado.
Testar o serviço Web
Quando o serviço Web é acessado, os dados do usuário entram através do módulo de entrada do serviço Web, onde são passados para o módulo Modelo de Pontuação e pontuados. Da forma como você configurou o experimento preditivo, o modelo espera dados no mesmo formato do conjunto de dados de risco de crédito original. Os resultados são retornados ao usuário do serviço Web por meio do módulo de saída do serviço Web.
Gorjeta
Da maneira como o experimento preditivo está configurado, todos os resultados do módulo Modelo de pontuação são retornados. Isso inclui todos os dados de entrada mais o valor do risco de crédito e a probabilidade de pontuação. Mas você pode devolver algo diferente se quiser - por exemplo, você pode devolver apenas o valor do risco de crédito. Para fazer isso, insira um módulo Selecionar colunas entre Modelo de pontuação e a saída do serviço Web para eliminar colunas que você não deseja que o serviço Web retorne.
Você pode testar um serviço Web Clássico no Estúdio de Aprendizado de Máquina (clássico) ou no portal de Serviços Web do Azure Machine Learning. Você pode testar um Novo serviço Web somente no portal de Serviços Web de Aprendizado de Máquina.
Gorjeta
Ao testar no portal de Serviços Web de Aprendizado de Máquina, você pode fazer com que o portal crie dados de exemplo que você pode usar para testar o serviço de Solicitação-Resposta. Na página Configurar, selecione "Sim" para Dados de exemplo habilitados?. Quando você abre a guia Solicitação-Resposta na página Teste , o portal preenche dados de amostra extraídos do conjunto de dados de risco de crédito original.
Testar um serviço Web clássico
Você pode testar um serviço Web clássico no Estúdio de Aprendizado de Máquina (clássico) ou no portal de Serviços Web de Aprendizado de Máquina.
Teste no Machine Learning Studio (clássico)
Na página DASHBOARD do serviço Web, clique no botão Testar em Ponto de extremidade padrão. Uma caixa de diálogo aparece e solicita os dados de entrada para o serviço. Estas são as mesmas colunas que apareceram no conjunto de dados de risco de crédito original.
Insira um conjunto de dados e clique em OK.
Teste no portal de Serviços Web de Aprendizado de Máquina
Na página DASHBOARD do serviço Web, clique no link Visualização de teste em Ponto de extremidade padrão. A página de teste no portal de Serviços Web de Aprendizado de Máquina para o ponto de extremidade do serviço Web é aberta e solicita os dados de entrada para o serviço. Estas são as mesmas colunas que apareceram no conjunto de dados de risco de crédito original.
Clique em Testar solicitação-resposta.
Testar um novo serviço Web
Você pode testar um Novo serviço Web somente no portal de Serviços Web de Aprendizado de Máquina.
No portal de Serviços Web de Aprendizado de Máquina, clique em Testar na parte superior da página. A página Teste é aberta e você pode inserir dados para o serviço. Os campos de entrada exibidos correspondem às colunas que apareceram no conjunto de dados de risco de crédito original.
Insira um conjunto de dados e clique em Testar Solicitação-Resposta.
Os resultados do teste são exibidos no lado direito da página, na coluna de saída.
Gerenciar o serviço Web
Depois de implantar seu serviço Web, seja Clássico ou Novo, você pode gerenciá-lo a partir do portal de Serviços Web de Aprendizado de Máquina.
Para monitorar o desempenho do seu serviço Web:
- Iniciar sessão no portal de Serviços Web de Aprendizagem de Máquina
- Clique em Serviços Web
- Clique no seu serviço Web
- Clique no Painel
Aceder ao serviço web
Na etapa anterior deste tutorial, você implantou um serviço Web que usa seu modelo de previsão de risco de crédito. Agora os usuários podem enviar dados para ele e receber resultados.
O serviço Web é um serviço Web do Azure que pode receber e retornar dados usando APIs REST de duas maneiras:
- Solicitação/Resposta - O usuário envia uma ou mais linhas de dados de crédito para o serviço usando um protocolo HTTP e o serviço responde com um ou mais conjuntos de resultados.
- Execução em lote - O usuário armazena uma ou mais linhas de dados de crédito em um blob do Azure e, em seguida, envia o local do blob para o serviço. O serviço pontua todas as linhas de dados no blob de entrada, armazena os resultados em outro blob e retorna a URL desse contêiner.
Nota
Os nomes das colunas de recursos no Studio (clássico) diferenciam maiúsculas de minúsculas. Verifique se os dados de entrada para invocar o serviço Web têm os mesmos nomes de coluna que no conjunto de dados de treinamento.
Para obter mais informações sobre como acessar e consumir o serviço Web, consulte Consumir um serviço Web de Aprendizado de Máquina com um modelo de aplicativo Web.
Clean up resources (Limpar recursos)
Se você não precisar mais dos recursos que criou usando este artigo, exclua-os para evitar incorrer em cobranças. Saiba como no artigo, Exportar e excluir dados do usuário no produto.
Próximos passos
Neste tutorial, você concluiu estas etapas:
- Preparar para a implementação
- Implementar o serviço Web
- Testar o serviço Web
- Gerenciar o serviço Web
- Aceder ao serviço web
Você também pode desenvolver um aplicativo personalizado para acessar o serviço Web usando o código inicial fornecido para você nas linguagens de programação R, C# e Python.