1. 引言
时间序列数据作为记录动态系统运行状态的核心数据类型,在金融风险预测、气象演变分析、医疗健康监测以及工业过程控制等关键领域发挥着不可替代的作用。这类数据通常由物理传感器阵列与数字化监测系统协同生成,呈现出高维特征空间、强时空关联性及动态演化特性。其复杂的数据结构既蕴含着系统运行的深层规律,也为传统分析方法带来了严峻挑战。
随着机器学习和深度学习技术的发展,传统的基于统计模型的时间序列分析方法(如ARIMA [1]、指数平滑等)逐渐暴露出其在处理复杂非线性关系和高维数据时的局限性。近年来,深度学习方法(如LSTM、GRU等)在时间序列预测和分类任务中取得了显著进展,但这些方法主要关注时间序列的时序特性,而忽略了变量之间的潜在结构关系。
图神经网络[2] (Graph Neural Networks, GNNs)的出现为时间序列分析提供了新的视角。GNNs通过将数据表示为图结构,能够显式地对时间和变量间的关系进行建模。这种能力使得GNNs在处理具有复杂结构关系的时间序列数据时具有独特的优势。例如在金融市场中,股票价格不仅受到自身历史价格的影响[3],还受到其他相关股票、市场情绪、宏观经济因素等多方面的影响。通过构建数据之间的关系图,GNNs可以更好地捕捉这些复杂的交互关系,从而提高预测和分类的准确性。
在过去几十年中,ARIMA模型被广泛应用于各种预测任务,成为线性时间序列预测的经典方法之一。然而,随着研究的深入以及数据复杂性的不断增加,线性方法逐渐暴露出其局限性,开始面临新的挑战。过去基于神经网络的时序预测方法大多采用循环神经网络[4] (recurrent neural network, RNN)或卷积神经网络(convolutional neural network, CNN)及其变体来学习历史数据中的潜在特征,它们具有较好的处理高维数据的能力,但存在计算成本较高、难以学习长期依赖关系的缺点。
近年来,图神经网络在时间序列分析领域取得了显著进展,尤其是在时间序列预测、分类任务中。Shahabi C [5]提出了基于扩散卷积的循环神经网络(Diffusion Convolutional Recurrent Neural Network, DCRNN),能够有效捕捉空间和时间依赖关系,该方法通过扩散卷积操作,将时间序列数据的时空特性融合到模型中,显著提高了预测精度。Goolaup S [6]等设计了时空图卷积网络(Spatio-Temporal Graph Convolutional Network, STGCN),可同时对图的空间和时间维度进行建模。STGCN通过引入图卷积操作,能够捕捉时间序列数据中的空间结构关系,从而提高预测性能。Long G [7]等结合了图卷积和扩张卷积(Graph WaveNet),可以建模长期依赖关系,通过扩张卷积操作,能够捕捉时间序列数据中的长期依赖关系,从而提高预测的准确性。
Graf F [8]等设计了一种层次变分图池化方法(Hierarchical Variational Graph Pooling, HVGP),可以学习多尺度的时间序列表示。通过层次化的图池化操作,能够捕捉时间序列数据中的多尺度结构特征,从而提高分类的准确性。Stal R Deng [9]提出了一种基于多重注意力的图引导网络(Graph-Guided Neural Network, GG-NN),可以处理不规则采样的多变量时间序列。通过引入多重注意力机制,能够动态调整不同节点和时间步之间的权重,从而提高模型对不规则采样数据的处理能力。
这一系列研究使图神经网络应用于时间序列分析方面取得了丰富的研究成果,特别是在模型设计和应用拓展方面,为不同领域处理时间序列模型提供了有效的解决方案。
本文提出了一种新颖的时间序列分类方法如图1,该方法首先通过引入余弦相似度和动态时间弯曲DTW计算方法,用于构建时间序列数据的相似度图,随后设计一种图网络特征增强算法用于提取复杂网络的拓扑结构,接着利用GCN对提取的特征做卷积并进行模型训练。本研究通过图卷积神经网络有效地提高时间序列数据的分类能力,并通过了模拟和实证实验部分,取得较好的结果。
Figure 1. Graph-based time series classification pipeline via graph convolutional networks
图1. 基于图卷积神经网络的时间序列算法流程
2. 相关工作
2.1. 相似度矩阵
余弦相似度(Cosine Similarity) [10]是一种通过计算向量夹角的余弦值来衡量两个向量在方向上相似度的度量方法。对时间序列数据,其中每个样本
包含
个时间步的观测值。则任意两个时间序列的余弦相似度可以表示为:
(1)
动态时间弯曲[11] (Dynamic Time Warping, DTW)是一种用于衡量两个时间序列之间相似性的方法。给定两个时间序列
和
,DTW的目标是找到一个对齐路径
,使得对齐后的序列之间距离最小。对齐路径
是一个长度为
的序列,其中每个元素
表示
中的第
个点与
中第
个点对齐。DTW距离定义为:
(2)
其中,
是所有可能的对齐路径中的最优路径。为了将DTW距离转换为相似度,通常用指数函数,具体而言,DTW相似度可以表示为:
(3)
其中
是一个调节系数,用于控制DTW距离对相似度的影响程度。
由于余弦相似度关注的是序列的整体趋势和形态,而DTW相似度专注于时间序列的局部相似性。将全局余弦相似度和局部DTW相似度进行加权融合,最终形成的相似度矩阵为:
(4)
其中,
表示最终的相似度,
为权重系数。
2.2. 邻接矩阵的图构建
基于融合的相似度矩阵,采用阈值来动态确定图结构。阈值threshold是构建邻接矩阵时用来区分相似和不相似边的关键参数。通过引入调节系数α,其取值范围通常在[0, 2]之间可以控制阈值的大小,从而影响所构建图的稀疏性,公式为:
(5)
其中μ是矩阵的均值,σ是标准差。
接着通过遍历融合相似度矩阵
中的每个元素,并将它们与阈值threshold进行比较,生成邻接矩阵
。如果相似度值
超过阈值threshold,则在邻接矩阵
中对应位置
设置为1,表示两个节点之间存在边;否则设置为0,表示不存在边。这种方法的优势在于它能够根据数据的分布特性调整图结构,从而更精确地捕捉时间序列数据中的相似性和关系,为后续的图分析和图神经网络建模提供更准确的图结构。
2.3. 图卷积神经网络
针对传统时间序列分析忽略不同时间序列间的空间关联的缺点,采用Kipf和Welling [12]提出的图卷积网络(GCN)的框架,用于学习网络特征。其中第
层传播规则可表示为:
(6)
式中
为邻接矩阵,
为对应的度矩阵,
为第
层的节点特征,
为参数矩阵。
在图卷积操作中,节点的特征通过与其邻居的特征进行聚合来更新。这种聚合通常是通过邻接矩阵
和特征矩阵
(
为特征维度)的乘法来实现的。具体来说,是将网络的特征矩阵作为初始节点表示,通过两层GCN实现特征递进式提取:
(7)
(8)
式中
和
分别表示经过第一层和第二层图卷积操作后的特征矩阵。为了防止过拟合,增强模型对噪声和异常值的鲁棒性,并提升模型的泛化能力。在图卷积网络(GCN)中引入特征dropout机制,可以有效地防止模型对训练数据中的特定特征过度依赖,从而提高模型对未见数据的适应能力。
2.4. 网络特征提取模块
为了处理时间序列数据中的复杂结构关系,本模块在图卷积网络(GCN)的基础上融合了复杂网络理论[13]中的多层次拓扑特征以构建节点表征。具体通过以下三个维度构建节点表征:
(1) 聚类系数。聚类系数是衡量网络中节点聚类程度的重要标志,它反映了网络的局部聚类特性。假设网络中的节点
的度为
,即它有
个直接有边相连的邻居节点(简称邻居或邻节点)。如果节点
的
个邻节点之间也都两两互为邻居,则在这些邻节点之间就存在
条边,则有聚类系数
的数学公式:
(9)
(2) 度中心性。度中心性是网络分析中一个基础且直观的度量,用于衡量节点在网络中的重要性或影响力。在无向图中,节点
的度中心性
定义为:
(10)
式中,
表示节点
的邻居集合。
(3) 三角形个数。三角形是由三个节点组成的子图,其中每两个节点之间都直接相连。三角形是衡量局部聚集性的核心结构单元,网络中所有不重复三角形的总数T,可通过矩阵运算高效计算:
(11)
其中
为邻接矩阵,
为矩阵迹。
3. 模拟分析
3.1. 算法介绍
本研究采用图卷积网络(GCN)对时间序列数据进行节点分类。首先,构建包含600个节点的时间序列网络,其中每个节点对应一个长度为300的时间序列样本。这些原始时间序列数据直接构成节点的初始特征矩阵
,能够有效捕捉时间序列的动态特性,包括趋势变化、周期性波动和振幅特征等关键时序模式。接着,为进一步增强节点表征能力,在构建时间序列相似度图的基础上,提取了网络拓扑特征。具体而言,计算了度中心性、聚类系数和三角形数量三个关键拓扑指标,形成网络特征矩阵
。在此基础上,将时间序列特征矩阵与网络拓扑特征矩阵进行拼接,构建最终的特征矩阵
。最后将这一特征矩阵转换为PyTorch张量,以便作为GCN模型的输入进行训练和分类。这种策略既保留了时间序列的动态特性,又融入了网络结构的静态特征,从而为模型提供了多视角的信息表征,增强了节点的特征表达能力。
模型采用两层图卷积网络架构。第一图卷积层通过
学习节点嵌入表示,第二图卷积层输出节点的类别概率分布
,其中
表示归一化邻接矩阵。
实验的具体步骤如下:
1) 生成虚拟时间序列数据,将样本数据添加到data列表,簇标签添加到labels列表中。
2) 计算融合相似度,计算序列对之间的余弦相似度和DTW相似度,根据公式(4)生成融合相似度。
3) 构建邻接矩阵,设置阈值,若相似度大于阈值,则在邻接矩阵将对应元素设为1,否则设为0,最后返回邻接矩阵adj_matrix。
4) 提取网络特征,将邻接矩阵转换为图对象G,根据公式(9)、(10)、(11)计算度中心性、聚类系数和三角形数量,将计算得到的特征添加到features列表中。
5) 定义图卷积网络模型,应用两层图卷积,最终使用log_softmax激活函数得到节点的分类概率。
3.2. 人工数据
为了对所提的方法进行评估,本研究中使用的人工数据集旨在评估时间序列分类算法的性能。该数据集由600个时间序列样本组成,每个样本长度为300个时间点。数据集被设计为包含三个不同的簇,每个簇具有不同的频率和幅值特征,以模拟真实世界中时间序列数据的多样性。每个簇的频率和幅值特征通过添加正态分布噪声来实现,模拟的数据集具体特征如表1,将每簇数据选取5个样本生成可视化图如图2。
Table 1. Dataset features
表1. 数据集特征
数据集 |
频率 |
幅值 |
噪声 |
簇1 |
0.02 ± 0.005 |
5 ± 0.5 |
0.5 |
簇2 |
0.1 ± 0.01 |
3 ± 0.3 |
0.3 |
簇3 |
0.2 ± 0.02 |
1 ± 0.2 |
0.2 |
Figure 2. Time series sample visualization
图2. 时间序列样本可视化
3.3. 参数设置
实验对图卷积网络(GCN)模型进行了参数优化,以提升时间序列分类的性能。隐藏层维度固定为16,旨在有效捕捉数据特征。学习率设置为0.01,确保了模型的稳定收敛。采用0.5的Dropout率以减轻过拟合现象,训练周期定为200个epoch,以实现模型在训练数据上的充分学习。
在模型评估方面,本文采用了准确率和混淆矩阵等不同指标来评估模型。准确率(Accuracy)该指标计算正确分类样本数与总样本数的比例,直接反映了模型的分类准确性。召回率(Recall)是评估分类模型性能的一个重要指标,召回率越高,表示模型识别正例的能力越强。F1分数(F1-score)则通过调和准确率和召回率,提供了全面评估分类模型的指标。而混淆矩阵可以详细分析模型预测结果的准确性,包括正确分类和错误分类的具体情况。
3.4. 实验分析
对于融合权重β的选择,本实验采用对称加权(即β = 0.5)的策略来融合时间序列的局部与全局特征,并通过对比实验来验证此策略的有效性。实验的准确率为5次随机运行的平均值,结果证明了两种相似度度量之间存在强大的互补性。如表2所示,仅依赖DTW的模型(β = 0.0)准确率为78.2%;仅依赖余弦相似度的模型(β = 1.0)准确率仅为73.5%。而β = 0.5的融合模型准确率显著提升至85.1%,这一结果验证了融合策略的优越性。表明融合后的结构同时包含了更多的样本关联,从而为模型提供更丰富的信息表征。
阈值用于控制图结构的稀疏性,阈值越小,构建的图越稠密,阈值越大图越稀疏,节点的连接越少。当阈值小于0.5时,图过于稠密,会引入大量不显著的连接,使得图结构信息变得模糊。当阈值大于0.8时,图过于稀疏,许多本应存在的关联被忽略,阻碍了节点间有效的信息传递,性能同样下降。由图3可以看到,当阈值取0.7时模型不同的网络间的结构更明显,区分度越高。这表明在此阈值下构建的图能够有效捕捉样本间最相关的关系,同时避免噪声干扰,因此最终选择0.7用于本实验。
基于上述参数的设置,本节展示了所选择的图神经网络模型在时间序列分类任务上的性能。模型在600个样本上进行训练,每个样本长度为300,分为三个不同的簇。通过将邻接矩阵转换为图,并使用 from_networkx函数创建PyTorch Geometric数据对象pyg_data。将网络特征添加为节点特征,并将标签添加为节点标签。随机选择30%的节点作为测试集,其余作为训练集。对数据进行训练以及测试,其节点分类的准确率和召回率结果如表3所示。
Table 2. Experimental results of the model
表2. 模型的试验结果
模型 |
权重β |
准确率% (ACC) |
仅依赖DTW的模型 |
0.0 |
78.20 |
仅依赖余弦相似度的模型 |
1.0 |
73.50 |
本文融合模型 |
0.5 |
85.10 |
Table 3. Accuracy and recall result data
表3. 准确率和召回率结果数据
指标 |
训练集 |
测试集 |
准确率% (ACC) |
87.50 |
90.62 |
簇1召回率 |
85.00 |
89.00 |
簇2召回率 |
82.50 |
86.70 |
簇3召回率 |
85.30 |
90.00 |
在本实验中,模拟数据的准确率和召回率均达到80%以上,且模型在测试集上的表现略优于训练集。该现象是由于模型训练中采用了Dropout正则化策略,该策略在训练过程中随机丢弃部分神经元连接,有效防止了模型对训练数据的过度拟合。这种方法虽然轻微降低了训练集上的指标,但较好提升了模型在未见过的测试数据上的泛化能力,从而导致测试集性能更优。此外,训练集和测试集划分的随机性也可能导致测试集包含了相对易于分类的样本。综合来看,训练集与测试集性能差距较小且测试集表现更佳,表明模型具有良好的泛化性能。
3.4. 可视化结果分析
为了更加直观的反映不同数据之间的网络关系,图3展示了在不同阈值下的三个不同类型的数据生成的网络结构图,其中左图为阈值大小设为0.6时的网络结构图,右图为0.7的阈值网络图。当阈值为0.6时,网络的图密度为4.51%;当阈值为0.7时络的图密度为5.89%。由图可以看出阈值越高,网络的密度越大,不同的网络间的结构越明显,区分度越高。
Figure 3. Network structure diagram under different thresholds
图3. 不同阈值下的网络结构图
图4展示了网络特征如三角形数量、分类系数、度中心性在不同分类中的分布情况。从特征的箱线图中可以清晰的观察到这些特征在不同分类之间的分布差异,不同类间的显著差异性可以使模型更好的区分不同的类别,有利于提高模型的准确率。
Figure 4. Box plot of network feature distribution
图4. 网络特征分布箱线图
图5展示了模型在三个类别上的分类性能。这个混淆矩阵(Confusion Matrix)是一个3 × 3的矩阵,用于评估分类模型的性能。矩阵的行表示真实类别(True Labels),列表示模型预测的类别(Predicted Labels)。每个单元格中的数字表示模型对特定类别的预测数量。由图可以看到簇1有2个样本被错误分类为簇2,这可能是由于这两个类别之间存在某些相似性,导致模型难以区分。整体分类效果较好,这表明模型能够有效识别不同类别的样本。
Figure 5. Confusion matrix visualization
图5. 混淆矩阵可视图
4. 实例分析
为了验证模型的有效性,本文选取了贵金属、医疗器械、房地产服务行业的有关数据,其中每种类型的股票各选取了较有代表性的十支股票。实验中用到的数据均来源于东方财富网,该数据涵盖了2024年12月31日至2025年4月11日三大股票市场的资金流向数据。具体包括每日收盘价、股票每日成交量、主力净流入、超大单净流入以及大单净流入等6种股票信息。
实验选取了数据集中的每日收盘价和每日成交量数据作为研究的数据集成。原始数据含有8775个数据节点,涉及中金黄金、奕瑞科技、电子城等30支股票。为了确保数据的规范性和可用性,对原始数据进行了预处理操作。最终筛选了1980条股票数据作为输入数据。本实验中,将数据的70%部分作为训练集,30%作为测试集。
图6展示了从东方财富网站中选取的实验区域的2025年2月至4月时段的股票走势。从图中可以看出在整个研究期间内贵金属股票中的中金黄金波动较大整体上涨,医疗器械股票中的奕瑞科技有涨有跌幅度较小,而房地产服务行业中的电子城整体呈现下跌趋势。这些股票的不同趋势一定程度上反映了该行业的整体趋势。
Figure 6. Stock price trend chart from February to April 2025
图6. 2025年2月至4月的股票走势图
4.1. 实验过程
在实证研究部分,本文在3.1部分的算法基础上改进,其方法如下:
1) 数据预处理:将股票数据进行标准化;
2) 构建股票相似度图:计算股票数据的相似度,并构建邻接矩阵;
3) 提取股票特征:从邻接矩阵中提取股票网络特征;
4) 构造网络特征矩阵:将提取的网络特征加入原始特征矩阵中作为模型的输入;
5) 定义图卷积网络模型:定义一个两层的网络模型,并进行训练和预测。
网络特征提供了关于股票之间相互关系重要信息。在特征提取部分,本文分别计算了股票网络图的聚类系数、三角形数量和度中心性等络特征指标。并将结果展示如下,表4和表5分别展示了股票收盘价网络图和股票每日成交量网络图的平均网络特征指标的结果。
Table 4. Average network feature results of stock closing prices
表4. 股票收盘价的平均网络特征结果
特征 |
度 |
聚类系数 |
三角形个数 |
度中心性 |
贵金属 |
15.6 |
0.611 |
66 |
0.538 |
医疗器械 |
18.0 |
0.664 |
108 |
0.621 |
房地产 |
14.8 |
0.658 |
71 |
0.511 |
Table 5. Average network feature results of daily stock trading volume
表5. 股票每日成交量的平均网络特征结果
特征 |
度 |
聚类系数 |
三角形个数 |
度中心性 |
贵金属 |
13.5 |
0.649 |
51 |
0.475 |
医疗器械 |
17.0 |
0.663 |
92 |
0.586 |
房地产 |
12.3 |
0.691 |
52 |
0.424 |
4.2. 实验结果
在本研究中,我们对所提出的算法模型在三个类别(贵金属、医疗器械和房地产)上的性能进行了评估。表6和表7分别展示了股票收盘价的实验结果和每日成交量的实验结果。由表6实验结果可以看出,模型在贵金属类别上的表现最佳,其精确度为0.94,召回率为0.70,F1分数为0.82。医疗器械类别的召回率最高,达到0.90,但精确度相对较低为0.79。由表7可以看到,股票每日成交量在精确度、召回率和F1分数的平均值上均表现均衡,均在80%以上。这些结果表明贵金属类别可能与其他类别(如医疗器械或房地产)在网络特征中较为接近,导致模型难以区分这些类别。如果类别间的特征差异不明显,模型可能将样本错误分类到其他相似类别。
文中随机抽取训练10次的分类训练,其分类准确率在83%左右,如图7所示。
Figure 7. Classification accuracy results after 10 repeated trainings
图7. 重复训练10次的分类准确率结果
4.3. 对比实验与结论
为验证本文提出的基于图卷积神经网络(GCN)的时间序列分类方法的优越性,本研究设计了传统时间序列分类方法[14]的对比实验。实验在相同的三类股票数据集(贵金属、医疗器械、房地产)上进行,采用准确率、召回率和F1分数作为评估指标,结果如表8所示。由结果可以看到通过图结构显式建模股票间的关联关系,比传统分类方法高7%~10%,实验结果验证了图神经网络在时间序列分类任务中的有效性。
这些结果表明,尽管模型在各类别上都表现良好,但在处理类别不平衡时仍有改进空间,特别是在提高部分类别的精确度方面。未来的工作可以探索数据增强、类别权重调整和模型结构优化等策略,以进一步提升模型性能。
Table 6. Experimental results of stock closing prices
表6. 股票收盘价实验结果
类别 |
Precision |
Recall |
F1-score |
贵金属 |
0.94 |
0.70 |
0.82 |
医疗器械 |
0.79 |
0.90 |
0.84 |
房地产服务 |
0.80 |
0.90 |
0.85 |
平均 |
0.84 |
0.83 |
0.83 |
Table 7. Experimental results of daily trading volume of stocks
表7. 股票每日成交量实验结果
类别 |
Precision |
Recall |
F1-score |
贵金属 |
0.98 |
0.50 |
0.67 |
医疗器械 |
0.67 |
0.98 |
0.80 |
房地产服务 |
0.98 |
0.98 |
0.98 |
平均 |
0.88 |
0.82 |
0.82 |
Table 8. Comparison experiment
表8. 对比实验
方法 |
Precision |
Recall |
F1-score |
DTW + K-Means |
0.74 |
0.72 |
0.73 |
|
0.71 |
0.69 |
0.70 |
本文GCN方法 |
0.84 |
0.83 |
0.83 |
|
0.88 |
0.82 |
0.82 |
基金项目
国家自然科学基金青年项目(11901275)、福建省自然科学基金面上项目(2021J01982)。
NOTES
*通讯作者。