O PAI-TensorFlow otimiza o kernel nativo do TensorFlow e fornece ferramentas para aumentar a eficiência do treinamento de deep learning. O recurso oferece suporte a orientação a serviços, agendamento distribuído, agendamento global de computação, mapeamento de GPU e previsão de modelos online.
Os servidores de GPU na nuvem pública serão descontinuados. Você ainda pode enviar tarefas do TensorFlow para execução em servidores CPU. Para utilizar GPUs no treinamento de modelos, envie jobs no Deep Learning Containers (DLC). Para mais informações, consulte Crie um job de treinamento.
Informações básicas
O TensorFlow é um framework de deep learning open source desenvolvido pelo Google. Ele suporta diversos modelos de redes neurais, incluindo redes neurais convolucionais (CNNs), redes neurais recorrentes (RNNs) e memória de longo e curto prazo (LSTM). O TensorFlow permite treinamento eficiente de modelos em áreas como processamento de voz, imagem e texto. Sua ampla adoção deve-se aos recursos abrangentes e às APIs flexíveis.
O PAI-TensorFlow é totalmente compatível com o código nativo do TensorFlow e proporciona melhor desempenho em vários cenários de produção. Trata-se de um componente presente em diversos produtos da Alibaba Cloud, como PAI e E-MapReduce (EMR).
Recursos
O PAI-TensorFlow oferece os seguintes recursos:
-
Orientação a serviços
O MaxCompute é a plataforma de big data da Alibaba Cloud construída sobre o sistema Apsara, que atende a dezenas de milhares de empresas e desenvolvedores. O PAI-TensorFlow permite executar o framework TensorFlow dentro do MaxCompute. As APIs são idênticas às da versão open source. Além disso, você pode enviar jobs para um cluster de computação do MaxCompute utilizando a API TensorFlow Training Script.
-
Agendamento distribuído
O PAI fornece recursos massivos de computação gerenciados por GPU Quota. O sistema de agendamento distribuído aloca dinamicamente os jobs do PAI-TensorFlow em diferentes máquinas. Não é necessário solicitar hosts físicos de GPU antecipadamente. Os recursos de GPU são alocados quando o job inicia e liberados ao seu término.
-
Agendamento global de computação
Com o mecanismo de computação do MaxCompute, é possível enviar tanto jobs SQL quanto jobs do PAI-TensorFlow no mesmo projeto. O serviço de agendamento global de computação direciona automaticamente os jobs do PAI-TensorFlow para os clusters de GPU adequados e conecta jobs de pré-processamento de dados em clusters CPU aos jobs de treinamento de modelos em clusters GPU.
-
Mapeamento de GPU
O PAI-TensorFlow permite atribuir diferentes operadores a CPUs ou GPUs específicas. Com o mapeamento de GPU, não é preciso conhecer a estrutura física de GPU do host. O PAI-TensorFlow mapeia automaticamente as GPUs solicitadas para o espaço de processo do job, tornando-as visíveis como
gpu:0,gpu:1, entre outros. -
Previsão de modelos online
O PAI disponibiliza o Elastic Algorithm Service (EAS). É possível implantar modelos treinados no PAI-TensorFlow no EAS com um único clique em. O EAS oferece suporte a dimensionamento dinâmico, atualizações contínuas, testes A/B, alto throughput e baixa latência.
Bibliotecas Python compatíveis
O PAI-TensorFlow já vem com bibliotecas Python de terceiros comuns pré-instaladas, como NumPy e Six. Importe essas bibliotecas diretamente nos seus jobs do TensorFlow.