本发明涉及计算机应用技术领域,尤其涉及一种石油管道信号的异常检测方法及装置、设备及可读介质。
背景技术:
石油管道信号的异常检测,直接影响石油运输的安全性,是石油领域的信号检测中的一件非常重要的工作。
现有石油领域的异常信号检测技术,通常以人工制定规则来判石油管道信号是否异常。具体地,由传感器从石油管道中检测到信号数据,通过人为制定的规则来对这些信号数据进行分类,判断是否属于异常情况。例如常用的人为规则可以是一些经典的统计学方法,如最大值、最小值的判断、或者正态分布的标准差判断等方法。
但是现有技术的统计学方法,由于自身的性质存在着天然的缺陷,只能从数据分布的先验假设上做异常判断,不能因地制宜,比如石油管道领域很多的异常信号与取值大小无关,无法应对一些特定领域的复杂形状的异常信号,从而使得现有的石油管道信号的异常检测的准确性较差。
技术实现要素:
本发明提供一种石油管道信号的异常检测方法及装置、设备及可读介质,用于提高石油管道信号的异常检测的准确性。
本发明提供一种石油管道信号的异常检测方法,包括:
根据传感器实时采集的石油管道信号,生成预测样本数据;
对所述预测样本数据进行特征抽取处理,得到预测样本特征;
将所述预测样本特征输入至已训练得到的石油管道异常信号检测模型,获取所述石油管道异常信号检测模型的输出结果;
根据所述石油管道异常信号检测模型的输出结果,确定石油管道信号是否异常。
本发明还提供一种石油管道信号的异常检测模型的训练方法,包括:
根据传感器历史采集的石油管道信号以及相应石油管道的历史状态信息,生成训练样本数据集;
对所述训练样本数据集进行特征抽取处理,得到训练样本特征集;
基于所述训练样本特征集、采集的所述历史状态信息和机器学习算法,训练石油管道异常信号检测模型。
本发明还提供一种石油管道信号的异常检测装置,包括:
生成模块,用于根据传感器实时采集的石油管道信号,生成预测样本数据;
抽取模块,用于对所述预测样本数据进行特征抽取处理,得到预测样本特征;
检测模块,用于将所述预测样本特征输入至已训练得到的石油管道异常信号检测模型,获取所述石油管道异常信号检测模型的输出结果;
确定模块,用于根据所述石油管道异常信号检测模型的输出结果,确定石油管道信号是否异常。
本发明还提供一种石油管道信号的异常检测模型的训练装置,包括:
生成模块,用于根据传感器历史采集的石油管道信号以及相应石油管道的历史状态信息,生成训练样本数据集;
抽取模块,用于对所述训练样本数据集进行特征抽取处理,得到训练样本特征集;
训练模块,用于基于所述训练样本特征集、采集的所述历史状态信息和机器学习算法,训练石油管道异常信号检测模型。
本发明还提供一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上任何一项所述的方法。
本发明还提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上任一项所述的方法。
本发明的石油管道信号的异常检测方法及装置、设备及可读介质,通过上述方案,可以训练石油管道异常信号检测模型,并采用训练好的石油管道异常信号检测模型来实现对实时采集的石油管道信号进行异常检测,与现有技术相比,由于石油管道异常信号检测模型采用神经网络模型来实现,可以有效地提高异常检测的准确性,且不受石油管道的复杂形状影响,能够有效地保证检测效率。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1为本发明的石油管道信号的异常检测方法实施例一的流程图。
图2为本发明提供的lstm的结构示意图。
图3为本发明的心电图数据的异常检测的示例图。
图4为本发明的石油管道信号的异常检测方法实施例二的流程图。
图5为本发明的石油管道信号的异常检测模型的训练方法实施例的流程图。
图6为本发明的石油管道信号的异常检测装置实施例一的结构图。
图7为本发明的石油管道信号的异常检测装置实施例二的结构图。
图8为本发明的石油管道信号的异常检测模型的训练装置实施例的结构图。
图9示出了根据本发明一实施例可用于实现上述方法的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1为本发明的石油管道信号的异常检测方法实施例一的流程图。如图1所示,本实施例的石油管道信号的异常检测方法,具体可以包括如下步骤:
s100、根据传感器实时采集的石油管道信号,生成预测样本数据;
本实施例的石油管道信号的异常检测方法的执行主体为石油管道信号的异常检测装置,该石油管道信号的异常检测装置采用线下已训练得到的石油管道异常信号检测模型,来对传感器采集到的石油管道信号进行异常检测。
具体地,在实际应用中,为了对石油管道信号进行异常检测,可以在石油管道中设置传感器来实时采集石油管道信号,例如,可以设置500采样率的传感器,每秒可以得到500个数值,来作为这一秒的石油管道信号。在实际采样过程中,可以按照预设的采样周期,选取采样周期内的石油管道信号,作为实时采集的石油管道信号。本实施例的采样周期可以根据实际需求取5秒、3秒或者其他预设时间长度,在此不再一一举例赘述。传感器采集的当前的预设时间长度内的信号便是实时采集的石油管道信号。对于每预设时间长度内的信号,都作为一条实时的预测样本数据。例如,预设时间长度为5秒时,500的采样率对应的预测样本数据中包括2500个采样数据。
s101、对预测样本数据进行特征抽取处理,得到预测样本特征;
本实施例的预测样本数据中包括预设时间长度内的所有采样数据,数据较为丰富,可以从所有采样数据中直接提取一些特征,作为预测样本特征。也可以从所有采样数据中提取一部分特征,然后对抽取的这部分特征进行二次加工处理,得到处理后的特征,作为预测样本特征。或者也可以同时获取上述两种类型的特征,一起整合为预测样本特征。
例如,本实施例中,步骤s101“对预测样本数据进行特征抽取处理,得到预测样本特征”,具体可以包括如下步骤:
(1)对预测样本数据进行如下至少一种方式的处理:
(a1)从预测样本数据中提取数值类特征;
例如,本实施例中从预测样本数据中提取数值类特征,具体可以从预测样本数据中获取最大值、最小值、均值方差以及分位数中的至少一个,作为数值类特征。具体地,需要选择哪些特征作为数值类特征,可以根据具体应用场景来选择。
(b1)从预测样本数据中提取频域类特征;
例如,在具体实现时,可以先对预测样本数据进行快速傅里叶变换处理;然后取快速傅里叶变换处理后的实数部分的多个数值;该实数部分的数值的数量与预测样本数据中包括的石油管道信号强度值的数量相等;最后提取实数部分的多个数值中的最大值、最小值、均值方差以及分位数中的至少一个,作为频域类特征。同理,需要选择哪些特征作为频域类特征,可以根据具体应用场景来选择。
(c1)从预测样本数据中提取自身变化趋势特征;
例如,本实施例中,自身变化趋势特征的提取方式可以包括如下两种方式,实际应用中,根据具体需求可以选择其中一种来实现。第一种方式为:将预测样本数据从中间分开,得到前片分段和后片分段;分别获取前片分段和后片分段的数值类特征;该数值类特征的获取方式可以参考上述方式(a1),在此不再赘述。然后,获取前片分段的数值类特征和后片分段的数值类特征的差值,作为自身变化趋势特征。第二种方式:将预测样本数据拟合为二元高斯分布;详细可以参考现有的二元高斯分布的拟合过程,在此不再赘述。最后,获取二元高斯分布的均值的差值和方差的差值,作为自身变化趋势特征。
(d1)将预测样本数据与最近邻的一段历史石油管道信号进行比较,得到历史数据比较特征;以及
例如,具体实现时,可以分别获取预测样本数据的数值类特征和最近邻的一段历史石油管道信号的数值类特征;然后通过比较获取两者的数值类特征的差值,作为历史数据比较特征。
具体地,预测样本数据可以取当前采样周期的信号样本a,如采样周期可以为5秒。最近邻的一段历史石油管道信号可以取当前采样周期之前的一段历史时间周期内的信号数据b,例如,本实施例的历史时间周期可以为1分钟,实际应用中,可以根据具体业务来自定义该历史时间周期的长度,不同业务可以设置不同时间长度。例如,可以设置为2分钟、3分钟、5分钟或者其他时间长度。分别获取预测样本数据的数值类特征和最近邻的一段历史石油管道信号的数值类特征的目的是:抽取数值类特征来表示预测样本数据和之前一段时间的历史石油管道信号的不同之处。
因此,把a和b当作两个不同长度的信号样本,分别抽取相应的数值类特征和频域类特征,抽取过程可以参考上述方式(a1)和方式(b1)。然后将这两者的数值类特征做差值,得到当前样本与历史样本的变化。差值越大即表示当前时间段的样本变化越剧烈。
(e1)利用机器学习模型预测出与预测样本数据所处时间段对应的石油管道信号,将预测出的石油管道信号与预测样本数据进行比较,得到预测误差特征;
该种方式中,可以先利用无监督机器学习方法基于预测样本之前的多个石油管道信号片段训练机器学习模型。例如,训练时,可以先从历史数据中,获取无数份连续的n+1段历史石油管道信号,作为训练数据。具体训练时,将一份训练数据中的前n段历史石油管道信号,输入至该机器学习模型中,该机器学习模型输出预测的第n+1段的石油管道信号,然后比较预测的第n+1段的石油管道信号和真实的第n+1段的石油管道信号的差值是否小于预设阈值,若不是,调整机器学习模型的参数,使得差值小于预设阈值。采用采集的无数份的连续的n+1段历史石油管道信号,按照上述训练方式对该机器学习模型进行训练,可以使得机器学习模型能够基于预测样本之前的多个石油管道信号片段,准确预测该预测样本对应的石油管道信号片段。本实施例的预设阈值可以为一个很小的数值。最后基于预测出的石油管道信号与预测样本数据进行比较,得到预测误差特征。例如可以先基于预测出的石油管道信号和预测样本数据,获取相应的特征,例如该特征可以为上述方式(a1)中的数值类特征,也可以为上述方式(b1)中的频域类特征。最后将两者的特征进行比较,得到预测误差特征。
本实施例的机器学习模型可以为长短期记忆(longshort-termmemory;lstm)网络模型。训练时,将历史的信号数据输入给lstm模型,定义一个时间步长n(即当前的这个信号值通过之前多少个信号值来判断),如n取300。经过多轮学习后,lstm模型即可根据给定的300个信号值来依次预测之后出现的信号了。
lstm模型之所以可以做到信号的预测是因为其结构很好的归纳了历史信息对当前值的影响。例如,图2为本发明提供的lstm的结构示意图:每个时刻的输入包括历史包装的信息和当前信息,并可以通过参数来调整历史信息对当前的影响。
例如,图3为本发明的心电图数据的异常检测的示例图。如图3所示,以心电图做了个例子,来解释lstm网络模型的异常检测能力。图3的第一行为心电图信号,第二行为lstm根据每个时刻之前的300个信号值预测的整个信号图,第三行则为预测值与真实信号值的均方误差(mse)。从图3可以看出,虽然没有告诉模型哪种是异常信号,但其还是很好的找到了信号的异常之处。
因此,本实施例中,机器学习模型采用lstm网络模型可以基于预测样本之前的多个石油管道信号片段,准确地预测该预测样本对应的信号片段,提高预测误差特征的准确性。
由上述可知,本实施例的步骤(1)具体可以通过上述方式(a1)-(e1)中任意一种来实现,并得到相应的特征。实际应用中,根据不同业务场景的需求,得到的特征可以为一个、两个或者多个。
(2)基于步骤(1)得到的特征,获取与预测样本数据对应的预测样本特征;
例如,若步骤(1)得到的特征的数量多于一个时,整合所得到的特征,得与预测样本数据对应的预测样本特征;而若步骤(1)得到的特征数量为一个时,将得到的特征,作为与预测样本数据对应的预测样本特征。
s102、将预测样本特征输入至已训练得到的石油管道异常信号检测模型,获取石油管道异常信号检测模型的输出结果;
s103、根据石油管道异常信号检测模型的输出结果,确定石油管道信号是否异常。
本实施例中,该石油管道异常信号检测模型为预先已经训练好的。使用时,经过上述步骤s101的方式,可以获取到预测样本特征。然后可以将预测样本特征输入至该石油管道异常信号检测模型中,该石油管道异常信号检测模型基于输入的预测样本特征,输出结果。根据该输出结果,可以确定石油管道信号是否异常。
具体地,在训练时,便已经知道输出结果为什么时,表示石油管道信号正常,输出结果为什么时,表示石油管道信号异常。例如,在训练时,可以设置输出结果为数字0时,表示石油管道信号正常,输出结果1或者其他数值时,表示石油管道信号异常。这些异常和正常的标识,可以在训练时根据业务场景中的使用习惯来设置。
本实施例的石油管道异常信号检测模型可以采用梯度提升树(gradientboostingdecisiontree;gbdt)的网络模型来实现,实际应用中,也可以采用其他神经网络模型来实现,在此不再一一举例赘述。
本实施例的石油管道信号的异常检测方法,通过上述方案,可以采用预先训练好的石油管道异常信号检测模型,来实现对实时采集的石油管道信号进行异常检测,与现有技术相比,由于石油管道异常信号检测模型采用神经网络模型来实现,可以有效地提高异常检测的准确性,且不受石油管道的复杂形状影响,能够有效地保证检测效率。
图4为本发明的石油管道信号的异常检测方法实施例二的流程图。如图4所示,本实施例的石油管道信号的异常检测方法,在上述图1所示实施例的技术方案的基础上,描述本发明的另一种应用场景。如图4所示,本实施例的石油管道信号的异常检测方法,具体可以包括如下步骤:
s200、获取传感器实时采集的石油管道信号;
s201、判断实时采集的石油管道信号的强度值是否位于预设的正常强度区间范围内;若是,执行步骤s202;否则执行步骤203;
s202、确定实时采集的石油管道信号位于正常强度区间范围内;执行步骤s204;
s203、确定预测样本数据对应的石油管道信号是异常的,结束。
本实施例中,可以根据预设的正常强度区间范围来判断实时采集的石油管道信号是正常还是异常,若是异常,便可以不在采用后续的步骤进行检测。而若在正常范围内,则需要进一步采用后续步骤来进行异常检测。因为数值在正常范围内,不代表隐含存在异常状况。
例如,根据相关业务经验的技术专家提供的正常的石油管道振动信号强度数值大约在24000到34000之间,因此,本实施例中,可以据此设计一个预设的正常强度区间范围,如可以设置为20000到40000。若某段样本的信号强度超过40000或者小于20000,可以认为该段信号有异常。
s204、根据传感器实时采集的石油管道信号,生成预测样本数据;执行步骤s205;
s205、对预测样本数据进行特征抽取处理,得到预测样本特征;执行步骤s206;
s206、将预测样本特征输入至已训练得到的石油管道异常信号检测模型,获取石油管道异常信号检测模型的输出结果;执行步骤s207;
在实际应用中,已训练好的石油管道异常信号检测模型,可以部署到自有的服务器上,或者包装成一个网络接口回应网络请求。每当新来了信号数据,就返回石油管道异常信号检测模型判断的结果。
例如,该步骤s206具体实现时,可以向部署有石油管道异常信号检测模型的服务器发送预测样本特征,以及接收服务器返回的输出结果;
或者,可以向石油管道异常信号检测模型对应的网络接口发送包含预测样本特征的网络请求,以及接收包含输出结果的网络响应消息。
s207、以时序信号的方式,在网页中展示石油管道异常信号检测模型的输出结果;
实际应用中,可以通过配置文件选取展示的数据范围。在获取到石油管道异常信号检测模型的输出结果后,运行展示模块,等待石油管道异常信号检测模型的输出结果计算完成,生成展示输出结果的网址,访问生成的网址,即可观看输出结果。本实施例的网页展示采用的是采用flask框架、前端采用highstock以实现进行时序信号的网页显示。
s208、根据网页展示的石油管道异常信号检测模型的输出结果,确定石油管道信号是否异常。
本实施例的步骤s204-s206的实现与上述图1所示实施例的步骤s100-s102的实现相同,详细可以参考上述图1所示实施例的相关记载,在此不再赘述。
本实施例的石油管道信号的异常检测方法,通过上述方案,可以采用预先训练好的石油管道异常信号检测模型,来实现对实时采集的石油管道信号进行异常检测,与现有技术相比,由于石油管道异常信号检测模型采用神经网络模型来实现,可以有效地提高异常检测的准确性,且不受石油管道的复杂形状影响,能够有效地保证检测效率。
图5为本发明的石油管道信号的异常检测模型的训练方法实施例的流程图。如图5所示,本实施例的石油管道信号的异常检测模型的训练方法,具体可以包括如下步骤:
s300、根据传感器历史采集的石油管道信号以及相应石油管道的历史状态信息,生成训练样本数据集;
本实施例的石油管道信号的异常检测模型的训练方法的执行主体为石油管道信号的异常检测模型的训练装置,该石油管道信号的异常检测模型的训练装置用于训练上述图1所示实施例的石油管道信号的异常检测模型。
首先,该步骤s300中的训练样本数据集的生成过程,具体可以包括如下步骤:将传感器历史采集的石油管道信号按预设时间长度切分成多个信号片段;对于每个信号片段,将信号片段作为样本,并将信号片段的对应时间内的石油管道的历史状态作为标记,得到一条训练样本数据放入训练样本数据集中。
本实施例的预设时间长度即为采样周期,按照采样周期将历史采集连续的石油管道信号切分,便得到多个信号片段。
对于每个信号片段,可以从历史数据中获取该信号片段的历史状态,如是正常状态还是异常状态。然后将每个信号片段和该信号片段对应的历史状态作为一条训练样本数据。对于多个信号片段,相应可以得到多条训练样本数据。并将得到的每一条训练样本数据放入训练样本数据集中。
s301、对训练样本数据集进行特征抽取处理,得到训练样本特征集;
例如,该步骤s301在实现时,具体可以包括如下步骤:
(ⅰ)对训练样本数据集中的每条训练样本数据进行如下至少一种处理:
(a2)从每条训练样本数据中提取数值类特征;
例如,具体可以从每条训练样本数据中提取石油管道信号强度值的最大值、最小值、均值方差以及分位数中的至少一个,作为数值类特征。
(b2)从每条训练样本数据中提取频域类特征;
例如,具体实现时,可以先对每条训练样本数据,进行快速傅里叶变换处理;取对应的快速傅里叶变换处理后的实数部分的多个数值;该实数部分的数值的数量与该条训练样本数据中包括的石油管道信号强度值的数量相等;最后提取对应的实数部分的多个数值中的最大值、最小值、均值方差以及分位数中的至少一个,作为频域类特征。
(c2)从每条训练样本数据中提取自身变化趋势特征;
例如,自身变化趋势特征的提取可以采用如下任意一种方式:第一种方式为将每条训练样本数据从中间分开,得到前片分段和后片分段;分别获取前片分段和后片分段的数值类特征;获取前片分段的数值类特征和后片分段的数值类特征的差值,作为自身变化趋势特征;第二种方式为将每条训练样本数据拟合为二元高斯分布;获取二元高斯分布的均值的差值和方差的差值,作为自身变化趋势特征。
(d2)将每条训练样本数据与最近邻的一段历史石油管道信号进行比较,得到历史数据比较特征;以及
例如,可以分别获取每条训练样本数据的数值类特征和最近邻的一段历史石油管道信号的数值类特征;然后比较两者的值类特征,得到历史数据比较特征。
(e2)利用机器学习模型预测出与每条训练样本数据所处时间段对应的石油管道信号,将预测出的石油管道信号与对应的训练样本数据进行比较,得到预测误差特征;
具体地,该方案在实施时,需要先利用无监督机器学习方法基于每条训练样本数据之前的多个石油管道信号片段训练机器学习模型。该机器学习模型可以为lstm模型。然后利用该机器学习模型预测出与每条训练样本数据所处时间段对应的石油管道信号,并将预测出的石油管道信号与对应的训练样本数据进行比较,得到预测误差特征。
具体地,本实施例的步骤(a2)-(e2)的实现原理,与上述图1所示实施例的步骤(a1)-(e1)的实现原理相同,详细可以参考上述图1所示实施例的相关记载,在此不再赘述。
(ⅱ)基于得到的每条训练样本数据的特征,获取对应的训练样本数据对应的训练样本特征,并将对应的训练样本特征放入训练样本特征集中;
例如,若得到的每条训练样本数据的特征的数量多于一个时,整合所得到的特征,作为对应的训练样本数据对应的训练样本特征;
若得到的每条训练样本数据的特征的数量为一个时,将得到的训练样本数据的特征,作为对应的训练样本数据对应的训练样本特征。
基于该步骤的处理,可以对训练样本数据集中的每一条训练样本数据记性特征提取,得到每一条训练样本数据对应的训练样本特征。将训练样本数据集中的每一条训练样本数据对应的训练样本特征,存入训练样本特征集中。
s302、基于训练样本特征集、采集的所述历史状态信息和机器学习算法,训练石油管道异常信号检测模型。
经过上述步骤的处理,可以得到训练样本特征集,该训练样本特征集中可以包括多条训练样本特征。另外,由于每一条训练样本特征对应一段石油管道信号,而每一段石油管道信号又对应一个历史状态信息,因此每一条训练样本特征可以对应一个历史状态信息。训练之前,将每一条训练样本特征和其对应一个历史状态信息作为一条训练数据。训练前,可以先获取一个未经训练的石油管道信号的异常检测模型,如可以为一个gbdt模型,然后为该模型的参数赋予初始值。训练时,取一条训练数据,将其中的训练样本特征输入至该石油管道信号的异常检测模型中,该石油管道信号的异常检测模型输出一个预测的状态。然后判断预测的状态与已采集的历史状态是否一致,若不一致,调整石油管道信号的异常检测模型的参数,使得预测的状态与已采集的历史状态一致。采用采集的训练样本特征集中的所有训练样本特征及对应的历史状态信息,按照上述训练方式,对石油管道信号的异常检测模型进行训练,直至预测的状态与采集的历史状态一致,训练结束,确定石油管道信号的异常检测模型的参数,从而确定石油管道信号的异常检测模型。
本实施例中采集的训练样本数据集中的训练样本数据的数量越多,训练的石油管道信号的异常检测模型就越准确。例如实际应用中采集的训练样本数据集中的训练样本数据的数量可以达到几十万条以上。
本实施例的石油管道信号的异常检测模型的训练过程,与上述图1所示实施例中的异常检测过程的原理相类似,详细亦可以参考上述图1所示实施例的相关步骤的记载,在此不再赘述。
本实施例的石油管道信号的异常检测模型的训练方法,通过上述方案,可以训练一个精准的石油管道异常信号检测模型,进而可以基于该石油管道异常信号检测模型,对石油管道信号进行异常检测,与现有技术相比,可以有效地提高异常检测的准确性,且不受石油管道的复杂形状影响,能够有效地保证检测效率。
图6为本发明的石油管道信号的异常检测装置实施例一的结构图。如图6所示,本实施例的石油管道信号的异常检测装置,具体可以包括:
生成模块10用于根据传感器实时采集的石油管道信号,生成预测样本数据;
抽取模块11用于对生成模块10生成的预测样本数据进行特征抽取处理,得到预测样本特征;
检测模块12用于将抽取模块11抽取的预测样本特征输入至已训练得到的石油管道异常信号检测模型,获取石油管道异常信号检测模型的输出结果;
确定模块13用于根据检测模块12获取的石油管道异常信号检测模型的输出结果,确定石油管道信号是否异常。
本实施例的石油管道信号的异常检测装置,通过采用上述模块,实现石油管道信号的异常检测处理,与上述相关方法实施例的实现原理以及技术效果相同,详细可以参考上述方法实施例的相关记载,在此不再赘述。
图7为本发明的石油管道信号的异常检测装置实施例二的结构图。如图7所示,在上述图6所示实施例的技术方案的基础上,进一步更加详细地介绍本发明的技术方案。
本实施例的石油管道信号的异常检测装置中,生成模块10用于将传感器实时采集的每预设时间长度内的信号作为一条预测样本数据。
进一步可选地,本实施例的石油管道信号的异常检测装置中,抽取模块11用于:
对生成模块10生成的预测样本数据进行如下至少一种处理:从预测样本数据中提取数值类特征;从预测样本数据中提取频域类特征;从预测样本数据中提取自身变化趋势特征;将预测样本数据与最近邻的一段历史石油管道信号进行比较,得到历史数据比较特征;以及利用机器学习模型预测出与预测样本数据所处时间段对应的石油管道信号,将预测出的石油管道信号与预测样本数据进行比较,得到预测误差特征;
基于得到的特征,获取与预测样本数据对应的预测样本特征;
进一步地,基于得到的特征,获取与预测样本数据对应的预测样本特征,包括:
若得到的特征的数量多于一个时,整合所得到的特征,得与预测样本数据对应的预测样本特征;
若得到的特征数量为一个时,将得到的特征,作为与预测样本数据对应的预测样本特征。
进一步可选地,本实施例的石油管道信号的异常检测装置中,抽取模块11用于:
从预测样本数据中提取石油管道信号强度值的最大值、最小值、均值方差以及分位数中的至少一个,作为数值类特征。
进一步可选地,本实施例的石油管道信号的异常检测装置中,抽取模块11用于:
对预测样本数据进行快速傅里叶变换处理;
取快速傅里叶变换处理后的实数部分的多个数值;实数部分的数值的数量与预测样本数据中包括的石油管道信号强度值的数量相等;
提取实数部分的多个数值中的最大值、最小值、均值方差以及分位数中的至少一个,作为频域类特征。
进一步可选地,本实施例的石油管道信号的异常检测装置中,抽取模块11用于:
将预测样本数据从中间分开,得到前片分段和后片分段;分别获取前片分段和后片分段的数值类特征;获取前片分段的数值类特征和后片分段的数值类特征的差值,作为自身变化趋势特征;
或者,
将预测样本数据拟合为二元高斯分布;获取二元高斯分布的均值的差值和方差的差值,作为自身变化趋势特征。
进一步可选地,本实施例的石油管道信号的异常检测装置中,抽取模块11用于:
分别获取预测样本数据的数值类特征和最近邻的一段历史石油管道信号的数值类特征;
获取两者的数值类特征的差值,作为历史数据比较特征。
进一步可选地,如图7所示,本实施例的石油管道信号的异常检测装置中,还包括:
训练模块14用于利用无监督机器学习方法基于预测样本之前的多个石油管道信号片段训练机器学习模型。
对应地,抽取模块11可以利用训练模块14训练得到的机器学习模型预测出与预测样本数据所处时间段对应的石油管道信号,将预测出的石油管道信号与预测样本数据进行比较,得到预测误差特征。
进一步可选地,如图7所示,本实施例的石油管道信号的异常检测装置中,还包括判断模块15。
判断模块15用于判断实时采集的石油管道信号的强度值是否位于预设的正常强度区间范围内;
确定模块13用于根据判断模块15的判断结果,确定实时采集的石油管道信号位于正常强度区间范围内;
进一步地,确定模块13还用于若实时采集的石油管道信号的强度值不在预设的正常强度区间范围内,确定预测样本数据对应的石油管道信号是异常的。
进一步可选地,本实施例的石油管道信号的异常检测装置中,检测模块12用于:
向部署有石油管道异常信号检测模型的服务器发送预测样本特征,以及接收服务器返回的输出结果;
或者,
向石油管道异常信号检测模型对应的网络接口发送包含预测样本特征的网络请求,以及接收包含输出结果的网络响应消息。
进一步可选地,本实施例的石油管道信号的异常检测装置中,还包括:
展示模块16用于以时序信号的方式,在网页中展示检测模块12获取的石油管道异常信号检测模型的输出结果,网页展示采用的是采用flask框架、前端采用highstock以实现。
对应地,确定模块13可以根据展示模块16展示的输出结果,确定石油管道信号是否异常。
本实施例的石油管道信号的异常检测装置,通过采用上述模块,实现石油管道信号的异常检测处理,与上述相关方法实施例的实现原理以及技术效果相同,详细可以参考上述方法实施例的相关记载,在此不再赘述。
图8为本发明的石油管道信号的异常检测模型的训练装置实施例的结构图。如图8所示,本实施例的石油管道信号的异常检测模型的训练装置,具体可以包括:
生成模块20用于根据传感器历史采集的石油管道信号以及相应石油管道的历史状态信息,生成训练样本数据集;
抽取模块21用于对生成模块20生成的训练样本数据集进行特征抽取处理,得到训练样本特征集;
训练模块22用于基于抽取模块21得到训练样本特征集、以及生成模块20生成的训练样本数据集中的历史状态信息和机器学习算法,训练石油管道异常信号检测模型。
本实施例的石油管道信号的异常检测模型的训练装置,通过采用上述模块,实现石油管道信号的异常检测模型的训练,与上述相关方法实施例的实现原理以及技术效果相同,详细可以参考上述方法实施例的相关记载,在此不再赘述。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,生成模块20用于:
将传感器历史采集的石油管道信号按预设时间长度切分成多个信号片段;
对于每个信号片段,将信号片段作为样本,并将信号片段的对应时间内的石油管道的历史状态作为标记,得到一条训练样本数据放入训练样本数据集中。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,抽取模块21用于:
对训练样本数据集中的每条训练样本数据进行如下至少一种处理:从每条训练样本数据中提取数值类特征;从每条训练样本数据中提取频域类特征;从每条训练样本数据中提取自身变化趋势特征;将每条训练样本数据与最近邻的一段历史石油管道信号进行比较,得到历史数据比较特征;以及利用机器学习模型预测出与每条训练样本数据所处时间段对应的石油管道信号,将预测出的石油管道信号与对应的训练样本数据进行比较,得到预测误差特征;
基于得到的每条训练样本数据的特征,获取对应的训练样本数据对应的训练样本特征,并将对应的训练样本特征放入训练样本特征集中;
进一步地,基于得到的每条训练样本数据的特征,获取对应的训练样本数据对应的训练样本特征,包括:
若得到的每条训练样本数据的特征的数量多于一个时,整合所得到的特征,作为对应的训练样本数据对应的训练样本特征;
若得到的每条训练样本数据的特征的数量为一个时,将得到的训练样本数据的特征,作为对应的训练样本数据对应的训练样本特征。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,抽取模块21用于:
从每条训练样本数据中提取石油管道信号强度值的最大值、最小值、均值方差以及分位数中的至少一个,作为数值类特征。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,抽取模块21用于:
对每条训练样本数据,进行快速傅里叶变换处理;
取对应的快速傅里叶变换处理后的实数部分的多个数值;实数部分的数值的数量与该条训练样本数据中包括的石油管道信号强度值的数量相等;
提取对应的实数部分的多个数值中的最大值、最小值、均值方差以及分位数中的至少一个,作为频域类特征。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,抽取模块21用于:
将每条训练样本数据从中间分开,得到前片分段和后片分段;分别获取前片分段和后片分段的数值类特征;获取前片分段的数值类特征和后片分段的数值类特征的差值,作为自身变化趋势特征;
或者,
将每条训练样本数据拟合为二元高斯分布;获取二元高斯分布的均值的差值和方差的差值,作为自身变化趋势特征。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,抽取模块21用于:
分别获取每条训练样本数据的数值类特征和最近邻的一段历史石油管道信号的数值类特征;
获取两者的数值类特征的差值,作为历史数据比较特征。
进一步可选地,本实施例的石油管道信号的异常检测模型的训练装置中,训练模块22,还用于利用无监督机器学习方法基于每条训练样本数据之前的多个石油管道信号片段训练机器学习模型。
对应地,抽取模块21用于利用训练模块22训练得到的机器学习模型预测出与每条训练样本数据所处时间段对应的石油管道信号,将预测出的石油管道信号与对应的训练样本数据进行比较,得到预测误差特征;
上述实施例的石油管道信号的异常检测模型的训练装置,通过采用上述模块,实现石油管道信号的异常检测模型的训练,与上述相关方法实施例的实现原理以及技术效果相同,详细可以参考上述方法实施例的相关记载,在此不再赘述。
图9示出了根据本发明一实施例可用于实现上述方法的计算设备的结构示意图。例如,该计算设备可以用于实现上述石油管道信号的异常检测方法或石油管道信号的异常检测模型的训练方法。
参见图9,计算设备1000包括存储器1010和处理器1020。
处理器1020可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器1020可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(gpu)、数字信号处理器(dsp)等等。在一些实施例中,处理器1020可以使用定制的电路实现,例如特定用途集成电路(asic,applicationspecificintegratedcircuit)或者现场可编程逻辑门阵列(fpga,fieldprogrammablegatearrays)。
存储器1010可以包括各种类型的存储单元,例如系统内存、只读存储器(rom),和永久存储装置。其中,rom可以存储处理器1020或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器1010可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(dram,sram,sdram,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器1010可以包括可读和/或写的可移除的存储设备,例如激光唱片(cd)、只读数字多功能光盘(例如dvd-rom,双层dvd-rom)、只读蓝光光盘、超密度光盘、闪存卡(例如sd卡、minsd卡、micro-sd卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器1010上存储有可执行代码,当可执行代码被处理器1020处理时,可以使处理器1020执行上文述及的石油管道信号的异常检测方法或石油管道信号的异常检测模型的训练方法。
上文中已经参考附图详细描述了根据本发明的石油管道信号的异常检测方法或石油管道信号的异常检测模型的训练。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。