O TensorBoard permite visualizar métricas de treinamento, pesos de modelos e saídas de amostra de jobs do Deep Learning Containers (DLC). Crie instâncias do TensorBoard para explorar e comparar resultados de treinamento de forma interativa.
Pré-requisitos
Antes de começar, verifique se os seguintes requisitos foram atendidos:
Um job de treinamento do DLC com pelo menos um conjunto de dados montado (verifique na aba Overview). Tipos de armazenamento suportados: Object Storage Service (OSS) e Apsara File Storage NAS.
O
SummaryWriterdo TensorFlow integrado ao script de treinamento para gravar logs em um diretório dentro do conjunto de dados montado.
Gravação de logs de treinamento
Adicione o SummaryWriter ao script de treinamento para gravar logs em um caminho dentro do conjunto de dados montado. Feche o writer após o treinamento para garantir a liberação de todos os dados de log.
Exemplo:
Endpoint do conjunto de dados OSS:
oss://your-bucket-name.oss-region-internal.aliyuncs.com/dlc-training-data/Caminho de montagem do conjunto de dados no contêiner:
/mnt/data/Diretório de saída de logs:
/mnt/data/output/runs
import tensorflow as tf
# Initialize SummaryWriter with logging directory
log_dir = "/mnt/data/output/runs"
writer = tf.summary.create_file_writer(log_dir)
# Training loop with metric logging
for epoch in range(num_epochs):
train_loss = calculate_loss()
train_accuracy = calculate_accuracy()
with writer.as_default():
# Log scalar metrics
tf.summary.scalar("train_loss", train_loss, step=epoch)
tf.summary.scalar("train_accuracy", train_accuracy, step=epoch)
# Log histograms and images every 10 epochs
if epoch % 10 == 0:
tf.summary.histogram("model_weights", model.weights, step=epoch)
tf.summary.image("prediction_samples", sample_predictions, step=epoch)
# Close writer to ensure all logs are saved
writer.close()
print(f'Training completed successfully. Logs saved to: {log_dir}')
O caminho do SummaryWriter (/mnt/data/output/runs) corresponde ao Summary Path especificado durante a criação da instância do TensorBoard.
Criação de uma instância do TensorBoard
Faça login no PAI console. Selecione a região na barra de navegação superior e escolha um workspace. Clique em Enter Deep Learning Containers (DLC).
Na coluna Actions do job desejado, clique em TensorBoard. No painel exibido, clique em Create TensorBoard.
Na página Create TensorBoard, configure os parâmetros e clique em OK.
Informações básicas
|
Parâmetro |
Descrição |
|
Name |
Nome da instância do TensorBoard. |
|
Datasets |
Selecione um Configuration Type e especifique o Summary Path (diretório que contém os logs de resumo do TensorBoard definidos no |
A tabela a seguir descreve as opções de Configuration Type.
|
Opção |
Descrição |
|
Mount Dataset |
Selecione um conjunto de dados e insira o caminho relativo do diretório de resumo nesse conjunto. |
|
Mount OSS |
Escolha um caminho de armazenamento OSS e insira o caminho relativo do diretório de resumo no OSS. |
|
By Task |
Selecione um job do DLC e insira o caminho completo dos arquivos de log no contêiner. |
Configuração de recursos
|
Tipo de recurso |
Descrição |
|
Free Quota |
Recursos gratuitos fornecidos pelo sistema. Cada instância pode usar até 2 vCPUs e 4 GiB de memória. Para liberar cota, desative instâncias que usam recursos gratuitos e utilize a cota liberada para uma nova instância. |
|
General Computing |
Escolha entre Public Resources ou Resource Quota. Consulte a tabela abaixo para mais detalhes. |
A tabela a seguir detalha as opções de General Computing.
|
Opção |
Descrição |
|
Public Resources |
Faturamento conforme o uso. Apenas computação geral utiliza recursos públicos. Selecione um tipo de instância com base nos requisitos da carga de trabalho. |
|
Resource Quota |
Faturamento por assinatura. Antes de selecionar esta opção, purchase computing resources e create quotas. Esta opção está disponível apenas para usuários na lista de permissões. Entre em contato com o gerente da conta para ativá-la. |
Ao utilizar Resource Quota, configure os seguintes parâmetros:
|
Parâmetro |
Descrição |
|
Priority |
Prioridade da instância do TensorBoard. Valores válidos: 1 a 9. O valor 1 indica a menor prioridade. |
|
Job Resource |
Recursos alocados para a instância do TensorBoard: vCPUs e Memory (GiB). |
Configuração de VPC
Os parâmetros de VPC aplicam-se apenas ao uso de Public Resources. Sem uma VPC, o sistema conecta-se pela Internet, o que pode causar inicialização mais lenta do TensorBoard ou carregamento demorado de relatórios devido à largura de banda limitada.
Se a instância do TensorBoard utilizar um conjunto de dados que exige VPC, como Cloud Parallel File Storage (CPFS) ou NAS com ponto de montagem VPC, configure uma VPC.
Selecione uma VPC, um vSwitch e um security group na região atual. Após a configuração, o cluster que executa a instância do TensorBoard poderá acessar serviços na VPC selecionada e usará o grupo de segurança especificado para controle de acesso.
Visualização de relatórios do TensorBoard
No painel de navegação à esquerda da página do workspace, escolha .
Na aba TensorBoard, verifique a coluna Status. Quando o status for Running, clique em View TensorBoard na coluna Actions.
A página do TensorBoard exibe suas métricas de treinamento e dados registrados, como tendências escalares, histogramas e imagens.
Gerenciamento de instâncias do TensorBoard
Faça login no PAI console. Selecione a região na barra de navegação superior e escolha um workspace. Clique em Enter Jobs.
Na aba TensorBoard, execute qualquer uma das operações a seguir:
|
Operação |
Passos |
|
Iniciar uma instância |
Clique em Start na coluna Actions para reiniciar uma instância parada |
|
Visualizar detalhes da instância |
Clique no nome da instância para abrir a página de detalhes, que mostra Basic Information e Configuration Information |
|
Ver jobs do DLC associados |
Na coluna Associated Task, passe o mouse sobre o ícone para ver o ID do job. Clique no ID para abrir a página de detalhes do job |
|
Ver conjuntos de dados associados |
Na coluna Associated Dataset, passe o mouse sobre o ícone para ver o ID do conjunto de dados. Clique no ID para abrir a página de detalhes do conjunto de dados |
|
Consultar duração da execução |
A coluna Running Duration mostra há quanto tempo a instância está em execução desde a última inicialização. A duração é redefinida quando a instância é parada |
|
Parar uma instância |
Clique em Stop na coluna Actions. Para agendar um horário de parada automática, clique em Auto-stop Settings na coluna Actions |
Solução de problemas
|
Problema |
Solução |
|
Falha ao iniciar o TensorBoard |
Verifique a montagem do conjunto de dados na aba Overview. Confirme se o caminho de log existe no armazenamento montado. Verifique as permissões do Resource Access Management (RAM) para acesso ao conjunto de dados |
|
Carregamento lento de relatórios |
Reduza a frequência de logs para experimentos de alto volume. Considere usar processamento incremental de logs ou organizar os logs em subdiretórios menores |
|
Acesso negado ou erros de conectividade |
Valide a conectividade de rede e as permissões RAM. Verifique as configurações do grupo de segurança. Se estiver usando um conjunto de dados dependente de VPC, garanta que a instância do TensorBoard esteja configurada com a mesma VPC |
|
Alto uso de CPU ou memória |
Monitore a utilização de recursos. Se estiver usando Free Quota, considere mudar para General Computing com mais recursos |
Melhores práticas
Comece com 2 a 4 vCPUs e 4 a 8 GiB de memória para cargas de trabalho típicas.
Organize os logs por tipo de experimento e carimbo de data/hora (por exemplo,
/mnt/data/output/runs/experiment_type/date_time/).Limpe regularmente logs de treinamento obsoletos para reduzir custos de armazenamento e melhorar o desempenho.
Utilize atribuições de função RAM para restringir o acesso às instâncias do TensorBoard apenas a membros autorizados da equipe.
Referências
Create and manage TensorBoard instances: Crie uma instância do TensorBoard a partir da página .