TCN是指时间卷积网络,一种新型的可以用来解决时间序列预测的算法。在这一两年中已有多篇论文提出,但是普遍认为下篇论文是TCN的开端。
论文名称:
An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling
作者:Shaojie Bai 1 J. Zico Kolter 2 Vladlen Koltun 3
自从TCN提出后引起了巨大反响,有人认为
时间卷积网络(TCN)将取代RNN成为NLP或者时序预测领域的王者。
William Vorhies给出的原因如下:
RNN耗时太长,由于网络一次只读取、解析输入文本中的一个单词(或字符),深度神经网络必须等前一个单词处理完,才能进行下一个单词的处理。这意味着 RNN 不能像 CNN 那样进行大规模并行处理。
并且TCN的实际结果也要优于RNN算法。
所以本教程未来几次更新将集中介绍TCN的算法含义与代码解读。
2
什么是TCN?
TCN中涉及到了最简单的CNN和RNN,此处暂不赘述。还涉及到了一维卷积,扩张卷积,因果卷积,残差卷积的跳层连接等其他知识点。为了能够更准确的了解,我们将结合论文逐步介绍每个部分。
一维卷积
以下图为例:图中的输入的数据维度为8,过滤器的维度为5。那么卷积后输出的数据维度为8−5+1=4
如果过滤器数量为1,输入数据的channel数量变为,即输入数据维度为8×32。这里channel的概念相当于自然语言处理中的e