第一课:猫狗图片分类 —— 从底层到前沿
猫狗分类是计算机视觉的“Hello World”。本课将带你通过两种截然不同的方式完成任务:
- 致敬经典:使用 PyTorch 手写一个卷积神经网络 (CNN)。
- 拥抱未来:利用 Vision Transformer (ViT) 预训练模型实现高性能识别。
1. 核心目标
- 理解 CNN 的局部特征提取原理。
- 掌握 Transformer 的图像分块 (Patchifying) 与全局建模。
- 学会使用
timm库快速调用 2026 年顶尖的深度学习模型。
2. 方案一:知其然 —— 手写轻量级 CNN
CNN 是视觉识别的基石。通过卷积层提取边缘,池化层降低维度,全连接层输出结果。
2.1 PyTorch 模型定义
3. 方案二:知其所以然 —— 预训练 Vision Transformer
在 2026 年,我们很少从零训练模型。利用在超大规模数据集上训练过的 ViT,可以实现“降维打击”。
3.1 核心流程:图像变序列
ViT 不使用卷积,而是将图像切成 16x16 的小块 (Patches),像处理文字一样处理图像块之间的关联。

