TCN时间卷积网络介绍

绪论

TCN, Temporal Convolutional Network,时间卷积网络,是一种能够处理时间序列数据的网络结构,论文还评为 2018年10大论文。

1. 模型

输入: x 0 , x 1 , . . . , x t {x_0, x_1,..., x_t} x0,x1,...,xt;
输出: y 0 , y 1 , . . . , y t {y_0, y_1,..., y_t} y0,y1,...,yt
根据输入序列,推断新的可能信息是什么,使用评判机制去评价预测效果的好坏,比如普通全连接层会使用MSE作为损失函数。
m i n    L ( y 0 , . . . , y t , f ( x 0 , . . . , x t ) ) min \;L(y_0,...,y_t, f(x_0,..., x_t)) minL(y0,...,yt,f(x0,...,xt))
下面来看看TCN的模型结构图
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

可以看出,TCN使用 空洞卷积核(dilated convolutions)来解决获取整个序列的全局信息,并且设置了 残差结构 Residual block。
1.1 空洞卷积核
空洞卷积核使用公式描述:
F ( s ) = ∑ i = 0 k − 1 f ( i ) ⋅ x s − d ⋅ i F(s) = \sum\limits^{k-1}_{i=0} {f(i) \cdot \mathbf x_{s - d \cdot i}} F(s)=i=0k1f(i)xsdi
1.2 残差连接
公式描述:
o = A c t i v a t i o n ( x + F ( x ) ) o = Activation(\rm x + \mathscr{F}(x)) o=Activation(x+F(x))

2.总结

网络结构特点:
1.并行性
由于CNN每一层使用相同的卷积核,因此一个长序列输入可以用TCN并行处理
2. 灵活的感受视野
比如改变卷积核的参数,容易控制模型的记忆大小;
3. 固定的梯度
4. 更小的内存训练
5. 可变的输入长度


个人感想,这个TCN还是不明白为什么这麽有效,难道使用空洞卷积核扩大模型对全局的视野吗。


参考:

  1. 论文详解 blog;
  2. 原论文;
  3. github model;

你可能感兴趣的:(深度学习,CV)