Modelo de clasificación binaria
Como especialista en deep learning, una de tus tareas principales es entrenar modelos para clasificación de imágenes. A menudo te enfrentas a problemas de clasificación binaria, en los que necesitas distinguir entre dos clases. Para agilizar tu flujo de trabajo y facilitar la reutilización, has decidido crear una plantilla de modelo CNN para clasificación binaria de imágenes, que puedas aplicar en futuros proyectos.
Se han importado los paquetes torch y torch.nn como nn. Todas las imágenes tienen un tamaño de 64x64 píxeles.
Este ejercicio forma parte del curso
Deep Learning para imágenes con PyTorch
Instrucciones del ejercicio
- Crea una capa convolucional con 3 canales de entrada, 16 canales de salida, tamaño de kernel 3, stride 1 y padding 1.
- Crea una capa totalmente conectada con un tamaño de entrada de 16x32x32 y un número de clases igual a 1; incluye solo los valores en el orden indicado
(16*32*32, 1). - Crea una función de activación
sigmoid.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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 = ____