时间序列分类(TimeSeriesClassification,TSC)是时间序列分析中的关键任务之一。TSC旨在构建一个机器学习模型,用于预测连续有序的实值观测序列的类别标签。
InceptionTime是很优秀的时间序列分类集成深度卷积神经网络,2020年的论文,
Inceptiontime: Finding alexnet for time series classification
下面是两个公开的时间序列数据集,UCR是单变量时间序列数据集,UEA是多变量时间序列数据集
使用的模型有卷积神经网络,循环神经网络,注意力机制
卷积神经网络
1改进卷积网络
多通道深度卷积神经网络MC-DCNN是首个将CNN应用于时间序列分类的模型,全卷积网络FCN可以应用于单变量时间序列分类,resnet也可以,还可以把两者结合起来,这些网络都有对应的论文,以后我会单独出每篇论文的总结。
扩张卷积神经网络(Dilated Convolutions Neural Networks,DCNNs)是一种卷积神经网络的类型,它使用扩张卷积来增加网络的感受野,而不增加参数数量。扩张卷积在卷积核的元素之间创建间隔,并执行卷积操作,从而覆盖输入的更大区域
2时间序列图像化处理
在时间序列分类中,一种常见的方法是将时间序列数据转化为固定长度的表示,如向量或矩阵,然后输入到深度学习模型中。然而,对于长度变化或具有复杂时间依赖性的时间序列数据,这可能是具有挑战性的。解决这个问题的方法之一是将时间序列数据表示为类似图像的形式,其中每个时间步被视为图像中的一个单独通道。这使得模型能够学习数据内部的空间关系,而不仅仅是时序关系。这里的“空间”指的是时间序列在单个时间步中不同变量或特征之间的关系。
Encoding time series as images for visual inspection and classification using tiledconvolutional neural networks
3多尺度卷积
多尺度卷积神经网络(Multi-scale Convolutional Neural Networks, MCNN)和t-LeNet被认为是最早对输入时间序列进行预处理以在多尺度序列而不是原始序列上应用卷积的模型。MCNN和t-LeNet的设计受到计算机视觉模型的启发,由用于图像识别任务的模型改进而来。这些模型可能不适合于时间序列分类任务,或者可能表现不如专门为时间序列分类任务设计的模型。潜在原因是这些模型中使用了渐进式池化层,这些层通常用于计算机视觉模型,以减小输入数据的尺寸并使其更容易处理。然而,当应用于时间序列数据时,这些池化层可能不是有效的,并且可能限制模型的性能。
InceptionTime在UCR基准测试中达到最先进的性能。它是一个由5个相同结构的深度学习分类器组成的集成模型,每个分类器由两个级联的Inception模块组成。通过在每个模型中随机化初始权重值,实现了模型之间的多样性。每个Inception模块首先通过具有长度和步幅为1的瓶颈层来降低多变量时间序列的维度,同时保持相同的长度。然后,对瓶颈层的输出应用不同长度的1维卷积以提取不同尺寸的模式。同时,还对原始时间序列应用最大池化,以增加模型对小扰动的鲁棒性。卷积和最大池化层的输出被堆叠在一起,形成一个新的多变量时间序列,然后传递到下一层。在每个Inception块之间使用残差连接以减少梯度消失效应。第2个Inception块的输出经过GAP层后传入Softmax分类器。
循环神经网络
尽管循环神经网络通常用于时间序列预测,但在时间序列分类方面应用RNN的研究较少,主要有以下4个原因:
①RNN在长时间序列上训练时通常会遇到梯度消失和梯度爆炸的问题。这是因为RNN在长时间序列上的训练中,梯度可能会变得非常小或非常大,导致模型难以训练。
②由于训练和并行化困难,RNN的计算成本较高,因此研究人员很少使用它们。
③循环架构主要设计用于从先前的数据中学习,以便做出关于未来的预测。这使其不太适合直接用于时间序列分类问题。
④RNN模型可能无法有效地捕捉和利用长序列中的长程依赖关系。