二分类模型
作为一名深度学习从业者,您的核心任务之一是训练用于图像分类的模型。您经常会遇到二分类问题,需要区分两个类别。为简化工作流程并提升复用性,您决定创建一个二分类图像分类 CNN 模型的模板,以便在后续项目中直接应用。
已导入 torch 和将 torch.nn 命名为 nn 的包。所有图像大小均为 64x64 像素。
本练习是课程的一部分
使用 PyTorch 进行图像深度学习
练习说明
- 创建一个卷积层:输入通道数为 3,输出通道数为 16,卷积核大小为 3,步幅为 1,填充为 1。
- 创建一个全连接层:输入尺寸为 16x32x32,类别数量为 1;仅按给定顺序填写数值
(16*32*32, 1)。 - 创建一个
sigmoid激活函数。
交互式实操练习
通过完成这段示例代码来试试这个练习。
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 = ____