首页> 中国专利> 一种基于ARIMA‑SVR的水文时间序列异常值检测方法

一种基于ARIMA‑SVR的水文时间序列异常值检测方法

摘要

本发明公开了一种基于ARIMA‑SVR的水文时间序列异常值检测方法,包括以下步骤:首先获取水文时间序列数据,对水文时间序列进行ARIMA拟合,ARIMA模型可以很好的拟合数据的线性部分,但当数据中存在非线性部分时,拟合效果较差;然后得到ARIMA部分的残差,用10折交叉验证的方法寻找出SVR最佳的gamma、cost和核函数的组合;最后将两部分拟合值相加得到最终的预测值,并求出置信度为p的置信区间,将预测值与置信区间比较,在置信区间之外的就判定为异常值。本发明为水利相关从业者提供了一种寻找水文时间序列中异常值的方法,水文时间序列中的异常值检测对于防汛抗旱等工作具有重要的指导意义。

著录项

  • 公开/公告号CN107908891A

    专利类型发明专利

  • 公开/公告日2018-04-13

    原文格式PDF

  • 申请/专利权人 河海大学;

    申请/专利号CN201711210505.0

  • 发明设计人 娄渊胜;孙建树;叶枫;盖振;

    申请日2017-11-28

  • 分类号

  • 代理机构南京苏高专利商标事务所(普通合伙);

  • 代理人李玉平

  • 地址 210098 江苏省南京市鼓楼区西康路1号

  • 入库时间 2023-06-19 05:02:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-18

    授权

    授权

  • 2018-05-08

    实质审查的生效 IPC(主分类):G06F17/50 申请日:20171128

    实质审查的生效

  • 2018-04-13

    公开

    公开

说明书

技术领域

本发明涉及一种基于统计学习和机器学习领域的水文时间序列异常值检测的模型构建方法,具体地说,是综合了经典的支持向量回归、统计学中的ARIMA模型等技术对时间序列中的值进行检测。

背景技术

异常值检测是水文数据挖掘中的重要组成部分,水位的变化受到季节和其他突变因素的影响,同时还包含着噪声因素,单一模型的检测能力有限,传统的ARIMA模型预测非线性时间序列精度不够高,支持向量回归结构复杂,易产生“过拟合”的问题。对这些方法的单独优化并不能克服单种方法的局限性。因此,结合多种模型形成的异常值检测方法已经成为时间序列异常值检测的方向。

发明内容

发明目的:针对现有的时间序列异常值方法不具有针对性、灵敏度和特异度相对较低的缺点,根据水文时间序列的波动特点,采用ARIMA模型和SVR相结合的方法对水文时间序列进行异常检测,提高水文时间序列异常检测的灵敏度和特异度。

技术方案:一种基于ARIMA-SVR的水文时间序列异常值检测方法,利用第三方软件R语言作为程序编制和模型仿真检查的工具,构建三个模块,分别是ARIMA建模模块、SVR残差建模模块、组合预测值得到置信度为p的置信区间模块。首先对水文时间序列进行平稳性检验,对通过平稳性检验的采用ARIMA模型对其进行处理;因为经过ARIMA函数拟合的残差序列总体平稳且线性不可分,因此采用SVR对残差进行拟合预测。最终将ARIMA对序列总体趋势的预测和SVR对残差的预测相加并得到置信度为p的置信区间,实现根据置信区间判断异常值的方法。

主要实现步骤如下:

步骤1:取待检测值的前n个值,形成水文时间序列,对水文时间序列进行平稳性检验,如果通过,进入下一步;如果不通过,对序列持续差分直到差分后的序列满足平稳性检验;

步骤2:通过步骤1得到水文时间序列的差分阶数d;以AIC信息准则为准,限定自回归的阶数p和移动平均阶数q的范围,遍历(p,q)组合,找出具有最小AIC值的(p,q)组合;

步骤3:将上述步骤中确定的最优p,d,q应用于ARIMA模型预测t时刻的值,同时得到置信度为α的置信区间;

步骤4:将步骤3中的得到的预测值与实际值相减得到残差,作为训练集输入到SVR;

步骤5:针对非线性回归问题,先使用非线性函数把训练集中的样本数据映射到一个高维特征空间,并在这个高维特征空间进行线性回归。训练样本(xi,yi)满足如下条件:yi(xi*ω+b)-1+ξi≥0其中ξi称为松弛变量,ω为法向量决定了超平面的方向,b为位移项,且满足ξi≥0,i=1,2,3…n。

步骤6:采用10折交叉验证的方法,寻找出最佳的gamma、cost和核函数的组合以达到最佳的残差拟合。因为经过ARIMA函数拟合的残差序列总体平稳且线性不可分,因此本文选用径向基函数为核函数。

步骤7:利用步骤6中得到的最佳参数构建SVR模型,然后预测出残差。

步骤8:将步骤3和步骤7得到的预测值相加,得到最终的预测值同时计算出置信度为α的置信区间,其中置信度定义了预测值在置信区间范围内的预期概率。

步骤9:比较实际值与置信区间的关系,如果实际值在预测区间之外则为异常值,否则为正常值。

优选地,所述步骤2中,通过确定差分阶数d,限定p和q的范围,通过实验,得到具有最小AIC值的(p,q)组合。

优选地,所述步骤3中,水文时间序列通常都显示出一定的趋势性和周期性,因此使用ARIMA模型进行预测具有良好效果。

优选地,所述步骤5和6中,通过确定SVR的ε-不敏感损失函数和核函数,来达到对残差拟合,因为水文序列不仅受季节等周期性因素影响,还受到许多复杂因素的影响,使其含有非线性相关部分,因此使用SVR能很好的对非线性部门拟合。

优选地,常见的组合异常值检测方法大多采用一种方法来进行检测,当数据比较复杂,如水文时间序列既含有线性相关部分又含有非线性部分,单一算法往往不能取得很好效果,使用组合模型可以有效提高异常检测的灵敏度和特异度。

本发明采用上述技术方案,具有以下有益效果:

对于水文时间序列的异常值检测,引入了一种新的组合模型方法,该方法能够综合ARIMA和SVR模型,充分利用两种模型的优点,提高了异常检测的灵敏度和特异度;两个模型的并行分工能够提高检测的灵敏度和特异度,降低了支持向量回归带来的过拟合问题,提高了ARIMA模型的准确性和有效性;组合模型的耦合方式与传统按权值系数最优化的组合模型不同,分别利用两种模型针对线性相关和非线性相关部门的优点达到提高异常检测的灵敏度和特异度。

附图说明

图1为本发明实施例的体系结构与方法流程图。

具体实施方式

下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。

一种基于ARIMA-SVR的水文时间序列异常值检测方法,主要实现步骤如下:

步骤1:采用的数据集为XXX水文站的日平均水位数据,当检测某点是否为异常点时,使用其前90天的数据进行平稳性检验,如果通过,进入下一步;如果不通过,对序列持续差分直到差分后的序列满足平稳性检验;

步骤2:通过步骤1得到水文时间序列的差分阶数d;以AIC信息准则为准,限定自回归的阶数p和移动平均阶数q的范围,遍历(p,q)组合,找出具有最小AIC值的(p,q)组合;

步骤3:将上述步骤中确定的最优p,d,q应用于ARIMA模型预测t时刻的值,同时得到置信度为α的置信区间;

步骤4:将步骤3中的得到的预测值与实际值相减得到残差,作为训练集输入到SVR;

步骤5:针对非线性回归问题,先使用非线性函数把训练数据映射到一个高维特征空间,并在这个高维特征空间进行线性回归。训练样本(xi,yi)满足如下条件yi(xi*ω+b)-1+ξi≥0其中ξi称为松弛变量,且满足ξi≥0,i=1,2,3…90。ω为法向量决定了超平面的方向,b为位移项。

步骤6:采用10折交叉验证的方法,其中ε-不敏感损失函数选择核函数选择径向基函数,寻找出最佳的gamma、cost的组合,以达到最佳的残差拟合;因为经过ARIMA函数拟合的残差序列总体平稳且线性不可分。因此本文选用径向基函数为核函数;

步骤7:利用步骤6中得到的最佳参数构建SVR模型,然后预测出残差。

步骤8:将步骤3和步骤7得到的预测值相加,得到最终的预测值同时计算出置信度为α的置信区间,其中置信度定义了预测值在置信区间范围内的预期概率。

步骤9:比较实际值与置信区间的关系,如果实际值在预测区间之外则为异常值,否则为正常值。

方法比较

通过将本方法与单一模型作对比,在灵敏度(Sensitivity)和特异度(Specificity)分别有5%和3%的提升,其中灵敏度表示正确检测出的异常样本比例,特异度为正确检测出的正常样本比例,从中我们可以发现组合模型提高了水文时间序列异常值检测的灵敏度和特异度。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号