Este é o código correspondente para o livro "Deep Learning Framework Pytorch: Introdução e Prática (2ª edição)", mas também pode ser usado como um guia e um tutorial independentes do Pytorch Beginner.
Nova atualização
A segunda edição deste livro foi recentemente atualizada com base na primeira edição, e o código do livro é escrito com base na 1ª edição do Pytorch versão 1.8. Foi atualizado de forma abrangente em combinação com as opiniões dos leitores da primeira edição, incluindo três módulos: uso básico, expansão avançada e aplicações práticas.
contente
O conteúdo deste livro (tutorial/repositório) é mostrado na figura:
Pode -se observar que este tutorial pode ser dividido em três partes:
Uso básico (capítulo 2 a 5) explica o conteúdo de Pytorch. Esta parte apresenta os principais módulos em Pytorch e algumas ferramentas comumente usadas no aprendizado profundo. Para esta parte do conteúdo, aqui usamos o Jupyter Notebook como uma ferramenta de ensino, e os leitores podem modificar e executar o notebook e experimentar repetidamente.
- O capítulo 2 apresenta a instalação do Pytorch e a configuração de ambientes de aprendizagem relacionados. Ao mesmo tempo, este capítulo apresenta o principal conteúdo de Pytorch de maneira esboçada para ajudar os leitores a obter um entendimento preliminar de Pytorch.
- O capítulo 3 apresenta o uso de tensor de matriz multidimensional e sistema diferencial automático automático em Pytorch e fornece exemplos de como usar o tensor e o autograd para obter regressão linear e comparar suas diferenças. Este capítulo analisa a estrutura básica do tensor e os princípios do AutoGRAD para ajudar os leitores a entender os módulos subjacentes de Pytorch de maneira mais abrangente.
- O capítulo 4 apresenta o uso básico do módulo de rede neural NN em Pytorch, explica as camadas, funções de ativação, funções de perda e otimizadores na rede neural, e leva os leitores a usar menos de 50 linhas de código para implementar a resgate da estrutura da rede clássica.
- O capítulo 5 apresenta ferramentas como carregamento de dados, modelos de pré-treinamento, ferramentas de visualização e aceleração da GPU em Pytorch. O uso dessas ferramentas racionalmente pode melhorar a eficiência da programação do usuário.
Extensões avançadas (capítulos 6-8) explica algumas extensões avançadas em Pytorch. Aprender esta parte pode ajudar os leitores a escrever programas mais eficientes.
- O capítulo 6 apresenta idéias de vetorização em Pytorch, incluindo regras de transmissão, índices básicos, índices avançados e operações de Einstein. No final deste capítulo, os leitores principais a usarem idéias de vetorização para implementar operações convolucionais, intercalação, alinhamento de ROI e reverter operações únicas em aprendizado profundo.
- O capítulo 7 apresenta operações distribuídas em Pytorch. A computação distribuída e a computação paralela podem acelerar o processo de treinamento da rede. Este capítulo apresenta em detalhes os princípios básicos da computação paralela e da computação distribuída e também introduz como usar a tocha.Distribuída e Horovod para treinamento distribuído de pytorch.
- O capítulo 8 apresenta a extensão CUDA em Pytorch, levando os leitores a usar o CUDA para implementar funções sigmóides. Ao mesmo tempo, este capítulo resume a relação entre Cuda, Nvidia-Driver, Cudnn e Python.
Aplicações práticas (capítulo 9-13) usam o Pytorch para implementar várias aplicações legais e interessantes. Para esta parte do conteúdo, este repositório fornece código de implementação completo e fornece modelos pré-treinados como demos para os leitores testarem.
- O capítulo 9 é um capítulo que conecta o passado e o futuro. O objetivo não é ensinar aos leitores novas funções e novos conhecimentos, mas combiná -lo com uma competição clássica em Kaggle para realizar o problema de classificação binária de imagem mais simples no aprendizado profundo. Durante o processo de implementação, os leitores serão levados a revisar o conhecimento dos 5 primeiros capítulos e ajudar os leitores a organizar programas e codificar razoavelmente para facilitar a leitura e a manutenção do programa. Ao mesmo tempo, este capítulo apresenta como depurar em Pytorch.
- O capítulo 10 apresenta os princípios básicos da geração de redes adversárias, levando os leitores a implementar um gerador de avatar de anime do zero e pode usar a rede adversária generativa para gerar avatares de anime com estilos variados.
- O capítulo 11 apresenta algum conhecimento básico do processamento de linguagem natural e apresenta em detalhes os princípios básicos de Charrnn e Transformer. Este capítulo leva os leitores a usar o Transformer para escrever automaticamente poemas. Este programa pode imitar pessoas antigas para sequenciar poemas e gerar poemas ocultos.
- O capítulo 12 apresenta os princípios básicos de transferência de estilo e leva os leitores a implementar redes neurais que suportam a transferência de estilo arbitrário. Através dessa rede, os leitores podem converter qualquer imagem no estilo de pinturas famosas.
- O Capítulo 13 apresenta os princípios básicos da detecção de objetos e leva os leitores a implementar um centavo de detecção de alvo de alvo de alvo de estágio único, sem âncora e de valor máximo. As idéias de design da Centernet podem ser migradas para problemas clássicos de visão computacional, como detecção de objetos, estimativa de postura humana e rastreamento de destino de imagens tridimensionais.
O conteúdo da descrição do texto e algum conteúdo de marcação no notebook pertencem ao primeiro rascunho deste livro. Pode haver algum inconveniente na descrição. Por favor, entenda que o autor o corrigirá gradualmente mais tarde . Essa parte do conteúdo garante 80% de consistência com o livro, mas pode haver alguns problemas gramaticais. Devido a restrições de tempo, o autor a atualizará gradualmente no futuro.
Você precisa comprar um livro?
Livros não são necessários . Este armazém contém mais de 60% do conteúdo de texto e mais de 90% do código no livro, especialmente o conteúdo de introdução nos poucos capítulos anteriores, que quase mantêm completamente o conteúdo de explicação no livro. Os leitores podem usar este tutorial normalmente, mesmo que não comprem livros.
Se você acha que prefere a experiência de leitura da versão em papel e deseja deixar um livro lindamente impresso e totalmente impresso para facilitar a leitura, você também pode gastar um pouco de dinheiro para apoiar o trabalho do autor no ano passado ~
Descrição do código
O código é testado principalmente em Python3+pytorch1.6 ~ 1.8 para obter o resultado final. O Python2 ainda não foi testado e a versão atualizada do Pytorch ainda não foi testada.
Se houver alguma inadequação ou qualquer áreas que precisem de melhorias, abra um problema de discussão ou envie uma solicitação de tração.
Configuração do ambiente
Para instalar o Pytorch, selecione a versão especificada no site oficial para instalá -lo e instale -o com um clique. Para mais métodos de instalação, consulte as instruções do livro.
Clonando o repositório
git clone https : // github . com / chenyuntc / PyTorch - book . git
^_^
Se você tiver bugs, explicações ou confusões pouco claras, abra um problema
Bem -vindo a solicitações de puxar
Codificação feliz!

- JD.com Link de compra
- Link de compra Dangdang