Aprendizado profundo com o PyTorch

Aprendizado profundo na AWS fácil de usar e de alta performance

O PyTorch é uma framework de aprendizado profundo com código aberto que facilita o desenvolvimento de modelos de machine learning e sua implantação em ambientes de produção. Usando o TorchServe, a biblioteca de veiculação de modelos do PyTorch, criada e mantida pela AWS em parceria com o Facebook, os desenvolvedores do PyTorch podem implantar modelos em ambientes de produção de maneira rápida e fácil. O PyTorch também fornece bibliotecas e grafos de computação dinâmica para treinamento distribuído, que são ajustados para alta performance na AWS.

Você pode começar a usar o PyTorch na AWS com o Amazon SageMaker, um serviço de machine learning totalmente gerenciado que torna mais fácil e econômico construir, treinar e implantar modelos PyTorch em grande escala. Se você prefere gerenciar a infraestrutura por conta própria, pode usar as AMIs do AWS Deep Learning ou os AWS Deep Learning Containers, que são disponibilizados a partir da fonte e otimizados para performance com a versão mais recente do PyTorch, para implantar ambientes de machine learning personalizados rapidamente.

Benefícios

Fácil de usar

O PyTorch na AWS foi projetado para utilizar instâncias do Amazon EC2, o Elastic Fabric Adapter e outras tecnologias de armazenamento, rede e infraestrutura. Implante facilmente seus modelos em ambientes de produção usando o TorchServe, uma biblioteca de veiculação de modelos PyTorch de código aberto que é criada e mantida pela AWS em parceria com o Facebook. Use o TorchScript para alternar facilmente entre o modo entusiasta (usado para desenvolvimento iterativo de modelos) e o modo de grafos (usado para treinamento eficiente depois que o modelo é construído).

Criado para alta performance

Treine seus modelos rapidamente usando backends de treinamento distribuído que aproveitam clusters de poderosas instâncias de GPU e bibliotecas como o TorchElastic, que fornecem tolerância a falhas e elasticidade para que você possa iterar com mais rapidez e agilizar o lançamento de modelos no mercado.

Ecossistema abundante

Um ecossistema abundante de ferramentas e modelos (incluindo torchvision, torchaudio, torchtext, torchelastic e torch_xla) estende o PyTorch e oferece suporte ao desenvolvimento em visão computacional, processamento de linguagem natural, ML com preservação de privacidade, interpretabilidade de modelos e muito mais.

Como funciona

Como funciona - PyTorch na AWS

Contribuições de código aberto da AWS para o PyTorch

TorchServe

O TorchServe é uma framework de veiculação de modelos de código aberto para o PyTorch que facilita a implantação de modelos PyTorch treinados com performance em grande escala, sem a necessidade de escrever código personalizado. O TorchServe fornece veiculação leve com baixa latência, para que você possa implantar seus modelos para obter inferência de alta performance. Ele fornece manipuladores padrão para as aplicações mais comuns, como detecção de objetos e classificação de texto, para que você não precise escrever código personalizado para implantar seus modelos. Com os poderosos recursos do TorchServe, incluindo veiculação de vários modelos, versão de modelo para testes A/B, métricas para monitoramento e endpoints RESTful para integração de aplicativos, você pode levar seus modelos da pesquisa para a produção rapidamente. O TorchServe oferece suporte a qualquer ambiente de machine learning, incluindo o Amazon SageMaker, o Kubernetes, o Amazon EKS e o Amazon EC2. Para começar com o TorchServe, consulte a documentação e nossa postagem no blog.

TorchElastic Controller for Kubernetes

O TorchElastic é uma biblioteca para treinar modelos de aprendizado profundo em grande escala, nos quais é essencial escalar recursos de computação dinamicamente com base na disponibilidade. O treinamento elástico e tolerante a falhas com o TorchElastic pode ajudar você a levar modelos de ML para produção com mais rapidez e a adotar abordagens de última geração para a exploração de modelos à medida que as arquiteturas continuam a aumentar em tamanho e complexidade. O TorchElastic Controller for Kubernetes é uma implementação nativa do Kubernetes para o TorchElastic que gerencia automaticamente o ciclo de vida dos pods e serviços necessários para treinamentos do TorchElastic. Ele permite que você inicie trabalhos de treinamento com uma parte dos recursos de computação solicitados e escale dinamicamente mais tarde, à medida que mais recursos se tornam disponíveis, sem precisar interromper e reiniciar os trabalhos. Além disso, os trabalhos podem se recuperar em virtude de nós que são substituídos devido a falhas ou reivindicações de nós. Com o TorchElastic Controller for Kubernetes, você pode reduzir o tempo e os custos de treinamento distribuído, limitando os recursos de cluster ociosos e o treinamento em instâncias Spot do Amazon EC2. Para começar a usar o TorchElastic Controller no seu cluster Kubernetes, consulte o tutorial.

Depoimentos de clientes

Toyota Research Institute (TRI)

Toyota Research Institute Advanced Development, Inc. O (TRI-AD) está aplicando inteligência artificial para ajudar a Toyota a produzir carros no futuro que sejam mais seguros, acessíveis e ecológicos. Usando o PyTorch em instâncias P3 do Amazon EC2, o TRI-AD reduziu o tempo de treinamento de modelos de ML de dias para horas. “Otimizamos e melhoramos continuamente nossos modelos de visão computacional, que são essenciais para a missão do TRI-AD de alcançar mobilidade segura para todos com a direção autônoma. Nossos modelos são treinados com o PyTorch na AWS, mas, até agora, o PyTorch não tinha uma framework de veiculação de modelos. Como resultado, dedicamos esforços de engenharia significativos na criação e manutenção de um software para implantar modelos PyTorch em nossa frota de veículos e servidores de nuvem. Com o TorchServe, agora temos um servidor de modelos leve e de alta performance que tem suporte oficial e é mantido pela AWS e pela comunidade PyTorch”, Yusuke Yachide, líder de ferramentas de ML do TRI-AD.

Matroid

A Matroid, fabricante de software de visão computacional que detecta objetos e eventos em imagens de vídeo, desenvolve um número cada vez maior de modelos de machine learning usando o PyTorch na AWS e em ambientes on-premises. Os modelos são implantados usando um servidor de modelos personalizado que requer a conversão dos modelos em um formato diferente, o que é um processo caro e demorado. O TorchServe permite que a Matroid simplifique a implantação de modelos usando um único arquivo de veiculação que também serve como fonte única da verdade e é fácil de compartilhar e gerenciar.

Pinterest

O Pinterest tem 3 bilhões de imagens e 18 bilhões de associações que conectam essas imagens. A empresa desenvolveu modelos de aprendizado profundo PyTorch para contextualizar essas imagens e oferecer uma experiência personalizada para os usuários. O Pinterest usa instâncias P3 do Amazon EC2 para acelerar o treinamento de modelos e fornecer inferência de baixa latência para uma experiência interativa dos usuários. Leia mais.

Blogs e artigos

Blog: Serving PyTorch Models in Production with Amazon SageMaker’s Native TorchServe Integration
Agosto de 2020
por Todd Escalona

Blog: Running TorchServe on Amazon Elastic Kubernetes Service
Agosto de 2020
por Josiah Davis, Charles Frenzel e Chen Wu

Abril de 2020
por Shashank Prasanna e Manoj Rao

Blog: Cinnamon AI saves 70% on ML model training costs with Amazon SageMaker Managed Spot Training
Janeiro de 2020
por Sundar Ranganathan e Yoshitaka Haribara

Artigo: With deep learning, Disney sorts through a universe of content
Dezembro de 2019
The Wired

Standard Product Icons (Features) Squid Ink
Saiba como começar a usar o PyTorch na AWS

Acesse a página Conceitos básicos.

Saiba mais 
Sign up for a free account
Cadastre-se para obter uma conta gratuita

Obtenha acesso instantâneo ao nível gratuito da AWS. 

Cadastrar-se 
Standard Product Icons (Start Building) Squid Ink
Comece a criar no console

Comece a criar no Console de Gerenciamento da AWS.

Fazer login