Modelling Series

In many situations one must consider a $\color{red}{series}$ of inputs to produce an output
– Outputs too may be a series
例如下面的几个例子
1、What Did I say?

2、what is he talking about?

3、Should i invest…

Representational shortcut

  • 在每一个时刻的输入是向量
  • 每一层有很多神经元(输出层也可能有很多的神经元)
  • 用一个简单的box来代替以上所有(每一个box实际上代表着有很多层的神经元)

如图所示

The stock predictor

  • The sliding predictor
    • Look at the last few days
    • This is just a convolutional neural net applied to series data

Also called a Time-Delay neural network

Finite-response model

如图所示这是一个输入是$\color{orange}{有限的}$问答系统(finite response system),今天发生的事情只是影响未来N天的输出。如图中的N为3,则$X(t+3)$的输入不能影响$Y(t+7)$的输出。其中N是系统中的宽度。
$$Y_t=f(X_t, X_t-1,…,X_{t-N})$$

上述描述只能依赖长度为N的历史信息,但是往往我们需要更长历史信息(Systems often have long-term
dependencies)

We want infinite memory

如图所示今天发生的事情可以持续的影响后面的输出(forever),可能只是对后面的影响越来越弱。
$$Y_t=f(X_t, X_t-1,…,X_{t-\infty})$$

针对这种问题,课程中老师讲到了RNN出现之前的几种网络。one-tap NARX networkJordan NetworkElman Networks想做了解可以看课程的slides。下面主要是讲解的RNN。

An alternate model for infinite response systems: the state-space model

模型的公式为
$$h_t=f(x_t, h_{t-1})$$ $$y_t=g(h_t)$$
$h_t$是网络的状态。模型直接把history信息存储在$h_t$状态信息中,需要定义初始的状态信息$h_{-1}$,状态中存储着过去所有的信息。如下图是一个简单的state-space的模型。

在每个时刻的状态信息(绿色的方块)是由当前时刻的输入和上一时刻的状态信息确定。在$t=0$时刻的输入可以一直影响到最后的时刻。又称为recurrent neural network,其中所有列的权重都是相同的。上图展示的是单个隐层的循环神经网络(Single hidden layer RNN),下图是多层的循环神经网络(Multiple recurrent layer RNN)

A Recurrent Neural Network

RNN模型图的简单表示方式

下面主要讲解的是三种不同RNN的数学表达
1、简单的一层的

2、两层的

3、跨连接的

如图所示初始的状态也可以是可以训练的网络参数的一部分。上述对RNN的具体的计算流程用了详细的数学表达。

Variants on recurrent nets