Modelo de classificação binária
Como profissional de deep learning, uma das suas principais tarefas é treinar modelos para classificação de imagens. Você sempre vê classificação binária, onde precisa diferenciar duas classes. Para simplificar seu fluxo de trabalho e garantir a reutilização, você decidiu criar um modelo para um modelo CNN de classificação de imagens binárias, que pode ser usado em projetos futuros.
Os pacotes torch
e torch.nn
como nn
foram importados. Todas as imagens têm 64x64 pixels.
Este exercício faz parte do curso
Aprendizado profundo para imagens com PyTorch
Instruções do exercício
- Crie uma camada convolucional com 3 canais, 16 canais de saída, tamanho do kernel de 3, stride de 1 e preenchimento de 1.
- Crie uma camada totalmente conectada com um tamanho de entrada de 16x32x32 e um número de classes igual a 1; inclua só os valores na ordem que está aqui:
(16*32*32, 1)
. - Crie uma função de ativação “
sigmoid
”.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
class BinaryImageClassifier(nn.Module):
def __init__(self):
super(BinaryImageClassifier, self).__init__()
# Create a convolutional layer
self.conv1 = ____(____)
self.relu = nn.ReLU()
self.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)
self.flatten = nn.Flatten()
# Create a fully connected layer
self.fc = ____(____)
# Create an activation function
self.sigmoid = ____