卷积运算和优化器
1. 模型构建与原理
包含18层卷积层和2个全连接层的网络结构,整个过程底层依赖矩阵运算。
解释了分类任务的决策过程:通过softmax函数获得各类别置信度,并挑选其中最大值对应的索引作为最终预测类别。
2. 模型训练与测试流程
分享了训练的核心步骤:前向传播(正向传播)、通过交叉熵损失函数计算损失,并利用SGD优化器进行反向传播以更新模型参数
3. 全局平均池化技术(Global Average Pooling)
这是一种特殊的池化操作,其池化核大小与输入图片的尺寸完全一致,从而一次性遍历整张图片。
在网络结构中,全局平均池化层的作用是将高维度的特征图(例如6x28x28)压缩为一个固定长度的一维向量(例如6x1),从而大幅减少后续网络的参数量。
它可以作为一种更高效的替代方案,用于代替网络末尾传统的全连接层,实现特征整合。
强调该操作应放置在卷积层之后,以保证能够提取到上层特征,避免直接应用导致信息丢失。
4. 卷积层工作原理详解
卷积核(Convolution Kernel)的工作机制
完整的卷积核所需参数维度是 [卷积核大小 x 卷积核大小 x 输入通道数]
若有N个卷积核就产生N个输出通道
通过彩色图像(RGB三通道)的例子说明,单个大小为5x5的3D卷积核实际拼接了R、G、B三个通道的信息进行运算
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")判断设备是gpu还是cpu优先使用gpu原因是速度快