课程简介
《实用深度学习》课程为建设中的系列课程,共包含16章的内容,既可用于校本教学,也可用于在线自学。本课程分为三大部分,其中第一部分深度学习基础,主要介绍深度学习的基本概念和基本原理、深度学习的数学基础、机器学习基础思想和方法以及图像数据集的预处理。第二部分现代深度神经网络,首先简要介绍了神经网络的发展历程及几种最基本前馈神经网络(线性回归、Softmax回归和多层感知机),之后重点介绍了卷积神经网络及若干经典卷积神经网络模型,包括AlexNet、VGGNet、GoogLeNet、ResNet等;此外还介绍了循环神经网络RNN,生成对抗模型GAN、深度强化学习、注意力机制以及各种优化算法的相关知识。第三部分,主要涉及基于深度学习的计算机视觉(ComputerVision)和自然语言处理(Neural Language Processing),在计算机视觉部分重点介绍目标检测(Detection)和图像分割(Segmentation)任务,其中目标检测中介绍了两个重要的检测系列RCNN和Yolo,图像分割详细介绍了两个经典模型FCN和DeepLab模型,此外本课程还将介绍一些经典的视觉分析任务,包括图像检索、目标跟踪、风格迁移等;在自然语言部分主要介绍了当代自然语言处理中几个经典的应用,包括文本生成、文本分类、机器翻译及问答系统等;最后本课程还给出了两个重要的领域联邦学习和基于深度学习的嵌入式开发工程应用。
本课程完整教学计划可访问顶部导航条“教学计划”,此外,本站还开设校本教学课程4门,具体教学计划可点击以下链接访问:
此外,本课程完全适配“教育部1+X项目计算机视觉应用开发证书”,可作为该证书相关内容的学习资源。本课程网站提供的所有资源,包括在线教案、课堂PPT、相关论文、习题及若干参考资源,均欢迎下载和转发,但请保留版权。本课程有少量图片来源于互联网,若存在版权问题,请及时与我联系。本课程从2021年9月开始执行。
教学团队
前置知识
- 熟练掌握Python
- 本课程所有项目及作业都将使用Python(包括Numpy和OpenCV),同时需要用到百度深度学习工具包Paddle, PaddleDetection, PaddleSeg, PaddleLite。如果对Python不是很熟悉,请回顾课程《程序设计基础(Python)》或使用菜鸟教材进行自学。
- 高等数学(微积分)、线性代数(《高等数学》、《计算机数学》)
- 基本掌握梯度(多变量导数),并习惯于数据的矩阵/向量的表示法和运算方法。
- 基本概率统计基础(《概率论与数理统计》)
- 了解基本的概率知识,包括高斯分布、随机分布、平均值、标准差、方差等基础知识。
- 机器学习基础(《机器学习》)
- 首先,需要掌握机器学习的基本知识,特别是基于导数的梯度下降的优化方法,并对数据预处理、降维、特征提取、模型评估与优化有一定了解。其次,需要对机器学习的基本算法有一定的了解,包括KNN、线性模型、SVM、朴素贝叶斯、决策树和随机森林等。
- 数据分析与图像处理基础(《数字图像处理》、《数据分析与可视化技术》)
- 为了便于数据处理,在学习本课程前,还需要掌握一些基于OpenCV的图像处理方法和基于matplotlib的数据可视化方法。
参考资料
- 以下资料对于深度学习和计算机视觉课程的学习很有帮助,但不是必需的。
- 1. 高随祥,文新,马艳军,李轩涯. 深度学习导论与应用实践
- 2. Ian Goodfellow, Yoshua Bengio, Aaron Courville. Deep Learning(花书)
- 3. 弗朗索瓦·肖莱, 张亮(译). 《Python深度学习》
- 4. 杨强,黄安埠,刘洋,陈天健. 《联邦学习实战》
- 5. 斯坦福计算机视觉课程:http://cs231n.stanford.edu/
- 6. 百度AIStudio平台:https://aistudio.baidu.com/
课程作业
课程考核
- 标准分(《深度学习》):考勤(10%) + 课堂互动(30%) + 课程项目(10%) + 课后作业(30%) + 期末测验(20%)
- 标准分(《计算机视觉》):考勤(10%) + 课堂互动(30%) + 课程项目(20%) + 课后作业(20%) + 期末测验(20%)
- 奖励分:获得“1+X计算机视觉证书”(当前学期参考)奖励20分;课堂表现(抢答、提问、纠错)每次奖励0.2分;其他指定证书奖励20分;课程竞赛奖励最高20分。
- 成绩表: 请访问课堂派查看
作业提交
- 互动答题:雨课堂、课堂派
- 课程项目:百度AIStudio
- 课后作业:百度AIStudio
- 特别提示:课程项目和课后作业都将作为平时成绩,计入本门课程的最终成绩,因此请认真对待。
信用及荣誉准则
- 所有的作业/课堂互动/课程项目都提供了在线的参考解决方案或实现,我们希望所有的同学在完成项目/作业前不要查看这些解决方案或答案,而是独立完成所有的任务后,再和参考解决方案进行对比验证。
- Rule 1: 不要看别人的解决方案和代码,你所提交的所有作品都应该是你自己的工作
- Rule 2: 不要和别人分享你的解决方案和代码;但鼓励讨论方法和通用策略。
- Rule 3: 在你提交的作品中注明对你作品有帮助的人。
- Rule 4: 鼓励以团队形式完成项目和竞赛。
- 特别提示:迟交或提交不完整的代码比违反诚信(抄袭代码)好很多!
- 截至日期:所有作业和项目在AIStudio平台均有截止日期。超期提交,最终成绩将按照卷面成绩的 70% 进行计算。
其他
- 1. 学生可以独自完成项目,也可以以最多3人的团队进行。建议独自完成课程项目和课后作业,但强烈建议以团队形式完成最终的课程实训项目。理论上,团队应该做响应更大、更复杂的项目。如果你计划完成一个具有优质成果的项目,每个成员都应该在项目中做出重大贡献。注意团队人数上限为3人。
- 2. 强烈鼓励依托课程实训项目或课程项目,实现项目的拓展,并参与包括大学生互联网+,云南省计算机设计大赛、计算机作品大赛等学科专业竞赛。
- 3. 本课程大部分实验都需要使用GPU支持,建议以班级为单位申请学院机房(A306, A202)完成实验,或使用百度AIStudio提供的免费算力完成实验(但需要有一台可以访问互联网的计算机)。
- 4. 在完成项目和作业的过程中,可以使用外部协作者的项目,但必须在项目/作业中明确说明项目的哪些部分是您的工作。
- 对课程有任何疑问都可以直接练习课程教学团队的教师,也可以联系责任教师欧新宇:QQ:14777591, Email: shiorioxy@qq.com