PyTorch - Terminologias

Neste capítulo, discutiremos alguns dos termos mais comumente usados ​​no PyTorch.

PyTorch NumPy

Um tensor PyTorch é idêntico a um array NumPy. Um tensor é um array n-dimensional e com relação a PyTorch, ele fornece muitas funções para operar nesses tensores.

Os tensores PyTorch geralmente utilizam GPUs para acelerar seus cálculos numéricos. Esses tensores que são criados no PyTorch podem ser usados ​​para ajustar uma rede de duas camadas a dados aleatórios. O usuário pode implementar manualmente as passagens para frente e para trás pela rede.

Variáveis ​​e Autograd

Ao usar o autograd, a passagem para a frente de sua rede definirá um computational graph - os nós no gráfico serão tensores e as arestas serão funções que produzem tensores de saída a partir de tensores de entrada.

Os tensores PyTorch podem ser criados como objetos variáveis ​​em que uma variável representa um nó no gráfico computacional.

Gráficos Dinâmicos

Os gráficos estáticos são bons porque o usuário pode otimizar o gráfico desde o início. Se os programadores estiverem reutilizando o mesmo gráfico repetidamente, essa otimização inicial potencialmente cara pode ser mantida, já que o mesmo gráfico é executado continuamente.

A principal diferença entre eles é que os gráficos computacionais do Tensor Flow são estáticos e o PyTorch usa gráficos computacionais dinâmicos.

Pacote Optim

O pacote otim em PyTorch abstrai a ideia de um algoritmo de otimização que é implementado de várias maneiras e fornece ilustrações de algoritmos de otimização comumente usados. Isso pode ser chamado na instrução de importação.

Multiprocessamento

O multiprocessamento suporta as mesmas operações, para que todos os tensores funcionem em vários processadores. A fila terá seus dados movidos para a memória compartilhada e enviará apenas um identificador para outro processo.