双输入模型
数据已就绪,现在来构建双输入模型的架构!为此,您将创建一个模型类,包含以下方法:
.__init__():在这里通过分组层来定义子网络;您需要定义两个用于处理两个输入的层,以及一个对每个类别返回分类分数的分类器。forward():在这里将两个输入分别传入对应的预定义子网络,拼接它们的输出,再传给分类器。
torch.nn 已作为 nn 为您导入。开始吧!
本练习是课程的一部分
PyTorch 深度学习进阶
交互式实操练习
通过完成这段示例代码来试试这个练习。
class Net(nn.Module):
def __init__(self):
super().__init__()
# Define sub-networks as sequential models
____ = ____(
nn.Conv2d(1, 16, kernel_size=3, padding=1),
nn.MaxPool2d(kernel_size=2),
nn.ELU(),
nn.Flatten(),
nn.Linear(16*32*32, 128)
)
____ = ____(
nn.Linear(30, 8),
nn.ELU(),
)
____ = ____(
nn.Linear(128 + 8, 964),
)