本课程涉及深度学习和表示学习的最新技术,重点包括监督式深度学习和无监督深度学习、(词)嵌入、度量学习、卷积和递归网络,以及在计算机视觉、自然语言理解和语音识别方面的应用。先修课程包括:DS-GA 1001 数据科学入门 或一门研究生级别的机器学习课程。
目录内容:
第一周
- 讲座 A 部分:关于深度学习背后动力的讨论。我们从深度学习的历史和想法开始谈起,之后讨论模式识别的历史,以及梯度下降和其反向传播计算。最后,我们会讨论视皮质的层级结构。
- 讲座 B 部分:我们首先会讨论从福岛邦彦到 LeCun 再到 AlexNet 过程中卷积神经网络 (CNN) 的演变。之后我们会讨论 CNN 的实际应用,例如图像分割、自动驾驶和医学影像分析。我们还会讨论深度网络的层级性质和使其具有优势的特性。最后,我们会讨论特征/表现的生成和学习。
- 动手做:我们会讨论将数据点在空间中可视化的动机。我们还会谈到以及线性代数以及线性变换和非线性变换的应用。我们会讨论利用可视化来更好的理解函数及其变换效果。之后我们会在 Jupyter Notebook 中贯穿示例,最后会讨论以神经网络为代表的函数。
第二周
- 讲座 A 部分:我们从理解什么是参数化的模型开始,然后讨论什么是损失函数。之后我们会涉及基于梯度的方法以及这些方法是如何被应用到传统神经网络中的反向传播算法中。最后,我们会学习如何使用PyTorch实现一个神经网络以及讨论一种反向传播的更广义的形式。
- 讲座 B 部分:我们从一个反向传播的具体例子开始,进而讨论Jacobian矩阵的维度。然后,我们会着眼于多种基础神经网络模块并计算它们的梯度,之后对softmax和logsoftmax进行简短的讨论。最后会在这个部分学习一些反向传播的实用技巧。
- 动手做:我们给出了使用(人工)神经网络进行监督学习的简介,阐述相关问题的形成以及训练这些网络所用的经典数据。我们也讨论了如何训练一个神经网络来解决多分类问题,以及在该网络训练好之后如何使用它进行推断
第三周
- 讲座A部分:首先,我们会看到一个6层神经网络的可视化。接着,我们将开始卷积和卷积神经网络(CNN)的主题。我们先回顾了CNN中几种类型的参数变换,引入了卷积核的想法,将其用于以层次化的方式学习特征,进而将输入数据进行分类,以上正是CNN的基本思想。
- 讲座B部分:我们将介绍CNN的演变。我们通过举例MNIST上的手写数字识别任务,使用LeNet5的现代实现对CNN架构进行细致的讨论。基于CNN的设计原理,我们讲述了CNN的优势:充分探索了自然图像的组合性、稳定性、局域性特征。
- 动手做:我们对使用人工神经网络进行监督学习给出简单介绍。我们详细讲述了问题定义和用于训练网络的数据规约。我们还讨论了如何为多分类任务训练一个神经网络,并在网络训练完成后如何进行推断。
第四周
- 动手做:我们首先对线性代数做一个简要回顾,然后利用音频数据作为例子将讨论扩展到卷积这个主题。如局部性、平稳性、Toeplitz矩阵这样的关键概念将会被不断重复。接着我们会给出一个基音分析中卷积性能的现场演示。最后,我们简单讨论一下不同数据的维度问题
第五周
-
讲座A部分:我们以介绍梯度下降算法开始。我们将讨论它的目的以及讨论步长大小在获得解答中所起到的重要作用。然后我们将继续介绍随机梯度下降算法以及它和全批次梯度下降算法比较下的表现。最后我们将讨论动量更新,明确使用动量背后的两条更新规则和目的,以及它对收敛的影响
-
讲座B部分:我们将讨论适用于随机梯度下降的方法,比如RMSprop优化算法和ADAM优化算法。我们也会讨论归一化层和它们在神经网络训练进程中的作用。最后,我们将讨论一个神经网络在工业中使核磁共振扫描更快和更有效的例子。
-
动手做:我们将简单复习一下矩阵乘法然后讨论卷积。我们使用卷积核的关键是通过堆叠和滑动。我们先通过手写推导理解一维卷积,然后使用PyTorch学习卷积核的维度以及一维和二维卷积例子中的输出宽度。更多地,我们使用PyTorch学习自动梯度和自定义梯度是如何运作的。
第六周
- 讲座A部分:我们讨论过卷积神经网络的三个应用。我们从数字识别开始,然后到5位邮政编码识别。在「物体识别」中,我们讨论了如何在面部检测设置中使用多尺度体系结构。最后,我们看到卷积网也在机械人视觉系统和在城市环境中的「图像语义分割」中,這些也作为其中之一的具体例子中实际用到。
- 讲座B:我们研究了各种递归归零神经网络,它们的问题,以及改善这些问题的常用方法。然后,我们回顾了各种不同的模組,它們都是开发来解决递归归零神经网络(RNN)模型的问题。包括注意模組(Attention),门控循环单元(Gated Recurrent Unit或简称GRU),长短期记忆(Long Short-Term Memory或简称LSTMs )和序列对序列(Seq2Seq)。
- 实习:我们讨论了简单基本版递归神经网络(RNN)和长短期记忆(LSTM)的模型结构,并比较了两者之间的性能。长短期记忆网路继承了递归神经网络的优点,同时改善了递归神经网络弱点,它的方法就是用记忆单元将信息长时间存储在记忆中。所以 长短期记忆网路显著地优于递归神经网络