摘要
现存的插补方法大致分为基于统计的插补法和基于深度学习的插补法。基于统计的插补法只能捕捉线性时间关系,导致无法精准建模时间序列的非线性关系;基于深度学习的插补法往往没有考虑到不同时间序列之间的相关性。针对现有方法的问题,本文提出了联合张量补全与循环神经网络的时间序列插补法。首先,将多元时间序列建模成张量,通过张量的低秩补全捕获不同时间序列之间的关系。其次,提出了一个基于时间的动态权重,将张量插补结果和循环神经网络的预测结果进行融合,避免因为连续缺失导致的预测误差累积。最后,在多个真实的时间序列数据集上对所提方法进行了实验评估,结果显示该模型优于已有相关模型,且基于插补后的时间序列可以提升时间序列预测效果。
时间序列分析通过对具有时序关系的一组数据进行建模,从而得到这组数据背后的变化规律,具有广泛的应用领域,如气象观
本文提出了一种联合张量补全与循环神经网络的插补模型。张量补全捕获多个时间序列之间的关系,发现数据的全局模式,循环神经网络建模时间序列的时序关系。为了让张量补全与循环神经网络有机地结合,提出了一个基于连续缺失时间的动态权重因子,避免因连续缺失时间长导致预测误差累积。在多个真实数据集上进行了实验,以评估所提出的缺失值插补模型。实验结果表明,本文模型比现有的模型具有更好的性能。
缺失值插补在数据挖掘与分析中具有重要的作用,时间序列的缺失值插补有着更为广泛的应用和重要的研究意义。下面对已有的时间序列缺失值的插补方法做一概述分析。
早期的时间序列缺失值插补通常采用基于删除的插补方法,例如成列删
基于统计学的插补法是伴随着统计学发展而进步的一种方法。平均值插补
常见的基于机器学习插补法有正则化期望最大化(Expectation‑maximum, EM
随着深度学习的发展,人们开始使用RNN进行时间序列缺失值的插补。Yoon
Song
定义1(多元时间序列) 多元时间序列是1个有T个观测值的序列,第t个时间步观测值包含D个特征,其中第d个特征对应的时间序列为。
定义2(掩码向量) 为了表示中的缺失值,引入掩码向量,计算公式为
(1) |
定义3(时间间隔向量) 为了表示时间序列中连续缺失值,引入时间间隔向量,其计算公式如下
(2) |
式中代表第t个时间步的时间戳。
假设为K个多元时间序列,由于现实世界的各种情况,这个多元时间序列的数据包含缺失值。基于该给定的多元时间序列,时间序列插补任务是设计模型,填补所有时间序列中的缺失值,使插补的缺失值与真实值尽量接近。
下面结合一个例子说明以上概念。



图1 多元时间序列、掩码向量和时间间隔向量示意图
Fig.1 Multivariate time series,mask vector and time gap vector
本文所提出的联合张量补全的循环神经网络模型TCBRNN整体结构如

图2 TCBRNN 模型结构图
Fig.2 Structure of TCBRNN model
下面给出TCBRNN算法的伪代码描述。
输入: n个有缺失值的多元时间序列
,其中, |
输出: n个插补后的多元时间序列
(1)初始化张量分解的参数A、 B、 C,初始化循环神经网络的所有参数W、 U、 b
(2)将输入的多元时间序列拼接成一个张量
(3)for i in epoch:
(4) 对张量进行分解,更新参数A、 B、 C
(5) for t in time:
(6) 计算时间步t-1的估计值
(7) 计算时间步t-1的插补值
(8) 通过最小化损失函数来更新循环神经网络的参数W、 U、 b
(9)返回插补后的多元时间序列
模型的整体输入是多个多元时间序列,所以需要将多个多元时间序列转化成为一个三维张量。将一个多元时间序列i记为,其中,对于多个多元时间序列将其记为,采用直接拼接的方式将其转化为一个三维张量,为一个含有缺失值的不完整张量。
多元时间序列的不同特性之间以及不同的时间序列之间通常存在相关性。例如,同一个地点的多个气象观测指标之间以及相邻地点的气象观测序列时间存在相关性。为了捕获这些关系,本文所提方法的第一步采用张量补全方法,得到一个缺失值的初步插补结果。对有连续缺失值的时间序列数据用时间间隔向量表达,对有相关性的时间序列数据用低秩补全张量补全缺失值。
利用张量的低秩逼近是一种张量补全的方法。一般来说,希望通过最小化张量X的秩,通过张量的低秩性质对张量进行补全。最小化张量X的秩可以通过凸松弛为最小化张量X的核范数,所以这一步需要对最小化张量X核范数的目标函数进行求解。给定一个张量X,张量补全的优化任务为
(3) |
式中表示补全后的张量与原张量在未缺失值的位置上相等。
张量的秩优化问题是非凸优化不可求解,所以可以进行一个等价代换,通过使张量的迹范数最小化从而近似逼近张量的最小秩。优化问题转化为
(4) |
在张量运算中,张量可以展开为,, 三种矩阵形式,分别记为,,,为了获得张量不同特征间的交互信息,1个张量可以写成3个张量展开矩阵的权重和形式 ,从而
(5) |
矩阵迹范数的优化问题可以由交替方向乘子法(Alternating direction method of multipliers,ADMM)算法进行求解,并且由Liu
在张量补全的基础上,所提模型进一步利用循环神经网络进行缺失值的预测。循环神经网络的输入是每一个多元时间序列中每个特征的时间序列,假设代表的是任一个多元时间序列中第d个特征的时间序列,其中每个时间步的取值作为循环神经网络的对应时间步的输入。对于时间步,如果缺失,则利用张量补全步骤中得到的值和循环神经网络上一时间步的预测值,共同计算得到插补值。的计算方法如下
(6) |
式中:为时间步t-1的隐层状态向量;和是要学习的网络参数,分别对应权重向量和偏置变量。
如果存在连续的缺失值,后面的预测值就会累积前面插补产生的误差,随着连续缺失的时间变大会产生累积效应。为了解决此问题,希望连续缺失天数越长,循环神经网络的预测值的权重越小。因此,本模型设计了基于时间的动态权重,公式如下
(7) |
从
(8) |
式中:为RNN 前一个时间步的预测值;为张量补全得到的插补值。
将初始隐藏状态初始化为零向量,然后通过以下方式更新模型
(9) |
(10) |
(11) |
(12) |
由于循环神经网络 RNN估计缺失值的误差会被延迟到下一次观测的出现。为了减少这种误差延迟带来的影响,模型最终选择双向循环神经网络 LSTM 作为基础结构,模型在前向和后向的计算方法是相同的,最终输出两个预测值的平均值。损失函数的计算,除了计算两个预测值与真实值的平方误差之外,还计算两个预测值之间的差值的平方,使得两个预测值尽量接近。
空气质量数据集包含了2017/11/01~2017/11/15期间北京35个监测站监控的6个空气指标 (PM2.5、PM10、NO2、CO、O3、SO2)。整个数据集数据缺失率约为 5.2%。在这个数据集上进行插补实验和利用插补后的数据进行回归预测实验。为方便测试,随机消除了10%的数据作为插补实验的测试集,并选取了2017/11/16这一天的数据作为回归实验的测试集。为了训练模型,选取连续的360个时间步作为一个时间序列。
PhysioNet Challenge 201
UCI‑HAR数据
为了检验模型的性能,本文进行了插补准确值的衡量以及后续分析任务分类和回归性能的实验,将本文所提模型与其他基线模型进行了直接和间接的对比,以验证所提模型的优势。对于插补任务,均采用了随机抽取原序列中的数据作为测试集,将插补后的数据与原序列进行比较。为了公平比较,所有抽取的数据都不会在实验训练中出现。模型使用了双向LSTM作为基础的RNN结构,使用Adam优化器训练模型,学习率为0.001,batch size为64。对所有数据集的数据进行了零均值标准化。3个数据集建模的张量大小分别为35×6×360、4000×35×48、4000×3×40。误差的衡量使用均方根误差RMSE和平均相对误差MRE作为插补和回归任务的评价指标,使用ROC曲线下的面积AUC作为分类任务的评价指标。
假设为缺失的真实值,为模型输出的插补值,一共有N个缺失值。RMSE和MRE计算公式分别为
(13) |
(14) |
实验中将所提模型与以下基准时间序列插补模型进行比较。Mean:用相应的全局平均值来替换缺失值;M
模型 | 空气质量数据集 RMSE(MRE/%) | 医疗数据 RMSE(MRE/%) | 人类活动定位数据集 RMSE(MRE/%) |
---|---|---|---|
Mean | 0.943 9(93.17) | 0.750 1(65.48) | 2.008 1(99.98) |
MF | 0.867 3(83.28) | 0.922 5(86.73) | 0.252 1(9.45) |
CP | 0.555 5(47.54) | 0.780 1(66.80) | 0.352 9(15.54) |
TRMF | 0.440 2(37.15) | 0.856 7(81.56) | 0.206 7(7.05) |
LATC | 0.331 7(25.92) | 0.634 5(45.55) | 0.192 0(6.70) |
BRITS | 0.259 6(19.33) | 0.658 1(39.37) | 0.191 0(7.01) |
TCBRNN | 0.165 0(12.86) | 0.186 6(7.29) | 0.123 6(5.41) |

图3 回归和分类实验比较结果
Fig.3 Experimental results of regression and classification

图4 人类活动定位数据集下不同缺失率的数据集不同模型实验结果
Fig.4 Experimental results of different models with different missing rates in human activity location dataset
循环神经网络模型隐藏层的节点个数是可变的,

图5 空气质量数据集不同隐藏层节点数的实验结果
Fig.5 Experimental results of different numbers of hidden layer nodes in air quality dataset
对于空气质量数据集,本文变换时间序列的长度,分析了长度对插补效果的影响,结果如

图6 空气质量数据集下不同序列长度的实验结果
Fig.6 Experimental results of different series length in air quality data set
从对实验结果的分析中可以看出,对时间序列的时序性建模越精确,模型的插补性能越好;模型中张量补全模块可以捕获不同时间序列的相关性,利用相关性可以提升模型的插补效果。
本文提出了一种联合张量补全与循环神经网络的时间序列缺失值插补模型TCBRNN,可以有效地对多个多元时间序列中的缺失值进行插补。该模型同时考虑不同时间序列之间的相关性和复杂时序关系,直接学习出缺失值。在多个数据集上对所提出的模型进行了性能评估,包括对缺失值的插补值准确性进行了评估,并对插补后的数据进行了回归与分类模型的构建,测试其对后续时间序列分析任务的效果。实验结果表明,和其他基线模型相比,本文所提模型在插补上有更准确的效果,并且插补后的数据可以提升回归、分类模型的性能。未来工作可以对模型的插补结果进行可视化处理,这样可以直观地展示模型插补结果与真实数据的差异,还可以尝试用其他方法捕获不同时间序列的相关性来获得更好的效果,例如利用深度学习的方法来代替张量补全。
参 考 文 献
Chatfield C. The analysis of time series: An introduction[M]. New York, USA: CRC Press, 2016. [百度学术]
Hsieh T J, Hsiao H F, Yeh W C. Forecasting stock markets using wavelet transforms and recurrent neural networks: An integrated system based on artificial bee colony algorithm[J]. Applied Soft Computing, 2011, 11(2): 2510-2525. [百度学术]
Che Z, Purushotham S, Cho K, et al. Recurrent neural networks for multivariate time series with missing values[J]. Scientific Reports, 2018, 8(1): 1-12. [百度学术]
Silva I, Moody G, Scott D J, et al. Predicting in-hospital mortality of ICU patients: The physionet/computing in cardiology challenge 2012[C]//Proceedings of 2012 Computing in Cardiology. [S.l.]: IEEE, 2012: 245-248. [百度学术]
Cao W, Wang D, Li J, et al. BRITS: Bidirectional recurrent imputation for time series[J]. Advances in Neural Information Processing Systems, 2018, 31: 6775-6785. [百度学术]
Berglund M, Raiko T, Honkala M, et al. Bidirectional recurrent neural networks as generative models[J]. Advances in Neural Information Processing Systems, 2015, 28: 856-864. [百度学术]
McKnight P E, McKnight K M, Sidani S, et al. Missing data: A gentle introduction[M]. New York, USA: Guilford Press, 2007. [百度学术]
Wothke W. Longitudinal and multigroup modeling with missing data[M]. England, UK: Psychology Press, 2000: 205-224. [百度学术]
Kantardzic M. Data mining: Concepts, models, methods, and algorithms[M]. New Jersey, USA: John Wiley & Sons, 2011. [百度学术]
Acurna E, Rodriguez C. The treatment of missing values and its effect in the classifier accuracy, classification, clustering, and data mining applications[C]//Proceedings of the Meeting of the International Federation of Classification Societies (IFCS). Chicago: Springer Berlin Heidelberg, 2004: 639-647. [百度学术]
Fung D S. Methods for the estimation of missing values in time series[D]. Western Australia: Edith Cowan University, 2006. [百度学术]
Harvey A C. Forecasting, structural time series models and the Kalman filter[D]. Cambridge, UK: Cambridge University Press, 1990. [百度学术]
Nelwamondo F V, Mohamed S, Marwala T. Missing data: A comparison of neural network and expectation maximization techniques[J]. Current Science, 2007, 93(11): 1514-1521. [百度学术]
Natick M. The mathworks[M]. United States: Meuwissen, 2010. [百度学术]
Koren Y, Bell R, Volinsky C. Matrix factorization techniques for recommender systems[J]. Computer, 2009, 42(8): 30-37. [百度学术]
Yu H F, Rao N, Dhillon I S. Temporal regularized matrix factorization for high-dimensional time series prediction[C]//Proceedings of NIPS. Barcelona, Spain:Urran Associates Inc., 2016: 847-855. [百度学术]
Yoon J, Zame W R, van der Schaar M. Multi-directional recurrent neural networks: A novel method for estimating missing data[C]//Proceedings of Time Series Workshop in International Conference on Machine Learning. Sydney: [s.n.],2017. [百度学术]
Che Z, Purushotham S, Cho K, et al. Recurrent neural networks for multivariate time series with missing values[J]. Scientific Reports, 2018, 8(1): 1-12. [百度学术]
Cao W, Wang D, Li J, et al. BRITS: Bidirectional recurrent imputation for time series[C]//Proceedings of the 32nd International Conference on Neural Information Processing Systems. Montréal, Canada:Curran Associates Inc., 2018: 6776-6786. [百度学术]
Song Q, Ge H, Caverlee J, et al. Tensor completion algorithms in big data analytics[J]. ACM Transactions on Knowledge Discovery from Data,2019, 13(1): 1‑48. [百度学术]
Zhao Z, Tang L, Fang M, et al. Toward urban traffic scenarios and more: A spatio-temporal analysis empowered low-rank tensor completion method for data imputation[J]. International Journal of Geographical Information Science, 2023, 37(9): 1936-1969. [百度学术]
Liu C, Wu T, Li Z, et al. Robust online tensor completion for IoT streaming data recovery[J]. IEEE Transactions on Neural Networks and Learning Systems, 2023, 34(12): 10178-10192. [百度学术]
Liu J, Musialski P, Wonka P, et al. Tensor completion for estimating missing values in visual data[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 35(1): 208-220. [百度学术]
SILVA I, MOODY G, MARK R, et al. Predicting mortality of ICU patients: The physioNet/computing in cardiology challenge 2012[EB/OL]. (2012-01-20)[2022-05-23]. https://www.physionet.org/content/challenge-2012/1.0.0/. [百度学术]
FRANK A, ASUNCION A. UCI machine learning repository[EB/OL]. (2010-01-28)[2022-05-23]. https://www.archive.ics.uci.edu/. [百度学术]
KARATZOGLOU A, AMATRIAIN X, BALTRUNAS L, et al. Multiverse recommendation: n-dimensional tensor factorization for context-aware collaborative filtering[C]//Proceedings of the fourth ACM Conference on Recommender Systems. Barcelona, Spain: Association for Computing Machinery, 2010: 79-86. [百度学术]
CHEN X,LEI M, SAUNIER N. Low-rank autoregressive tensor completion for spatiotemporal traffic data imputation[J]. IEEE Transactions on Intelligent Transportation Systems, 2022, 23(8): 12301-12310. [百度学术]