这是一个基于 PyTorch 框架的深度学习学习与实践项目。本项目通过 Jupyter Notebook 的形式,记录了从深度学习基础模型到高级卷积神经网络(CNN)的实现过程及各种优化技巧。
本项目按照章节划分,涵盖了深度学习的各个核心模块:
📁 chapter_1_torch - 深度学习基础
- 分类与回归:基础的分类模型与回归模型实现。
- 神经网络组件:
- DNN(深度神经网络)的构建。
- Batch Normalization (BN):批归一化实践。
- SELU & Dropout:激活函数与正则化技巧。
- 进阶架构:
- Wide & Deep 模型实现。
- 多输入(Multi-input)与多输出(Multi-output)模型。
- 超参数搜索:学习如何通过程序化方式寻找最优超参数。
📁 chapter_2_torch - PyTorch 进阶 API 与自定义
- 基础 API 深入:深入理解 PyTorch 的核心操作。
- 自定义组件:
- 自定义损失函数(Customized Loss)。
- 自定义层(Customized Layer)。
- 自动微分:探讨 PyTorch 的 autograd 机制。
📁 chapter_3_torch - 数据处理
- Dataset API:学习如何高效地加载、预处理和管理训练数据。
📁 chapter_4_torch - 卷积神经网络 (CNN)
- CNN 基础:卷积层、池化层的堆叠与实现。
- Separable CNN:可分离卷积的实践,提升模型效率。
- 实战案例:
- 10 Monkeys 识别:基于真实数据集的图像分类。
- Cifar10:经典的图像分类基准测试。
- ResNet50 Finetune:学习如何利用预训练模型进行迁移学习。
📁 chapter_5_torch - 模型可视化与进阶技巧
- VGG 网络:经典 VGG 架构的实现。
- 可视化工具:Tensorboard 在 PyTorch 中的应用(查看指标、激活值等)。
- 优化进阶:
- 初始化器(Initializer)与优化器(Optimizer)的选择。
- 图像增强(Image Augmentation):通过数据增强提升模型泛化能力。
- Python 3.x
- PyTorch
- torchvision
- Jupyter Notebook / JupyterLab
- Matplotlib, NumPy, Pandas
- Tensorboard (用于第五章可视化)
- 克隆仓库:
git clone https://github.com/logcoke/Deep_Learning.git
- 进入对应章节目录,启动 Jupyter Notebook:
jupyter notebook
- 按照笔记中的注释和代码顺序运行即可。
- 完善循环神经网络 (RNN/LSTM) 章节
- 增加生成对抗网络 (GAN) 相关内容
- 探索 Transformer 架构在视觉或序列任务中的应用
- 增加更多实战数据集的 Finetune 示例
作者: logcoke