Instalação do PyTorch + noções básicas

Instalação do PyTorch + noções básicas

Datawhale202210——PyTorch (0、1、2)

Instalação completa do notebook Anaconda+CUDA+PyTorch+Jupyter + conhecimento introdutório do PyTorch



prefácio

Compreender e usar o PyTorch é um requisito de entrada e uma habilidade de manutenção para profissionais e alunos relevantes. Para melhor aprender e usar o PyTorch, escolhi seguir em frente lado a lado com os amigos do Datawhale, então vamos começar essa jornada maravilhosa!


1. O que é o PyTorch?

Definição oficial:
1. PyTorch é uma biblioteca de tensores (biblioteca de tensores) otimizada para aprendizado profundo e uso de GPU e CPU. 2. PyTorch é um framework de aprendizado profundo
desenvolvido pelo Facebook e baseado no Torch, que é desenvolvido a partir da linguagem incomum Lua para a linguagem Python .
Portanto, os alunos que estão acostumados a usar o Python e desejam explorar o aprendizado profundo gostam muito do PyTorch e o colocaram na posição de framework de aprendizado profundo mais popular. Atualmente, seu Github também tem mais de 59,5 mil seguidores.

2. Instalação do PyTorch (versão GPU)

1. Instalação do Anaconda

Portal do site oficial: https://www.anaconda.com/
1) Selecione a versão apropriada de acordo com a versão do python e a versão do sistema e faça o download diretamente.
2) Abra o arquivo .exe e siga as instruções para instalar, geralmente não há armadilhas.
3) Verificação da instalação bem-sucedida: digite o seguinte comando no cmd

salvar --version
python
insira a descrição da imagem aqui
insira a descrição da imagem aqui

2. Instalação CUDA

Portal do site oficial: https://developer.nvidia.com/cuda-toolkit
(O site oficial dará prioridade para recomendar o download da versão mais recente, mas é possível que o PyTorch não tenha sido atualizado para a versão mais recente do CUDA < O previsto versão não corresponde a possíveis problemas, mas ainda não tentei >, se você deseja baixar a versão histórica, pode procurar diretamente o número da versão CUDA+) 1) Selecione de acordo com suas necessidades e instale-a diretamente
.
(Arquivos locais maiores não requerem instalação adicional, e downloads rápidos de rede requerem rede contínua para concluir downloads subsequentes)
2) Instale de acordo com os prompts e ajuste o local de instalação adequadamente.
(Detalhes de instalação relacionados a variáveis ​​de ambiente e outras configurações não serão descritos em detalhes, consulte o documento de referência para obter detalhes)
3) Para verificar se a instalação foi bem-sucedida, digite o seguinte comando em cmd.

nvcc --version
set cuda
insira a descrição da imagem aqui

3. Instalação do Pytorch

Portal do site oficial: https://pytorch.org/
1) Especifique a versão do sistema, versão CUDA e outras informações e selecione conforme necessário.
(Sobre o uso de conda ou pip, o autor recomenda o uso de pip. Em primeiro lugar, há menos armadilhas e, em segundo lugar, pode ser mais propício ao uso subseqüente. O Conda é muito sujeito a problemas quando instalado, o que leva ao problema de que metade do os downloads estão parados no final. Mude o pip de forma decisiva, mas a diferença entre os dois ainda não foi compreendida e experimentada, e espero poder postar uma explicação especial no futuro) 2) Abra o Prompt do Anaconda (anaconda3) e
digite o comando dado no site oficial. (O exemplo é o seguinte, é recomendável ir ao site oficial para copiar você mesmo)

pip3 instale o archote archvision archaudio --extra-index-url https://download.pytorch.org/whl/cu116

3) Para acelerar o download, você precisa mudar a fonte do espelho. Para tutoriais específicos, consulte o documento de referência.
4) Para verificar se a instalação foi bem-sucedida, digite o seguinte comando:


tocha de importação de python
insira a descrição da imagem aqui

4. notebook jupyter chama PyTorch

1) jupyter notebook é um aplicativo no Anaconda, que pode ser aberto pelo Anaconda Prompt (anaconda3), basta digitar o seguinte comando:

notebook jupyter

Mas depois de abri-lo, descobri que o PyTorch não pode ser chamado pelo notebook jupyter, e as seguintes etapas precisam ser concluídas:
2) Digite o seguinte comando para instalar o plug-in: (observe que o ambiente que você precisa deve ser ativado primeiro)

conda install nb_conda
conda install ipykernel

3) Reinicie o notebook jupyter e você descobrirá que existem mais opções para o PyTorch, e a verificação mostra que ele pode ser chamado normalmente.

insira a descrição da imagem aqui
insira a descrição da imagem aqui

3. Conhecimento básico do PyTorch

1. Tensor
1) Definição básica e características

  • O tensor pode ser de alta dimensão

  • A unidade básica da operação do PyTorch

  • Definição e operação de dados básicos

  • Suporta computação de GPU, derivação automática e outras operações no PyTorch

2) tensor do PyTorch
insira a descrição da imagem aqui

dados->representação matemática
dtype->tipo de dados
Tipo de coerção de classe, mas não recomendado

3) Operações relacionadas do tensor

Conversão entre tensor e numpy, array

import numpy as np
g=np.array([[1,2,3],[4,5,6]])
h=torch.tensor(g)
print(h)
i=torch.from_numpy(g)
print(i)
j=h.numpy()
print(j)

Exibir informações de dimensão do tensor

print(k.shape)
print(k.size())

Um artefato que muda a forma do tensor

print(o.view((3,2)))
print(o.view(-1,2))

Mecanismo de transmissão do tensor

p=torch.arange(1,3).view(1,2)
print(p)
q=torch.arange(1,4).view(3,1)
print(q)
print(p+q)

Comprimir a dimensão do tensor: squeeze

print(o)
r=o.unsqueeze(1)
print(r)
print(r.shape)

2. Derivação automática
1) Introdução ao Autograd

  • arch.Tensor é a classe principal do Autograd. Se você definir seu atributo .requires_grad como True, ele rastreará todas as operações no tensor.
  • Em y.backward(), se y for um escalar, você não precisa passar nenhum parâmetro parabackback(), caso contrário, você precisa passar um Tensor com a mesma forma de y.
  • Tensor e Função são interligados para gerar um gráfico acíclico (acyclic graph), que codifica o histórico completo do cálculo.
  • Cada tensor possui um atributo .grad_fn, que se refere à Função que criou o próprio Tensor (a menos que o tensor seja criado manualmente pelo usuário, ou seja, o grad_fn deste tensor é None).

2) gradiente

iniciar retropropagação

out.backward()
print(x.grad)
tensor([[3., 3.],
        [3., 3.]])

segunda retropropagação

#grad在反向传播过程中是累加的每一次运行反向传播,梯度都会累加之前的梯度,所以一般在反向传播之前需把梯度清零。
out2 = x.sum()
out2.backward()
print(x.grad)

out3 = x.sum()
x.grad.data.zero_()
out3.backward()
print(x.grad)
tensor([[4., 4.],
        [4., 4.]])
tensor([[1., 1.],
        [1., 1.]])

produto vetorial jacobiano

x = torch.randn(3, requires_grad=True)
print(x)

y = x * 2
i = 0
while y.data.norm() < 1000:
    y = y * 2
    i = i + 1
print(y)
print(i)
tensor([-0.9332,  1.9616,  0.1739], requires_grad=True)
tensor([-477.7843, 1004.3264,   89.0424], grad_fn=<MulBackward0>)
8

3. Computação paralela
1) Por que executar computação paralela - pode calcular; calcular rapidamente; efeito é bom
2) Como executar computação paralela - CUDA
a. Distribuir a estrutura de rede para diferentes dispositivos
b. Distribuir as tarefas da mesma camada para diferentes dispositivos
c. Distribuir diferentes dados para diferentes dispositivos

4. Recursos e Referências

1. Alimentação do Datawhale


Tutorial oficial do Datawhale link do tutorial online para este curso : https://datawhalechina.github.io/thorough-pytorch/
Tutorial online do Github: https://github.com/datawhalechina/thorough-pytorch
Tutorial online do Gitee: https://gitee . com/datawhalechina/thorough-pytorch
Vídeo da estação B: https://www.bilibili.com/video/BV1L44y1472Z (Bem-vindo a todos para clicar em três links + preste atenção!)

2. Alimentação do funcionário

Portal Github do PyTorch:
https://github.com/pytorch/pytorch

3. Feeds de internautas

Introdução detalhada do PyTorch
https://zhuanlan.zhihu.com/p/66543791
Tutorial chinês do PyTorch
https://pytorch.apachecn.org/#/
Tutorial detalhado de instalação do Anaconda
https://blog.csdn.net/in546/article/ details /117400839
Tutorial detalhado de instalação do CUDA
https://blog.csdn.net/weixin_43848614/article/details/117221384
A instalação do PyTorch é muito lenta Solução:
https://blog.csdn.net/Guoqi1911/article/details/110356637
Troque a Universidade de Tsinghua Tutorial detalhado da fonte:
https://blog.csdn.net/lyj223061/article/details/108639378


Resumir

1. Obrigado aos amigos da Datawhale, todos organizaram este estudo de equipe com muita seriedade, e todos os preparativos até agora foram adequados, razoáveis ​​e meticulosos. Com sua ajuda, estou muito motivado.
2. No processo de instalação do ambiente, muitos problemas surgirão devido a diferenças de sistema, e é por isso que muitos alunos desistem logo após começar. No processo de resolução de problemas, você deve pedir ajuda constantemente, como postagens de experiência, chefes, vídeos de ensino etc. Um pouco mais de paciência levará ao sucesso.
3. Antes deste estudo do sistema PyTorch, eu realmente instalei o PyTorch muitas vezes e pratiquei algumas redes de aprendizado profundo em alguns projetos de ensino. Mas como nunca descobri a conexão entre os vários softwares, instalei e operei às cegas de acordo com os postos de ensino, então houve muitos obstáculos até esta instalação, muito menos um conhecimento mais profundo da própria rede. Portanto, no futuro, você deve entender os detalhes do processo, e não apenas perseguir cegamente os resultados.Acredito que, por meio deste estudo, você possa ter um pouco de habilidade para responder às perguntas de outros alunos.

Acho que você gosta

Origin blog.csdn.net/weixin_50967907/article/details/127259554
Recomendado
Clasificación