继承nn.Module基类并应用模型容器构建模型
1.使用nn.Sequential模型容器
运行结果:
2.使用nn.ModuleList模型容器
运行结果:
3.使用nn.ModuleDict模型容器
运行结果:
自定义网络模块
残差块有两种,一种是正常的模块方式,将输入与输出相加,然后应用激活函数ReLU
另一种是为使输入与输出形状一致,需添加通过1×1卷积调整通道和分辨率。
自定义网络模块
·组合这两个模块得到现代经典RetNet18网络结构。
训练模型
1.加载预处理数据集
2.定义损失函数
3.定义优化方法
4.循环训练模型
5.循环测试或验证模型
6.可视化结果