Aprenda PyTorch em casa: os melhores cursos e tutoriais on-line gratuitos

Não procure mais além desses excelentes recursos gratuitos para dominar o desenvolvimento de modelos de deep learning usando o PyTorch

Author Photo
11:19 am - 19 de julho de 2020

O deep learning continua sendo um dos campos mais quentes da computação e, embora o TensorFlow do Google continue sendo a estrutura mais popular em números absolutos, o PyTorch do Facebook ganhou rapidamente uma reputação de ser mais fácil de entender e usar.

O PyTorch conquistou o mundo da pesquisa de deep learning, superando o TensorFlow como a estrutura de implementação preferida nos trabalhos enviados para conferências de IA nos últimos dois anos. Com as recentes melhorias para produzir modelos otimizados e implantá-los na produção, o PyTorch é definitivamente uma estrutura pronta para uso na indústria e nos laboratórios de P&D.

Mas como começar? Você encontrará muitos livros e recursos pagos disponíveis para aprender PyTorch, é claro. Mas também existem muitos recursos na Internet que o ajudarão a entender a estrutura – sem absolutamente nada. Além disso, alguns dos recursos gratuitos são de qualidade ainda mais alta do que a que você pode pagar. Vamos dar uma olhada no que está em oferta.

Tutoriais do PyTorch.org

Talvez o lugar mais óbvio para começar seja o próprio site do PyTorch. Juntamente com os recursos habituais, como uma referência de API, o site inclui trabalhos mais digeríveis, como um vídeo de 60 minutos e uma blitz de texto através do PyTorch, através da configuração de um modelo de classificação de imagem. Existem guias para os recursos padrão e mais esotéricos da estrutura e, quando um novo recurso principal é adicionado, como quantização ou remoção de modelos, você normalmente obtém um tutorial rápido sobre como implementá-los em seus próprios aplicativos.

Por outro lado, o código nos vários tutoriais tende a variar bastante, e algumas vezes as etapas padrão são perdidas ou ignoradas para mostrar o recurso em que o tutorial está concentrado, em vez de produzir código PyTorch idiomático. Para ser justo, o código do tutorial melhorou definitivamente nos últimos dois anos, mas às vezes é preciso ter um pouco de cuidado. Por esse motivo, eu não recomendaria o uso do site do PyTorch como seu principal recurso para aprendizado. No entanto, é um recurso útil para ter em mãos – e o melhor lugar para aprender a usar os novos recursos mais recentes.

Cursos de deep learning PyTorch da Udacity e edX

Estou juntando aqui a Introdução ao Deep Learning da Udacity com o PyTorch e o Deep Learning do edX com o Python e o PyTorch, pois eles têm estruturas semelhantes, cobrem muito do mesmo terreno e parecem sofrer dos mesmos problemas. Ambos têm uma série tradicional de palestras que se baseiam nos fundamentos do deep learning, apresentando conceitos após conceitos e abordando cenários mais complexos, como classificação de imagens e textos até o final do curso. Essa é uma maneira completamente boa de ensinar deep learning, mas significa que você estará investindo um tempo considerável nas lições antes de fazer algo empolgante com o PyTorch, ao contrário, digamos, do que acontece com o Fast.ai curso.

Os cursos Udacity e edX parecem sofrer por estar um pouco desatualizados em termos de conteúdo e do próprio PyTorch. Você não aprenderá nada sobre redes contraditórias generativas (GANs) ou redes baseadas em Transformer em nenhum dos cursos, e o curso Udacity é baseado no PyTorch 0.4. Isso não é necessariamente um problema, mas atualmente estamos no PyTorch 1.5, portanto, você pode encontrar avisos de descontinuação ao tentar replicar o código na versão mais recente. Se você escolher entre esses dois cursos, darei à Udacity uma ligeira vantagem sobre o edX devido ao selo de aprovação do Facebook.

Deep learning prático da Fast.ai para codificadores

Desde o início de 2016, o fast.ai é o padrão-ouro para o ensino gratuito de deep learning. Todo ano, ele lança uma nova iteração de seu curso de duas partes, repetindo a versão anterior e empurrando as coisas um pouco adiante sempre. Enquanto o primeiro ano foi baseado no Keras e no TensorFlow, o fast.ai mudou para o PyTorch desde o segundo ano e não olhou para trás (embora tenha lançado alguns olhares para o Swift para TensorFlow.

O Fast.ai tem uma abordagem um tanto singular para ensinar deep learning. Outros cursos dedicam muitas das primeiras palestras e materiais lançando as bases antes mesmo de você considerar a construção da menor rede neural. Fast.ai é mais rápido. No final da primeira lição, você criará um classificador de imagens de última geração. Isso levou a algumas críticas de que o curso Fast.ai se apoia muito em “magia” em vez de ensinar o básico, mas as palestras sequenciais fornecem uma boa base para o que está acontecendo nos bastidores.

E, no entanto, ficaria um pouco hesitante em recomendar o Fast.ai como seu único recurso para aprender PyTorch. Como o Fast.ai usa uma biblioteca no topo da estrutura, e não o PyTorch puro, você tende a aprender o PyTorch indiretamente e não explicitamente. Isso não quer dizer que seja uma abordagem ruim; as lições da parte dois do curso de 2019 incluem um conjunto surpreendente de palestras que constrói uma versão um pouco simplificada do PyTorch do zero, resolvendo bugs no PyTorch ao longo do caminho. (Acho que esse conjunto de palestras dá valor a qualquer noção de que o Fast.ai seja muito mágico) Dito isso, você pode usar o Fast.ai em conjunto com outro curso para entender o que a biblioteca do Fast.ai está fazendo por você em comparação com o PyTorch padrão.

Deep Learning da EPFL (EE-559)

Em seguida, que tal um curso de uma universidade real? O EE-559, ministrado por François Fleuret na École Polytechnique Fédérale de Lausanne, na Suíça, é um curso universitário tradicional, com slides, exercícios e videoclipes. Embora comece com o básico, ele vai além do que é oferecido nos cursos Udacity e edX ao receber GANs, amostras de adversários, e encerra com mecanismos de atenção e modelos de transformadores. Ele também tem a vantagem de estar atualizado com os lançamentos recentes do PyTorch, portanto, você deve estar confiante de que está aprendendo técnicas e códigos que não estão usando recursos obsoletos da estrutura.

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.