<aside> 💡 Feito por: Vítor Caruso
</aside>
Muito do destaque do PyTorch na área de Machine Learning advém da sua praticidade, já que ele segue um esqueleto de implementação padrão para os modelo.
É possível dividir esse esqueleto em quatro partes:
O torch é o pacote básico que contêm todos os outros módulos do PyTorch, além de conter tensores e operações com essas estruturas, assim, ele é sempre importado.
Os seguintes módulos dele sempre são utilizados:
import torch
import torch.nn as nn
import torch.optim as optim
Além deles, as classes Dataset e Dataloader do módulo torch.utils.data também são comumente usados. Elas serão abordadas no módulo de Redes Neurais.
Esses são os imports essenciais, fica a cargo do programador se ele deseja importar outros módulos ou acessar diretamente pelo torch.
class LinearRegression(nn.Module):
def __init__(self, input_size, output_size):
super().__init__()
self.linear = nn.Linear(input_size, output_size)
def forward(self, x):
return self.linear(x)
Todos os modelos construídos no PyTorch são classes.
Para construir um modelo, é necessário implementar as seguintes pré-definições requeridas pelo PyTorch na classe do modelo: