TapNet: Multivariate Time Series Classification with Attentional Prototypical Network

一种半监督的MTSC方法

Abstract

多变量时间序列分类(MTSC)问题是时间序列数据挖掘领域中最重要的问题之一,近几十年来受到了大量关注。传统的基于bag of patterns 和 time series shapelets的时间序列分类方法在训练集较小的情况下表现出色,但在处理高维多变量数据中生成的大量特征候选项时存在困难。本文中提出的MTSC模型,采用注意力原型网络,充分利用了传统和基于深度学习的方法的优势。具体来说,这里设计了一种随机分组置换方法,结合多层卷积神经网络,从多变量时间序列数据中学习低维特征。为了解决训练标签有限的问题,注意力原型网络基于其与不足数据标签的类别原型的距离来训练特征表示。此外还通过利用未标记数据将模型扩展到半监督设置中。在公开的多变量时间序列UEA中的18个数据集上与八种最先进的基准方法进行了大量实验比较,证明了本文所提出的模型的有效性。

1 Introduction

多变量时间序列是由传感器在一段时间内记录的一组共同演变的时间序列。大多数现有的通用时间序列分类方法,例如bag of patterns或time series shapelet,都需要一个解析步骤将时间序列转换为一组广泛的子序列或模式作为候选特征,它们通常会生成很大的特征空间,并且需要大量时间序列数据中的领域知识。基于深度学习的方法可以通过卷积或循环网络直接从原始时间序列数据中学习低维特征表示,完美地解决了特征空间巨大的问题。而且基于神经网络的解决方案在时间序列数据中比传统方法需要的领域知识更少。但这些方法受到训练标签的限制。训练数据标签有限的问题可以通过基于距离的时间序列分类方法实现比如DTW-1NN。

本文提出的时间序列注意力原型网络(TapNet)结合了传统方法和深度学习方法的优点,能够在领域知识很少的情况下从多元时间序列中提取低维特征,并解决标记数据的短缺问题。

  1. random group permutation:将时间序列的维度重构为多个组,然后输入给卷积层来处理,能高效的从时间序列中学习潜在特征。
  2. attentional prototype network:根据时间序列与使用一小部分标记样本学习到的类别原型的距离,为每个时间序列训练一个低维特征表示。由于训练过程是基于距离的,所以能解决少标签训练样本的问题。

2 Problem Formulation

2.1 Multivariate Time Series Classification

多变量时间序列表示为X = {x1,..., xm}∈Rm×l,其中xi =(xi1,...,xil),l是时间序列的长度,m是多变量维度的数量。每个多变量时间序列都与一个预定义的标签集合 Ω 中的一个类标签 y ∈ Ω 相关联。MTSC 的任务是训练一个分类器 f: X → y,用于预测一个标签未知的多变量时间序列的类标签。

2.2 Semi-supervised Multivariate Time Series Classification

在训练过程中利用未标记的数据来帮助提高整体的分类性能,数据集由有标签和没有标签的两部分数据组成。带标签的那部分数据结构和MTSC问题一致,无标签的数据只包含时间序列而没有特征标签。SMTSC的 任务是训练一个分类器 f˜X → y,用于预测一个多变量时间序列的类标签,不仅包括带标签的训练数据样本(X,y),还包括未标记的数据样本˜X。

3 Proposed Model

模型整体架构如图,由三部分组成。随机维度排列RDP将维度随机组合成具有固定组大小的不同组、多变量时间序列编码学习低维时间序列嵌入、注意力原型学习模块为每个类别学习一个原型。

3.1 RDP

假定有m个维度的时间序列,要将其分成g组,每组有φ个维度,有φ=\left \lfloor \frac{m*\alpha }{g} \right \rfloor,α是用来控制新排列中的总尺寸与原始尺寸的比例的参数。

定义一个随机排列函数σm,运行g次得到g组排列。定义表示第i组的候选排列:

如图1中将六个维度的时间序列分为3组,分别是{(4,5,2),(1,2,6),(3,6,4)},受α的控制,有三个维度在不同的组中重复出现。

3.2 Multivariate Time Series Encoding

为了能够提取MTS数据中的顺序信息和多元特征,应用了长短期记忆网络LSTM和多层卷积网络。LSTM对原始数据X\in R^{m*l}执行操作得到上下文嵌入X_{lstm}\in R^{m*d_{l}}d_{l}是LSTM的隐藏为维度默认128,通过全局平均池化得到X_{lstm+pool}\in R^{1*d_{l}}

重构后的每组都要通过三个一维卷积网络,每经过一次一维卷积都要执行批量归一化+RELU操作。我们对第一个卷积层使用单独的参数,但对第二和第三层共享参数,这有助于为每个组学习独立的特征,同时减小最后两层的参数数量。将三个卷积层的滤波器的默认值设置为256、256和128,并将内核设置为8、5和3。对于长度极长的时间序列,我们还应用扩张卷积操作以支持感受野的指数扩展,而不会丢失长时间序列信息。最后第i组的输出是X_{conv}^{i}\in{R^{d_{f}*d_{c}}}d_{f}是最后一层卷积滤波器的大小,d_{c}是卷积操作的输出维度。每组在维度d_{c}上全局平均池化得到X_{conv+pool}^{i}\in{R^{d_{f}*1}}

将LSTM的结果和卷积网络的结果连接在一起,得到输出X_{combo}\in{R^{(d_{f}*g+d_{l})*1}},最后对其操作两个全连接层,以生成多变量时间序列 x ∈ R^{d}的低维特征表示(嵌入),其中 d 是嵌入的维度。

3.3 Attentional Prototype Learning

针对样本标签有限的问题,通过训练基于距离的损失函数提出了一种新的注意力原型学习方法。确切来说,为每个类别学习一个原型嵌入并基于输入事件序列与该原型的距离来判断它的类别标签。H_{k}=[h_{1},...,h_{s_{k}}]\in R^{s_{k}*d}S_{k}表示数据样本中类别k所在位置的索引,那么 k 类的原型嵌入可以通过各个样本嵌入的加权和来表示,如下所示:

其中 A_{k,i}是 k 类中第 i 个数据样本的权重,H_{k,i}表示数据样本的嵌入。

这里的样本权重A_{k,i}是根据时间序列的嵌入值来训练的值。特别地,我们将同一类别的时间序列样本视为独立实例的集合。对于每个实例,我们采用了基于注意力的多实例池化方法来学习其对类别原型的实例权重。(基于注意力的多实例池化方法:每个样本都可以由多个实例组成,注意力机制允许模型在池化过程中动态地分配不同的权重给每个实例,使得重要的实例能够获得更高的权重,而不重要的实例则获得较低的权重。这样,池化结果将更加关注重要的实例,从而更好地捕获了数据的特征),第k个类别的注意力权重通过一下方法得出:

其中,\omega _{k}\in R^{U*1}V _{k}\in R^{U*d} 是注意力模型的可训练参数,u 是隐藏层维度的大小,对于两个可训练参数都是一样的。请注意,我们为每个类别使用单独的参数 wk 和 Vk,这是因为我们假设不同类别可能在其特征空间上具有不同的注意力。

在我们获得了类别原型的嵌入向量之后,对于给定的时间序列 x ∈ Rd,其在类别上的分布可以表示为嵌入空间中到原型的距离的 softmax 形式,如下所示:

其中函数 D 是测量两个嵌入向量之间距离的距离函数,可以从正则化的 Bregman 散度中选择。本文使用欧式平方距离,类别上的概率基于类别原型和时间序列之间的相似性;因此,在距离函数前面乘以了-1从而使得距离越大的情况下相似度越低,距离越小的情况下相似度越高。然后,我们的模型训练可以通过最小化真实类别的负对数概率 J(Θ) = -log pΘ(y = k|x) 来进行。

3.4 Semi- supervised TapNet

无标签的数据可以帮助在训练数据稀缺的情况下改善对类别原型的估计。

H\tilde{}_{k}=[h\tilde{}_{1},...,h\tilde{}_{|s\tilde{}|}]\in R^{|s\tilde{}_{}|*d}是未标记数据的时间序列嵌入矩阵,其中 ~S 是未标记数据样本的索引集,h~ i ∈R1×d 是未标记集中第 i 个数据样本的嵌入向量。那么 k 类的原型嵌入可以通过标记和未标记数据的加权和来表示,如下所示:

这里A\tilde{}_{k,i}的训练过程和3.3中一致。然后,我们将由未标记数据更新的类别原型应用到方程中,形成一个关于类别的概率分布,用于训练半监督模型。

4 Experiments

4.1 Classification Performance Evaluation

每个数据集的最佳准确率用粗体表示。总体而言,我们的方法在平均排名方面优于所有其他基准方法。TapNet实现了最佳的总体平均排名为1.15,明显优于现有的最先进方法WEASEL+MUSE,其平均排名为3.23。就胜负次数而言,TapNet取得了12次胜利(或并列),是所有八个分类器中最好的,而WEASEL+MUSE取得了4次胜利(或并列),深度学习模型MLSTM-FCN在一个数据集中获胜(或并列)。从结果中,我们发现TapNet在大部分包含少量数据的数据集(例如,只包含12个训练样本的StandWalkJump数据集)中可以获得更好的性能。然而,在高维数据集(例如,SpokenArabicDigits)中,MLSTM-FCN通常获得更好的整体性能。相比之下,TapNet可以在大型和小型数据集中都获得更好的性能。与WEASEL+MUSE相比,我们发现TapNet可以在大多数高维或大型时间序列中获得更好的性能,而WEASEL+MUSE可能无法执行,因为存在内存问题。这是因为WEASEL+MUSE需要为每个长度和维度的子序列生成符号(单词)。在高维时间序列中,字典大小可能会大幅增加,这使得该方法难以处理大型数据集。

4.2 Semi-Supervised Performance

我们在训练/测试划分明显不平衡的五个数据集上评估了模型的性能。结果如表 3 所示。在 5 个选定的数据集中,SemiTapNet 在 4 个数据集中优于 TapNet。只有一个数据集 StandWalkJump 没有显示任何改进。

Semi-TapNet在具有明显更多测试样本的数据集中可以获得更好的性能,与训练样本相比。例如,在Handwriting数据集中,该数据集有850个测试样本和150个训练样本,Semi-TapNet可以将分类准确率从0.3565提高到0.3882(约提高了9%),而在ArticularyWordRecognition和JapaneseVowels数据集中,这些数据集的训练/测试分割和样本数量相对较少,改进相对较小(分别从0.987提高到0.993和从0.965提高到0.968)。结果表明,当数据集包含有限量的标记数据但有更多的未标记数据时,Semi-TapNet可以胜过TapNet。

5 Conclusion

本文提出了一种新颖的基于距离的深度学习框架,名为TapNet,用于解决多变量时间序列分类问题。具体来说,我们提出了一种新颖的注意力原型网络,用于基于它们与类别原型的距离来训练低维特征表示,而这些特征受到了有限的训练标签的限制。此外,设计了一种随机组排列方法,用于学习与多层卷积网络结合的多变量维度中的交互特征。此外,我们提出了一种半监督模型,Semi-TapNet,以利用未标记数据来提高分类性能,特别是在训练样本稀缺时。实验结果表明,与八种最先进的方法相比,我们的模型在公共UEA存档中的测试数据集上实现了最高的平均排名。

  • 44
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值