TCN时序卷积网络详解

时序卷积网络

Temporal Convolutional Network时序卷积网络是为了结合卷积神经网络(CNNs)的优势(如更快的训练速度,更强的并行能力,适用于大规模数据处理等等)而提出的,改善RNN等网络计算性能不佳的问题。

TCN重点在于其卷积方式,主要为两种:因果卷积 和空洞卷积

因果卷积

由于在时序任务中,普通的卷积操作并不符合因果律,因为按道理来说不能访问到后面的数据,但是普通的卷积操作是可以的。

所以提出了因果卷积,确保符合因果律,也就是padding。通过在序列前方填0,避免读取到后方的数据。

比如说:

复制代码
[1,2,3,4,5] # 初始数据
# 现在要做卷积核大小为3的卷积操作,为符合因果律,进行padding
[0,0,1,2,3,4,5] # padding后数据,这样就ok了

注意: p a d d i n g = ( k e r n e l s i z e − 1 ) × d i l a t i o n padding=(kernelsize-1)\times dilation padding=(kernelsize−1)×dilation

空洞卷积

空洞卷积(dilated convolution),又称膨胀卷积。

空洞是因为空洞卷积后的特征图中存在空隙,不再是连续的矩形空间。膨胀来源于膨胀因子,膨胀因子可以控制卷积核采样间隔。

空洞卷积通过在卷积核中引入空洞(0)来增加感受野,使模型能够捕捉到更长范围内的依赖关系,而不需要增加网络的深度。在时序任务中,使用空洞卷积可以提取更长距离的时序依赖关系。

感受野:

也就是特征图一个点可以看到多少原始数据,感受野越大则说明看到的信息越多。比如说一个 3 × 3 3\times3 3×3卷积核,那特征图上每个点可以看到9个原始数据

扩张后的等效卷积核大小 k ′ = k + ( k − 1 ) × ( r − 1 ) k' = k + (k - 1)\times (r - 1) k′=k+(k−1)×(r−1)(r=膨胀因子)

比如说:

复制代码
[1,2,3,4,5]
[2,3,4,5,6]
[3,4,5,6,7] # 初始数据
# 现在要做2*2卷积核,r=2的空洞卷积操作
# k'=3
# 也就是说现在读到的数据是
[1,2,3]
[2,3,4]
[3,4,5]
而非
[1,2]
[2,3]
卷积核为
[1,0,1]
[0,0,0]
[1,0,1]
而非
[1,1]
[1,1]

注意:空洞卷积是通过卷积后填充实现的,所需的参数量于普通卷积相同,输出的特征图大小与普通卷积相同

gridding问题

空洞卷积存在gridding问题。因为空洞卷积得到的某一层的结果中,邻近的像素是从相互独立的子集中卷积得到的,相互之间缺少依赖,会导致局部信息丢失等等问题。

相关推荐
2601_95873699几秒前
教师课件能不能做虚拟产品?一个被低估的方向
网络
m4Rk_8 分钟前
【论文阅读】Agent记忆机制(112):MemFit——保留对话原文,用多路检索降低长期记忆成本
论文阅读·人工智能·学习·开源·github
AI日报派送佬8 分钟前
2026年10月21日AI行业日报|DeepSeek开源推理框架DeepInfer,谷歌TorchTPU开源破局TPU生态
人工智能·开源·openai·谷歌·英伟达·deepseek·ai日报
CAIE研习社9 分钟前
CAIE一级有学历和专业门槛吗?报考条件、考试内容与适合人群解析
大数据·人工智能
强哥聊算力13 分钟前
《算力江湖·DeepSeek》第四集:DeepSeek如何改变中国算力的采购逻辑?
大数据·运维·人工智能·ai·gpu算力
小雷信息医学18 分钟前
MedCortex:告别逐个试变量
人工智能
yh弓长25 分钟前
机器学习的四种范式
人工智能
QC777LX28 分钟前
金融企业选证书:专业资格是门槛,AI认证是补充
人工智能
niucloud-admin29 分钟前
NIUCLOUD PHP SAAS上门家政使用文档
前端·人工智能·ai编程
fengyangaiGEO30 分钟前
如何通过GEO优化实现外贸B2B询盘增长?
人工智能·python