# deeplearning
**Repository Path**: aistudy101/deeplearning
## Basic Information
- **Project Name**: deeplearning
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-03-07
- **Last Updated**: 2026-03-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 深度学习(Deep Learning)
> 北京中关村学院 · 32学时 / 2学分 · 授课教师:清华大学 姚权铭 副教授
## 课程简介
本课程系统介绍机器学习与深度学习的基础概念、核心方法和前沿进展。从传统机器学习方法入手,逐步深入到 MLP、CNN、RNN、GNN、Transformer、大语言模型、扩散模型等主流架构,最终覆盖智能体、元学习等前沿方向。每节课配有动手项目,强调"在实践中学习"。
## 课程目录
| 课节 | 标题 | 学时 | 项目 |
|:----:|------|:----:|------|
| 1 | 深度学习绪论与分类基础 | 2 | 手写 KNN 分类器 (NumPy) |
| 2 | 分类与回归方法 | 2 | **作业1+实验1**: KNN/SVM/回归从零实现 |
| 3 | 多层感知机与反向传播 | 2 | 从零实现 MLP (NumPy → PyTorch) |
| 4 | 神经网络优化算法 | 2 | 优化器大比拼 (SGD/Adam/LR scheduling) |
| 5 | 卷积神经网络 | 3 | **作业2**: CIFAR-10 图像分类 + ResNet |
| 6 | 图神经网络 | 3 | **实验2A**: Cora 节点分类 (PyG) |
| 7 | 循环神经网络 | 2 | 中文诗词生成器 (LSTM) |
| 8 | Transformer 架构 | 3 | 从零构建 Transformer + 注意力可视化 |
| 9 | 大语言模型 | 3 | **实验2B**: LLM 节点分类 + RAG |
| 10 | 生成式扩散模型 | 2 | **作业3**: 迷你 DDPM (MNIST) |
| 11 | 无监督与自监督学习 | 2 | 自编码器 + SimCLR 对比学习 |
| 12 | 大模型智能体 | 2 | 构建 ReAct Agent |
| 13 | 元学习 | 2 | Prototypical Networks 少样本分类 |
| 14 | 前沿论文精读与复现 | 2 | **实验3**: 近期会议论文复现 |
| 15 | 课程总结与项目答辩 | 2 | 综合项目设计与答辩 |
## 环境配置
### 前置要求
- Python 3.9+
- pip 包管理器
### 安装依赖
```bash
# 创建虚拟环境(推荐)
python -m venv venv
source venv/bin/activate # Linux/macOS
# venv\Scripts\activate # Windows
# 安装所有依赖
pip install -r requirements.txt
```
### PyTorch 安装说明
如果上述安装方式遇到问题,请根据系统和硬件访问 [PyTorch 官网](https://pytorch.org/get-started/locally/) 选择合适的安装命令。
### PyTorch Geometric 安装说明(L6)
```bash
pip install torch-geometric
```
详细说明参考 [PyG 官网](https://pytorch-geometric.readthedocs.io/en/latest/install/installation.html)。
## 技术栈
| 阶段 | 工具 |
|------|------|
| L1-L2 基础 | NumPy, scikit-learn, matplotlib |
| L3-L14 深度学习 | PyTorch, torchvision, matplotlib, tensorboard |
| L6 图神经网络 | PyTorch Geometric |
| L9, L12 大模型 | HuggingFace transformers, sentence-transformers |
## 目录结构
```
deeplearning/
├── assets/ ← 课程封面等静态资源
├── README.md ← 本文件
├── requirements.txt ← Python 依赖
├── syllabus.md ← 课程大纲
├── introduction.md ← 课程与学生信息
├── knowledge-points.md ← 知识点清单
├── syllabus-academic.md ← 学术格式原始大纲
└── lesson{1-15}/ ← 各节课内容
├── lecture.md ← 讲义
├── project.md ← 项目描述
├── src/ ← 脚手架代码(学生填写 TODO)
├── answer/ ← 参考实现(部分课节)
└── test/ ← 测试代码(部分课节)
```
## 关于课程代码
本课程的所有代码(`src/` 练习脚手架与 `answer/` 参考实现)均已通过审查和测试,能够在 CPU 模式下运行。针对大型模型或耗时较长的训练(如 Diffusion、Transformer),大部分脚本提供了 `--fast` 参数或可通过设置较低的 `epochs` 和 `batch_size` 完成快速验证。
*提示:部分公开数据集(如 MNIST、Omniglot、HuggingFace 模型资产)在首次运行时需要进行下载,若因网络环境受限报错,请使用对应的镜像源或提前离线下载至 `data/` 目录。*
## 学习建议
1. **先读讲义,再做项目**:讲义为项目做铺垫,建议先通读理解核心概念
2. **动手填写 TODO**:脚手架代码中的 `TODO` 是核心学习内容,先自己尝试再看参考实现
3. **运行测试验证**:有 `test/` 目录的课节,填完代码后运行测试检查正确性
4. **CPU 友好**:所有项目支持 CPU 运行(部分项目提供 `--fast` 参数加速)
5. **循序渐进**:课程内容由浅入深,建议按顺序学习
## 作业与实验
课程包含 3 次作业和 3 次实验(标注在上方课程目录中),这些是重点评估项目,请认真完成。
## 教材参考
- Goodfellow, I., Bengio, Y., & Courville, A. (2016). *Deep Learning*. MIT Press.
- Hastie, T., Tibshirani, R., & Friedman, J. (2009). *The Elements of Statistical Learning.* Springer.
- 张旭东, 臧根林, 邸瑞华, 等. (2020). *机器学习导论*. 机械工业出版社.