多类别分类模型
在已有的二分类模型模板基础上,您现在可以将其扩展为多类别分类模型。模型应通过参数来处理不同的类别数量,这样今后就能针对具体的多类别分类任务进行定制。
torch 和 torch.nn(简称 nn)已导入。所有图像大小均为 64x64 像素。
本练习是课程的一部分
使用 PyTorch 进行图像深度学习
练习说明
- 定义
__init__方法,参数包括self和num_classes。 - 创建一个全连接层,输入尺寸为
16*32*32,输出为类别数num_classes。 - 使用
dim=1创建名为softmax的激活函数。
交互式实操练习
通过完成这段示例代码来试试这个练习。
class MultiClassImageClassifier(nn.Module):
# Define the init method
def ____(____, ____):
super(MultiClassImageClassifier, self).__init__()
self.conv1 = nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1)
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.softmax = ____(____)