Como usar a interface do usuário do pipeline para depurar falhas de pipeline do Azure Machine Learning
Depois de enviar um pipeline, você verá um link para o trabalho de pipeline no workspace do Azure Machine Learning. O link coloca você na página de trabalho do pipeline no Estúdio do Azure Machine Learning, no qual você pode marcar resultado e depurar seu trabalho de pipeline.
Este artigo mostra como usar a página de trabalho de pipeline para depurar falhas de pipeline de aprendizado de máquina.
Importante
Os itens marcados (versão prévia) neste artigo estão atualmente em versão prévia pública. A versão prévia é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Usar a estrutura de tópicos para localizar rapidamente um nó
Na página de detalhes do trabalho de pipeline, há uma estrutura de tópicos à esquerda da tela, que mostra a estrutura geral do trabalho de pipeline. Ao passar o mouse sobre qualquer linha, você pode selecionar o botão "Localizar" para localizar esse nó na tela.
Você pode filtrar nós com falha ou concluídos e filtrar somente componentes ou conjunto de dados para pesquisa adicional. O painel esquerdo mostra os nós correspondentes com mais informações, incluindo status, duração e tempo criado.
Você também pode classificar os nós filtrados.
Verificar logs e saídas do componente
Se o pipeline falhar ou ficar preso em um nó, primeiro exiba os logs.
Você pode selecionar o nó específico e abrir o painel direito.
Selecione a guia Saídas+logs para explorar todas as saídas e logs desse nó.
A pasta user_logs contém informações sobre logs gerados pelo código do usuário. Essa pasta é aberta por padrão e o std_log.txt log está selecionado. Esse std_log.txt é onde os logs do seu código (por exemplo, as instruções print) aparecem.
A pasta system_logs contém logs gerados pelo Azure Machine Learning. Saiba mais sobre Como exibir e baixar logs de diagnóstico.
Se você não vir essas pastas, é porque a atualização de tempo de execução de computação ainda não foi liberada para o cluster de computação e você pode examinar 70_driver_log.txt na pasta azureml-logs primeiro.
Comparar pipelines diferentes com falha de depuração ou outros problemas inesperados (versão prévia)
A comparação de pipeline identifica as diferenças (incluindo topologia, propriedades de componente e propriedades de trabalho) entre vários trabalhos. Por exemplo, é possível comparar um pipeline bem-sucedido e um pipeline com falha, o que ajuda você a encontrar quais modificações fazem seu pipeline falhar.
Dois cenários principais em que é possível usar a comparação de pipeline para ajudar na depuração:
- Depurar seu trabalho de pipeline com falha comparando-o com um concluído.
- Depurar seu nó com falha em um pipeline comparando-o com um semelhante concluído.
Para habilitar esse recurso:
- Navegue até a interface do usuário do Estúdio do Azure Machine Learning.
- Selecione Gerenciar recursos de visualização (ícone de megafone) entre os ícones no canto superior direito da tela.
- No painel de Gerenciamento de versão prévia do recurso, alterne o recurso Comparar trabalhos de pipeline com falhas de depuração ou problemas inesperados.
Como depurar seu trabalho de pipeline com falha comparando-o com um concluído
Durante o desenvolvimento de modelo iterativo, tenha um pipeline de linha de base e, em seguida, faça algumas modificações, como alterar um parâmetro, um conjunto de dados ou um recurso de computação etc. Se o novo pipeline falhou, use a comparação de pipeline para identificar o que mudou comparando-o com o pipeline de linha de base, o que pode ajudar a descobrir por que ele falhou.
Comparar um pipeline com seu pai
A primeira coisa que você deve verificar ao depurar é localizar o nó com falha e verificar os logs.
Por exemplo, você pode receber uma mensagem de erro mostrando que o pipeline falhou devido à falta de memória. Se o pipeline for clonado de um pipeline pai concluído, você poderá usar a comparação de pipeline para ver o que mudou.
Selecione Mostrar linhagem.
Selecione o link em "Clonado de". Isso abrirá uma nova guia do navegador com o pipeline pai.
Selecione Adicionar para comparar o pipeline com falha e o pipeline pai. Isso os adiciona na lista de candidatos de comparação.
Comparar topologia
Depois que os dois pipelines forem adicionados à lista de comparação, você terá duas opções: Comparar detalhes e Comparar grafo. Comparar grafo permite comparar a topologia de pipeline.
Comparar grafo mostra as alterações de topologia de grafo entre o pipeline A e B. Os nós especiais no pipeline A são realçados em vermelho e marcados com "Somente A". Os nós especiais no pipeline B estão em verde e marcados com "Somente B". Os nós compartilhados estão em cinza. Se houver diferenças em nós compartilhados, o que foi alterado será mostrado na parte superior do nó.
Há três categorias de alterações com resumos que podem ser exibidos na página de detalhes, alteração de parâmetro, origem de entrada, componente de pipeline. Quando o componente de pipeline é alterado, isso significa que há uma alteração de topologia interna ou uma alteração de parâmetro de nó interno. É possível selecionar o ícone de pasta do nó do componente do pipeline para se aprofundar nos detalhes. Outras alterações podem ser detectadas exibindo os nós coloridos no grafo de comparação.
Comparar metadados e propriedades do pipeline
Se você investigar a diferença do conjunto de dados e descobrir que os dados ou a topologia não parecem ser a causa raiz da falha, também é possível verificar os detalhes do pipeline, como parâmetro de pipeline, configurações de saída ou execução.
Comparar grafo é usado para comparar topologia de pipeline. Comparar detalhes é usado para comparar metainformações ou configurações do link de propriedades do pipeline.
Para acessar a comparação de detalhes, acesse a lista de comparação, selecione Comparar detalhes ou selecione Mostrar detalhes de comparação na página de comparação de pipeline.
Você verá Propriedades de pipeline e Propriedades de execução.
- As propriedades do pipeline incluem parâmetros de pipeline, configuração de execução e saída, etc.
- As propriedades de execução incluem status do trabalho, tempo e duração do envio, etc.
A captura de tela a seguir mostra um exemplo de como usar a comparação de detalhes, em que a configuração de computação padrão pode ter sido o motivo da falha.
Para verificar rapidamente a comparação de topologia, selecione o nome do pipeline e selecione Comparar grafo.
Como depurar o nó com falha em um pipeline comparando-o com um nó concluído semelhante
Se você atualizou apenas as propriedades do nó e não alterou nada no pipeline, poderá depurar o nó comparando-o com os trabalhos enviados do mesmo componente.
Localize o trabalho com o qual comparar
- Encontre um trabalho bem-sucedido para comparar exibindo todas as execuções enviadas do mesmo componente.
- Depois de encontrar um trabalho com falha e um concluído para comparar, adicione os dois trabalhos à lista de candidatos de comparação.
- Para o nó com falha, selecione com o botão direito do mouse e selecione Adicionar para comparar.
- Para o trabalho concluído, acesse seu pipeline pai e localize o trabalho concluído. Em seguida, selecione Adicionar para comparar.
- Depois que os dois trabalhos estiverem na lista de comparação, selecione Comparar detalhes para mostrar as diferenças.
Compartilhar os resultados da comparação
Para compartilhar os resultados da comparação, selecione Compartilhar e copie o link. Por exemplo, você pode descobrir que a diferença do conjunto de dados pode levar à falha, mas você não é um especialista em conjunto de dados, portanto, pode compartilhar o resultado da comparação com um engenheiro de dados da sua equipe.
Próximas etapas
Neste artigo, você aprendeu a depurar falhas de pipeline. Para saber mais sobre como você pode usar o pipeline, consulte os seguintes artigos: