高端学术
您当前的位置:核心期刊咨询网电子信息论文》基于能量过滤的不确定时间序列数据清洗方法

基于能量过滤的不确定时间序列数据清洗方法

来源:核心期刊咨询网时间:12

摘要:摘 要: 精确度是数据科学领域研究的重要方面,对后续数据处理等过程都有至关重要的影响。利用多个传感器返回的多个时间序列可提升时间序列数据的精确度,称为不确定时间序列,这多个时间序列样本在真实数据上下随机波动。已有关于时间序列的研究大多直接在

  摘 要: 精确度是数据科学领域研究的重要方面,对后续数据处理等过程都有至关重要的影响。利用多个传感器返回的多个时间序列可提升时间序列数据的精确度,称为不确定时间序列,这多个时间序列样本在真实数据上下随机波动。已有关于时间序列的研究大多直接在不确定时间序列上提出新算法,其缺点是算法复杂度通常较高,直接对不确定时间序列进行清洗,获得尽可能接近真实的数据有重要意义。本文提出基于能量过滤的方法对不确定时间序列进行清洗,实验结果表明与已有方法相比,本文方法在效果和效率上都更优。

  关键词: 不确定时间序列;能量过滤;数据清洗

计算力学学报

  《计算力学学报》(双月刊) 创刊 于1984年,原名《计算结构力学及其应用》,是由教育部主管、大连理工大学和中国力学学会联合主办的专业学术性期刊。

  0 引 言

  时间序列数据在日常生活和工业生产中无处不在,例如气象学中的温度、湿度、风速、PM2.5;医学中的心跳、血压、体温;以及经济学中的股票指数、恩格尔系数以及其它描述宏观经济形势的指数等。这些数据都是随时间变化的数值型数据。由于环境干扰、传感器的精度不够、获取数据时的舍入等原因,时间序列数据通常是不精确的,距离真实数据总有一些误差。而这些误差往往给人们的日常生活、医疗中的病情诊断及监控以及政府部门的决策等带来负面影响。

  为了尽可能降低误差带来的影响,常用的解决方法就是对同一时间序列数据采集多个样本,每个样本都在真实数据周围随机的上下波动,对这些样本求平均值,或者直接在这些样本上设计新算法,都能在一定程度上解决误差带来的影响。求平均值的方法最简单快速,但结果精确度不够高;设计新算法的思路能够获得更高的精度,但往往有着很高的时间复杂度。

  结合时间序列平滑的特性以及随机噪声的波动特性,本文给出一种基于能量过滤的时间序列清洗算法。根据给定的时间序列样本,计算出数据中噪声所占能量的比重,根据这个比重找出一个频率阈值,并将傅里叶变换之后高于该阈值的部分过滤掉,所得结果更加平滑且接近真实数据,在Top-k查询问题上和已有算法做了实验对比,结果显示在效果上本文算法较好,而时间效率上本文算法远远优于已有算法。

  1 问题描述

  1.1 时间序列

  1.2 不确定时间序列

  在很多实际情况中,收集到的数据往往是不精确的,比如采集温度数据的传感器,本身有一定的误差,为降低误差,对同一时刻的数据收集多个数据样本,以提高测量精度。 因此本文给出的不确定时间序列模型描述如下:

  (1)不同时刻值的误差是独立同分布的随机变量;

  1.3 不确定时间序列的清洗

  关于不确定时间序列的已有研究中,都致力于提出新的模型和算法对不确定时间序列数据进行搜索、聚类和Top-k查询等。而相关问题在确定时间序列上的研究已经十分成熟,为了使这些方法能够直接用在不确定时序数据上,本文主要研究如何对不确定数据进行清洗(或者还原),使之变为尽可能接近真实数据的确定时间序列。下面给出不确定时间序列的清洗问题。

  2 基于能量过滤的清洗方法

  由于数据点之间的相关性在频域表现比较明显,因此本文考虑在频域进行降维,从而达到清洗数据的目的。其直观思想是,时间序列数据在频域上分布极不均匀。即有些频率上的数据分布很集中(高能区域),而有些频率上只有很少数据信息(低能区域),而不确定数据中的噪声在各个频率上的分布相对均匀。因此,在低能区域,噪声数据占据主导地位,直接将其舍弃掉虽然会丢失一部分有用信息,但同时丢掉了更多的垃圾信息,使得整体的数据质量得到提升。 该方法的优点主要包括:

  (1)大大减少了数据量,每个时间点的数据由m维降低到1维,并且在频域上只需要保留很少的数据(例如在实验中,长度为2 k的数据在频率域只需要保留100个左右的数据点);

  (2)大大提升了数据质量,通过自适应的选取一个能量阈值,本文的方法能够去掉尽可能多的噪声,保留尽可能多的有用信息,从而使最终的估计结果尽可能地接近真实数据,实验部分也对此进行了验证。

  2.1 离散傅里叶变换

  即在某个频率上,脏数据的能量的期望等于真实数据能量期望与噪声能量期望之和。

  2.3 噪声能量的估计

  由于不同时刻的数据都是由同一个传感器收集的,因此不同时刻的随机噪声也是独立同分布的。每个时刻有m个样本,均由随机变量s+Ns中采样得到,其中s是真实值但未知,随机变量Ns是传感器的随机误差。由于s是常数不影响方差,因此s+Ns和Ns的方差相等,由概率论知识可知,m个样本的样本方差是对s+Ns方差的无偏估计,即是对Ns方差的无偏估计。 由于时间序列很长,因此在每个时间点上的数据估计Ns并求平均,根据大数定律容易得出,如此求得的方差几乎等于传感器随机误差的方差:

  2.4 算法

  至此,可给出基于能量过滤的时间序列清洗算法:

  3 实验验证

  最后在真实数据集和合成数据集上对本文算法和其它算法做一对比。

  3.1 实验环境

  本文算法代码用JAVA语言实现,硬件环境是主频3.60GHz的8核Intel i7處理器,内存大小为8GB,硬盘大小1TB的台式机,底层操作系统是Windows 7。

  3.2 实验数据

  本实验采用的数据集为UCR数据集,UCR是时间序列数据研究中最常用的数据集,样本及噪声的生成均采用文献[1]中的方法。

  3.3 算法对比

  本实验主要与一个最近的关于不确定时间序列数据上Top-k查询的算法[1]Holistc-PkNN做对比。该算法解决的问题是,给定一个不确定时间序列数据集,研究如何从该数据集中快速找出与查询序列Q距离最近的不确定时间序列。该方法是针对不确定时间序列上的老问题设计的新算法,其最大缺点是虽然设计了很多提高性能的优化技术,但时间开销依然很高。

转载请注明来自:http://www.qikan2017.com/lunwen/dzi/14969.html

相关论文阅读

论文发表技巧

期刊论文问答区

电子信息优质期刊

最新期刊更新

精品推荐