CN117693747A - 多变量异常检测中信号跟随的被动推断 - Google Patents

多变量异常检测中信号跟随的被动推断 Download PDF

Info

Publication number
CN117693747A
CN117693747A CN202180100643.1A CN202180100643A CN117693747A CN 117693747 A CN117693747 A CN 117693747A CN 202180100643 A CN202180100643 A CN 202180100643A CN 117693747 A CN117693747 A CN 117693747A
Authority
CN
China
Prior art keywords
signal
machine learning
learning model
follow
standard deviation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180100643.1A
Other languages
English (en)
Inventor
I·D·伊文索
M·T·格尔德斯
K·C·格罗斯
G·C·王
H·巴拉苏布兰马尼安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oracle International Corp
Original Assignee
Oracle International Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oracle International Corp filed Critical Oracle International Corp
Publication of CN117693747A publication Critical patent/CN117693747A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

描述了与多变量异常检测中信号跟随的被动推断相关联的系统、方法和其它实施例。在一个实施例中,一种用于推断机器学习(ML)模型中的信号跟随的方法包括:计算时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;训练ML模型来预测信号的值;用经训练的ML模型预测每个信号的值;生成预测的值与测得的值之间的残差的时间序列集合;计算残差集合的平均标准偏差;在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及呈现指示经训练的ML模型中存在信号跟随的警报。

Description

多变量异常检测中信号跟随的被动推断
背景技术
大量传感器可以被用于监视各种资产的操作,诸如数据中心、客机和炼油厂。来自传感器的时间序列传感器数据或信号可以被用于机器学习(ML)时间序列预兆(prognostic)监控,以在故障发生之前检测被监视资产的初期故障。ML时间序列预兆通常通过训练ML模型以学习被监视系统的时间序列信号之间的相关性、使用经训练的ML模型预测时间序列信号的“预期”、“正常”或“正确”值并针对观察到的信号行为与预测的信号行为之间的偏差发出警报来操作。这使得有可能在异常信号行为的原因导致被监视资产发生故障之前响应于警报而采取校正性动作。
ML时间序列预兆会遇到一种不期望且潜在危险的现象,称为“跟随”或“信号跟随”。当被监控的信号中出现异常时,会发生跟随,但经训练的ML模型预测与观察到的信号行为相匹配的值,而不是预测反映信号的预期行为的值。因此,ML算法生成“跟随”异常的预测的值,错误地匹配被监视信号的异常行为。当发生跟随时,ML预测与实际测得的信号之间的差异很小,并且异常不会生成报警。跟随可以既昂贵又危险,因为跟随导致错过预兆用例的警报。错过的警报会带来灾难性的后果,诸如在没有来自ML预兆监视系统提前发出警报的情况下被监控的资产会突然且无法控制地发生故障。在本文描述的某些条件下,任何类型的ML算法都会出现跟随现象。
发明内容
在一个实施例中,一种用于推断机器学习模型中的信号跟随的计算机实现的方法,该方法包括:计算多于一个时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;训练机器学习模型来预测信号的值;用经训练的机器学习模型预测每个信号的值;生成每个信号的预测的值与测得的值之间的残差的时间序列集合;计算残差集合的平均标准偏差;在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及呈现指示经训练的机器学习模型中存在信号跟随的警报。
在一个实施例中,计算机实现的方法还包括通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算所述比率,其中被该比率超过的所述阈值在1和1.5之间。
在一个实施例中,计算机实现的方法还包括基于所述比率的值检索机器学习模型的定量跟随程度。
在一个实施例中,计算机实现的方法,其中当推断机器学习模型中的信号跟随时,机器学习模型的训练和值的预测仅发生一次。
在一个实施例中,计算机实现的方法,其中机器学习模型是非线性非参数化回归模型。
在一个实施例中,一种非暂态计算机可读介质,其包括存储在其上的用于推断机器学习模型中的信号跟随的计算机可执行指令,指令在由至少计算机的处理器执行时使计算机:计算多于一个时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;训练机器学习模型来预测信号的值;用经训练的机器学习模型预测每个信号的值;生成每个信号的预测的值与测得的值之间的残差的时间序列集合;计算残差集合的平均标准偏差;在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及呈现指示经训练的机器学习模型中存在信号跟随的警报。
在一个实施例中,非暂态计算机可读介质,其中指令还使计算机通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算所述比率,其中被该比率超过的所述阈值在1和1.5之间。
在一个实施例中,非暂态计算机可读介质,其中指令还使计算机基于所述比率的值检索机器学习模型的定量跟随程度。
在一个实施例中,非暂态计算机可读介质,其中当推断机器学习模型中的信号跟随时,机器学习模型的训练和值的预测仅发生一次。
在一个实施例中,非暂态计算机可读介质,其中机器学习模型是多变量状态估计技术模型。
在一个实施例中,一种计算系统,包括:处理器;可操作地连接到处理器的存储器;非暂态计算机可读介质,可操作地连接到处理器和存储器,并存储用于推断机器学习模型中的信号跟随的计算机可执行指令,指令在由至少计算机的处理器执行时使计算系统:计算多于一个时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;训练机器学习模型来预测信号的值;用经训练的机器学习模型预测每个信号的值;生成每个信号的预测的值与测得的值之间的残差的时间序列集合;计算残差集合的平均标准偏差;在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及呈现指示经训练的机器学习模型中存在信号跟随的警报。
在一个实施例中,计算系统,其中指令还使计算系统通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算所述比率,其中被该比率超过的所述阈值在1和1.5之间。
在一个实施例中,计算系统,其中指令还使计算系统基于所述比率的值检索机器学习模型的定量跟随程度。
在一个实施例中,计算系统,其中当推断机器学习模型中的信号跟随时,机器学习模型的训练和值的预测仅发生一次。
在一个实施例中,计算系统,其中警报包括比率和缓解机器学习模型中的信号跟随的技术的推荐,该技术选自增加ML模型中的训练向量的数量、过滤输入到ML模型的信号以减少噪声以及增加信号的数量。
附图说明
结合在本说明书中并构成其一部分的附图图示了本公开的各种系统、方法和其它实施例。将认识到的是,图中所图示的元素边界(例如,框、框的组,或者其它形状)表示边界的一个实施例。在一些实施例中,一个元素可以被实现为多个元素,或者多个元素可以被实现为一个元素。在一些实施例中,示为另一个元素的内部组件的元素可以被实现为外部组件,并且反之亦然。此外,元素可能不是按比例绘制的。
图1图示了被监视信号与ML模型估计相比较的绘图,其表现出很少的跟随。
图2图示了被监视信号与ML模型预测相比较的绘图,其表现出少量跟随。
图3图示了图1的被监视信号和图2的被监视信号的两个残差集合的比较绘图。
图4图示了与多变量异常检测中的信号跟随的被动推断相关联的系统的一个实施例。
图5图示了与多变量异常检测中的信号跟随的被动推断相关联的方法的一个实施例。
图6图示了示出对于两个ML模型,随着噪声比的增加,跟随度量值的改变的绘图,指示在多变量异常检测中使用信号跟随的被动推断来识别噪声驱动的跟随的能力。
图7图示了示出对于三个ML模型,随着噪声比的增加,跟随度量值的改变的绘图,证明对于观察到的信号与残差之间的任何给定的标准偏差比率,曲线的尺寸与跟随的程度单调映射。
图8图示了与多变量异常检测中的信号跟随的被动推断相关联的方法的一个实施例。
图9图示了配置有所公开的示例系统和/或方法的计算系统的实施例。
具体实施方式
本文描述了用于在多变量异常检测中被动推断信号跟随的系统和方法。
被称为“跟随”或“信号跟随”的不期望现象会对在用于多变量异常检测的所有类型的非线性非参数化(NLNP)回归算法(包括神经网络(NN)、支持向量机(SVM)、自关联核回归(AAKR)和基于相似性的建模(SBM)(诸如多变量状态估计技术(MSET)(包括Oracle专有的多变量状态估计技术(MSET2))(总称为“ML异常检测”算法))中检测异常的能力产生不利影响。跟随是任何时间序列异常检测ML的问题。这已经针对上面列举的所有主要的基于回归的时间序列异常检测算法得到了验证。术语“跟随”源于这样的观察:由于信号依赖性的复杂相互作用,特别是在信噪比差的较小ML模型中,ML估计将“跟随”信号的降级,错误地预测部分或全部模拟降级的值。当实际(即,观察到的)信号偏离模型估计时,时间序列预兆应用中的异常通常会被发现。如果跟随现象导致模型估计跟踪实际测得的信号,那么不会检测到降级,这在安全性关键型行业中会是危险的,并且在未检测到的异常会导致灾难性故障的行业中代价高昂。
一般而言,跟随的倾向是以下一项或多项的结果:(i)ML模型中的信号太少,(ii)信号的确定性结构上叠加的测量-噪声内容太大,或者(iii)被监视信号之间的相关性太小。这已被经验证明。因而,当通过实现本文的系统和方法在模型中检测到跟随现象的存在时,系统和方法还可以帮助用户采取步骤通过以下来改变模型:(i)将更多信号添加到模型中,(ii)降低噪声水平(例如,通过实现平滑滤波器),和/或(iii)将更多相关的信号添加到模型中、在改变之后检查模型以确定模型的改变是否减少跟随,并在最终模型验证中再次检查模型的跟随以表明跟随已被消除。
—原始跟随度量作为用于推断式跟随度量的基准—
开发了一种原始跟随表征技术,用于分析ML异常检测算法以确定ML模型容易受到的跟随程度,作为跟随问题的初始解决方案。这种原始跟随表征技术在2020年11月2日提交的美国专利申请序列No.17/086,855中进行了更详细的描述,发明人为Zexi CHEN、KennyGROSS、Ashin GEORGE和Guang WANG,标题为“Characterizing Susceptibility of aMachine-Learning Model to Follow Signal Degradation and Evaluating PossibleMitigation Strategies”,该申请的全部内容通过引用整体并入本文。原始跟随表征技术是验证新的ML异常检测模型以确保不存在跟随的宝贵工具。对于具有数百个传感器且采样间隔为数秒到数分钟的资产,原始跟随表征技术非常适用于ML异常检测模型。原始跟随表征技术评估模型是否存在跟随,并用跟随度量(FM)定量地表征模型中跟随的程度。在发现ML模型拥有一定程度的跟随的情况下,原始跟随表征技术会进一步帮助指导缓解步骤,以在模型用于实际资产的预测性维护之前消除模型中的跟随。
在本文描述的用于在多变量异常检测中被动推断信号跟随的系统和方法的上下文中,由原始跟随表征技术产生的跟随度量(FM)可以被引用并用作基准来说明通过本文所示和描述的推断式跟随度量(iFM)实现的稳健性和改进。因而,本节给出了如何使用跟随度量来识别和定量描述跟随现象。
在高层面,原始跟随表征技术涉及在没有异常的时间序列信号的数据集上训练ML模型,然后通过一次一个信号地将简单的斜坡形故障签名插入到每个信号中来递归运行ML模型,并找到用于该信号的ML模型的跟随度量。定量地表征(在0和1之间)原始跟随表征技术中对于给定时间序列信号在ML模型中跟随的程度的跟随度量(FM)由下式给出
其中mresiduals是ML模型预测的信号与具有插入的故障签名的被监视信号之间的残差的斜率,并且mramp是插入的斜坡形故障签名的斜率。残差是某个时间点(或观察)的被监视信号数据与那个点的ML模型估计之间的逐点差异。残差斜率与斜坡斜率的低比率指示ML模型正在跟随插入的信号降级,并且为ML模型关于那个信号的性能确定相应高(更接近1)的跟随度量。这个过程需要对数据集中的每个信号完整运行一次ML算法(通过训练和监控阶段两者)。
注意的是,虽然可以将其它更复杂的降级模式插入到被监视信号中,但使用简单的斜坡降级模式并不失通用性。具有跟随降级的倾向的ML模型将对任何注入的故障签名进行跟随。但是,斜坡降级模式通常是线性的,因此容易用于根据上面的公式生成简单的FM。
图1图示了被监视(或被测量)信号(示例信号#5)与ML模型估计(或预测)相比较的绘图(plot)100,其表现出很少跟随。绘图100包括两个子绘图:(i)在顶部,信号振幅子绘图105,其示出了相对于振幅轴120和观察轴125绘制的随时间的被监视信号110和估计的信号115的振幅值;以及(ii)在底部,针对振幅轴165和观察轴170绘制的随时间的被监视信号110与ML模型估计115之间的残差160的残差振幅子绘图155,其中插入到被监视信号110中的斜坡降级模式的斜率175被叠加在残差160上。斜坡降级模式在观察3750和5000之间被插入到被监视信号110中。绘图100描绘了不包含跟随的ML模型估计。清楚的是,被测量信号110中存在降级,如信号振幅子绘图105中所示。如在残差振幅子绘图155中所看到的,残差160与降级175的斜率对准。随着残差160的斜率趋向于降级175的斜率(或与其对准),跟随度量接近零,这指示ML模型估计没有表现出跟随。
图2图示了被监视(或被测量)信号(示例信号#5)与ML模型估计(或预测)相比较的绘图200,其表现出少量的跟随。绘图200包括两个子绘图:(i)在顶部,信号振幅子绘图205,其示出了相对于振幅轴220和观察轴225绘制的随时间的被监视信号210和估计的信号215的振幅值;以及(ii)在底部,针对振幅轴265和观察轴270绘制的随时间的被监视信号210和ML模型估计215之间的残差260的残差振幅子绘图255,其中插入到被监视信号110中的斜坡降级模式的斜率275被叠加在残差160上。斜坡降级模式在观察3750和5000之间被插入到被监视信号210中。绘图200描绘了包含一些跟随的ML模型估计。被测量信号210的降级在信号振幅子绘图205中是清楚的,但是跟随在估计的信号215中可能不会立即明显。但是,如残差振幅子绘图255中所看到的,残差260的斜率与插入的降级模式的斜率275不对准,指示表现出跟随的ML模型估计。
图3图示了两个残差集合,图1的被监视信号110的残差160和图2的监视信号210的残差260,的比较绘图300。残差160和残差260都针对振幅轴305和观察轴310绘制,其中插入到信号110和210两者中的斜坡降级模式的斜率315被叠加在残差160和260上。虽然残差110(用普通线示出)显示出很少的跟随,但是残差210(用圆圈线示出)显示出一些跟随,如通过它们与斜率315的线的偏差所看到的。绘图300在同一个绘图中示出两个残差集合160和260以进行比较,进一步说明当ML模型中存在跟随现象时ML估计所遭受的偏差。
—新的推断式跟随度量所克服的挑战—
目前,物联网(IoT)数字化转型计划正在推动跨行业采用更密集的监视,为此,原始解决方案可以要求难以实现的大量处理和/或存储器需求来检测跟随。对于商业实体(尤其是在公用事业和石油和天然气行业)来说,拥有数据历史信号数据库的情况并不少见,这些数据库已经对来自IoT传感器的遥测数据进行了归档十多年。而且,各个领域的实体都在升级其传感器和数据采集系统,并获得比前几年更高的采样率。这两种现象导致传感器流非常长,包括数十万、数百万甚至数十亿的观察。例如,现代飞机现在具有七万五千个传感器,而现代炼油厂和中型数据中心每个都可以具有一百万个传感器。同时,数据采集(DAQ)单元(将物理现象的测量结果转换成数字值的仪器)通常能够提供数十毫秒的采样率,低至单毫秒的采样间隔(即,kHz级采样率)。
原始跟随表征技术受到一些限制其应用的可扩展性限制。虽然原始跟随表征(或跟随度量)解决方案非常适合具有稀疏监视(其特征在于数十到数百个传感器以秒到分钟的间隔采样)的被监视系统,但N个传感器的递归执行不容易扩展到更密集的监视(其特征在于处理和存储器需求增加了几个数量级,因此N值非常大和/或每个传感器的观察的高数量)。这对于不断扩大的商业实体组提出了棘手的计算挑战,这些实体的(一个或多个)数据历史记录(记录或归档来自正在进行的过程的数据的软件程序)已经从非常高的采样率传感器收集了信号数据和/或具有多年的存档的信号数据。只有解决了数据量固有的计算挑战,这些数据才可以被用于训练新的机器学习模型。现代高性能计算(HPC)和云计算产品“窒息”(即,无法完成)基于具有数亿到数十亿的观察的信号档案的ML模型的训练。之所以如此,是因为(i)训练ML模型所需的存储器占用量随着受监控的传感器数量的平方而增加,以及(ii)为了维持训练向量的均匀密度,计算成本随着用于训练机器学习模型的历史数据集中观察的数量的立方幂而增加。在原始跟随表征过程中,需要对信号数据库中的每个信号重复这种ML模型的训练。因此,原始跟随表征工具受到存储器占用量和总体计算成本的限制,以至于无法确认模型中是否存在跟随,并且不能用于在其数据历史(DataHistorian)信号档案中具有数亿至数十亿观察的IoT客户。
原始跟随表征技术及其适应度度量输出还存在一些其它限制。首先,人为地将降级插入到信号上本质上会更改信号趋势,如果信号中已经存在降级,那么该趋势会夸大FM值。其次,原始跟随度量无法在出现高跟随程度的情况下区分跟随的严重性。第三,原始跟随表征技术评估ML模型在存在异常趋势时如何进行估计,但没有解决跟随的主要驱动因素:噪声。当部署ML算法时,一个重要的目标/特征是学习被监视系统的底层行为。特别是时间序列预报和异常检测ML将开始学习系统的关键模式,但随着引入更多测量噪声,模式首要性变得更加不透明并且算法将开始学习或遵循除了标称行为之外的噪声模式。另外,在异常检测的一些应用中,许多被监视信号可以是“范围界定的”,这意味着对于某些机械、机电以及甚至液压流量系统,控制变量占空比只能在零(空闲)和最大(100%)之间。对于此类范围界定变量,叠加高于100%占空比最大设置的斜坡在物理上是没有意义的。
本文描述的系统和方法通过实现一种方法(多变量异常检测中的信号跟随的被动推断)克服了传感器数量和采样率的挑战,该方法不要求多次训练/执行迭代来评估跟随和定量表征跟随的程度。代替地,以下方法的新被动推断只需执行一次ML算法。通过仅运行一次ML算法并且客户数据集中没有异常,可以从根据ML的单次运行生成的计算出的残差的标准偏差推断产生的ML模型的跟随程度(残差是被测量信号与信号的ML模型之间的成对差异)。被测量信号与ML模型估计之间的残差的这个标准偏差用作如本文所述的推断式跟随度量(iFM)。
有利地,本文描述的用于多变量异常检测中跟随的被动推断的系统和方法容易扩展到当前和未来的涉及数亿至数十亿观察的密集监视用例,而无需原始解决方案的无法支持的计算成本。另一个优点是,在用于现有ML监控系统的多变量异常检测中用于跟随的被动推断的系统和方法的实现使得现有机器学习监视系统更加准确,从而降低了用于IoT终端客户的ML预兆异常发现的假报警率。
而且,本文描述的用于在多变量异常检测中跟随的被动推断的系统和方法不仅解决了由于信号中存在未检测到的跟随而引起的FM膨胀的问题,而且还能够量化来自降级和噪声的跟随,从而导致更稳健和通用的度量。
另外,本文描述的用于多变量异常检测中的跟随的被动推断的系统和方法通过消除将斜坡或其它合成降级签名插入到信号中的需要而避免了所插入的斜坡在范围界定信号上超过有意义值的担忧。
—示例环境—
图4图示了与多变量异常检测中的信号跟随的被动推断相关联的系统400的一个实施例。
在一个实施例中,系统400包括时间序列数据服务405和通过诸如互联网和连接到互联网的私有网络之类的网络415连接的企业网络410。时间序列数据服务405或者通过网络425直接连接到传感器(诸如传感器420)或数据采集单元(DAQ)(诸如远程终端单元(RTU))或者通过一个或多个上游设备435间接连接到传感器(诸如传感器430)或DAQ。在一个实施例中,网络415和425是同一个网络,而在另一个实施例中,网络415和425是分开的网络。
在一个实施例中,时间序列数据服务405包括各种系统,诸如被动信号跟随推断组件440、传感器接口服务器450、web接口服务器455和数据存储库460。这些系统440、450、455、460中的每一个都配置有逻辑,例如通过各种软件模块,用于执行它们被描述为执行的功能。在一个实施例中,时间序列数据服务405的组件在通过数据网络或云网络(诸如服务器侧网络465)互连的一个或多个硬件计算设备或主机上实现。例如,时间序列数据服务405的组件可以由一个或多个计算硬件形状的网络连接的计算设备来执行,诸如标准(或通用)中央处理单元(CPU)形状、密集输入/输出(I/O)形状、图形处理单元(GPU)形状和HPC形状。在一个实施例中,时间序列数据服务405的组件各自由专用计算设备实现。在一个实施例中,时间序列数据服务405的几个或所有组件由公共(或共享)计算设备实现,即使在图4中被表示为离散单元。在一个实施例中,时间序列数据服务405的组件可以跨多个计算设备实现。
在一个实施例中,被动信号跟随推断组件440包括ML模型训练组件442、iFM生成组件444和跟随警报组件446。在一个实施例中,这些组件中的每一个都被实现为软件模块。在一个实施例中,ML模型训练组件442被配置为训练并生成机器学习模型,以根据表示系统的普通、正确操作的训练数据来预测或估计正确或预期的信号值,例如如本文进一步详细描述的。在一个实施例中,iFM生成组件444被配置为基于时间序列信号中的实际值的集合的标准偏差和时间序列信号的估计值与实际值之间的残差集合的标准偏差来推断ML模型中的跟随的程度(通过生成iFM),例如如本文中进一步详细所示和描述的。在一个实施例中,跟随警报组件446被配置为当iFM指示不可接受的高水平的跟随时启动各种形式的警报,例如如本文进一步详细描述的。
在一个实施例中,时间序列数据服务405的组件通过电子消息或信号相互通信。这些电子消息或信号可以被配置为对访问组件的特征或数据的功能或过程的调用,诸如例如应用编程接口(API)调用。在一个实施例中,这些电子消息或信号以与传输控制协议/互联网协议(TCP/IP)或其它计算机网络协议兼容的格式在主机之间发送。时间序列数据服务405的每个组件可以(i)生成或编写电子消息或信号以向另一个组件发出命令或请求,(ii)使用调度、分派和路由系统405的基础设施将消息或信号传输到其它组件,以及(iii)解析接收到的电子消息或信号的内容以识别该组件可以执行的命令或请求,并且响应于识别出命令,该组件将自动执行该命令或请求。
在一个实施例中,时间序列数据服务405可以被实现为云基础设施上的服务。在一个实施例中,时间序列数据服务405可以由专用的第三方托管,例如在基础设施即服务(IAAS)、平台即服务(PAAS)或软件即服务(SAAS)架构中。在一个实施例中,时间序列数据服务405可以在本地基础设施(诸如一个或多个专用服务器的集合)上实现。
在一个实施例中,时间序列数据服务405可以由第三方托管,和/或由第三方为了多个账户所有者/租户的利益而操作,每个账户所有者/租户都经营一家企业,并且每个账户所有者/租户都具有相关联的企业网络410。在一个实施例中,时间序列服务405和企业网络410中的任一个可以与在多种密集传感器(即,使用大量传感器)IoT行业(诸如石油和天然气生产、公用事业、航空、家用电器和数据中心IT)中操作的业务实体相关联。在一个实施例中,时间序列数据服务405配置有诸如软件模块之类的逻辑,以根据本文描述的系统和方法操作时间序列数据服务405以预兆性地检测或发现具有随机停机时间的资产中的异常操作。
在一个实施例中,传感器或DAQ 420、430被配置为监视资产(诸如,机器、设备、系统或设施)中或周围发生的物理现象。在一个实施例中,传感器或DAQ 420、430可以可操作地连接到资产或以其它方式被配置为检测和监视资产中或周围发生的物理现象。资产一般包括具有执行可测量活动的组件的任何类型的机械或设施。传感器或DAQ 420、430可以是用于监视任何类型的物理现象的网络连接的传感器。传感器或DAQ 420,430的网络连接可以是有线的或无线的。传感器420、430可以包括(但不限于):电压传感器、电流传感器、温度传感器、压力传感器、转速传感器、温度计、流量计传感器、振动传感器、麦克风、光电传感器、电磁辐射传感器、接近传感器、占用传感器、运动传感器、陀螺仪、倾斜计、加速度计、全球定位系统(GPS)传感器、扭矩传感器、屈曲传感器、湿度监视器、液位传感器、电子鼻、核辐射探测器,或任何用于生成描述检测到或感测到的物理行为的电信号的各种其它传感器或换能器。
在一种实施例中,传感器420、430通过网络425连接到传感器接口服务器450。在一个实施例中,传感器接口服务器450配置有诸如软件模块之类的逻辑,以收集来自传感器420、430的读数并将它们作为观察存储在时间序列数据结构中,例如存储在数据存储库460中。在一个实施例中,传感器接口服务器450包括用于创建数据存储库460中的时间序列数据结构(诸如时间序列数据档案)并与之交互的数据历史模块。传感器接口服务器450被配置为与传感器交互,诸如通过暴露一个或多个应用编程接口(API),该API被配置为使用适用于各种传感器420、430的传感器数据格式和通信协议接受来自传感器的读数。传感器数据格式一般将由传感器设备规定。通信协议可以是自定义协议(诸如早于IoT实施方式的遗留协议)或各种IoT或机器对机器(M2M)协议中的任何一种,诸如受限应用协议(CoAP)、数据分发服务(DDS)、用于Web服务的设备简档(DPWS)、超文本传输协议/表示状态传输(HTTP/REST)、消息排队遥测传输(MQTT)、通用即插即用(UPnP)、可扩展消息传递和存在协议(XMPP)、ZeroMQ,以及传输控制协议可以承载的其它通信协议——互联网协议或用户数据报协议(TCP/IP或UDP)传输协议。当扩展为通过TCP/IP或UDP操作时,也可以使用SCADA协议,诸如用于过程控制统一架构(OPC UA)的OLE、Modbus RTU、RP-570、Profibus、Conitel、IEC 60870-5-101或104、IEC 61850和DNP3。在一个实施例中,传感器接口服务器450轮询传感器420、430以检索传感器读数。在一个实施例中,传感器接口服务器被动地接收由传感器420、430主动传输的传感器读数。
为了解释的简单和清楚起见,企业网络410由一个或多个个人计算机475或服务器480可操作地连接到的现场局域网470,以及通过网络415或其它合适的通信网络或网络的组合连接到企业网络410的一个或多个远程用户计算机485表示。个人计算机475和远程用户计算机485可以是例如台式计算机、膝上型计算机、平板计算机、智能电话或具有连接到局域网470或网络415的能力或具有其它同步能力的其它设备。企业网络410的计算机跨网络415或另一个合适的通信网络或网络的组合与时间序列数据服务405接口。
在一个实施例中,远程计算系统(诸如企业网络410的远程计算系统)可以通过web接口服务器455访问由时间序列数据服务405提供的信息或应用。例如,企业网络410的计算机475、480、485可以从时间序列数据序列数据服务405访问被动信号跟随推断组件440。在一个实施例中,远程计算系统可以向web接口服务器455发送请求并从web接口服务器455接收响应。在一个示例中,对信息或应用的访问可以通过使用个人计算机475或远程用户计算机485上的web浏览器来实现。例如,企业网络410的这些计算设备475、480、485可以请求并接收基于网页的图形用户界面(GUI),用于访问由被动信号跟随推断组件440提供的监视和警报信息。在一个示例中,这些通信可以在web接口服务器455和服务器480之间交换,并且可以采取使用JavaScript对象表示法(JSON)作为数据交换格式的远程表示状态传输(REST)请求的形式,或者是简单对象与XML服务器之间的访问协议(SOAP)请求。
在一个实施例中,数据存储库460包括一个或多个数据库(诸如数据历史档案、时间序列数据库或信号数据库)或被配置为存储和提供(serve)由传感器接口服务器450从传感器420、430接收的时间序列数据的其它数据结构。时间序列数据可以由一个或多个传感器以规则或不规则的间隔所感测到的值组成,并且与传感器和感测该值的时间相关联地存储。在一个实施例中,时间序列数据库是被配置为存储和提供时间序列数据的数据库。在一些示例配置中,(一个或多个)数据存储库460可以使用一个或多个/>Exadata计算形状、网络附加存储(NAS)设备和/或其它专用服务器设备来实现。API调用可以包括对数据库的查询。查询可以用SQL组成并在SQL运行时中执行,或者使用其它适当的查询语言和环境。
在一个实施例中,上游设备435可以是用于管理IoT连接设备的第三方服务。或者,在一个实施例中,上游设备435可以是网关设备,其被配置为使传感器430能够与传感器接口服务器450通信(例如,在传感器430不支持IoT,因此不能直接与传感器接口服务器450通信的情况下)。
—用推断式跟随度量定量表征跟随—
本文描述的用于多变量异常检测中跟随的被动推断的系统和方法给出了一种完全不同的方法来表征所有类型的ML异常检测算法中的跟随,称为推断式跟随度量(iFM)。
使用iFM表征跟随的过程不要求将任何降级签名引入任何被监视信号中,以诱导然后表征跟随,如原始跟随表征技术中那样。代替地,新的iFM是一种系统模式识别实施方式,它通过分析被监视信号上已有的测量噪声来推断ML模型中是否存在跟随。对于源自物理换能器的所有测得的IoT信号,必然存在一些测量噪声。此类信号一般表达为定量变量。(注意的是,对于分类变量,即,状态变量(诸如开/关、打开/关闭、接合/脱离),或可以呈现固定数量的可能离散状态之一的其它变量,没有噪声,但是也不可能跟随该变量的信号。)无论是对于监视非常稳定的过程的高准确性信号来说噪声水平小,还是由于传感器准确性差(不确定性大)和/或被监视的噪声物理过程而引起的噪声水平大,新的iFM技术都可以对跟随度量进行高度准确的推断,如本文所示。
新的iFM是一种识别ML模型中发生了多少跟随的计算技术,而不会像原始跟随表征技术那样依次引起每个信号的降级。iFM的前提是,如果ML模型正确执行,那么将在ML训练期间学习标称行为,然后在后面的监控期间,将检测到异常降级签名。
因此,对于没有表现出跟随的ML模型,由于监视信号产生的残差的标准偏差(STD或σ)应当与信号本身的标准偏差相关。
所有测得的信号都拥有确定性组成部分,并带有一些叠加的随机测量噪声。没有ML算法可以预测随机性,包括随机测量噪声。ML算法对随机测量噪声的预测是ML算法对跟随的指示。因此,如上面所提到的,当ML模型表现良好并且没有跟随时,残差上的噪声应当与传入的未加工的测得的信号上的噪声相关。但是,如果看到残差的标准偏差与原始测得的信号上的噪声相比变得更小、减少或以其它方式“收缩”,那么这是跟随的指示。这种残差的收缩意味着ML模型跟随随机性。当残差的标准偏差小于所分析的测得的信号的标准偏差时,可以示出收缩的残差的存在。而且,ML模型的跟随程度越大,残差中随机噪声的减少就越大。通过非线性非参数化(NLNP)回归被变换的信号的行为的这一特点可以被充分用于对任何基于NLNP回归的异常检测服务进行稳健、高保真的跟随表征。这意味着,不像原始跟随表征技术那样通过在每个受监控的信号中引入异常并针对N个信号递归评估ML N次来直接计算跟随,而是可以通过对无异常数据运行ML模型一次、计算残差、计算残差的标准偏差(STD)、编译未加工信号的STD与残差的相应STD的比率的列表并对信号的数据库进行整合(integrate)以获得模型的表现出跟随倾向的定量指数(iFM)来推断ML模型中的跟随程度。因此,在一个实施例中,当在机器学习模型中推断信号跟随时,ML模型的训练和值的预测仅发生一次。
新的iFM指数与ML模型的跟随程度之间存在1对1的映射,但这种映射仅在同一信号数据库内才是正确的。注意的是,时间序列信号的每个数据库拥有不同的信噪比(SNR)、不同程度的信号内相关模式和不同的采样率。由于信号内相关模式的非线性复杂性,从数学上来说,推导出某个分析公式来预测时间序列信号的任何数据库的跟随在数学上是不易处理的,基于上面列出的运行模型-计算残差-计算标准偏差-整合步骤的单个完成来编译用于跟随的查找表方法也是不易处理的。
新的iFM跟踪原始未加工信号STD与计算出的残差STD的比率,这是为数据库中的每个信号计算的。有利地,当用iFM表征跟随时,ML模型仅需要运行一次,这与针对N个信号使用ML模型的递归执行N次的原始跟随表征技术相反。在计算出针对每个信号的未加工信号STD与计算出的残差STD的比率的表之后,这些值在整个数据库上求平均,以考虑任何离群行为并给出跟随效应的整体表示。
—用于跟随的推断式表征的示例方法—
在一个实施例中,本文描述的计算机实现的方法的每个步骤可以通过一个或多个计算设备的处理器(诸如参考图9中所示和描述的处理器910)执行以下操作来执行:(i)访问存储器(诸如存储器915和/或参考图9所示和描述的其它计算设备组件)和(ii)配置有使系统执行方法的步骤的逻辑(诸如参考图9所示和描述的多变量异常检测中信号跟随的被动推断逻辑930)。例如,处理器访问存储器并从存储器读取或向存储器写入以执行本文描述的计算机实现的方法的步骤。这些步骤可以包括(i)检索任何必要的信息,(ii)计算、确定、生成、分类或以其它方式创建任何数据,以及(iii)存储任何计算、确定、生成、分类或以其它方式创建的数据供后续使用。对存储(storage)或存储(storing)的引用指示作为计算设备的存储器或存储装置/盘(诸如存储器915,或计算设备905的存储装置/盘935或参考图9所示和描述的远程计算机965,或参考图4所示和描述的数据存储库460中)中的数据结构的存储。
在一个实施例中,方法的每个后续步骤响应于解析接收到的信号或检索到的存储的数据而自动开始,该信号或数据指示前一步骤已被至少执行到后续步骤开始所必需的程度。一般而言,接收到的信号或检索到的存储的数据指示前一步骤的完成。
图5图示了与多变量异常检测中的信号跟随的被动推断相关联的方法500的一个实施例。方法500以详细流程图示出了用于计算和跟踪用于时间序列信号的任何数据库的iFM的过程的一个实施例。
在一个实施例中,方法500的步骤由被动信号推断组件440(如参考图4中所示和描述的)执行。在一个实施例中,被动信号推断组件440是配置有多变量异常检测中信号跟随的被动推断逻辑930的专用计算设备(诸如计算设备905)。在一个实施例中,被动信号推断组件440是配置有逻辑930的专用计算设备的一个或多个模块。
方法500可以基于各种触发而被自动发起,诸如响应于通过网络接收信号或解析存储的数据,该数据指示(i)时间序列数据服务405的用户(或管理员)已发起方法500,(ii)方法500被安排为在定义的时间或时间间隔被发起,或者(iii)时间序列数据服务405的用户(或管理员)已经执行了在信号数据库上训练ML模型的命令。响应于解析接收到的信号或检索到的存储的数据并确定该信号或存储的数据指示方法500应当开始,方法500在“开始”框505处开始。处理继续到过程框510。
在处理框510处,处理器用M个时间序列信号初始化信号数据库。在一个实施例中,处理器接受描述信号数据库的参数,包括信号的数量M、观察的数量或信号数据库的长度O,并生成长度为O的M个合成信号的数据库。例如,参数可以由用户通过高保真信号合成器的图形用户界面(GUI)录入,并且信号合成器生成由被监视系统的传感器在普通、非异常操作期间产生的信号的模拟。合成信号的数据库可以存储在例如数据存储库460中。在一个实施例中,处理器接受对例如存储在数据存储库460中的具有M个信号的特定信号数据库的选择,并且例如通过从数据存储库460中的存储装置检索信号数据库(全部或部分)并将其保存在存储器中来使其准备好访问。在一个实施例中,具有M个信号的信号数据库可以是在选择之前生成并存储的合成信号的数据库。在一个实施例中,具有M个信号的信号数据库可以是从诸如传感器420、430之类的传感器记录并在选择之前存储的实际信号的数据库。一旦处理器由此完成用M个信号初始化信号数据库,过程框510处的处理就完成,并且处理继续到过程框515。
在过程框515处,处理器将信号计数器i初始化为值1。信号计数器i是索引号,其指示数据库中的哪个信号(在从信号编号1到信号编号M的范围内)是在下面参考框520、525和530示出和描述的处理循环中考虑的当前信号。在一个实施例中,处理器为信号计数器声明整数变量i,并执行赋值操作以赋予i整数值1。一旦处理器完成将信号计数器i初始化为值1,过程框515处的处理就完成,并且处理继续到判定框520。
框520、525和530形成对信号数据库中的M个信号中的每一个重复的处理循环。参考图5将处理循环示出并描述为while循环,其中先决条件在判定框520处表达。可替代地,处理循环也可以被实现为do-while循环,并在循环之后表达后置条件。在判定框520处,处理器确定信号数据库中是否剩余信号要进行评估(在框525处)。在一个实施例中,处理器通过评估信号计数器i的值是否小于或等于数据库中信号的数量M来做出这个确定。处理器检索数据库中信号的数量M的值以及信号计数器i的当前值。处理器比较M与i的值。当i的值小于或等于M时,信号数据库中还有信号要进行评估。当i的值不小于或等于(即,大于)M时,数据库中没有剩余要进行评估的信号。在处理器由此确定信号数据库中还有信号的情况下(i≤M?:是),判定框520处的处理完成,并且处理继续到过程框525。在处理器确定信号数据库中没有剩余信号的情况下(i≤M?:否),判定框520处的处理完成,框520、525和530的循环终止,并且处理继续到过程框535。
在过程框525处,处理器计算信号编号i的标准偏差,并存储它。在一个实施例中,处理器通过以下操作计算信号编号i的标准偏差:(i)从信号数据库中检索信号编号i的每次观察处的信号编号i的振幅值(amplitudeobs),例如通过解析信号编号i以提取1和信号编号i中观察的总数(包含该总数在内)之间的每个观察的振幅值;(ii)根据所有检索到的振幅和信号编号i中的观察的总数(numObs)计算信号编号i的平均振幅(signalMean),例如通过求解如等式2中所示的等式:
(iii)根据信号编号i的平均振幅、所有检索到的振幅以及信号编号i中的观察的总数,计算信号编号i的方差(signalVariance),例如通过求解如等式3中所示的等式:
以及(iv)根据信号编号i的方差计算信号编号i的标准偏差(signalSTD),例如通过求解如等式4中所示的等式:
在上述每个步骤处,处理器可以通过将结果(振幅、均值、方差和标准偏差)作为数据结构写入存储器或存储装置来存储结果以用于进一步处理。例如,信号的均值、方差和标准偏差可以存储在与信号编号i相关联的数据结构中,诸如信号数据库中该信号的数据结构的元数据字段中。一旦处理器完成计算信号编号i的标准偏差,并存储它,过程框525处的处理就完成,并且处理继续到过程框530。
在过程框530处,处理器将信号计数器i的值递增一。在一个实施例中,检索i的值,找到i的值与一的和,并且将该和的值存储为i的值。这将使循环前进到所考虑的下一个信号。一旦处理器因此完成将信号计数器i的值递增一,过程框530处的处理就完成,并且处理返回到判定框520。
在框520、525和530的循环完成之后,处理进行到过程框535。在过程框535处,处理器计算所有M个信号的标准偏差的均值并存储它。在一个实施例中,处理器通过以下操作来计算所有M个信号的标准偏差的均值:(i)从与每个信号相关联的数据结构中检索M个信号中的每个信号的标准偏差,例如通过解析M个信号中每个信号的数据结构以定位信号的标准偏差并提取它;以及(ii)根据所有提取的标准偏差计算M个信号的平均标准偏差(signalSTDMean),例如通过求解如等式5所示的等式:
处理器可以通过将结果作为数据结构写入存储器或存储装置来存储所有M个信号的标准偏差的计算出的均值以供进一步处理。例如,所有M个信号的标准偏差的均值可以存储在与信号数据库相关联的数据结构中,诸如信号数据库的元数据字段中。至此,处理器计算出M个时间序列信号的测得的值的一个平均标准偏差。一旦处理器因此完成计算所有M个信号的标准偏差的均值并存储它,过程框535处的处理就完成,并且处理继续到过程框540。
在过程框540处,处理器用信号数据库的训练部分训练机器学习模型并生成机器学习模型。
在一个实施例中,处理器实现监督式学习过程以建立从M个信号的信号数据库中选择的信号集合中的每个信号的状态估计模型。在一个实施例中,其中M较小,可以选择信号数据库中的所有M个信号包括在状态估计模型中。在一个实施例中,其中M较大,可以选择信号数据库中的信号的采样以包括在状态估计模型中。处理器选择训练数据的集合——一段时间/观察间隔内的表示由信号数据库中的信号表示的系统的正常操作状态的信号数据。例如,这可以是信号数据库中被确认表示正常操作的信号的第一或初始部分。在一个实施例中,ML状态估计模型是MSET或MSET2模型。在一个实施例中,ML状态估计模型实现除MSET或MSET2以外的ML异常检测算法。在一个实施例中,ML状态估计模型是非线性非参数化回归模型。对于信号集合中的每个信号,用训练数据训练状态估计模型,以基于值和集合中的其它信号之间的相关性生成信号的准确估计。然后处理器存储状态估计模型,从而生成状态估计模型。以这种方式,处理器已训练机器学习模型来预测或估计时间序列信号的值。
在一个实施例中,处理器配置故障检测模型以识别测得的信号与该信号的估计值之间的异常偏差。在一个实施例中,故障检测模型使用序贯概率比测试(SPRT),该测试通过计算测得的信号与估计的值之间的每个连续残差的对数似然比的累积和来检测与正常操作(或故障)的异常偏差。处理器选择对数似然比的累积和的阈值,在该阈值处接受SPRT的零假设(未检测到故障)。处理器还选择对数似然比的累积和的阈值,在该阈值处接受SPRT的备选假设(检测到故障)。然后,处理器将所配置的故障检测模型与状态估计模型相关联地存储,从而生成故障检测模型。
一旦处理器由此完成用信号数据库的训练部分训练机器学习模型并生成机器学习模型,过程框540处的处理就完成,并且处理继续到过程框545。
在过程框545处,处理器用ML模型监视信号。
在一个实施例中,处理器选择监控数据的集合——一段时间/观察间隔内的信号数据,经训练的ML模型将在该时间/观察间隔内确定信号中是否存在任何异常偏差。例如,监控数据可以是信号数据库中的信号的第二部分或后一部分。在一个实施例中,信号数据库被划分为训练部分和监控部分,训练部分包括从信号数据库中的第一个观察开始直到(但不包括)所选择观察的所有观察(训练数据),监控部分包括信号数据库中从所选择的观察开始直至最终观察(或第二选择的观察)的所有观察(监控数据)。在一个实施例中,监控数据是信号数据库中除训练数据以外的其余观察。处理器从存储器中检索所选择的观察并将其设置为监视的起点,并检索最终观察并将其设置为监视的终点。
对于从监视的起点到终点的每个观察,处理器针对观察处的信号的值执行经训练的ML模型,以生成该观察处的每个信号的预测或估计的值。处理器存储观察处每个信号的估计的值。在一个实施例中,处理器依次重复对每个观察的预测和存储,直到完成监视,从而为每个观察处的每个信号生成估计的值的存储的集合。以这种方式,处理器已经用经训练的机器学习模型预测或估计了其中每个信号的值。
一旦处理器由此完成用ML模型监视信号,过程框545处的处理就完成,并且处理继续到过程框550。
在过程框550处,处理器将针对每个信号的ML模型估计的值和信号的实际值之间的残差集合存储在信号数据库中。在一个实施例中,对于长度为numObs个观察的M个信号的数据库中的每个信号(m),对于信号的每个观察(obs),处理器检索由ML模型为那个观察估计的信号的值(estimateobs)和用于那个观察的信号的实际测得的值(measurementobs),并且处理器通过获取ML模型预测与那个观察处的测量结果之间的差来计算那个观察的残差值(residualobs),例如如等式6中所示:
residualobs=estimateobs-measurementobs 等式6因此,在实际监视的值与模型生成的估计或预测的值之间执行成对差分运算,以生成每个观察的残差。处理器存储每个信号m的每个观察obs的残差。因此,信号m的残差集合是从obs=1到obs=numObs的所有残差集合。处理器例如通过在信号数据结构中与观察相关联的字段(或其它数据结构)中录入每个观察的残差值来存储与信号m相关联的每个信号的残差集合。每个信号m的信号数据结构可以具有用于每次观察的测量值、估计值和残差值的字段,这些字段作为时间序列按照观察的次序排列。信号数据结构可以存储在信号数据库中。在一个实施例中,残差可以作为故障检测模型(诸如如上所述的SPRT模型)的操作的一部分被计算,并且既用于SPRT故障检测又用于如本文所描述的表征跟随。以这种方式,处理器为每个信号生成预测的值与测得的值之间的残差的时间序列集合。
一旦处理器因此完成在信号数据库中存储每个信号的ML模型估计的值与信号的实际值之间的残差集合,过程框550处的处理就完成,并且处理继续到过程框555。
在过程框555处,处理器将残差集合计数器j初始化为值1。如上面所讨论的,处理器已经为数据库中的每个信号生成了残差集合。集合计数器j是指示哪个残差集合(在从信号编号1的残差集合到信号编号M的残差集合的范围内)是下面参考框560、565和570示出和描述的处理循环中考虑的当前残差集合的索引号。在一个实施例中,处理器为集合计数器声明整数变量j,并执行赋值操作以赋予j整数值1。一旦处理器完成将集合计数器j初始化为值1,过程框555处的处理就完成,并且处理继续到判定框560。
框560、565和570形成对M个残差集合中的每个集合重复的处理循环。参考图5将处理循环示出并描述为while循环,其中先决条件在判定框560处表达。可替代地,处理循环也可以被实现为do-while循环,并在循环之后表达后置条件。在判定框560处,处理器通过以与上面参考判定框520针对信号计数器i所示和描述的方式类似的方式评估集合计数器j的值是否小于或等于残差的数量M来确定是否剩余残差集合要进行评估(在框565处)。在处理器已确定剩余残差集合的情况下(j≤M?:是),判定框560处的处理完成,并且处理继续到过程框565。在处理器确定没有残差集合剩余的情况下(j≤M?:否),判定框560处的处理完成,框560、565和570的循环终止,并且处理继续到过程框575。
在过程框565处,处理器计算信号编号j的残差集合的标准偏差(本文中也称为残差集合编号j),并存储它。在一个实施例中,处理器通过以下操作计算残差集合编号j的标准偏差:(i)从信号数据库中检索信号编号j的每次观察处的残差集合编号j的残差值(residualobs),例如通过解析信号编号j以提取1和信号编号j中观察的总数(包含该总数在内)之间的每个观察的残差值;(ii)根据所有检索到的残差和残差集合编号j中的残差的总数(numObs)计算残差集合编号j的平均残差值(residualMean),例如通过求解如等
式7中所示的等式:
(iii)根据残差集合编号j的平均残差、所有检索到的残差以及观察的总数计算残差集合编号j的方差(residualVariance),例如通过求解如等式8中所示的等式:
以及(iv)根据残差集合编号j的方差计算残差集合编号j的标准偏差(residualSTD),例如通过求解如等式9中所示的等式:
在上述每个步骤处,处理器可以通过将结果(振幅、均值、方差和标准偏差)作为数据结构写入存储器或存储装置来存储结果以用于进一步处理。例如,残差集合的均值、方差和标准偏差可以存储在与残差集合编号j相关联的数据结构中。例如,这些值可以作为数据结构的元数据存储在与信号编号j的残差集合相关的信号编号j的信号数据库字段中。一旦处理器由此完成计算残差集合编号j的标准偏差,并存储它,过程框565处的处理就完成,并且处理继续到过程框570。
在过程框570处,处理器以与上面参考过程框530针对信号计数器i示出和描述的方式类似的方式将集合计数器j的值递增一。过程框570处的处理完成,并且处理返回到判定框560。
在框560、565和570的循环完成之后,处理进行到过程框575。在过程框575处,处理器计算残差标准偏差的均值(即,残差集合的标准偏差的均值)。在一个实施例中,处理器从存储器或存储装置检索针对信号的M个残差集合计算的M个标准偏差中的每一个。然后处理器计算残差的每个标准偏差的总和,并存储该总和以供后续处理。然后,处理器将总和除以M(这是信号的数量、那些信号的残差集合的数量以及残差集合的标准偏差的数量),以找到残差的标准偏差的均值。在一个实施例中,处理器通过求解等式10来确定残差的标准偏差的均值(residualSTDMean)
然后,处理器将用于后续处理的均值存储在例如与信号数据库相关联的数据结构中,例如作为信号数据库的元数据,或者存储在与ML模型相关联的数据结构中。此时,处理器已计算出残差集合的平均(在本例中是均值)标准偏差。一旦处理器因此完成了残差的标准偏差的均值的计算,过程框575处的处理就完成,并且处理继续到过程框580。
在过程框580处,处理器根据信号的标准偏差的均值(如参考上面的过程框535所描述的那样计算和存储)和残差的标准偏差的均值来计算推断式跟随度量(iFM)。在一个实施例中,iFM是信号的标准偏差的均值与残差的标准偏差的均值的比率,或者如等式11中所表达的
然后,处理器将iFM写入存储器或存储装置以供后续参考或处理,例如用于信号数据库的元数据中、用于ML模型的元数据中或与ML模型相关联的其它存储位置。以这种方式,处理器通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算iFM比率。一旦处理器由此完成根据信号的标准偏差的均值和残差的标准偏差的均值来计算推断式跟随度量,过程框580处的处理就完成,并且处理继续到判定框585。
在判定框585处,处理器评估iFM是否满足警报阈值。在一个实施例中,警报阈值指示一个点,超过该点,在ML模型中检测到或推断出的跟随水平(由iFM表示)高得不可接受。该阈值可以由用户预先定义并存储以供在判定框585处检索和使用。在一个实施例中,具有非常低的跟随程度的模型将具有1或更低的iFM,并且在1和1.5之间的iFM值,例如近似1.3的iFM,是用于在对模型预测产生非实质性影响(如果有的话)的最小跟随与对模型预测产生影响的不可接受的跟随之间区分的可接受的阈值。iFM值的警报阈值可以被调整得更低,例如,调整到1.1或者甚至更低,其中信号的噪声水平低。当信号的噪声水平高时,iFM值的警报阈值可以调整得更高,例如高达2或者甚至更高。在一个实施例中,处理器评估iFM是否大于警报阈值。处理器检索iFM的值和警报阈值的值。处理器比较iFM与警报阈值的值。在iFM的值大于警报阈值的值的情况下(iFM>阈值?:是),ML模型中存在的跟随水平高得不可接受,判定框585处的处理完成并且处理前进到过程框590。如果iFM的值不大于(即,小于或等于)警报阈值的值(iFM>阈值?:否),那么ML模型中存在的跟随水平是可接受的,判定框585处的处理完成并且处理前进到“结束”框595,在那里过程500结束。因此,处理器基于测得的值的平均标准偏差与残差集合的平均标准偏差的比率是否超过阈值来确定信号跟随是否存在于经训练的机器学习模型中。
在过程框590处,处理器触发关于ML模型中发生的跟随水平的警报。在一个实施例中,处理器生成正在评估的ML模型表现出不可接受的大量跟随的报警、警报或警告。在一个实施例中,警报是指示ML模型中发生的不可接受的高水平跟随的消息。该消息可以包括ML模型的iFM的值的指示、阈值的值、跟随程度的指示(跟随是中等还是高)、发生跟随的信号以及跟随的显著性的解释。这些消息内容中的每一个都可以从存储器或存储装置中检索并由处理器用来生成警报消息。该警报可以仅为文本,或者包括图形元素。警报消息可以采取处理指令的形式,诸如对计算系统400的其它部分的API请求或命令。在一个实施例中,处理器从存储器或存储装置检索警报消息内容,生成警报消息,并且传输该消息以呈现给用户。在一个实施例中,消息以电子邮件或文本消息的形式传输到与用户相关联的收件箱。在一个实施例中,消息被传输到并以文本界面或图形用户界面呈现在显示器上,例如时间序列数据服务405的界面。以这种方式,处理器呈现指示经训练的机器学习模型中存在信号跟随的警报。一旦处理器因此完成触发关于ML模型中发生的跟随水平的警报,过程框590处的处理就完成,并且处理继续到“结束”框595,在那里过程500结束。
在一个实施例中,除了在过程框590处触发警报之外,参考过程500的判定框585示出和描述的警报阈值的满足还触发缓解分析。响应于确定ML模型中存在跟随,系统可以建议以下缓解技术中的一种或多种来减少ML模型中的跟随:增加用于训练ML模型的训练向量的数量、对训练信号和被监视信号执行过滤操作以降低噪声,以及改变被监视信号的数量。在一个实施例中,所推荐的缓解技术包括在所生成的警报消息中。以这种方式,警报可以包括比率(iFM)和缓解机器学习模型中的信号跟随的技术的推荐,所述技术选自增加ML模型中的训练向量的数量、过滤到ML模型的信号输入以减少噪声,以及增加信号的数量。
—iFM的有效性—
为了证明使用iFM进行信号跟随的被动推断的有效性,本文考虑了两个示例典型信号数据库,每个数据库具有N=20个信号。原始跟随表征技术声明了这些信号数据库中的第一个在通过ML模型进行分析时证明几乎为零的跟随。原始跟随表征技术示出这些信号数据库中的第二个至少在用MSET、LSTM神经网络和线性回归ML模型进行分析时引发跟随。使用这两个数据集,训练两个单独的ML模型。例如,ML模型可以是MSET模型。每个数据库的前半部分(即,观察的前半部分)被用于训练ML模型。后半部分(即,观察的后半部分)被用于监控。因此,ML模型基于经训练的模型以及信号数据库中所有其它N-1个信号中存在的模式来预测每个信号“应当”是什么。第一个经训练的模型没有表现出可检测程度的跟随。第二个经训练的模型是跟随开始以不可接受的水平发生的情况。下表针对两个模型实例跟踪与新iFM和原始跟随表征技术FM相关的值。
表1包含与表现出最小跟随的MSET ML模型的ML模型跟随相关的值。
表2包含与表现出不可接受的跟随程度的模型的ML模型跟随相关的值。
表的第二列示出20个ML模型残差的平均标准偏差,通过从信号的被监视部分(监控或后半部分)减去MSET估计值来计算。表的第四列示出原始信号的平均标准偏差。如前所述,ML模型残差与原始信号之间存在相关关系,因此残差的STD应当与原始信号的STD相似。因此,如果ML模型中发生跟随,那么原始信号的STD与残差的STD之间的比率将会增加。这个比率是iFM并且在表的第五列中示出。虽然跟随并不取决于数据库中测量噪声的严重性,但它是驱动因素。如果原始信噪比差,那么跟随将增加。为了证明这种现象,随着信号上噪声含量的增加,重复上面提到的对20个信号数据库进行ML模型训练和监控的过程。表的第一列示出添加到信号的高斯噪声的标准偏差(STD)系数。表的第六列记录了由原始跟随表征技术产生的原始或“经典”跟随度量(FM)。将第六列中的FM与第五列中的iFM STD比率进行比较,得出非常相似的模式,从而验证了iFM的理论基础。
图6图示了绘图600,其示出了对于两个ML模型随着噪声比增加而跟随度量值的改变,指示在多变量异常检测中使用信号跟随的被动推断来识别噪声驱动的跟随的能力。绘图600是上面表1和表2中讨论的两个ML模型的比较,其中一个ML模型(在绘图600中由菱形表示)显示低程度的跟随,而另一个ML模型(在绘图600中由圆圈表示)显示出更高程度的跟随。为了阐明噪声与跟随之间的关系,针对度量(FM或iFM)值和噪声的水平的轴绘制了这两个ML模型的不同噪声水平下的iFM和FM。在绘图600中,添加到原始信号的噪声以比上表中记录的更细的粒度增加。绘图600包括两个子绘图:(i)在顶部,iFM子绘图605,其示出了在逐渐升高的噪声水平下表现出最小跟随的ML模型的iFM值610(在表1中描述)和表现出不可接受的高跟随的ML模型的iFM值615(在表2中描述),针对iFM轴620和添加的噪声标准偏差系数轴625绘制;以及(ii)在底部,FM子绘图655,其示出了在逐渐升高的噪声水平下表现出最小跟随(在表1中描述)的ML模型的FM值660和表现出不可接受的高跟随(在表2中描述)的ML模型的FM值665,针对FM轴670和添加的噪声标准偏差系数轴675绘制。
如上表中所示,显然,当信号上的噪声增加时,跟随也增加。这种行为在iFM子绘图605中是显然的,并反映在FM子绘图655中。有利地,与由原始跟随表征技术生成的FM相比,本文描述的用于在多变量异常检测中被动推断信号跟随的新技术(iFM技术)在表现出最小跟随的ML模型的度量值(值610和660)与表现出显著跟随的ML模型的度量值(值615和665)之间产生更大的分离(以及因此的区分能力)。通过比较子绘图605与655,可以清楚地看出这一点。更大的分离和区分能力对于模型表征经验参数来说是个好的特征,因为它使得能够基于那些参数做出更清晰的判定。
跟随程度非常低的模型将具有标称为1或甚至更低的iFM。注意的是,更高维度的模型可以甚至比1更低。但是,如果存在跟随,那么iFM将大于1。iFM的值超过1越高,模型表现出的跟随越差。基于对具有不同信号数量、不同观察数量和不同噪声比的许多时间序列数据集的广泛参数测试,在一个实施例中,报警条件应当设置在iFM>1.3,指示缓解动作是必要的(warranted),诸如如果监控下的资产在物理上有可能,那么向模型添加更多信号,或者执行移动窗口平滑以降低信号上的噪声比。
图7图示了绘图700,示出了对于三个ML模型随着噪声比增加而跟随度量值的改变,证明对于观察到的信号与残差(或iFM)之间的标准偏差的任何给定比率,曲线的尺寸与跟随程度单调地映射。绘图700是三个示例ML模型的比较,其中第一个ML模型(在绘图700中由圆圈表示)表现出最小程度的跟随,其中第二个ML模型(在绘图700中由菱形表示)表现出中等量的跟随,并且其中第三个ML模型(在绘图700中由十字表示)表现出大量的跟随。注意的是,第二个和第三个模型两者表现出不可接受的跟随程度。绘图700包括两个子绘图:(i)在顶部,iFM子绘图705,其示出了表现出最小跟随的第一个ML模型的iFM值710、表现出增加的跟随的第二个ML模型的iFM值715以及表现出高跟随程度的第三个ML模型的iFM值720,每个模型都处于逐渐升高的噪声水平,针对iFM轴725和添加的噪声标准偏差系数轴730绘制;以及(ii)在底部,FM子绘图755,其示出了表现出最小跟随的第一个ML模型的FM值760、表现出增加的跟随的第二个ML模型的FM值765以及表现出高跟随程度的第三ML模型的iFM值770,每个模型都处于逐渐升高的噪声水平,针对FM轴775和添加的噪声标准偏差系数轴780绘制。
如通过比较iFM子绘图705与FM子绘图755可以看到的,对于任何给定的iFM或观察到的信号的标准偏差与ML模型预测与观察到的信号之间的残差的标准偏差之间的比率,iFM曲线710、715、720的尺寸与由原始跟随表征技术产生的FM值760、765、770所示的跟随程度单调地映射。对于较小的模型和较大的模型,iFM曲线族将具有不同的分布。因此,本文描述的用于在多变量异常检测中被动推断信号跟随的系统和方法,以及其涉及的参数化推断式跟随度量表征和缓解用例构成了用于评估iFM参数化曲线的系统定量框架。在一个实施例中,可以根据本文描述的系统和方法针对每种可能数量的被监视信号(达到合理的最大值,可能数千万或数亿个被监视信号)生成曲线族,并且曲线族存储在库中。然后,对于任何给定的用例(例如,有23个信号、或8个信号、或150个信号、或5000个信号等),可以从库中检索适当的曲线族,以通过录入iFM值来指示跟随的定量程度(FM)。因此,处理器可以使用推断式度量(iFM)来查找定量度量(FM)。然后处理器基于比率的值(iFM)检索机器学习模型的定量跟随程度(FM)。然后,FM可以与触发了警报的iFM一起呈现在关于不可接受的跟随水平的警报中。
—ML模型中用于推断跟随的高级过程—
图8图示了与多变量异常检测中的信号跟随的被动推断相关联的方法800的一个实施例。方法800示出了用于计算和跟踪时间序列信号的任何数据库的iFM的过程的高级概述。在一个实施例中,方法800的步骤由被动信号推断组件440(如参考图4所示和描述的)执行。在一个实施例中,方法800可以基于各种触发(诸如上面参考方法500描述的触发)被自动发起。方法800在“开始”框805处发起并且进行到过程框810。在过程框810处,处理器计算多于一个时间序列信号的集合中时间序列信号的测得的值的平均标准偏差,例如如参考方法500的框515、520、525、530和535所示和描述的。接下来,在过程框815处,处理器训练机器学习模型以预测时间序列信号的值,例如如参考方法500的框540所示和描述的。然后处理进行到过程框820,其中处理器用经训练的机器学习模型预测每个信号的值,例如如参考方法500的框545所示和描述的。处理在过程框825处继续,其中处理器生成每个信号的预测的值与测得的值之间的残差的时间序列集合,例如如参考方法500的框550所示和描述的。接下来,在过程框830处,处理器计算残差集合的平均标准偏差,例如如参考方法500的框555、560、565、570和575所示和描述的。然后处理在过程框835处继续,其中处理器在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随,例如如参考方法500的框580和585所示和描述的。然后处理在过程框840处继续,其中处理器呈现指示在经训练的机器学习模型中存在信号跟随的警报,例如如参考方法500的框590所示和描述的。然后处理继续到“结束”框845,其中方法800完成。
—所选择的优点—
本文描述的用于在多变量异常检测中被动推断信号跟随的系统和方法证明了多个优点。例如,通过本文描述的信号跟随的被动推断增强的ML异常检测算法表现出比常规最佳实践更低的II型错误概率(即,错过的报警概率或“MAP”)。Oracle的异常检测服务(ADS)以及GE PREDIX、Microsoft Azure、Amazon AWS_Sitewise、SAP/Siemens智能资产管理或任何IoT云操作(其中客户可以分析大规模时间序列数据库以进行机器学习预兆)的预兆异常发现工具可以如上所述通过实现本文描述的多变量异常检测中的信号跟随的被动推断的系统和方法来改进。通过本文描述的系统和方法使得能够实现大规模时间序列数据库的预兆ML模型中的信号跟随的检测和表征,其中信号跟随的这种检测和表征先前对于大规模时间序列数据集是不可行的。
—计算设备实施例—
图9图示了示例计算设备900,该计算设备被配置和/或编程为具有本文描述的示例系统和方法和/或等同形式中的一个或多个的专用计算设备。示例计算设备可以是计算机905,其包括通过总线925可操作地连接的处理器910、存储器915和输入/输出端口920。在一个示例中,计算机905可以包括多变量异常检测中的信号跟随的被动推断逻辑930,该逻辑930被配置为促进多变量异常检测中的信号跟随的被动推断,类似于参考图4-8示出和描述的逻辑、系统和方法。在不同的示例中,逻辑930可以以硬件、具有存储的指令937的非暂态计算机可读介质、固件和/或其组合来实现。虽然逻辑930被示为附接到总线908的硬件组件,但是应该认识到的是,在其它实施例中,逻辑930可以在处理器902中实现、存储在存储器904中或者存储在盘906中。
在一个实施例中,逻辑930或计算机是用于执行所描述的动作的手段(例如,结构:硬件、非暂态计算机可读介质、固件)。在一些实施例中,计算设备可以是在云计算系统中操作的服务器、以软件即服务(SaaS)体系架构配置的服务器、智能电话、膝上型计算机、平板计算设备等。
该手段可以被实现为例如被编程为提供多变量异常检测中信号跟随的被动推断的ASIC。该手段还可以被实现为存储的计算机可执行指令,该指令作为数据916呈现给计算机900,数据916临时存储在存储器904中并且然后由处理器902执行。
逻辑930还可以提供用于执行多变量异常检测中信号跟随的被动推断的手段(例如,硬件、存储可执行指令的非暂态计算机可读介质、固件)。
一般地描述计算机900的示例配置,处理器902可以是各种不同的处理器,包括双微型处理器和其它多处理器体系架构。存储器904可以包括易失性存储器和/或非易失性存储器。非易失性存储器可以包括例如ROM、PROM等。易失性存储器可以包括例如RAM、SRAM、DRAM等。
存储盘906可以通过例如由至少输入/输出(I/O)控制器940控制的输入/输出(I/O)接口(例如,卡、设备)918和输入/输出端口910可操作地连接到计算机900。盘906可以是例如磁盘驱动器、固态盘驱动器、软盘驱动器、带驱动器、Zip驱动器、闪存卡、记忆棒等。此外,盘906可以是CD-ROM驱动器、CD-R驱动器、CD-RW驱动器、DVD ROM等。例如,存储器904可以存储过程914和/或数据916。盘906和/或存储器904可以存储控制和分配计算机900的资源的操作系统。
计算机900可以经由输入/输出(I/O)控制器940、I/O接口918和输入/输出端口910与输入/输出(I/O)设备交互、控制输入/输出(I/O)设备和/或被输入/输出(I/O)设备控制。输入/输出设备可以包括一个或多个显示器970、打印机972(诸如喷墨打印机、激光打印机或3D打印机),以及音频输出设备974(诸如扬声器或耳机)、文本输入设备980(诸如键盘)、定点和选择设备982(诸如鼠标、轨迹球、触摸板、触摸屏、操纵杆、指点杆、手写笔鼠标)、音频输入设备984(诸如麦克风)、视频输入设备986(诸如摄像机和静态相机),视频卡(未示出)、盘935、网络设备920、传感器990等。输入/输出端口910可以包括例如串行端口、并行端口和USB端口。
计算机900可以在网络环境中操作,因此可以经由I/O接口918和/或I/O端口910连接到网络设备920。通过网络设备920,计算机900可以与网络960交互。通过网络960,计算机900可以逻辑地连接到远程计算机965和传感器990。计算机900可以与之交互的网络包括但不限于LAN、WAN和其它网络。在一个实施例中,计算机900可以通过I/O端口910或网络960连接到传感器990,以便从传感器990接收感测到的信息和/或控制传感器990。
—软件模块实施例—
一般而言,软件指令被设计为由一个或多个合适编程的访问存储器的处理器执行。这些软件指令可以包括例如计算机可执行代码和可以被编译成计算机可执行代码的源代码。这些软件指令还可以包括以诸如脚本语言之类的解释性编程语言编写的指令。
在复杂系统中,此类指令可以被布置为程序模块,其中每个这样的模块执行特定任务、过程、功能或操作。模块的整个集合可以在其操作中由操作系统(OS)或其它形式的组织平台控制或协调。
在一个实施例中,本文描述的组件中的一个或多个被配置为存储在非暂态计算机可读介质中的模块。模块配置有存储的软件指令,指令在由访问存储器或存储装置的至少一个处理器执行时使计算设备执行如本文所述的(一个或多个)对应功能。
—云或企业实施例—
在一个实施例中,本系统(时间序列数据服务105)是包括用于企业组织的应用或分布式应用的集合的计算/数据处理系统。应用和计算系统可以被配置为与基于云的网络计算系统、基础设施即服务(IAAS)、平台即服务(PAAS)或软件即服务(SaaS)体系架构或其它类型的联网的计算解决方案一起操作或者被实现为基于云的网络计算系统、基础设施即服务(IAAS)、平台即服务(PAAS)或软件即服务(SaaS)体系架构或其它类型的联网的计算解决方案。在一个实施例中,本系统是集中式服务器侧应用,其提供本文公开的功能中的至少一个或多个以及用于访问和操作它们的图形用户界面,并且由许多用户经由通过计算机网络与本计算系统(用作服务器)通信的计算设备/终端来访问。
—定义和其它实施例—
在另一个实施例中,所描述的方法和/或它们的等同物可以用计算机可执行指令来实现。因此,在一个实施例中,非瞬态计算机可读/存储介质被配置为具有存储的算法/可执行应用的计算机可执行指令,当该指令由(一个或多个)机器执行时使该(一个或多个)机器(和/或相关联的组件)执行所述方法。示例机器包括但不限于处理器、计算机、在云计算系统中操作的服务器、用软件即服务(SaaS)体系架构配置的服务器、智能电话等等。在一个实施例中,计算设备用被配置为执行任何所公开的方法的一个或多个可执行算法来实现。
在一个或多个实施例中,所公开的方法或它们的等同物由以下任一项执行:被配置为执行所述方法的计算机硬件;或者,存储在非瞬态计算机可读介质中的模块中体现的计算机指令,其中指令被配置为可执行算法,可执行算法被配置为在由计算设备的至少一个处理器执行时执行所述方法。
虽然为了简化说明的目的,图中图示的方法被示出和描述为算法的一系列框,但是应该认识到的是,这些方法不受框的顺序的限制。一些框可以以与所示出和描述的不同的顺序出现和/或与其它框同时出现。而且,可以使用比全部图示的框少的框来实现示例方法。框可以被组合或分成多个动作/组件。此外,附加的和/或替代的方法可以采用未在框中图示的附加动作。
以下包括本文所采用的所选择术语的定义。定义包括属于术语的范围并且可以用于实现的组件的各种示例和/或形式。示例并不旨在是限制性的。术语的单数和复数形式都可以在定义之内。
对“一个实施例”、“实施例”、“一个示例”、“示例”等的引用指示如此描述的(一个或多个)实施例或(一个或多个)示例可以包括特定的特征、结构、特性、性质、元素或限制,但并非每个实施例或示例都必须包括该特定的特征、结构、特性、性质、元素或限制。此外,短语“在一个实施例中”的重复使用不一定指代相同的实施例,但是可以指代相同的实施例。
AAKR:自关联核回归。
API:应用编程接口。
ASIC:专用集成电路。
CD:光盘。
CD-R:可刻录CD。
CD-RW:可重写CD。
CoAP:受限应用协议。
CPU:中央处理单元。
DAQ:数据采集。
DDS:数据分发服务。
DPWS:用于web服务的设备简档。
DRAM:动态RAM。
DVD:数字多功能光盘和/或数字视频光盘。
EPROM:可擦除PROM。
EEPROM:电可擦除PROM。
FM:跟随度量。
GPU:图形处理单元。
HPC:高性能计算。
HTTP:超文本传输协议。
I/O:输入/输出。
IAAS:基础设施即服务。
iFM:推断跟随度量。
IoT:物联网。
JSON:Java脚本对象表示法。
LAN:局域网。
M2M:机器对机器。
ML:机器学习。
MSET:多变量状态估计技术。
MSET2:Oracle的专有多变量状态估计技术。
MQTT:消息排队遥测传输。
NLNP:非线性非参数化。
NN:神经网络。
PAAS:平台即服务。
PCI:外围组件互连。
PCIE:PCI Express。
PROM:可编程ROM。
RAM:随机存取存储器。
REST:代表性状态转移。
ROM:只读存储器。
RTU:远程终端单元。
SAAS:软件即服务。
SBM:基于相似性的建模。
SCADA:监视和数据采集。
SNR:信噪比。
SOAP:简单对象访问协议。
SPRT:序贯概率比检验。
SRAM:同步RAM。
SQL:结构化查询语言。
STD:标准偏差。
SVM:支持向量机。
TCP/IP:传输控制协议/互联网协议。
UDP:用户数据报协议。
UPnP:通用即插即用。
USB:通用串行总线。
XML:可扩展标记语言。
XMPP:可扩展消息传递和状态协议
WAN:广域网。
如本文所使用的,“数据结构”是计算系统中存储在存储器、存储设备或其它计算机化系统中的数据的组织。数据结构可以是例如数据字段、数据文件、数据阵列、数据记录、数据库、数据表、图、树、链表等中的任何一个。数据结构可以由许多其它数据结构形成以及包含许多其它数据结构(例如,数据库包括许多数据记录)。根据其它实施例,数据结构的其它示例也是可能的。
如本文所使用的,“计算机可读介质”或“计算机存储介质”是指存储被配置为当被执行时执行所公开的功能中的一个或多个功能的指令和/或数据的非瞬态介质。在一些实施例中,数据可以用作指令。计算机可读介质可以采取包括但不限于非易失性介质和易失性介质的形式。非易失性介质可以包括例如光盘、磁盘等。易失性介质可以包括例如半导体存储器、动态存储器等。计算机可读介质的常见形式可以包括但不限于软盘、柔性盘、硬盘、磁带、其它磁性介质、专用集成电路(ASIC)、可编程逻辑器件、紧凑型盘(CD)、其它光学介质、随机存取存储器(RAM)、只读存储器(ROM)、存储器芯片或卡、存储棒、固态存储设备(SSD)、闪存驱动器、以及计算机、处理器或其它电子设备可以利用其工作的其它介质。如果每种类型的媒体在一个实施例中被选择用于实现,则其可以包括被配置为执行所公开的和/或所要求保护的功能中的一个或多个功能的算法的存储指令。
如本文所使用的,“逻辑”表示利用计算机或电气硬件、具有存储的可执行应用或程序模块的指令的非瞬态介质和/或这些的组合实现的组件,以执行如本文公开的任何功能或动作,和/或使得来自另一逻辑、方法和/或系统的功能或动作如本文所公开的那样被执行。等效逻辑可以包括固件、利用算法编程的微处理器、离散逻辑(例如,ASIC)、至少一个电路、模拟电路、数字电路、编程的逻辑器件、包含算法的指令的存储器设备等,其中任何一个可以被配置为执行所公开的功能中的一个或多个功能。在一个实施例中,逻辑可以包括一个或多个门、门的组合、或者被配置为执行所公开的功能中的一个或多个能够的其它电路组件。在描述多个逻辑的情况下,有可能将多个逻辑合并到一个逻辑中。类似地,在描述单个逻辑的情况下,有可能在多个逻辑之间分配那单个逻辑。在一个实施例中,这些逻辑中的一个或多个是与执行所公开的和/或所要求保护的功能相关联的对应结构。选择实现哪种类型的逻辑可以基于期望的系统条件或规范。例如,如果考虑更高的速度,则将选择硬件来实现功能。如果考虑更低的成本,则将选择存储的指令/可执行应用来实现功能。
“可操作的连接”或实体通过其“可操作地连接”的连接是可以发送和/或接收信号、物理通信和/或逻辑通信的连接。可操作的连接可以包括物理接口、电接口和/或数据接口。可操作的连接可以包括足以允许可操作的控制的接口和/或连接的不同组合。例如,两个实体可以可操作地连接,以直接或者通过一个或多个中间实体(例如,处理器、操作系统、逻辑、非瞬态计算机可读介质)彼此传送信号。逻辑和/或物理通信信道可以被用于创建可操作的连接。
如本文所使用的,“用户”包括但不限于一个或多个人、计算机或其它设备、或者这些的组合。
虽然已经相当详细地图示和描述了所公开的实施例,但并不旨在将所附权利要求的范围限制或以任何方式限定到这样的细节。当然,不可能为了描述主题的各个方面而描述组件或方法的每种预期的组合。因此,本公开不限于所示出和描述的特定细节或说明性示例。因此,本公开旨在涵盖落入所附权利要求范围内的变更、修改和变化。
就术语“包含”在具体实施方式或权利要求书中被采用的程度而言,它旨在以类似于当术语“包括”作为过渡词在权利要求中被采用时所解释的方式是包含性的。
就术语“或”在具体实施方式或权利要求书中被采用的程度而言(例如,A或B),其旨在意味着“A或B或两者”。当申请人旨在指示“仅A或B但不是两者”时,那么将使用短语“仅A或B但不是两者”。因此,术语“或”在本文的使用是包含性的,而不是排他性使用。

Claims (15)

1.一种用于推断机器学习模型中的信号跟随的计算机实现的方法,该方法包括:
计算多于一个时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;
训练机器学习模型来预测信号的值;
用经训练的机器学习模型预测每个信号的值;
生成每个信号的预测的值与测得的值之间的残差的时间序列集合;
计算残差集合的平均标准偏差;
在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及
呈现指示经训练的机器学习模型中存在信号跟随的警报。
2.如权利要求1所述的计算机实现的方法,还包括通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算所述比率,其中被该比率超过的所述阈值在1和1.5之间。
3.如权利要求1或权利要求2所述的计算机实现的方法,还包括基于所述比率的值检索机器学习模型的定量跟随程度。
4.如权利要求1所述的计算机实现的方法,其中当推断机器学习模型中的信号跟随时,机器学习模型的训练和值的预测仅发生一次。
5.如权利要求1、权利要求2或权利要求4所述的计算机实现的方法,其中机器学习模型是非线性非参数化回归模型。
6.一种非暂态计算机可读介质,其包括存储在其上的用于推断机器学习模型中的信号跟随的计算机可执行指令,所述计算机可执行指令在由至少计算机的处理器执行时使计算机:
计算多于一个时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;
训练机器学习模型来预测信号的值;
用经训练的机器学习模型预测每个信号的值;
生成每个信号的预测的值与测得的值之间的残差的时间序列集合;
计算残差集合的平均标准偏差;
在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及
呈现指示经训练的机器学习模型中存在信号跟随的警报。
7.如权利要求6所述的非暂态计算机可读介质,其中指令还使计算机通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算所述比率,其中被该比率超过的所述阈值在1和1.5之间。
8.如权利要求6或权利要求7所述的非暂态计算机可读介质,其中指令还使计算机基于所述比率的值检索机器学习模型的定量跟随程度。
9.如权利要求6所述的非暂态计算机可读介质,其中当推断机器学习模型中的信号跟随时,机器学习模型的训练和值的预测仅发生一次。
10.如权利要求6、权利要求7或权利要求9所述的非暂态计算机可读介质,其中机器学习模型是多变量状态估计技术模型。
11.一种计算系统,包括:
处理器;
存储器,可操作地连接到处理器;
非暂态计算机可读介质,可操作地连接到处理器和存储器并存储用于推断机器学习模型中的信号跟随的计算机可执行指令,所述计算机可执行指令在由至少计算机的处理器执行时使计算系统:
计算多于一个时间序列信号的集合中的时间序列信号的测得的值的平均标准偏差;
训练机器学习模型来预测信号的值;
用经训练的机器学习模型预测每个信号的值;
生成每个信号的预测的值与测得的值之间的残差的时间序列集合;
计算残差集合的平均标准偏差;
在测得的值的平均标准偏差与残差集合的平均标准偏差的比率超过阈值的情况下确定在经训练的机器学习模型中存在信号跟随;以及
呈现指示经训练的机器学习模型中存在信号跟随的警报。
12.如权利要求11所述的计算系统,其中指令还使计算系统通过将测得的值的平均标准偏差除以残差集合的平均标准偏差来计算所述比率,其中被该比率超过的所述阈值在1和1.5之间。
13.如权利要求11或权利要求12所述的计算系统,其中指令还使计算系统基于所述比率的值检索机器学习模型的定量跟随程度。
14.如权利要求11所述的计算系统,其中当推断机器学习模型中的信号跟随时,机器学习模型的训练和值的预测仅发生一次。
15.如权利要求11、权利要求12或权利要求14所述的计算系统,其中警报包括比率和缓解机器学习模型中的信号跟随的技术的推荐,该技术选自增加ML模型中的训练向量的数量、过滤输入到ML模型的信号以减少噪声以及增加信号的数量。
CN202180100643.1A 2021-09-01 2021-12-08 多变量异常检测中信号跟随的被动推断 Pending CN117693747A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/463,742 US20230075065A1 (en) 2021-09-01 2021-09-01 Passive inferencing of signal following in multivariate anomaly detection
US17/463,742 2021-09-01
PCT/US2021/062380 WO2023033850A1 (en) 2021-09-01 2021-12-08 Passive inferencing of signal following in multivariate anomaly detection

Publications (1)

Publication Number Publication Date
CN117693747A true CN117693747A (zh) 2024-03-12

Family

ID=79287913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180100643.1A Pending CN117693747A (zh) 2021-09-01 2021-12-08 多变量异常检测中信号跟随的被动推断

Country Status (3)

Country Link
US (1) US20230075065A1 (zh)
CN (1) CN117693747A (zh)
WO (1) WO2023033850A1 (zh)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190102718A1 (en) * 2017-09-29 2019-04-04 Oracle International Corporation Techniques for automated signal and anomaly detection
US10606919B2 (en) * 2017-11-29 2020-03-31 Oracle International Corporation Bivariate optimization technique for tuning SPRT parameters to facilitate prognostic surveillance of sensor data from power plants

Also Published As

Publication number Publication date
US20230075065A1 (en) 2023-03-09
WO2023033850A1 (en) 2023-03-09

Similar Documents

Publication Publication Date Title
JP7223839B2 (ja) 異常検出および/または予知保全のためのコンピュータ実装方法、コンピュータプログラム製品およびシステム
US12001949B2 (en) Computer-implemented method, computer program product and system for data analysis
US11551111B2 (en) Detection and use of anomalies in an industrial environment
US10037025B2 (en) Detecting anomalies in an internet of things network
CN111045894B (zh) 数据库异常检测方法、装置、计算机设备和存储介质
US10373065B2 (en) Generating database cluster health alerts using machine learning
US11288577B2 (en) Deep long short term memory network for estimation of remaining useful life of the components
US10679135B2 (en) Periodicity analysis on heterogeneous logs
KR20160143512A (ko) 머신 러닝을 위한 진보된 분석 기반시설
US11657121B2 (en) Abnormality detection device, abnormality detection method and computer readable medium
WO2016048283A1 (en) Event log analysis
US20160255109A1 (en) Detection method and apparatus
WO2019084213A1 (en) FEDERATED INTERROGATION
US20190121897A1 (en) Federated query
US20140188777A1 (en) Methods and systems for identifying a precursor to a failure of a component in a physical system
Chen et al. Probability density estimation and Bayesian causal analysis based fault detection and root identification
JP2017021790A (ja) 隠れマルコフモデルの混合を使用する検証および異常検出のためのシステムおよび方法
US11055631B2 (en) Automated meta parameter search for invariant based anomaly detectors in log analytics
WO2022115419A1 (en) Method of detecting an anomaly in a system
CN115427986A (zh) 用于从大容量、高速流式数据动态生成预测分析的算法学习引擎
Agrawal et al. Adaptive anomaly detection in cloud using robust and scalable principal component analysis
US20230075065A1 (en) Passive inferencing of signal following in multivariate anomaly detection
US20230376837A1 (en) Dependency checking for machine learning models
US20230327789A1 (en) Eviction of weakly correlated signals from collections
US20200387492A1 (en) Time series databases

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination