一种露点数据异常检测方法与流程

文档序号:14986708发布日期:2018-07-20 21:23阅读:858来源:国知局

本发明涉及一种露点数据异常检测方法,适用于传感器网络数据的实时异常监测。



背景技术:

我国石油业和天然气业正处于蓬勃发展阶段,其运输的安全问题也备受关注。当前,管道输送天然气是最经济和有效的输送方式。但是,天然气在采集和运输过程中都会混杂一定的水汽,当管道输送天然气的含水量超过一定值时,可能会带来下列危害:

(1)、在天然气管道输送中,如果水含量高,可能会造成液态水在管道中集聚,在一定的温度、压力条件下,液态水和烃类等其他物质将一起生成水化物,增加输气阻力,降低输气能力,严重时会堵塞阀门和管道,影响正常供气。

(2)、天然气中含有硫化氢、二氧化碳等酸性气体时,液态水的存在会加速酸性组分对管壁和阀件的腐蚀,减少管道的使用寿命。

现有的测量天然气管道露点的方式可分为在线式和便携式。在线式露点仪一般安装在管道的某个节点持续测量露点并保存数据,而便携式露点仪,需要时由人工携带现场测量。但无论是在线式还是便携式测量,获取露点参数都需要人工到本地测量。效率低下,成本高昂。因此,需要一个可行的检测方法来提高管道运输的运输效率,减少人力,物力。



技术实现要素:

本发明的目的在于提供一种露点数据异常检测方法,能实时监测运输管道露点变化,利用物联网技术代替人工操作,大大减少运输过程的人力、物力,提高管道运输的安全性。

为了达成上述目的,本发明采用以下的技术方案:

一种露点数据异常检测方法,其特征在于包括多个露点传感器、传感网络以及服务终端,将露点传感器部署在管道内,采集实时露点数据经由传感网络反馈到服务终端,以进行异常数据检测,包括如下步骤:

步骤1、通过部署在管道内的露点传感器,实时采集管道内的实时露点数据,并由传感网络发送到服务终端;

步骤2、对传输到服务终端的实时露点数据进行数据处理;

步骤2.1、对实时露点数据建立时间滑动窗口模型

通过滑动窗口模型对露点数据进行处理,该露点数据依照采集时间形成序列数据;

为该序列数据维护一个大小为k的窗口,保存最新的k个数据,当新数据到来时,最早的数据将过期,窗口将保存最新的数据并去除最早的数据;

假设当前窗口数据为{r(t1),r(t2),…,r(tp)},当新数据r(tp+1)到达且为正常数据时,窗口变动,将窗口中的数据更新为{r(t2),r(t3),…,r(tp+1)},后续的数据以此类推;

步骤2.2、对滑动窗口数据构建异常识别模型

采用中位数构造枢轴量,设x1,x2,…,xn是来自均匀分布的总体x~u(a,b)的独立同分布样本,设med为样本x1,x2,…,xn的中位数:

在方差δ2未知的情况下采用样本方差s2来计算中位数的置信区间:

其中n为样本数,xi为每个样本值,x为样本的平均值,即可得到

易验证t为关于μ的枢轴量,对于预置的α,令

即得到置信度为1-α的置信区间

步骤2.3、建立异常来源判断模型

采用adaboot建立异常来源判断模型,设样本集x={(x1,y1),(x2,y2),…,(xn,yn)},其中x表示样本,y表示样本标识,初始化样本权重:

首先在训练数据上训练一个弱分类器并计算错误率,再在同一数据集上再次训练弱分类器,第二次训练中将会重新调整样本权重,第一次分对的样本的权重降低,分错的样本的权重提高,错误率的定义为:

其中|c|为所有样本数目,|e|为未正确分类的样本数目;

权重α计算公式为:

其中ε为错误率,计算出α后更新样本权重d:

如果某个样本被正确分类,那样本权重更新为

如果样本被错分,那样本权重更新为

计算出样本权重d后,adaboost开始下一轮的迭代,直到训练错误率为0或者弱分类器的数目达到指定值,训练结束后得到一个事件模型的强分类器,当采集的露点值满足这个强分类器就说明检测到事件,否则检测到其他的异常;

步骤3、异常检测;

步骤3.1、异常数据识别;

滑动窗口维持k个正常数据,用窗口中的k个正常值和置信度α计算得到一个置信区间[lcl,ucl],如果r(t)不满足(11)式,那么该露点数据可能为异常数据:

lcl≤r(t)≤ucl(11)

其中ucl,lcl分别为置信区间的上下限,r(t)为t时刻采样值,当r(t)满足(11)时更新窗口的数据;

此外,当露点传感器发生故障时,可能在连续的采样时刻内产生相同的读数,即

r(t)=r(t-1)(12)

步骤3.2、异常来源验证

当某个露点传感器t时刻采集的露点数据r(t)的值不在置信区间[lcl,ucl]内或r(t)=r(t-1)时就认为发生了异常;

为确定异常来源,将该露点数据r(t)代入步骤2.3建立的adaboost异常来源判断模型中,以此判断发生事件还是其他的异常,将判断结果及时推送,达到实时报警。

本发明主要是利用机器学习方法实现对露点数据的异常检测,通过滑动窗口模型处理时序数据,并构建异常识别模型和异常来源判断模型。根据异常识别模型发现异常数据,再利用异常来源判断模型判断发生异常的原因,及时推送异常消息。本发明大大提高了管道运输的安全性,减少人力、物力的消耗。

附图说明

图1为本发明硬件连接示意图。

图2为本发明的流程图。

以下结合附图和具体实施例对本发明作进一步详述。

具体实施方式

如图1所示,本发明一种露点数据异常检测方法在以下硬件载体上实现的:具有高质量的露点传感器、传感网络以及控制终端。将露点传感器部署在管道内,采集露点值并反馈到控制终端,以进行异常数据检测。

如图2所示,一种露点数据异常检测方法,其特征在于包括多个露点传感器、传感网络以及服务终端,将露点传感器部署在管道内,采集实时露点数据经由传感网络反馈到服务终端,以进行异常数据检测,包括如下步骤:

步骤1、通过部署在管道内的露点传感器,实时采集管道内的实时露点数据,并由传感网络发送到服务终端;

步骤2、对传输到服务终端的实时露点数据进行数据处理;

步骤2.1、对实时露点数据建立时间滑动窗口模型

通过滑动窗口模型对露点数据进行处理,该露点数据依照采集时间形成序列数据;

为该序列数据维护一个大小为k的窗口,保存最新的k个数据,当新数据到来时,最早的数据将过期,窗口将保存最新的数据并去除最早的数据;

假设当前窗口数据为{r(t1),r(t2),…,r(tp)},当新数据r(tp+1)到达且为正常数据时,窗口变动,将窗口中的数据更新为{r(t2),r(t3),…,r(tp+1)},后续的数据以此类推;

步骤2.2、对滑动窗口数据构建异常识别模型

采用中位数构造枢轴量,设x1,x2,…,xn是来自均匀分布的总体x~u(a,b)的独立同分布样本,设med为样本x1,x2,…,xn的中位数:

在方差δ2未知的情况下采用样本方差s2来计算中位数的置信区间:

其中n为样本数,xi为每个样本值,x为样本的平均值,即可得到

易验证t为关于μ的枢轴量,对于预置的α,令

即得到置信度为1-α的置信区间

步骤2.3、建立异常来源判断模型

采用adaboot建立异常来源判断模型,设样本集x={(x1,y1),(x2,y2),…,(xn,yn)},其中x表示样本,y表示样本标识,初始化样本权重:

首先在训练数据上训练一个弱分类器并计算错误率,再在同一数据集上再次训练弱分类器,第二次训练中将会重新调整样本权重,第一次分对的样本的权重降低,分错的样本的权重提高,错误率的定义为:

其中|c|为所有样本数目,|e|为未正确分类的样本数目;

权重α计算公式为:

其中ε为错误率,计算出α后更新样本权重d:

如果某个样本被正确分类,那样本权重更新为

如果样本被错分,那样本权重更新为

计算出样本权重d后,adaboost开始下一轮的迭代,直到训练错误率为0或者弱分类器的数目达到指定值,训练结束后得到一个事件模型的强分类器,当采集的露点值满足这个强分类器就说明检测到事件,否则检测到其他的异常;

步骤3、异常检测;

步骤3.1、异常数据识别;

滑动窗口维持k个正常数据,用窗口中的k个正常值和置信度α计算得到一个置信区间[lcl,ucl],如果r(t)不满足(11)式,那么该露点数据可能为异常数据:

lcl≤r(t)≤ucl(11)

其中ucl,lcl分别为置信区间的上下限,r(t)为t时刻采样值,当r(t)满足(11)时更新窗口的数据;

此外,当露点传感器发生故障时,可能在连续的采样时刻内产生相同的读数,即

r(t)=r(t-1)(12)

步骤3.2、异常来源验证

当某个露点传感器t时刻采集的露点数据r(t)的值不在置信区间[lcl,ucl]内或r(t)=r(t-1)时就认为发生了异常;

为确定异常来源,将该露点数据r(t)代入步骤2.3建立的adaboost异常来源判断模型中,以此判断发生事件还是其他的异常,将判断结果及时推送,达到实时报警。

以上所述,仅是本发明较佳实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1