《深度学习》和《计算机视觉》

主讲教师:欧新宇教授

教学团队:刘艺琴教授, 马千知, 余灿玲

2021秋

课程简介及教学内容


本站为包含192学时+56学时(12学分+1学分)的理实一体化课程,分为《深度学习(DeepLearning)》(第3学期)和《计算机视觉(Computer Vision)》(第4学期)两门课,每门课96学时;同时,两门课各包含28学时(0.5学分)的课程实训(1周)。《深度学习》课程完成第0-8讲的内容,主要包括深度学习的基本概念和基本原理,然后简要介绍了两种基础的深度学习模型前馈神经网络和自动编码机,并重点介绍了卷积神经网络及若干经典卷积神经网络模型,包括AlexNet、VGGNet、GoogLeNet、ResNet等,此外还介绍了循环神经网络RNN,生成对抗模型GAN及强化学习的相关知识。《计算机视觉》课程完成第9-12讲的内容,主要包括基于深度学习的图像和视频的应用介绍,重点介绍目标检测(Detection)和图像分割(Segmentation)任务,其中目标检测中介绍了两个重要的检测系列RCNN和Yolo,图像分割详细介绍了两个经典模型FCN和DeepLab模型,此外本课程还将介绍一些经典的视觉分析任务,包括图像检索、目标跟踪、风格迁移等。

本课程完成适配“教育部1+X项目计算机视觉应用开发证书”,可作为该证书相关内容的学习资源。本课程网站提供《深度学习》(71094326)和《计算机视觉》(71094327)的所有资源,包括在线教案、课堂PPT、相关论文、习题及若干参考资源。所有资源均欢迎下载和转发,但请保留版权。本课程有少量图片来源于互联网,若存在版权问题,请及时与我联系。

教学过程相关的考勤、课堂互动、期末测验将使用课堂派平台;课程项目、课后作业、课程竞赛将使用百度AIStudio进行提交,请各位同学使用实名(学号)加入课程。本课程从2021年9月开始执行。


授课时间:星期二(下午5-6节)、星期三(上午1-4节)
教室:秋实苑A306
教学文件: 教学大纲(课程说明) 考核说明 教学进度计划(2020秋)
数据集:本课程用到的所有第三方数据集
课程考核:考勤(10%) + 课堂互动(30%) + 课程项目(10%) + 课后作业(30%) + 期末测验(20%)
章节 进度 课程内容 理论
学时
实践
学时
作业及资料
  • Lecture00
  • Week1-1
  • 《深度学习》课程导学 (2课时)
  • 1. 课程基本信息
  • 2. 课程组织形式
  • 3. 课程作业与考核
  • 4. 学习建议
  • 5. VSCode、JupyterLab、百度AIStudio编程环境使用简介
  • 6. [项目01] Python机器学习环境安装和配置 [Notebook]
1 1
  • Lecture01
  • Week1-2
  • Week2
  • 深度学习概述(10课时) [Notebook]
  • 1. 人工智能的基本概念(1)
  • 2. 人工智能、机器学习与深度学习之间的关系(2)
  • 3. 机器学习(深度学习)发展的时间线(2)
  • 4. 深度学习日益流行的关键因素及其未来潜力(1)
  • 5. 深度学习的基本原理:基于梯度的优化(3)
  • 6. 学习常用工具软件(1)

  • 1
  • 2
  • 2
  • 1
  • 3
  • 1
  • Lecture02
  • Week3
  • Week4
  • 前馈神经网络 (22课时) [Notebook]
  • 1. 神经网络的发展历程
  • 2. 感知机
  • 3. 前馈神经网络
  • 4. 神经元、激活函数及网络结构
  • 5. 训练与预测(损失函数、参数学习)
  • 6. 反向传播算法
  • 7. 提升神经网络的技巧(参数更新、数据预处理、参数初始化、正则化)
  • 8. [项目02] 基于前馈神经网络的手势识别(动态图) [Notebook]

  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 2
  • 2








  • 12
  • Lecture03
  • Week4
  • Week5
  • 卷积神经网络 (24课时) [Notebook]
  • 1. 卷积神经网络概述
  • 2. 卷积神经网络的整体结构(Architecture)
  • 3. 卷积层(conv,padding,stride,局部感知、权重共享)
  • 4. 池化层(max-pooling, average-pooling)、激活层和全连接层
  • 5. [项目03] 卷积神经网络的结构设计与实现 [Notebook]
  • 6. 推理与误差回传、模型的泛化
  • 7. 面向深度学习的图像数据预处理
  • 8. [项目04] 数据准备 (Data Preparation)(2课时) [Notebook]
  • 9. [项目05] 数据规约与数据增广 (Data Augmentation)(4课时) [Notebook]
  • 10. [项目06] 基于卷积神经网络的图像识别(车牌识别VehicleLicense) (4) [Notebook]

  • 1

  • 2
  • 1
  • 1
  • 1
  • 2


  • 2





  • 2


  • 2
  • 4
  • 6
  • Lecture04
  • Week6
  • Week7
  • 经典卷积神经网络(28课时) [Notebook]
  • 1. 卷积神经网络关键技术回顾(1)
  • 2. 划时代的AlexNet(4)
  • 3. [项目07] 基于AlexNet的图像分类(蝴蝶分类)(4) [Notebook v2.1] [v1.8]
  • 4. 越来越深VGGNet(2)
  • 5. 精心设计的GoogLeNet(1)
  • 6. 超越人的ResNet(2)
  • 7. 蓬勃发展的卷积深度网络(1)
  • 8. 迁移学习(1)
  • 9. [项目08] 迁移学习和恢复训练(蝴蝶分类)(4) [Notebook]
  • Competitions
  • Lecture05
  • (NLP)
  • Week8
  • Week9-1
  • 循环神经网络(0课时) [Notebook]
  • 1. 循环神经网络简介
  • 2. 长期依赖LSTM和门控RNN
  • 3. 双向RNN
  • 4. 序列到序列结构Seq2Seq
  • Lecture06
  • 深度生成模型(8课时) [Notebook]
  • 1. 监督学习和无监督学习(1)
  • 2. 生成模型概述(1)
  • 3. 像素RNN和像素CNN(1)
  • 4. 自动编码机、变分自动编码机(2)
  • 5. 生成对抗网络(3)
  • Lecture07/li>
  • (自学)
  • Week14-2
  • Week15
  • Week16-1
  • 深度强化模型(0课时) [Notebook]
  • 1. 强化学习模型简介
  • 2. 强化学习分类
  • 3. 深度强化学习
  • 4. 深度Q网络
  • 5. 强化学习的应用
  • 6. AlphaGo和AlphaZero
  • Exams
  • Week16-2
  • 《深度学习》期末测验(在线)(2课时)
    • Lecture08
    • Week6
    • Week7
    • 计算机视觉概述(6课时) [Notebook]
    • 1. 计算机视觉概述(1)
    • 2. 计算机视觉简史(3)
    • 3. 基于深度学习的视频内容理解(1)
    • 4. 面向海量视频的视觉计算与识别(1)
    • Lecture09
    • Week6
    • Week7
    • 基于深度学习的目标检测(30课时) [Notebook]
    • 1. 目标检测概述(2)
    • 2. 传统目标检测
    • 3. 目标检测关键技术(Anchor,FPN,NMS)(1)
    • 4. PaddleDetection简介(1)
    • 5. [项目11] PaddleDetection实践(路标识别)(2) [Notebook]
    • 6. 基于两阶段方法的目标检测(R-CNN,SPP-Net,Fast-RCNN,
      Faster-RCNN,FPN,Cascade R-CNN,Libra R-CNN)(6)
    • 7. [项目12] 基于R-CNN系列模型的PCB电路板故障检测 (4) [Notebook]
    • 8. 基于单阶段方法的目标检测(YOLOv1-v3,SSD,RetinaNet,PP-YOLO)(4)
    • 9. 基于Anchor-Free的目标检测(CornerNet,FCOS,CenterNet,TTFNet)(4)
    • 10. [项目13] 基于R-CNN系列模型的PCB电路板故障检测 (4) [Notebook]
    • 11. Beyond 2D目标检测(1)
    • 12. Pascal VOC和MSCOCO数据集简介(1) [Notebook]
    • Competitions
    • [竞赛02] 目标检测综合竞赛(Pascal VOC2007 目标检测数据集) [Baseline]
    • Lecture10
    • Week6
    • Week7
    • 基于深度学习的图像分割(30课时) [Notebook]
    • 1. 图像分割概述(1)
    • 2. 图像分割的关键技术和评价指标(3)
    • 3. 经典图像分割模型——FCN全卷积网路(2)
    • 4. 经典图像分割模型——U-Net/PSPNet(2)
    • 5. 经典图像分割模型——DeepLab系列分割模型(4)
    • 6. [项目14] 华录杯·车道线检测解析(6) [Notebook]
    • 7. 图卷积网络(2)
    • 8. 全景分割(4)
    • 9. [项目15] Scene15场景解析(6) [Notebook]
    • Lecture11
    • Week6
    • Week7
    • 其他经典图像分析任务(28课时) [Notebook]
    • 1. 图像检索
    • 2. [项目16] 电商图片检索(6) [Notebook]
    • 3. 目标跟踪
    • 4. 风格迁移
    • 5. 其他经典图像分析任务:细粒度识别、文字检测与识别
      标题生成、超分辨率、医学图像分析
    • Lecture12
    • (自学)
    • Week14-2
    • Week15
    • Week16-1
    • 深度学习工程应用(0课时) [Notebook]
    • 1. 视觉应用场景与部署
    • 2. 嵌入式系统开发及应用
    • 3. 垂直领域工程应用开发
    • Exams
    • Week16-2
  • 《计算机视觉》期末测验(在线)(2课时)
  • 实训进度计划表

    Event Type Date Description Course Materials
    • 项目一:VGGNet的设计与实现
    • Day01
    • 【实训目的】
    • 1. 进一步理解模块化编程的内涵
    • 2. 学会按照论文和其他资料对VGG模型的描述设计VGGNet
    • 3. 学会将VGGNet写出卷积组(Conv Block)的形式
    • 【实训任务】
    • 1. 完成VGGNet的设计与实现
    • 项目二:ResNet模型的设计与实现
    • Day02
    • 【实训目的】
    • 1. 进一步理解模块化编程的内涵
    • 2. 学会按照论文和其他资料对ResNet模型的描述设计ResNet
    • 3. 学会将ResNet写成残差网络的堆叠形式
    • 【实训任务】
    • 1. 完成ResNet的设计与实现
    • 总项目:使用卷积神经网络完成目标的识别
    • Day03-Day06
    • 【实训目的】
    • 1. 学会完整的基于卷积神经网络模型设计和代码编写
    • 2. 学会选择合适的有用项目进行开始工作
    • 3. 学会团队合作
    • 【实训任务】题目自拟
    • 【任务要求】
    • 1. 完成形式:小组
    • 2. 以小组形式完成实训任务,但以个人为单位完成实训报告,要求注明自己的主要工作。
    • 3. 要求每个小组3-5人,且每个小组至少一名男生,至少一名女生。组队要求强弱搭配,注意合理分配工作。
    • 4. 请工作量最少的同学完成最后的实训答辩。
    • 5. 尽量选择一个具有现实意义的任务,并且能将该任务持续和延申下去,为毕业设计和大学生竞赛做好准备。
    • 6. 数据来源:百度AIStudio、百度搜索引擎、Kaggle、阿里天池等