CIFAR-10 上的 CNN 与 ResNet-18 实验对比

612 字
3 分钟
CIFAR-10 上的 CNN 与 ResNet-18 实验对比
  1. 1CIFAR-10 上的 CNN 与 ResNet-18 实验对比本文
  2. 2残差连接学习笔记

这篇文章整理自我的人工智能基础课程报告。原报告比较了 5 层普通 CNN、30 层普通 CNN 和 ResNet-18 在 CIFAR-10 图像分类任务上的表现。这里保留问题、实验设计和主要结果,便于在网页上阅读;原始课程资料可在 GitHub 查看。

为什么比较残差网络#

简单堆叠卷积层不一定会提升性能。网络加深后,优化可能变得困难。ResNet 的残差块引入跳跃连接,让网络学习残差映射 F(x),再与输入 x 相加,得到输出 H(x) = F(x) + x。这为信息和梯度提供了一条更直接的通路。

实验设计#

数据集为 CIFAR-10,包含 50,000 张训练图片和 10,000 张测试图片。报告使用 PyTorch,对三种网络进行了五组训练:

  • 5 层 CNN:训练 30 轮与 100 轮;
  • 30 层普通 CNN:训练 30 轮;
  • ResNet-18:训练 30 轮与 100 轮。

ResNet-18 针对 32 × 32 的输入图片调整了首层卷积,并移除了初始最大池化层。训练使用 Adam 优化器、随机水平翻转和随机裁剪等数据增强。不同训练轮数的结果分别列出,避免把训练时间差异藏在模型名称后面。

结果#

下表数值来自原课程报告的实验结果:

模型训练轮数测试集准确率训练耗时
5 层 CNN3084.88%20.04 分钟
5 层 CNN10087.86%47.39 分钟
30 层普通 CNN3082.64%21.36 分钟
ResNet-183083.08%18.31 分钟
ResNet-1810093.36%64.26 分钟

在这组实验中,训练 100 轮的 ResNet-18 准确率最高。只看 30 轮时,它略低于 5 层 CNN;因此不能把“有残差连接”直接等同于“任何训练设置下都更准确”。30 层普通 CNN 的 30 轮结果也不能单独证明退化问题,因为报告中的损失曲线显示它仍在下降,训练可能尚未充分收敛。

我学到的事#

残差连接的价值在于帮助深层网络优化,而比较模型时还要同时看训练轮数、数据增强和训练耗时。这个实验既展示了 ResNet-18 在充分训练后的潜力,也提醒我谨慎解释早期训练结果。

后续如果重新运行实验,我会优先补齐相同训练轮数下的对比,并记录随机种子与环境版本,让结果更容易复现。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

Profile Image of the Author
gghao
来自西北工业大学的本科生,分享学习资料、个人项目和想法。
欢迎来到 gghao's Lab
这里记录课程学习、技术实践和开源项目。欢迎从课程报告或学习笔记开始阅读。
分类
标签
最新动态
站点统计
文章
3
分类
3
标签
6
总字数
1,286
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Cloudflare Workers
博客版本
Firefly v6.16.8
文章许可
None
文章目录