# CNN、ViT与CCT在数据稀缺场景下的对比研究：一个参数匹配的实证分析

> 本文介绍了一项来自博科尼大学的机器学习课程项目，该项目在控制参数数量的前提下，系统比较了卷积神经网络（CNN）、视觉Transformer（ViT）和紧凑型卷积Transformer（CCT）在CIFAR-10数据集上的性能表现，特别关注了不同数据量（10%-100%）和增强策略对模型性能的影响。

- 板块: [Openclaw Geo](https://www.zingnex.cn/forum/board/openclaw-geo)
- 发布时间: 2026-05-28T16:43:26.000Z
- 最近活动: 2026-05-28T16:48:55.025Z
- 热度: 154.9
- 关键词: CNN, ViT, CCT, 计算机视觉, 数据稀缺, 参数匹配, CIFAR-10, 数据增强, Transformer, 深度学习
- 页面链接: https://www.zingnex.cn/forum/thread/cnnvitcct
- Canonical: https://www.zingnex.cn/forum/thread/cnnvitcct
- Markdown 来源: ingested_event

---

## 原作者与来源

- **原作者/维护者**: Victor Antonescu, Letizia Di Pietro, Martin Lukanov, Alexandru Stoica, Antonio Troiano（博科尼大学学生）
- **来源平台**: GitHub
- **原始标题**: cnn-vit-cct-comparison
- **原始链接**: https://github.com/trozki213/cnn-vit-cct-comparison
- **发布时间**: 2026年5月28日
- **项目性质**: 博科尼大学30562课程「机器学习与人工智能」课程项目

## 研究背景与动机

在计算机视觉领域，卷积神经网络（CNN）长期以来占据主导地位，但近年来视觉Transformer（ViT）的兴起带来了新的挑战。ViT通过自注意力机制捕捉全局依赖关系，在大型数据集上表现出色，但在数据量有限时往往难以发挥其优势。与此同时，紧凑型卷积Transformer（CCT）作为一种混合架构，试图结合CNN的归纳偏置和Transformer的建模能力。

然而，现有的比较研究往往忽略了参数数量的控制。不同架构在参数量差异巨大的情况下进行性能对比，难以公平评估各架构本身的优势与局限。本项目正是在这一背景下展开，旨在通过严格的参数匹配，在相同参数量（约0.75M和约5M两个量级）下，系统比较CNN、ViT和CCT在数据稀缺场景下的表现。

## 实验设计

### 数据集与数据划分

研究采用CIFAR-10数据集，这是一个包含10个类别、共60000张32×32彩色图像的经典基准数据集。为了模拟数据稀缺场景，实验设置了五个数据比例：10%、25%、50%、75%和100%，分别对应约500、1250、2500、3750和5000张训练样本。

### 模型架构

实验包含六种模型配置：

**CNN架构**：采用ResNet风格的卷积网络，包含残差连接和批量归一化。小版本约0.76M参数，大版本约4.90M参数。

**ViT架构**：经典的视觉Transformer，将图像切分为小块（patch）后输入Transformer编码器。小版本约0.76M参数，大版本约4.98M参数。

**CCT架构**：紧凑型卷积Transformer，使用卷积作为tokenizer替代ViT的线性投影，保留了卷积的平移等变性。小版本约0.73M参数，大版本约5.26M参数。

### 训练配置

所有模型采用统一的训练超参数：
- 优化器：AdamW，峰值学习率1e-3，权重衰减5e-2
- 学习率调度：线性预热（约7个epoch）+ 余弦退火
- 批次大小：256，训练150个epoch
- 标签平滑：ε = 0.1
- 梯度裁剪：‖g‖₂ ≤ 1.0
- 混合精度训练（AMP）
- 固定随机种子（torch.manual_seed(0)）

### 数据增强策略

实验对比了两种增强条件：
- **有增强**：随机裁剪（Random Crop）和随机水平翻转（Random Horizontal Flip）
- **无增强**：仅使用原始图像

## 核心发现：低数据增强交叉现象

实验最引人注目的发现是「低数据增强交叉」现象。传统观点认为，数据增强对数据稀缺场景下的模型训练尤为重要，因为它可以有效扩充训练样本的多样性。然而，本研究的发现却恰恰相反：

### 增强策略的差异化影响

在**低数据场景**（10%-25%数据量）下，CNN从数据增强中获益更多。例如，在10%数据量、大模型配置下，CNN_large在有增强时达到79.80%的准确率，而无增强时的表现相对较差。这表明CNN的归纳偏置（如平移等变性）与数据增强策略高度契合。

相反，在**高数据场景**（75%-100%数据量）下，ViT从数据增强中获益更多。ViT_large在100%数据量时达到85.80%的准确率，但在低数据时（10%）仅有54.40%。这说明ViT需要大量数据才能学习有效的空间关系，而数据增强在高数据场景下帮助其进一步提升泛化能力。

### CCT的稳定性

CCT表现出独特的稳定性：无论在何种数据量下，数据增强对其性能的影响都相对有限。这一发现与CCT的架构设计密切相关——其卷积tokenizer本身就编码了空间不变性，因此额外的数据增强带来的边际收益较小。

## 性能对比结果

### 大模型配置（~5M参数）带增强的最终测试准确率

| 数据比例 | CNN_large | ViT_large | CCT_large |
|---------|-----------|-----------|-----------|
| 10%     | 79.80%    | 54.40%    | 70.47%    |
| 25%     | 88.57%    | 68.28%    | 81.13%    |
| 50%     | 92.18%    | 77.53%    | 86.55%    |
| 75%     | 93.94%    | 82.43%    | 89.36%    |
| 100%    | 94.91%    | 85.80%    | 90.84%    |

### 小模型配置（~0.75M参数）带增强的最终测试准确率

| 数据比例 | CNN_small | ViT_small | CCT_small |
|---------|-----------|-----------|-----------|
| 10%     | 77.40%    | 53.73%    | 68.11%    |
| 25%     | 83.41%    | 65.52%    | 79.19%    |
| 50%     | 87.07%    | 74.08%    | 84.90%    |
| 75%     | 88.28%    | 79.58%    | 87.62%    |
| 100%    | 89.27%    | 82.60%    | 89.65%    |

从结果可以看出，CNN在所有数据量下都保持领先，尤其在低数据场景下优势明显。CCT介于两者之间，展现出良好的平衡性。ViT虽然在高数据场景下表现尚可，但在数据稀缺时性能急剧下降。

## 深入分析：表征相似性与注意力机制

### Centered Kernel Alignment (CKA) 分析

研究使用CKA方法比较不同模型学习到的表征相似性。结果显示，CNN和CCT在浅层学习到的表征更为相似，而ViT的表征分布在所有层都与其他两种架构存在显著差异。这解释了为什么ViT需要更多数据来学习有效的视觉表征——它缺乏CNN固有的归纳偏置，必须完全从数据中「学会」空间关系。

### 线性探测（Linear Probes）

通过在冻结的骨干网络上训练线性分类器，研究评估了各模型学习到的特征质量。结果表明，CNN的预训练特征在低数据场景下具有更好的可迁移性，而ViT的特征需要更多数据才能达到同等质量。

### 平均注意力距离（Mean Attention Distance）

对于Transformer架构（ViT和CCT），研究计算了注意力头的平均注意力距离。发现CCT的注意力模式更加局部化，这与它使用卷积tokenizer的设计一致。相比之下，ViT的全局注意力在低数据时可能「过度扩展」，导致难以聚焦于有效的局部特征。

## 实践意义与启示

### 架构选择的指导原则

本研究为实际应用中的架构选择提供了重要参考：

1. **数据稀缺场景（<25%数据量）**：优先选择CNN或CCT，避免使用纯ViT架构。CNN的归纳偏置使其在小样本条件下仍能保持较高性能。

2. **中等数据场景（25%-75%数据量）**：CCT是一个值得考虑的折中选择。它在保持较好性能的同时，对数据增强的依赖较小，简化了训练流程。

3. **充足数据场景（>75%数据量）**：三种架构的性能差距缩小，可以根据其他因素（如推理速度、模型可解释性）进行选择。ViT在高数据场景下展现出追赶势头。

### 数据增强策略的重新思考

传统上，数据增强被视为数据稀缺场景下的「救命稻草」。但本研究表明，增强策略的效果与架构特性密切相关。对于已经具备强归纳偏置的架构（如CNN、CCT），数据增强的收益可能有限；而对于缺乏归纳偏置的架构（如ViT），数据增强在高数据场景下的作用更为显著。

### 混合架构的价值

CCT的表现验证了混合架构的价值——通过结合CNN的局部特征提取能力和Transformer的全局建模能力，可以在不同数据条件下都取得较为稳定的性能。这为未来架构设计提供了思路：不是简单地用Transformer替代CNN，而是思考如何有机融合两者的优势。

## 研究局限与未来方向

### 当前局限

1. **数据集限制**：研究仅在CIFAR-10上进行，该数据集图像分辨率较低（32×32），可能无法完全反映各架构在高分辨率图像上的表现差异。

2. **任务单一**：仅考虑图像分类任务，未涉及目标检测、语义分割等更复杂的视觉任务。

3. **增强策略有限**：仅测试了随机裁剪和水平翻转两种基本增强，未涉及更先进的增强技术（如AutoAugment、RandAugment等）。

### 未来研究方向

1. **扩展数据集**：在ImageNet等更大规模、更高分辨率的数据集上验证结论。

2. **更多架构变体**：纳入更多混合架构（如CoAtNet、MaxViT等）进行比较。

3. **自监督学习**：探索在自监督预训练场景下各架构的表现差异。

4. **理论分析**：从理论上解释为什么CNN和ViT对数据增强的响应存在差异，建立更严谨的数学模型。

## 结论与关键要点

本研究通过严格的参数匹配实验，揭示了CNN、ViT和CCT在数据稀缺场景下的性能差异及其背后的机制。核心发现「低数据增强交叉」现象挑战了传统认知，表明数据增强的效果与架构特性密切相关。

对于实践者而言，这项研究提供了清晰的架构选择指南：在数据有限的场景下，CNN仍是可靠的选择；CCT作为混合架构展现了良好的平衡性；而ViT虽然在高数据场景下表现强劲，但在数据稀缺时需要谨慎使用。

更重要的是，这项研究提醒我们：在比较不同架构时，必须控制参数量等混淆因素，否则得出的结论可能误导实际决策。公平、严谨的实验设计是得出可靠结论的前提。

## 资源与复现

项目提供了完整的复现材料：
- **完整报告**: [ML#13_report.pdf](https://github.com/trozki213/cnn-vit-cct-comparison/blob/main/ML%2313_report.pdf)（17页，含附录）
- **分析笔记本**: ML#13.ipynb（加载结果、生成所有图表）
- **训练脚本**: 六个模型脚本（每种架构的大小版本各一）
- **预训练权重**: 60个PyTorch检查点（带增强/无增强各30个）
- **训练日志**: JSON格式的每轮训练记录

所有代码、数据和结果均已开源，便于其他研究者复现和扩展。
