第一周 循环序列模型(Recurrent Neural Networks)
1.1 为什么选择序列模型?(Why Sequence Models?)
1.2 数学符号(Notation)
1.3 循环神经网络模型(Recurrent Neural Network Model)
1.4 通过时间的反向传播(Backpropagation through time)
1.5 不同类型的循环神经网络(Different types of RNNs)
1.6 语言模型和序列生成(Language model and sequence generation)
1.7 对新序列采样(Sampling novel sequences)
1.8 循环神经网络的梯度消失(Vanishing gradients with RNNs)
1.9 GRU单元(Gated Recurrent Unit(GRU))
1.10 长短期记忆(LSTM(long short term memory)unit)
1.11 双向循环神经网络(Bidirectional RNN)
1.12 深层循环神经网络(Deep RNNs)

1.1 为什么选择序列模型?(Why Sequence Models?)

在本课程中你将学会序列模型,它是深度学习中最令人激动的内容之一。循环神经网络(RNN)之类的模型在语音识别、自然语言处理和其他领域中引起变革。在本节课中,你将学会如何自行创建这些模型。我们先看一些例子,这些例子都有效使用了序列模型。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.2 数学符号(Notation)

本节先从定义符号开始一步步构建序列模型。

比如说你想要建立一个序列模型,它的输入语句是这样的:“Harry Potter and Herminoe Granger invented a new spell.”,(这些人名都是出自于J.K.Rowling笔下的系列小说Harry Potter)。假如你想要建立一个能够自动识别句中人名位置的序列模型,那么这就是一个命名实体识别问题,这常用于搜索引擎,比如说索引过去24小时内所有新闻报道提及的人名,用这种方式就能够恰当地进行索引。命名实体识别系统可以用来查找不同类型的文本中的人名、公司名、时间、地点、国家名和货币名等等。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.3 循环神经网络模型(Recurrent Neural Network Model)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.4 通过时间的反向传播(Backpropagation through time)

之前我们已经学过了循环神经网络的基础结构,在本节视频中我们将来了解反向传播是怎样在循环神经网络中运行的。和之前一样,当你在编程框架中实现循环神经网络时,编程框架通常会自动处理反向传播。但我认为,在循环神经网络中,对反向传播的运行有一个粗略的认识还是非常有用的,让我们来一探究竟。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.5 不同类型的循环神经网络(Different types of RNNs)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.6 语言模型和序列生成(Language model and sequence generation)

在自然语言处理中,构建语言模型是最基础的也是最重要的工作之一,并且能用RNN很好地实现。在本视频中,你将学习用RNN构建一个语言模型,在本周结束的时候,还会有一个很有趣的编程练习,你能在练习中构建一个语言模型,并用它来生成莎士比亚文风的文本或其他类型文本。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.7 对新序列采样(Sampling novel sequences)

在你训练一个序列模型之后,要想了解到这个模型学到了什么,一种非正式的方法就是进行一次新序列采样,来看看到底应该怎么做。记住一个序列模型模拟了任意特定单词序列的概率,我们要做的就是对这些概率分布进行采样来生成一个新的单词序列。下图编号1所示的网络已经被上方所展示的结构训练训练过了,而为了进行采样(下图编号2所示的网络),你要做一些截然不同的事情。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.8 循环神经网络的梯度消失(Vanishing gradients with RNNs)

你已经了解了RNN时如何工作的了,并且知道如何应用到具体问题上,比如命名实体识别,比如语言模型,你也看到了怎么把反向传播用于RNN。其实,基本的RNN算法还有一个很大的问题,就是梯度消失的问题。这节课我们会讨论,在下几节课我们会讨论一些方法用来解决这个问题。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.9 GRU单元(Gated Recurrent Unit(GRU))

你已经了解了基础的RNN模型的运行机制,在本节视频中你将会学习门控循环单元,它改变了RNN的隐藏层,使其可以更好地捕捉深层连接,并改善了梯度消失问题,让我们看一看。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.10 长短期记忆(LSTM(long short term memory)unit)

在上一个视频中你已经学了GRU(门控循环单元)。它能够让你可以在序列中学习非常深的连接。其他类型的单元也可以让你做到这个,比如LSTM即长短时记忆网络,甚至比GRU更加有效,让我们看看。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.11 双向循环神经网络(Bidirectional RNN

现在,你已经了解了大部分RNN模型的关键的构件,还有两个方法可以让你构建更好的模型,其中之一就是双向RNN模型,这个模型可以让你在序列的某点处不仅可以获取之前的信息,还可以获取未来的信息,我们会在这个视频里讲解。第二个就是深层的RNN,我们会在下个视频里见到,现在先从双向RNN开始吧。

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

1.12 深层循环神经网络(Deep RNNs)

目前你学到的不同RNN的版本,每一个都可以独当一面。但是要学习非常复杂的函数,通常我们会把RNN的多个层堆叠在一起构建更深的模型。这节视频里我们会学到如何构建这些更深的RNN

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

第五门课 序列模型(循环序列模型1)

相关文章: