章节 01
导读 / 主楼:面向数学专业学生的神经网络与深度学习课程开源资料库
课程定位与设计理念
这是一门面向数据科学与大数据技术专业大三学生的核心课程《神经网络与深度学习》的开源资料仓库。课程设计的独特之处在于明确面向数学专业学生,强调理论基础的严谨性与实践应用的可操作性并重。
与市面上侧重工程实现的深度学习教程不同,本课程从数学视角切入,要求学生具备扎实的概率论、线性代数和微积分基础。这种定位使得课程内容在讲解反向传播、优化算法、注意力机制等核心概念时,能够深入数学本质而非停留在API调用层面。
课程结构:四大知识模块
课程以邱锡鹏教授的《神经网络与深度学习》为主教材,系统性地划分为四个递进模块:
模块一:机器学习基础
从概率论基础出发,涵盖线性模型、概率图模型等经典机器学习方法。这一阶段着重建立统计学习的理论框架,为后续神经网络的学习奠定数学基础。
模块二:基础神经网络架构
深入讲解三类核心网络结构:
- 前馈神经网络(FNN):从感知机到多层感知机,详解激活函数、损失函数和反向传播算法的数学推导
- 卷积神经网络(CNN):卷积操作的数学本质、池化层的作用机制、经典架构(LeNet、AlexNet、VGG、ResNet)的设计思想
- 循环神经网络(RNN):序列建模的数学原理、LSTM和GRU的门控机制、梯度消失/爆炸问题的分析与解决
模块三:进阶主题
涵盖网络优化(SGD、Adam、学习率调度)、正则化技术(Dropout、Batch Normalization)、注意力机制原理、以及生成模型(VAE、GAN)的数学基础。
模块四:大模型与前沿技术
紧跟学术前沿,讲解Transformer架构的自注意力机制、位置编码、大语言模型(LLM)的训练范式(预训练+微调+对齐)、以及强化学习在AI系统中的应用。
实验课程设计
课程配套6次实验课,采用PyTorch框架进行动手实践:
- 实验一:线性模型——从逻辑回归到Softmax分类器的手动实现
- 实验二:前馈神经网络——多层感知机的搭建与反向传播验证
- 实验三:卷积神经网络——图像分类任务与经典架构复现
- 实验四:循环神经网络——文本生成与序列标注任务
- 实验五:网络优化——优化器对比实验与正则化技术实践
- 实验六:注意力机制——自注意力模块实现与Transformer组件搭建
每次实验均提供完整的参考代码和详细说明文档,学生可在本地环境或云端(Google Colab)运行。
教学资源组织
仓库采用清晰的目录结构组织教学资源:
notes/:每周理论课的LaTeX源码讲义,包含完整的公式推导和定理证明slides/:每周课程的PDF课件,便于课前预习和课后复习labs/:六次实验课的参考代码与说明文档
这种组织方式体现了"理论-实践"并重的教学理念。讲义中的数学推导与实验代码相互印证,帮助学生建立从理论理解到工程实现的完整认知链条。
双语仓库与访问优化
项目同时维护GitHub(国际)和Gitee(国内)两个仓库,解决国内学生访问GitHub时的网络延迟问题。两个仓库保持同步更新,确保所有学生都能流畅获取课程资料。
需要注意的是,Gitee仓库仅作为镜像使用,代码和文档的协作合并仅通过GitHub的Pull Request进行。这一策略既保证了国内访问速度,又维持了开源社区的国际协作属性。
社区协作与贡献机制
课程资料采用开源协作模式持续迭代。学生可通过以下方式参与:
Issues区互动
GitHub Issues是课程答疑的主要平台。学生可以就以下主题发起讨论:
- 理论解惑:对讲义中的公式推导、概念理解有疑问
- 实验求助:代码报错、环境配置问题、模型不收敛
- 拓展探讨:分享对深度学习知识的见解,提出代码优化建议
- 问题反馈:指出讲义、作业或实验中的错漏
Pull Request贡献
欢迎学生提交PR改进课程资料:
- 修正讲义中的错别字或公式拼写错误
- 补充实验代码的注释和说明
- 提供实验题目的其他解法或进阶思路
贡献规范要求:文档类贡献需提交Markdown格式(非PDF),便于后续维护和审阅。
学生项目展示平台
课程专门建立了学生项目仓库neural-networks-and-deep-learning-student-project,供学生分享课程相关的个人项目。这种设计鼓励学生在完成课程要求的基础上进行拓展探索,形成学习成果的公开展示和 peer learning 的良性循环。
许可证与使用规范
项目采用双重许可证:
- 笔记讲义和课件采用CC BY-NC 4.0(知识共享署名-非商业性使用),允许自由分享和演绎,但必须署名且不可用于商业目的
- 实验代码采用MIT许可证,可自由使用、修改和分发
这种许可证选择体现了教育开源的核心理念:知识共享优先,同时保护教育内容的非商业属性。
推荐学习路径
课程资料建议按以下路径学习:
- 课前阅读对应周次的LaTeX讲义,理解核心概念的数学表述
- 课堂听讲配合PDF课件,重点关注推导过程和直观解释
- 课后完成实验代码,通过动手实践巩固理论知识
- 遇到问题先在Issues区搜索,未解决则发起新讨论
- 学期中尝试基于所学完成一个小项目,提交至学生项目仓库
教育价值与开源意义
这套课程资料代表了高校计算机教育开源化的积极尝试。通过将完整的课程体系(理论讲义、实验代码、教学课件)开源发布,不仅服务于本校学生,也为全球中文深度学习学习者提供了高质量的学习资源。
对于数学专业学生而言,这种"从数学原理出发、以工程实践落地"的教学模式,有助于培养既懂理论又能动手的研究型人才。开源协作机制则让学生在学习过程中就能参与知识共建,体验真实的科研协作流程。