Construir, implementar, testar e monitorar um modelo preditivo de aprendizado de máquina
Este tutorial pode incorrer em custos. Use o Estimador de custos para gerar uma estimativa do custo baseada em seu uso projetado.
Este tutorial orienta você pelo processo de construção de um modelo de aprendizado de máquina preditivo, implementando o modelo gerado como uma API a ser usado em seus aplicativos e testando o modelo, o qual tudo isso ocorre em uma experiência de autoatendimento integrada e unificada no IBM Cloud. Em seguida, você monitorará o modelo implementado com o IBM Watson OpenScale.
Neste tutorial, o Conjunto de dados de flor Íris é usado para criar um modelo de aprendizado de máquina para classificar espécies de flores.
Na terminologia do aprendizado de máquina, a classificação é considerada uma instância de aprendizado supervisionado, ou seja, aprender onde um conjunto de treinamento de observações corretamente identificadas está disponível.
O Watson Studio fornece o ambiente e as ferramentas para resolver seus problemas de negócios trabalhando colaborativamente com dados. É possível escolher as ferramentas que você precisa para analisar e visualizar dados, para purificar e moldar dados, para alimentar dados de fluxo ou para criar e treinar modelos de aprendizado de máquina.
Objetivos
- Importar dados para um projeto.
- Construir um modelo de aprendizado de máquina.
- Implementar o modelo e testar a API.
- Testar um modelo de aprendizado de máquina.
- Monitorar o modelo implementado
- Treinar novamente seu modelo.

- O administrador faz upload de um arquivo CSV por meio de uma máquina local.
- O arquivo CSV transferido por upload é armazenado no serviço do IBM Cloud Object Storage como um conjunto de dados.
- O conjunto de dados é, então, usado para construir e implementar um modelo de aprendizado de máquina. O modelo implementado é exposto como uma API (terminal de pontuação).
- O usuário faz uma chamada da API para prever o resultado com os dados de teste.
- O modelo de aprendizado de máquina implementado é monitorado para qualidade, precisão e outros parâmetros-chave com os dados de teste.
Importar dados para um projeto
Um projeto é como você organiza seus recursos para alcançar um objetivo específico. Seus recursos do projeto podem incluir dados, colaboradores e ferramentas analíticas, como blocos de notas do Jupyter e modelos de aprendizado de máquina.
É possível criar um projeto para incluir dados e abrir um ativo de dados no refinador de dados para limpar e moldar seus dados.
Criar um projeto
- No catálogo, crie Watson Studio
- Selecione uma região
- Selecione um plano de precificação Lite
- Mude o Nome do serviço para watson-studio-tutorial
- Selecione um grupo de recursos e clique em Criar
- Clique no botão Ativar no e selecione IBM watsonx.
- Crie um projeto clicando em + Criar um novo projeto na seção Projetos.
- Forneça iris_project como o nome do projeto..
- No Definir armazenamento, Inclua uma nova instância de um serviço Object Storage.
- Clique em Criar. Seu novo projeto é aberto e é possível começar a incluir recursos nele.
Importar dados
Conforme mencionado anteriormente, você usará o Conjunto de dados Íris. O conjunto de dados do Iris foi usado em R.A. O artigo clássico de 1936 de Fisher, O Uso de múltiplas medições em problemas taxonômicos, também pode ser localizado no Repositório UCI Machine Learning. Esse pequeno conjunto de dados é frequentemente usado para testar algoritmos e visualizações de aprendizado de máquina. O objetivo é classificar as flores Íris entre três espécies (Setosa, Versicolor ou Virginica) por meio de medições de comprimento e largura de sépalas e pétalas. O conjunto de dados de íris contém 3 classes de 50 instâncias cada, em que cada classe se refere a um tipo de planta íris.

Um sepal é uma parte da flor das angiospérmicas (plantas com flores). Geralmente verde, os sepals funcionam tipicamente como a proteção para a flor no broto, e frequentemente como o apoio para as pétalas quando na floração. Pétalas são folhas modificadas que cercam as partes reprodutivas das flores. Eles são muitas vezes coloridos ou de forma incomum para atrair polinizadores. https://en.wikipedia.org/wiki/Iris_flower_data_set
Faça o download do iris_initial.csv, que consiste em 40 instâncias de cada espécie.
Assegure-se de que o arquivo transferido por download seja denominado iris_initial.csv
.
- Selecione a guia Ativos, se ainda não estiver selecionada,
- Em Dados neste projeto, clique em Eliminar arquivos de dados aqui ou browse para arquivos para upload.
- Faça o upload do
iris_initial.csv
baixado. - Depois de adicionado, você deverá ver
iris_initial.csv
na seção Todos os ativos do projeto.
Associar o serviço Machine Learning
- No menu de navegação superior,
iris-project
clique em Gerenciar e, em seguida, selecione a seção Serviços e integrações à esquerda. - Clique em Serviço Associado.
- Se você tiver uma instância de serviço Watson Machine Learning existente, pule para a próxima etapa. Caso contrário, continue com as etapas a seguir para criar uma nova instância.
- Clique em Novo serviço e em seguida, clique no tile Watson Machine Learning.
- Selecione uma região igual à região do serviço Watson Studio e escolha um plano Lite.
- Insira
machine-learning-tutorial
como o Nome do serviço e selecione um grupo de recursos. - Clique em Criar para provisionar um serviço Machine Learning.
- Marque a caixa de seleção ao lado do serviço Machine Learning e clique em Associate (Associar).
Construir um modelo de aprendizado de máquina
- No menu de navegação superior, clique em Ativos.
- Clique em Novo ativo + e procure automático.
- Clique no bloco Construir modelos de máquina automaticamente.
- Defina o nome como iris_auto.
- Em Watson Machine Learning instância de serviço, observe o serviço associado anteriormente
- Clique em Criar.
Quando o modelo for criado,
-
Adicione dados de treinamento clicando em Select data from project (Selecionar dados do projeto).
- Escolha o Ativo de dados em Categorias e marque iris_initial.csv
- Clique em Selecionar ativo.
-
Se solicitado, responda No em Create a time series analysis?
-
Selecione Espécies como O que você deseja prever?.
-
Clique em Experimentar configurações.
-
Selecione Origem de dados.
-
Em Método de treinamento e de validação, configure Divisão de dados de validação para 14% movendo a régua de controle
-
No menu esquerdo, clique em Previsão:
- Configure Tipo de predição para Classificação de multiclasse.
- Configure Métrica otimizada como Precisão.
- Clique em Salvar configurações.
-
Clique em Executar experimento.
-
O Experimento AutoAI pode levar até cinco minutos para selecionar o algoritmo certo para o seu modelo.
Cada pipeline de modelo é pontuado para uma variedade de métricas e, em seguida, classificado. A métrica de classificação padrão para modelos de classificação binária é a área sob a curva ROC. Para modelos de classificação multiclasse é a exatidão e para modelos de regressão é o erro quadrático médio da raiz (RMSE). Os pipelines com a classificação mais alta são exibidos em uma tabela de classificação para que seja possível visualizar mais informações sobre eles. A tabela de classificação também oferece a opção de salvar pipelines de modelo selecionados após revisá-los.
Uma vez que o experimento conclui em execução,
- Role para baixo até a Tabela de classificação do pipeline.
- Clique em um pipeline para visualizar mais detalhes sobre as métricas e o desempenho. Quando concluído, descarte clicando no X.
- Ao lado do modelo com Classificação 1 , clique em Salvar como
- Selecione o modelo.
- Mantenha o nome padrão..
- Clique em Criar.
- A partir da notificação recebida, clique em Visualizar no projeto.
Implementar e testar o seu modelo
Nesta seção, você implementará o modelo salvo e testará o modelo implementado,
- Usando a navegação de trilha de navegação, clique em iris_project.
- Na guia Ativos abra Modelos à esquerda.
- Na tabela Modelos, localize o modelo e clique no menu hambúrguer e escolha Promover para espaço. Use espaços de implementação para implementar modelos e gerenciar suas implementações.
- Configure o Nome como iris_deployment_space.
- Selecione o serviço de armazenamento Object Storage usado em etapas anteriores na lista suspensa correspondente.
- Selecione o serviço do
machine-learning-tutorial
na lista suspensa correspondente - Clique em Criar.
- Clique em Promover.
- Na notificação recebida, navegue até o espaço de implementação.
Em Implementações> iris_deployment_space:
- Clique no nome do modelo que acabou de criar.
- Clique no botão New deployment (Nova implantação ).
- Selecione On-line como o tipo de Implementação, forneça iris_deployment como o nome e, em seguida, clique em Criar.
- Na guia Implementações, quando o status for alterado para Implementado, clique no Nome na tabela. As propriedades do serviço da web implementado para o modelo serão exibidas
Testar o modelo implementado
- Na guia Teste de sua implantação, clique no ícone de entrada JSON ao lado de Inserir dados de entrada e forneça o
JSON
como entrada.{ "input_data": [{ "fields": ["sepal_length", "sepal_width", "petal_length", "petal_width"], "values": [ [5.1,3.5,1.4,0.2], [3.2,1.2,5.2,1.7] ] }] }
- Clique Em Prever e você deve ver os resultados de predição na visualização de tabela e JSON.
- É possível mudar os dados de entrada e continuar testando seu modelo.
Experimente a API
Junto com a IU, também é possível executar predições usando o terminal de pontuação da API, expondo o modelo implementado como uma API a ser acessada por meio de seus aplicativos.
-
Na guia Referência de API da implantação, você pode ver o Endpoint em Direct link e trechos de código em várias linguagens de programação.
-
Copie o ponto de extremidade público em um bloco de notas para referência futura.
-
Em um navegador, ative o Shell do IBM Cloud e exporte o Terminal de pontuação para ser usado em solicitações subsequentes. Assegure-se de não fechar essa janela/guia.
export SCORING_ENDPOINT='<SCORING_ENDPOINT_FROM_ABOVE_STEP>'
O Shell do IBM Cloud é uma área de trabalho de shell baseada em nuvem que é possível acessar por meio de seu navegador. Ele é pré-configurado com a CLI completa do IBM Cloud, além de muitos plug-ins e ferramentas que podem ser usados para gerenciar apps, recursos e infraestruturas.
-
Para usar o Watson Machine Learning REST API, você precisa obter um IBM Cloud Token Identity and Access Management (IAM). Execute o comando abaixo, ele copiará o token IAM completo junto com
Bearer
da resposta acima e o exportará como umIAM_TOKEN
a ser usado nas solicitações de API subsequentesexport IAM_TOKEN=$(ibmcloud iam oauth-tokens --output JSON | jq -r .iam_token) echo $IAM_TOKEN
-
Execute o código cURL abaixo no shell de nuvem para ver os resultados da predição.
curl -X POST \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header "Authorization: $IAM_TOKEN" \ -d '{"input_data": [{"fields": ["sepal_length", "sepal_width", "petal_length","petal_width"],"values": [[5.1,3.5,1.4,0.2], [3.2,1.2,5.2,1.7]]}]}' \ $SCORING_ENDPOINT
Observe que o código é da guia cURL da implementação que você criou acima. Em seguida, substitua o item temporário
[$ARRAY_OF_INPUT_FIELDS]
por ["sepal_length", "sepal_width", "petal_length","petal_width"], o item temporário[$ARRAY_OF_VALUES_TO_BE_SCORED]
por [5.1,3.5,1.4,0.2] e o item temporário[$ANOTHER_ARRAY_OF_VALUES_TO_BE_SCORED]
por [3.2,1.2,5.2,1.7] respectivamente.
Monitorar seu modelo implementado com o IBM Watson OpenScale
O IBM® Watson OpenScale rastreia e mede resultados de seus modelos de IA, e ajuda a garantir que eles permaneçam justos, explicáveis e compatíveis onde quer que seus modelos tenham sido construídos ou estejam em execução. O Watson OpenScale também detecta e ajuda a corrigir o desvio na precisão quando um modelo de IA está em produção.
Para facilitar a compreensão, o tutorial se concentra apenas na melhoria da qualidade (precisão) do modelo de IA por meio do serviço Watson OpenScale.
Provisionar o serviço do IBM Watson OpenScale
Nesta seção, você criará um serviço do Watson OpenScale para monitorar o funcionamento, o desempenho, a precisão e as métricas de qualidade de seu modelo de aprendizado de máquina implementado.
- Crie um serviço do IBM Watson OpenScale (watsonx.governance)
- Selecione uma região preferencialmente na mesma região na qual você criou o serviço Machine Learning.
- Escolha o plano Lite.
- Configure o nome do serviço para watson-openscale-tutorial.
- Selecione um grupo de recursos.
- Clique em Criar.
- Depois que o serviço for provisionado, clique em Gerenciar no painel esquerdo e clique em Iniciar Watson OpenScale.
- Clique em Configuração manual para configurar manualmente os monitores.
Configuração do sistema
Nesta seção, como parte da preparação do seu modelo para o monitoramento, você configurará e ativará monitores para cada implementação que estiver rastreando com o IBM Watson OpenScale.
- Clique em Banco de Dados Isso é para armazenar suas transações de modelo e resultados de avaliação de modelo. (ele já pode estar selecionado)
- Clique no ícone Edit (Editar ) no bloco Database (Banco de dados)
- Escolha Free lite plan database como seu tipo de banco de dados
- Clique em Salvar.
- Clique em Provedores de aprendizado de máquina
- Clique em Incluir provedor de aprendizado de máquina e clique no ícone de edição no tile Conexão.
- Selecione Watson Machine Learning(V2) como seu tipo de provedor de serviços.
- No menu suspenso Espaço de implementação, selecione o espaço de implementação
iris_deployment_space
criado acima. - Deixe o Tipo de ambiente para Pré-produção.
- Clique em Salvar.
- No painel da extrema esquerda:
- Clique no ícone para Painel do Insights(primeiro ícone) para incluir uma implementação
- Clique em Incluir no painel para iniciar o assistente na página Selecionar local do modelo
- Na guia Espaços de implementação clique no botão de opções
iris_deployment_space
- Clique em Avançar
- Na guia Espaços de implementação clique no botão de opções
- Na página Selecionar modelo implementado:
- Clique em iris_deployment.
- Clique em Avançar
- Na página Fornecer informações de modelo:
- Tipo de dados: Numérico/categórico
- Tipo de algoritmo: Classificação multiclasse
- Clique em Exibir resumo
- Clique em Concluir
O painel de pré-produção iris_deployment agora é exibido..
Clique em Ações > Configurar monitores
- Clique no ícone lápis no bloco Dados de treinamento para iniciar o assistente.
- Na página do método Selecionar Configuração
- Clique em Usar configuração manual
- Clique em Avançar
- Na página de método Especificar dados de treinamento
- Para a opção de dados de treinamento, escolha Banco de dados ou armazenamento em nuvem
- Para Local, escolha Cloud Object Storage
- Para obter o ID da instância do recurso e a chave da API, execute o comando abaixo no Cloud Shell. Certidão-se de alterar o valor após
--instance-name
para combinar com o nome da instância Object Storage que você tem usado para este tutorial.ibmcloud resource service-key $(ibmcloud resource service-keys --instance-name "cloud-object-storage-tutorial" | awk '/WDP-Project-Management/ {print $1}')
- Copie e cole as credenciais resource_instance_id. Ele começará com crn e terminará com dois pontos ::.
- Copie e cole a chave de API de Credenciais sem espaços finais.
- Clique em Conectar.
- Selecione o Bucket que começa com
irisproject-donotdelete-
. - Selecione
iris_initial.csv
na lista suspensa do conjunto de Dados - Clique em Avançar
- Na página de método Selecionar as colunas de recurso e a coluna de rótulo
- Os padrões devem estar corretos Espécies como o rótulo / alvo e o resto como características.
- Clique em Avançar
- Na página de método Selecionar saída do modelo
- Os padrões devem estar corretos, predição para Previsão e probabilidade para Probabilidade.
- Clique em Exibir resumo
- Clique em Concluir
- Na página do método Selecionar Configuração
- Clique no ícone de lápis no ladrilho Detalhes da Saída do Modelo para iniciar o assistente
- Na página de método Especificar detalhes da saída do modelo
- Os padrões devem estar corretos
- Clique em Salvar
- Na página de método Especificar detalhes da saída do modelo
- No painel esquerdo, clique em Quality (Qualidade ) em Evaluations (Avaliações) e clique no ícone de edição no bloco Quality thresholds (Limites de qualidade )
- Na página Limites de qualidade, configure os seguintes valores:
- Precisão 0.98
- Clique em Avançar
- Na página Tamanho de amostra
- Configure o tamanho mínimo da amostra para 10..
- Clique em Salvar
- Na página Limites de qualidade, configure os seguintes valores:
Na área de janela esquerda, clique em Acessar sumarização do modelo
O monitor de qualidade (conhecido anteriormente como monitor de precisão) revela quão bem o seu modelo prevê resultados.
Como o tutorial usa um pequeno conjunto de dados, a configuração de Justiça e Desvio não terá nenhum impacto.
Avaliar o modelo implementado
Nesta seção, você avaliará o modelo fazendo o upload de um arquivo iris_retrain.csv
que contém 10 instâncias de cada espécie. Download iris_retrain.csv.
- Clique em Ações e, em seguida, em Avalie agora.
- Escolha do arquivo CSV como sua opção de importação e clique em procurar, faça upload do arquivo
iris_retrain.csv
. - Clique e clique em Fazer upload e avaliar.
- Após a conclusão da avaliação, o painel deverá ser exibido com métricas diferentes.
Para entender as métricas de qualidade, consulte Visão geral da métrica de qualidade
Remover recursos
- Navegue até Lista de recursos do IBM Cloud®.
- Em Nome, insira tutorial na caixa de procura.
- Exclua os serviços que você criou para este tutorial.
Dependendo do recurso, ele não é excluído imediatamente, mas retido (por padrão por 7 dias). É possível recuperar o recurso excluindo-o permanentemente ou restaurando-o dentro do período de retenção. Consulte este documento sobre como usar a recuperação de recurso.