时间序列 计量—记者爆料,真相揭秘

2020年9月25日,在由中国科学技术协会主办、清华大学计算机系、人工智能学院承办的“2020中国科技峰会系列青年科学家沙龙——人工智能学术生态与产业创新”上时代周刊,人工智能,大学计算机科学系,系主任、副教授浙江杨阳发表了题为“Time2Graph从图角度进行时间序列建模”的主题论文。获得博士学位,师从唐杰教授和李娟子教授,主要研究方向为大规模社交和信息网络的序列挖掘。


图1Time2Graph从图形角度进行时间序列建模。


时间序列数据分析广泛应用于科学研究和生产生活中,而最近兴起的图学习因其强大的建模和表示能力,能够有效捕捉时间序列片段之间的相互作用,正在科学领域逐渐兴起。时间序列分析。在本次演讲中,浙江大学计算机系杨阳副教授从图学习的角度介绍了其课题组在时间序列建模——Time2Graph方面的最新研究进展。该方法可以不断提高模型的可解释性。


图2时间序列数据


时间序列数据在我们的日常生活中有着非常广泛的应用。例如,在金融领域,时间序列可以用来解释股价格变动。基于这些数据,您可以对股进行建模,使用分类运算来预测股的涨跌,并使用回归运算来准确预测特定股明天的价格。除了金融领域之外,时间序列建模在交通、医学、物联网,甚至军事领域也有广泛的应用。目前,在一些实际任务中,现有的时间序列模型已经可以达到非常高的精度。


图3挑战——缺乏可解释性。


然而,现有的时间序列模型仍然缺乏一定的可解释性。从图3中可以看出,杨阳教授的研究团队与深圳第二外国语医院的合作项目,利用人体立体定向脑电数据来检测癫痫波,图3中突出显示的部分是深度学习。出现癫痫波。然而,尽管获得了模型的检测结果,但很难推断出模型为何认为该区域存在癫痫波以及推理过程。


图4时间序列“基因”


那么什么是满足人们需求的“可解释性”呢?图4展示了N个用户的手机流量变化过程,但人类很难发现这个数据意味着什么。然而,通过信号处理、模式识别等技术手段,我们可以看到这些数据背后隐藏着三种不同的模式,每种模式都对应着用户的行为。例如图4中的蓝色模型描述的是来自手机的流量数据,变化趋势比较稳定。这背后的物理意义是,用户正在用手机聊天,这个过程中手机流量并没有明显的变化。相对而言,模式下的信号波动非常大。这可能意味着用户正在浏览某个网站,实时流量的大小与各种网页内容所需的流量成正比。红色模式下,手机实时流量较高,因为您正在观看电影或视频。我们可以看到不同的用户操作对应不同的信号模式。我们将这些特定片段的分布称为时间序列数据的进化“基因”。这类似于不同肤色的基因如何产生不同的外观特征。同样,不同的时间序列进化基因产生的时间序列数据的特征也不同。因此,如果我们能够找到这些短暂的“基因”,并将这些“基因”与特定的行为联系起来,我们就可以赋予它们物理意义上的可解释性。


如何量化时间序列数据中的“基因”?


图5如何量化时间“基因”


为了寻找时间序列数据背后隐藏的“基因”,传统上我们使用隐马尔可夫模型来挖掘时间序列数据周期背后的各种分布,并可以使用潜在变量来表示各种“基因”。进入深度学习时代,研究人员尝试使用循环拉伸网络或其变体来学习潜在表示。此类方法可以获得较高的准确度,但可解释性也较差。在实践中,基于RNN模型很难挖掘出具有强物理意义的分布。


这里我们将重点讨论如何基于Shapelet构建时间序列“基因”。简单地说,Shapelets代表了具有高度代表性的子序列,具有很强的可解释性和明确的物理意义。正如您在图5中看到的,相同的Shapelet出现在两个时间序列数据中。


图6查找Shapelet相关任务


在我们之前的工作中,我们首先找到几个候选Shapelet,并计算每个候选Shapelet与时间序列样本之间的距离。我们希望得到的shapelet与所有正样本之间的距离和负样本之间的距离之差尽可能大。基于这个思想,可以使用各种方法来测量Shapelet与时间序列样本之间的距离,例如时间序列之间的欧氏距离、动态时间扭曲距离等。


图7动态Shapelet


传统的基于Shapelet的操作仍然存在一些缺点。例如,杨阳博士团队与国家电网合作进行的一项研究中,他们利用家庭365天的用电数据来判断是否发生了窃电行为。如图7所示,红色部分代表信号段或Shapelet,模型认为其中发生了窃电。这段视频显示,用户的功耗非常低,而且非常稳定。不过我们可以看到,也有Shapelet在其他时期的功耗非常低且相对稳定。为什么模型认为Shapelet的前一部分代表异常的窃电模式,而Shapelet的后一部分则被认为是正常的?


一个可能的原因是Shapelet的迁徙期对应每年1月份左右,此时空调、取暖器等取暖电器应该会消耗更多的电量。相对较低的值通常是一种异常现象。不过,在春季,这样的低功耗相对更合理。因此,同一个Shapelet在不同时间出现可能代表不同的含义,因此我们需要量化不同时间Shapelet的表达能力。


图8Shapelet演变


另外,Shapelet会随着时间的推移而演化,描述Shapelet的演化过程也是表征时间序列数据的有效方法。然而,在实际应用中,时间序列数据的每个子序列可能对应多个Shapelet。这意味着这个子序列和几个Shapelet之间的距离非常近,导致很难准确判断哪个候选Shapelet最相似。


您还可以考虑两个子序列假设第一个子序列非常接近3个Shapelet,第二个子序列也非常接近3个Shapelet,那么这6个Shapelet之间有33=9种不同的组合。时间跨度较长的时间序列包含许多子序列,如果每个子序列对应多个Shapelet,则枚举这些不同Shapelet的组合序列可能会非常低效。于是杨阳博士团队考虑通过图结构来捕捉Shapelet的演化过程。


Time2Graph框架详细说明


图***习与时间相关的shapelet。


为了解释Shapelet在不同时间点的重要性,杨阳博士团队提出了两个时间因素。首先,局部元素“w”被设计用来描述Shapelet中每个元素的重要性。例如,在时间跨度为1年的时间序列数据中,每个Shapelet的度为1个月,“w”代表每个月中每一天的重要性。我们还设计了一个全局元素“u”来说明整个Shapelet部分在几个月内的重要性。我们需要学习权重“w”和“u”。


图10Shapelets演化图


为了表征Shapelet的动态演化,杨阳博士的团队构建了一个图表来描述Shapelet之间的传递过程。如图10所示,图中的每个节点代表一个Shapelet,当两个Shapelet在同一时间序列样本中连续出现时,一条边连接这两个Shapelet,边的权重表示这两个Shapelet同时出现。可能性。


图11Time2Graph框架图


首先,我们将输入时间序列数据分成几个子序列。对于每个子序列,我们找到几个与其他子序列最相似的Shapelet。当我们考虑Shapelet的每个部分时,我们可以获得有关其形状及其在不同时间点的重要性的信息。具体来说,我们从样本中学习以获得一个矩阵,该矩阵显示不同时间点的shapelet的重要性。我们利用上述数据构建了Shapelet演化图,并用它来说明Shapelet之间的传输关系。此Shapelet演化图允许您将原始时间序列的样本表示为图中的多个路径。例如,在图11a所示的时间序列数据中,后半部分对应Shapelet“90,67,85”的传输过程,可以表示为图10c中的路径。该路径代表正常情况,显示正常Shapelet的过渡。路径的边权重比较大。“90,67,85”的Shapelet序列在时间序列数据样本中频繁出现。对于一些不寻常的子序列,用户的窃电行为对应的Shapelet传输编号为“85,72,7”,而这个Shapelet序列很少出现在正常用户的时间序列数据中。因此,在Shapelet演化图中,异常子序列对应的路径基本上不存在或者具有很小的边权重。该模型使我们能够区分正常样本和异常样本。


图12Time2Graph的应用方式


图表示学习方法也可以用于学习Shapelet演化图中每个Shapelet节点的表示。假设我们通过训练得到了Shapelet“v”的表示,对于一个时间序列样本,将乘以对应的时间序列数据与Shapelet之间的距离p,得到整个时间的向量表示系列。这样,我们就可以将输入外部分类器来完成各种下游任务。


对比实验


图13实验数据集


为了验证Time2Graph的性能,杨阳博士团队在五个不同的数据集上进行了实验。前三个数据集是从UCR获得的公开时间序列数据集。“ECR”数据集是杨阳博士团队与国家电网合作收集的用户一年多的用电数据,用于判断该用户是否存在窃电行为。“NTF”数据集是杨阳博士团队与中国电信合作采集的数据集,利用电信的服务器流量数据来判断特定服务器端口是否异常。


图14基线比较


在实验中,杨阳博士的团队将Time2Graph及其变体与传统时间序列模型、基于Shapelets的模型以及常见深度学习模型等基线模型的性能进行了比较。其中,在“Shapelet-Seq”模型中,我们


看完本文,相信各位应该对时间序列 计量和时间序列 支持向量机的具体内容有所了解了吧,欢迎诸位网友持续关注本站。

除非特别注明,本站所有文字均为原创文章,作者:admin

No Comment

留言

电子邮件地址不会被公开。 必填项已用*标注

感谢你的留言。。。