CN114450700A - 用于检测异常的方法和设备、相应的计算机程序产品和非暂时性计算机可读载体介质 - Google Patents
用于检测异常的方法和设备、相应的计算机程序产品和非暂时性计算机可读载体介质 Download PDFInfo
- Publication number
- CN114450700A CN114450700A CN202080065348.2A CN202080065348A CN114450700A CN 114450700 A CN114450700 A CN 114450700A CN 202080065348 A CN202080065348 A CN 202080065348A CN 114450700 A CN114450700 A CN 114450700A
- Authority
- CN
- China
- Prior art keywords
- anomaly
- prediction
- model
- user feedback
- adjusting
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
- G06F18/2178—Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Computer Security & Cryptography (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
一种用于检测异常的方法,所述方法由机器学习系统(130)执行,所述机器学习系统被配置为从训练数据集学习至少一个模型(132),所述方法包括:接收来自数量为N的多个传感器(100)的传感器数据;基于所述传感器数据和所述至少一个模型,计算异常预测;以及如果所述异常预测是异常检测,则发送包括所述异常预测的异常事件(11)。所述方法还包括接收与所述异常事件或异常事件缺失相关的用户反馈(12),以及基于所述用户反馈调整所述至少一个模型。
Description
技术领域
本公开的领域是机器学习(ML)和异常检测领域。
更特别地,本公开涉及由机器学习系统执行的异常检测方法。
执行机器学习涉及创建模型,该模型基于一些训练数据被训练,然后该模型可以处理附加的数据以进行预测。针对机器学习系统,已知各种类型的模型(例如,人工神经网络、判定树、支持向量机、贝叶斯网络、遗传算法等)。
在机器学习(ML)的领域内,存在两种主要类型的方法:有监督的和无监督的。这两种类型之间的主要区别在于,有监督学习是在具有针对样本的输出值应该是何值的先验知识的情况下进行的。因此,有监督学习的目标是学习以下函数:在给定数据的样本和期望的输出的情况下,该函数最佳逼近在该数据中可观察到的输入与输出之间的关系。另一方面,无监督学习不具有标记的输出,因此它的目标是推断数据点集内呈现的自然结构。换言之,有监督学习算法使用包括输入和期望的输出二者的数据集,而无监督学习算法采用仅包括输入的数据集。
常规地,异常检测方法包括:接收来自数量为N的多个传感器的传感器数据;基于传感器数据和至少一个模型,计算异常预测;以及如果该异常预测是异常检测,则发送包括该异常预测的异常事件。
本公开可以尤其但不排他地应用于依赖于随时间对源自家庭传感器的多个数据的收集来检测家庭异常。在这种特定情况下,为了在学习阶段期间尽可能无缝对接终端用户,通常考虑无监督ML方法,该无监督ML方法允许系统学习并自适应终端用户的家庭习惯和环境改变。目标是建立在家庭处于正常情况下的模型,并随时间向终端用户通知可能发生的家庭异常。为此,多个传感器被部署于家庭,并根据ML构建模型所需的模态被定义。
背景技术
在使用异常检测方法时经常出现的问题是如何贴切地更新模型,特别是在无监督ML中(以及在有监督ML中)。实际上,为使模型准确预测,模型进行预测所基于的数据必须具有与模型进行训练所基于的数据相似的分布。由于能够预期到数据分布会随时间而漂移,因此部署模型不是一次性的动作,而是持续的过程。
常规地,更新模型是通过利用补充的新训练数据集重新训练模型来执行的。换言之,以下是已知的实践操作:如果数据分布已经明显偏离了原始训练数据分布,则持续监视输入的数据并基于新训练数据重新训练模型。如果监视数据以检测数据分布的改变的开销很大,则替代的更简单的策略是周期性重新训练模型,例如,每天、每周或每月。这就是许多模型默认地经常被重新训练的原因。
然而,用于更新模型的包括重新训练模型的上述已知方案,具有一些缺点。
第一个缺点是,在周期性重新训练模型时,可能会出现无效的多余的重新训练,这会产生成本(计算、评估、实现复杂性等方面)。
第二个缺点是,利用新训练数据重新训练模型并不总是最优的,因为新训练数据并不总是最适应用户和/或用户的家庭。换言之,已知的方案并不总是向着各个用户的个性化的异常情况和/或家庭习惯方向被调整。
第三个缺点是,在模型的学习阶段之后的生产阶段(使用模型)期间,在对当前的多个传感器添加或移除传感器时,重新训练模型不会有功能上的扩展。
发明内容
本公开的一个特定方面涉及用于检测异常的方法,所述方法由机器学习系统执行,所述机器学习系统被配置为从训练数据集学习至少一个模型,所述方法包括:
接收来自数量为N的多个传感器的传感器数据;
基于所述传感器数据和所述至少一个模型,计算异常预测;以及
如果所述异常预测是异常检测,则发送包括所述异常预测的异常事件;
所述方法还包括:
接收属于包括以下项的组的用户反馈:
指示包括在所述异常事件中的所述异常预测正确的用户反馈;
指示包括在所述异常事件中的所述异常预测不正确的用户反馈;
指示与不正确异常预测对应的异常事件缺失的用户反馈;以及
基于所述用户反馈调整所述至少一个模型。
所提出的方案的总体原则是基于用户反馈调整(一个或多个)模型。我们假设(一个或多个)模型已经预先在学习阶段期间学习过(例如,无监督学习类型,或者以变形形式、有监督学习类型)。
用户反馈仅需要用户的轻微介入(例如,仅需要二进制形式的回答),并且例如在以下情况中的至少一种情况下发生:
“假阳性”:用于指示包括在异常事件中的异常预测不正确(即,当异常被虚假地检测到时,意味着模型将事件检测为异常但该事件不是异常);
“真阳性”:用于指示包括在异常事件中的异常预测正确(即,当异常被真实地检测到时,意味着模型将事件检测为异常并且该事件是异常);或者
“假阴性”:指示与不正确无异常预测对应的异常事件缺失(即,当应被检测为警报的事件发生时,该事件未被检测为警报)。
提出的方案(基于用户反馈调整(一个或多个)模型)具有以下一些优点:
(一个或多个)模型将更好地进行执行(没有(或更少)“假阳性”或“假阴性”);
(一个或多个)模型的调整可以单独实现、或者可以与使用补充训练数据集重新训练(一个或多个)模型结合来实现,因此可以减少或避免无效的多余的重新训练(和相应的成本);
(一个或多个)模型适应用户和/或其家庭,因此向着各个用户的个性化的异常情况和/或家庭习惯方向被调整。
根据第一实施例,所述机器学习系统包括:
至少两个单模态异常模型,每个单模态异常模型与所述数量为N的多个传感器中的一个不同的传感器相关联,并且每个单模态异常模型被配置为基于来自相关联的传感器的传感器数据,计算单模态异常预测;以及
判定器,被配置为通过将至少一个判定规则应用于所述单模态异常预测,来计算所述异常预测;
并且基于所述用户反馈调整所述至少一个模型包括以下项中的至少一个:
调整所述单模态异常模型中的至少一个;以及
调整所述至少一个判定规则。
根据第一实施例的一个特定特征,在所述至少一个判定规则中,每个单模态异常预测被加权相关联的权重因子,并且其中,调整所述至少一个判定规则包括以下项中的至少一个:
调整所述权重因子中的至少一个;以及
调整阈值,所述阈值用于与已被加权了各自的加权因子的所述单模态异常预测的组合进行比较。
根据第一实施例的一个特定特征,调整所述权重因子中的至少一个包括:如果所述用户反馈指示包括在所述异常事件中的所述异常预测正确,则增大导致正确异常预测的各个单模态异常预测的权重因子,并减小未导致正确异常预测的各个单模态异常预测的权重因子。
根据第一实施例的一个特定特征,调整所述权重因子中的至少一个包括:如果所述用户反馈指示包括在所述异常事件中的所述异常预测不正确的,则增大未导致不正确异常预测的各个单模态异常预测的权重因子,并减小导致不正确异常预测的各个单模态异常预测的权重因子。
根据第一实施例的一个特定特征,调整所述权重因子中的至少一个包括:如果所述用户反馈指示与不正确无异常预测对应的异常事件缺失,则增大未导致不正确异常预测的各个单模态异常预测的权重因子,并减小导致不正确异常预测的各个单模态异常预测的权重因子。
根据第一实施例的一个特定特征,当新传感器被添加到所述数量为N的多个传感器时,所述方法还包括:
添加新单模态异常模型,以用于分析来自所述新传感器的传感器数据;以及
将所述新单模态异常模型的权重因子初始化为1,同时将其他现有的单模态异常模型的权重因子调整为αi=αi*N/(N+1),其中,αi是第i个传感器的权重因子。
根据第一实施例的一个特定特征,当所述数量为N的多个传感器中的给定传感器被检测到有缺陷、或与被检测到不可靠的单模态异常模型相关联时,所述方法还包括:
从数量为N的多个单模态异常模型去除与所述给定传感器相关联的单模态异常模型;以及
将剩余的N-1个单模态异常模型的权重因子调整为αi=αi*N/(N-1),其中,αi是第i个传感器的权重因子。
根据第二实施例,所述机器学习系统包括单个多模态异常模型,所述单个多模态异常模型被配置为:
基于来自所述多个传感器的所述传感器数据,计算多模态异常预测;以及
基于所述多模态异常预测与阈值之间的比较,计算所述异常预测;
并且基于所述用户反馈调整所述至少一个模型包括:调整所述单个多模态异常模型。
根据第二实施例的一个特定特征,调整所述单个多模态异常模型包括调整所述阈值。
根据第一实施例和/或第二实施例的一个特定特征,如果假检测率低于确定水平,则不执行基于所述用户反馈调整所述至少一个模型。
根据第一实施例和/或第二实施例的一个特定特征,所述方法还包括:
基于所述用户反馈和来自所述数量为N的多个传感器的所述传感器数据,生成补充训练数据集;以及
利用所述补充训练数据集,重新训练所述至少一个模型。
本公开的另一方面涉及包括程序代码指令的计算机程序产品,所述程序代码指令用于当程序在计算机或处理器上执行时实现(方法实施例中的任一个中的)前述方法。
本公开的另一方面涉及存储有前述计算机程序产品的非暂时性计算机可读载体介质。
本公开的另一方面涉及用于检测异常的设备,所述设备包括可重新编程的或专用的计算机器,所述计算机器被配置为实现机器学习系统,所述机器学习系统本身被配置为:
从训练数据集学习至少一个模型;
接收来自数量为N的多个传感器的传感器数据;
基于所述传感器数据和所述至少一个模型,计算异常预测;以及
如果所述异常预测是异常检测,则发送包括所述异常预测的异常事件;
所述机器学习系统还被配置为:
接收属于包括以下项的组的用户反馈:
指示包括在所述异常事件中的所述异常预测正确的用户反馈;
指示包括在所述异常事件中的所述异常预测不正确的用户反馈;
指示与不正确异常预测对应的异常事件缺失的用户反馈;以及
基于所述用户反馈调整所述至少一个模型。
根据一个实现方式,上文所述的用于检测异常的方法的不同步骤通过一个或多个软件程序或软件模块程序实现,该软件程序或软件模块程序包括软件指令,该软件指令旨在由在电子设备的操作系统内执行的用于检测异常的设备的数据处理器执行,这些软件指令被设计用于命令执行根据本原理的方法的不同步骤。
还公开了能够由计算机或由数据处理器执行的计算机程序,该程序包括指令,该指令用于命令执行在电子设备的操作系统内执行的用于检测异常的方法的步骤,如上文所述。
程序可以使用任何编程语言,并且可以是源代码、目标代码、或源代码与目标代码之间的中间代码的形式,例如,部分编译的形式或任何其他期望的形式。
信息载体可以是能够存储程序的任何实体或装置。例如,载体可以包括存储装置,例如,ROM,例如,CD ROM或微电子电路ROM、或磁记录装置(例如,软盘或硬盘驱动器)。
再有,信息载体可以是可传输的载体,例如,可以经由电缆或光缆、通过无线电或其他方式传送的电或光信号。根据本原理的程序尤其可以上传到互联网类型的网络。
作为替代方案,信息载体可以是集成有程序的集成电路,该电路适于执行或用于执行所讨论的方法。
根据一个实施例,方法/装置可以借助于软件和/或硬件组件来实现。在这方面,术语“模块”或“单元”在本文档中可以很好地等同对应于软件组件和硬件组件、或硬件组件和软件组件的集合。
软件组件对应于能够实现如下文针对相关模块描述的一个功能或一组功能的一个或多个计算机程序、程序的一个或多个子程序、或(更总体地)程序的任何元素或一个软件。这样的软件组件由物理实体(终端、服务器等)的数据处理器执行,并且能够访问该物理实体的硬件资源(存储器、记录介质、通信总线、输入/输出电子板、用户接口等)。
以相同的方式,硬件组件对应于能够实现如下文针对相关模块描述的一个功能或一组功能的硬件单元的任何元件。它可以是可编程硬件组件或具有集成的处理器以执行软件的组件,例如,集成电路、智能卡、存储卡、用于执行固件的电子板等。
还公开了存储有这样的程序的非暂时性处理器可读介质。
应理解,前述总体描述和以下详细描述二者均是示例性和解释性的,而不是对所要求保护的本公开的限制。
还须理解,说明书中对“一个实施例”或“一种实施例”的引用表示所描述的实施例可以包括特定的特征、结构或特性,但不一定每个实施例都包括该特定的特征、结构、或特性。此外,这些短语不一定指相同的实施例。此外,当结合一个实施例描述了特定的特征、结构或特性时,无论是否明确描述,均认为本领域技术人员能够在认知范围内结合其他实施例来影响这样的特征、结构或特性。
附图说明
实施例的其他特征和优点将从以下通过指示性和非穷举性示例的方式给出的描述以及从附图而变得明显,其中:
图1是根据第一实现方式的包括异常检测设备的系统的示意图;
图2是根据本公开的特定实施例的异常检测方法的流程图;
图3是当添加新传感器时执行的算法的流程图;
图4是当检测到传感器有缺陷或与被检测不可靠的模型相关联时执行的算法的流程图;
图5是根据第二实现方式的包括异常检测设备的系统的示意图;以及
图6示出了图1和图5的异常检测设备中的任一个的简化结构的示例。
具体实施方式
在本文的所有附图中,相似的元件和步骤由相同的附图标记表示。
在以下描述中,所考虑的应用示例是用于检测家庭异常的系统,该系统依赖于随时间对源自家庭传感器的多个数据的收集,来检测家庭异常。本公开不限于该特定实现方式,并且可能对于需要使用机器学习(ML)系统和来自多个传感器的传感器数据来检测异常的任何上下文而言,均具有吸引力。
异常检测定义:在所考虑的应用示例中,异常检测指个人或家庭习惯的任意家庭意外改变或意外事件的出现。异常检测依赖于对安装于家庭的多个传感器的持续监视。例如,异常检测致力于电子健康/养老、福利、家庭安全服务领域等。
异常阈值(或权重)设置:由于这是一个因家庭与家庭的不同、传感器与传感器的不同而异的概念,因而服务架构应灵活地适应各种情况。
应对这种灵活性的第一种可能的方式是:要求用户来配置异常检测系统,例如,通过由每个家庭成员完成的家庭简档或由被视为家庭管理员的一个成员完成的家庭简档,来配置异常检测系统。用户应具有以下可能性:通过用户界面(UI)来定义针对所有传感器或特定传感器的异常阈值。例如,终端用户将选择针对温度传感器的最小/最大阈值,超出该定义的阈值的范围的任何测量值都将被视为异常。个人异常设置可以在系统首次开机时在UI中显示的专用简档页面中进行配置。
第二种可能的方式是通过自动异常检测系统来进行,该自动异常检测系统将针对传感器值中的每组同时测量值、或针对在与最近时间对应的滑窗上收集的测量值组,确定异常分数或异常概率。
家庭可以扩展为包括许多家庭的建筑物的尺度,在这种情况下,家庭由专门的企业(不动产、房地产代表等)管理。
异常级别(可选):发送到终端用户的异常事件可以从低优先级(仅提供信息)到高优先级(紧急)被分类为不同的级别,例如,根据事件发生的周期性和/或传感器数据值随时间变化/波动的梯度来分类。
现在参考图1,示出了根据第一实现方式的包括异常检测设备1(也称为“异常检测器”)的系统。
在该特定实施例中,该系统包括:
数量为N的多个传感器,例如,该多个传感器包括在安装于家庭区域中的多传感器模块100中。传感器的示例性列表包括但不限于:温度传感器、压力传感器、红外传感器(单个或矩阵)、IMU(惯性测量单元)传感器、振动传感器、麦克风、地震检波器、CO/CO2气体传感器、光/颜色传感器、接近传感器等;
终端用户终端2(例如,智能电话、平板计算机、膝上型计算机、计算机等),该终端用户终端执行异常服务应用;
后端200,该后端执行以下后端功能:从异常检测器1接收异常事件,并将事件提供到终端用户终端2。例如,该过程可以依赖于推送通知服务;以及
异常检测器1,该异常检测器被配置为与后端200和多传感器模块100通信。在一个特定实施例中,异常检测器1是独立设备。在一个变型中,异常检测器1安装在另一设备中,例如,机顶盒(STB)或网关。
在一个特定实施例中,由后端200执行的后端功能包括以下子功能的非详尽列表:
传感器数据管理服务201,该传感器数据管理服务收集在异常事件发生之前和发生时的最近数据状态/值。作为示例,与回溯传感器数据状态对应的前进时间可以被设置为5分钟。这将有助于服务管理员更多地了解异常发生的原因;
终端用户认证服务202,该终端用户认证服务向终端用户提供用于以下项的凭证:随时间访问发生的事件、创建和编辑终端用户简档、计费状态、普通的终端用户帐户服务;
反馈服务203,该反馈服务向终端用户提供以下可能性:通过UI给出关于出现的异常是错误的还是正确的反馈,以增强(一个或多个)模型。反馈可以是二进制的(例如,是/否、同意/不同意),以通知异常检测器其执行了正确还是错误的异常检测。在一个特定实施例中,反馈还包括每个传感器在事件发生时和在定义的(固定的或可变的)时间窗中的状态,例如,在异常事件之前并包括异常事件的传感器数据的最近5分钟。这允许专家对异常进行事后分析,例如,以确定异常的原因。作为该实施例的替代方案,终端用户反馈服务可以通过安装在异常检测器1中的专用UI而直接在异常检测器侧实现;以及
计费服务204,该计费服务根据终端用户的使用情况和终端用户的账户简档,执行问责服务。
在图1中示出的第一实现方式中,异常检测器1包括以下块(也称为“模块”):
块110是“数据捕获模块”,块110收集(来自多传感器模块100的)异构传感器数据;在需要的情况下,如果尚未执行对数据采样,则在数字域中对数据采样;在相同时钟(例如,墙壁时钟)下对数据标记时间戳,以使得来自不同传感器的捕获的数据在处理步骤之前被同步。然后,数据捕获模块110将数据聚合到格式化文件中,以用于在数据集构建器120中执行进一步处理;
块120是“数据集构建器”,块120从由数据捕获模块110提供的传感器数据创建数据集。在学习阶段期间,创建的数据集是训练数据集,该训练数据集将由块130使用来学习(即,构建和/或训练)模型。在生产阶段期间,创建的数据集是判定数据集,该判定数据集将由块130使用来检测异常并生成异常预测。数据集构建器120包括以下块:
块121是“多模健全性数据检查器”,块121检查数据的健全性(检测问题,例如,丢失、格式错误、重复或有噪声数据),以便清理数据并将数据呈现到块122;
块122是“多模异质数据消化器”,块122聚合利用各自的时间戳标记的异质数据,并利用共同的刻度(tick)格式化数据。由于数据值的异质性,因而可以应用归一化。这些数据形成数据集,该数据集准备好被呈现到块130;
块130是“机器学习(ML)系统”,块130接收由块120提供的数据集。在学习阶段期间,ML系统130使用数据集来学习(即,构建和/或训练)模型。在生产阶段期间,ML系统130使用数据集和学习模型,来检测异常并生成异常预测。ML系统130包括下文进一步描述的以下块:N个块132(每个块132与N个传感器中的一个不同的传感器相关联)、块133和块131。
每个块132管理与N个传感器之一相关联的单模态异常模型。在学习阶段期间,块132使用(由块120输出的)数据集,来学习(即,建立和/或训练)与N个传感器之一相关联的单模态异常模型。为此目的,块132包括特征提取功能,该特征提取功能可以针对每个传感器而不同,因为每个传感器具有其自己的与恰当训练单模态异常模型相关的特征。在生产阶段期间,块132使用(由块120输出的)数据集和学习的单模态异常模型,来计算单模态异常预测。换言之,N个块132构建N个单模态异常模型,并生成N个单模态异常预测。
在每个块132的一个实施例中,单模态异常模型输出单模态异常预测,该单模态异常预测作为是(异常)或否(不异常)的概率值、与相关联的传感器的当前值(或该传感器在定义的时间窗中的值)相关联。该概率基于一个或一些异常阈值来计算,例如,该异常阈值(在系统初始化时)默认设置、或由终端用户(或家庭管理员)配置。例如,在专用或组合的年/日/小时时间范围内,卧室的最低和最高温度可以分别设置为18℃(夜间)和20℃(白天)。
在每个块132的另一实现方式中,检查所有当前传感器值(或过去的时间滑窗中的值),并计算全局异常分数。这可能涉及将最近的值保存在日志文件中以用于异常分数计算,以及将过去的更长时间的值保存在日志文件中以用于模型重新训练。保存在该日志文件中的值应该仅是正常值(无异常),这是异常检测领域中的惯例。应注意,当什么都没有发生时(即,未从用户反馈标记假警报),从传感器收集的数据将作为“正常”标签被添加到(包括训练数据集的)数据库。这允许系统连续从即时收集的更新的数据库(即,补充的训练数据集)进行学习,例如,通过在几天或几周之后重新训练每个单模态异常模型来进行学习。
块133是“判定器”(或“模型融合块”),该块被配置为:
基于(包括至少一个判定规则的)规则引擎和(由N个块132的N个单模态异常模型提供的)N个单模态异常预测,计算最终异常预测。在一个实施例中,规则引擎具有在系统初始化时的默认的判定树架构;
将最终异常预测p与阈值S进行比较,如果最终异常预测p大于阈值S,则确定最终异常预测p是异常检测;以及
如果最终异常预测p是异常检测,则发送包括异常检测的异常事件11。
在块133的一个实施例中,N个单模态异常预测中的每个单模态异常预测均被加权相关联的权重因子。(针对所有传感器的)最终异常预测p是N个加权的单模态异常预测的组合,并被如下计算:
其中,αi是第i个传感器的权重因子,以及
pi是由第i个传感器的单模态异常模型输出的异常概率(也称为“异常分数”)。
块131是“用户反馈管理器”,该块:
经由后端200从终端用户终端2接收用户反馈12。用户反馈与异常事件11或异常事件缺失相关;以及
基于用户反馈调整以下项:
N个块132的N个单模态异常模型中的一个、一些或全部,和/或块133(“判定器”)的包括至少一个判定规则的规则引擎,该至少一个判定规则即为:
N个权重因子α1至αN中的一个、一些或全部;和/或
阈值S。
在一个实施例中,如果假检测率低于确定水平,则不执行在块132中的至少一个和/或块133处的调整,以防止错过更多的真实警报检测(即,“假阴性”情况)。
使用用户反馈来调整权重因子α1至αN的示例。最初,没有任何用户反馈,N个权重因子被设置为等于1。然后,在接收到用户反馈之后,N个权重因子按下表指定地被调整:
在该示例中,分别从音频和振动传感器学习的单模态异常模型“模型_1”和“模型_3”二者输出“是”(即“异常”),因此最终判定是“异常”。然而,经由反馈,用户确认这是一个假警报(“假阳性”),这对应于与温度传感器相关联的“模型_2”的预测结果。然后,系统可以相对于权重因子α1和α3稍微增大与“模型_2”对应的权重因子α2,以使得在下次类似的情况下,系统将更多一些地依赖于“模型_2”来输出最终判定。
换言之,如果用户反馈12指示包括在异常事件11中的异常预测不正确,则块131增大未导致不正确异常预测的各个单模态异常预测的权重因子,并减小导致不正确异常预测的各个单模态异常预测的权重因子。
可选地,如果用户反馈12指示包括在异常事件11中的异常预测正确,则块131增大导致正确异常预测的各个单模态异常预测的权重因子,并减小未导致正确异常预测的各个单模态异常预测的权重因子。
可选地,如果用户反馈12指示与不正确无异常预测对应的异常事件缺失,则块131增大未导致不正确异常预测的各个单模态异常预测的权重因子,并减小导致不正确异常预测的各个单模态异常预测的权重因子。
在一个实施例中,所提出的系统在对列表添加或移除传感器方面具有灵活性。
例如,如图3中所示,在新传感器被添加以用于监视的特定时刻,添加新单模态模型以用于分析来自该新传感器的数据(步骤31),并且将该新模型(即,针对该新传感器的模型)的权重因子初始化为1,同时将其他现有的单模态模型(即,针对其他传感器的模型)的权重因子调整为αi=αi*N/(N+1),其中,N和αi如上定义(步骤32)。
如图4中所示,当数量为N的多个传感器中的给定传感器被检测到有缺陷、或与被检测到不可靠的单模态异常模型相关联时,该方法还包括:从数量为N的多个单模态异常模型去除与给定传感器相关联的单模态异常模型(步骤41),并且将剩余的N-1个单模态异常模型的权重因子调整为αi=αi*N/(N-1),其中,N和αi如上定义(步骤42)。
使用用户反馈调整阈值S的示例。在假警报(“假阳性”)的情况下,将阈值S提高到触发了警报识别的异常分数值以上,以避免在下次发生相同事件时触发警报。在未检测到真警报(“假阴性”)的情况下,将阈值S降低到未能触发警报识别的最大值异常分数以下,以在下次发生相同事件时触发警报识别。
在一个实施例中,该方法还包括基于用户反馈和来自数量为N的多个传感器的传感器数据,生成补充训练数据集,并利用补充训练数据集重新训练N个单模态模型中的至少一个。
在生成补充训练数据集时,如果补充训练数据集应该仅包括(传感器数据的)正常值,则这可涉及从补充训练数据集去除以下项:
与真异常检测(“真阳性”)相关的样本(传感器数据);
与假异常检测(“假阳性”)相关的样本(传感器数据);以及
与不正确无异常预测(“假阴性”)相关的样本(传感器数据)。
在一个替代实施例中,可涉及:将与假异常检测(“假阳性”)相关的样本(传感器数据)保留在补充训练数据集中,但将这些样本标记为与“正常事件”(“真阴性”)相关。
图2是根据本公开的一个特定实施例的异常检测方法的流程图。该方法由块130(“机器学习(ML)系统”)执行,并概括了图1的系统的操作。
在步骤21中,块130接收来自数量为N的多个传感器的传感器数据。
在步骤22中,块130基于传感器数据、N个单模态模型(块132)和“判定器”(块133)的规则引擎,计算异常预测。
在测试步骤23中,块130检查异常预测是否是异常检测。在测试步骤23中为否定回答的情况下,块130返回到步骤21。在测试步骤23中为肯定回答的情况下,块130进行到步骤24,在步骤24中,块130发送包括异常预测的异常事件11。
步骤24之后是步骤25,在步骤25中,块130接收与异常事件或异常事件缺失相关的用户反馈12。
步骤25之后是测试步骤26,在测试步骤26中,块130检查假检测率是否低于确定水平。在测试步骤26中为肯定回答的情况下,块130返回到步骤21。在测试步骤26中是否定回答的情况下,块130进行到步骤27,在步骤27中,块130基于用户反馈调整块132中的至少一个和/或块133。
步骤27之后是步骤28和步骤29,在步骤28中,块130(基于用户反馈和来自数量为N的多个传感器的传感器数据)生成补充训练数据集;在步骤29中,块130利用补充训练数据集,重新训练N个单模态模型中的至少一个。
图5是根据第二实现方式的包括异常检测设备1的系统的示意图。该第二实现方式与图1的第一实现方式的不同之处在于“机器学习(ML)系统”的以下不同(块130’替代了块130):
单个多模态异常模型132’代替了N个单模态异常模型132;以及
不存在块133(“判定器”)。
单个多模态异常模型132’例如被配置为:基于来自数量为N的多个传感器的传感器数据,计算多模态异常预测;并基于多模态异常预测与阈值S’之间的比较,计算异常预测。如果多模态异常预测大于阈值S’,则单个多模态异常模型132’判定异常预测是异常检测,并发送包括异常检测的异常事件11。
块131(“用户反馈管理器”)基于用户反馈,调整单个多模态异常模型132’。在一个实施例中,块131调整阈值S’(以与第一实现方式中调整阈值S的方式相同的方式来调整)。
图6示出了图1和图5的异常检测设备1、1’中的任一个的简化结构的示例。设备1、1’包括非易失性存储器63(例如,只读存储器(ROM)或硬盘)、易失性存储器62(例如,随机存取存储器或RAM)和处理器(计算机器)61。非易失性存储器63是非暂时性计算机可读载体介质。其存储可执行程序代码指令630,该可执行程序代码指令由处理器61执行,以便能够实现上述块110、120和130以及上述方法(参见图1至图5)。在初始化时,程序代码指令630从非易失性存储器63被传输到易失性存储器62,以便由处理器61执行。易失性存储器62类似地包括用于存储该执行所需的变量和参数的寄存器。
上述方法的所有步骤(参见图1至图5)可由该设备通过以下方式实现:
通过可重新编程的计算机器执行程序代码指令集,可重新编程的计算机器例如是PC型装置、DSP(数字信号处理器)或微控制器。该程序代码指令集可以存储在可拆卸的非暂时性计算机可读载体(例如,软盘、CD-ROM或DVD-ROM)或不可拆卸的非暂时性计算机可读载体中;或者
专用的计算机器或组件,例如,FPGA(现场可编程门阵列)、ASIC(专用集成电路)或任何专用硬件组件。
换言之,本公开不限于以计算机程序指令的形式的纯基于软件的实现方式,本公开还可以以硬件形式、或者结合硬件部分和软件部分的任意形式来实现。
Claims (15)
1.一种用于检测异常的方法,所述方法由机器学习系统(130、130’)执行,所述机器学习系统被配置为从训练数据集学习至少一个模型(132、132’),所述方法包括:
接收(21)来自数量为N的多个传感器(100)的传感器数据;
基于所述传感器数据和所述至少一个模型,计算(22)异常预测;以及
如果所述异常预测是异常检测,则发送包括所述异常预测的异常事件(11);
其特征在于,所述方法还包括:
接收(25)属于包括以下项的组的用户反馈(12):
指示包括在所述异常事件中的所述异常预测正确的用户反馈;
指示包括在所述异常事件中的所述异常预测不正确的用户反馈;
指示与不正确异常预测对应的异常事件缺失的用户反馈;以及
基于所述用户反馈调整(27)所述至少一个模型。
2.根据权利要求1所述的方法,其中,所述机器学习系统(130)包括:
至少两个单模态异常模型(132),每个单模态异常模型与所述数量为N的多个传感器中的一个不同的传感器相关联,并且每个单模态异常模型被配置为基于来自相关联的传感器的传感器数据,计算单模态异常预测;以及
判定器(133),被配置为通过将至少一个判定规则应用于所述单模态异常预测,来计算所述异常预测;
并且其中,基于所述用户反馈调整(27)所述至少一个模型包括以下项中的至少一个:
调整所述单模态异常模型中的至少一个;以及
调整所述至少一个判定规则。
3.根据权利要求2所述的方法,其中,在所述至少一个判定规则中,每个单模态异常预测被加权相关联的权重因子,并且其中,调整(27)所述至少一个判定规则包括以下项中的至少一个:
调整所述权重因子中的至少一个;以及
调整阈值,所述阈值用于与已被加权了各自的加权因子的所述单模态异常预测的组合进行比较。
4.根据权利要求3所述的方法,其中,所述调整(27)所述权重因子中的至少一个包括:
如果所述用户反馈指示包括在所述异常事件中的所述异常预测正确,则增大导致正确异常预测的各个单模态异常预测的权重因子,并减小未导致正确异常预测的各个单模态异常预测的权重因子。
5.根据权利要求3至4中任一项所述的方法,其中,所述调整(27)所述权重因子中的至少一个包括:
如果所述用户反馈指示包括在所述异常事件中的所述异常预测不正确,则增大未导致不正确异常预测的各个单模态异常预测的权重因子,并减小导致不正确异常预测的各个单模态异常预测的权重因子。
6.根据权利要求3至5中任一项所述的方法,其中,所述调整(27)所述权重因子中的至少一个包括:
如果所述用户反馈指示与不正确异常预测对应的异常事件缺失,则增大未导致不正确异常预测的各个单模态异常预测的权重因子,并减小导致不正确异常预测的各个单模态异常预测的权重因子。
7.根据权利要求1至6中任一项所述的方法,其中,当新传感器被添加到所述数量为N的多个传感器时,所述方法还包括:
添加(31)新单模态异常模型,以用于分析来自所述新传感器的传感器数据;以及
将所述新单模态异常模型的权重因子初始化(32)为1,同时将其他现有的单模态异常模型的权重因子调整(32)为αi=αi*N/(N+1),其中,αi是第i个传感器的权重因子。
8.根据权利要求1至7中任一项所述的方法,其中,当所述数量为N的多个传感器中的给定传感器被检测到有缺陷、或与被检测到不可靠的单模态异常模型相关联时,所述方法还包括:
从数量为N的多个单模态异常模型去除(41)与所述给定传感器相关联的单模态异常模型;以及
将剩余的N-1个单模态异常模型的权重因子调整(42)为αi=αi*N/(N-1),其中,αi是第i个传感器的权重因子。
9.根据权利要求1所述的方法,其中,所述机器学习系统(130’)包括单个多模态异常模型(132’),所述单个多模态异常模型被配置为:
基于来自所述多个传感器的所述传感器数据,计算多模态异常预测;以及
基于所述多模态异常预测与阈值之间的比较,计算所述异常预测;
并且其中,基于所述用户反馈调整(27)所述至少一个模型包括:调整所述单个多模态异常模型。
10.根据权利要求9所述的方法,其中,调整所述单个多模态异常模型包括调整所述阈值。
11.根据权利要求1至10中任一项所述的方法,其中,如果假检测率低于确定水平(26),则不执行基于所述用户反馈调整(27)所述至少一个模型。
12.根据权利要求1至10中任一项所述的方法,其中,所述方法还包括:
基于所述用户反馈和来自所述数量为N的多个传感器的所述传感器数据,生成(28)补充训练数据集;以及
利用所述补充训练数据集,重新训练(29)所述至少一个模型。
13.一种包括程序代码指令的计算机程序产品(630),所述程序代码指令用于当所述程序在计算机或处理器(61)上执行时实现根据权利要求1至12中任一项所述的方法。
14.一种存储有根据权利要求13所述的计算机程序产品(630)的非暂时性计算机可读载体介质(63)。
15.一种用于检测异常的设备(1、1’),所述设备包括可重新编程的或专用的计算机器(61、62、63),所述计算机器被配置为实现机器学习系统(130),所述机器学习系统本身被配置为:
从训练数据集学习至少一个模型;
接收来自数量为N的多个传感器的传感器数据;
基于所述传感器数据和所述至少一个模型,计算异常预测;以及
如果所述异常预测是异常检测,则发送包括所述异常预测的异常事件;
其特征在于,所述机器学习系统(130)还被配置为:
接收属于包括以下项的组的用户反馈:
指示包括在所述异常事件中的所述异常预测正确的用户反馈;
指示包括在所述异常事件中的所述异常预测不正确的用户反馈;
指示与不正确异常预测对应的异常事件缺失的用户反馈;以及
基于所述用户反馈调整所述至少一个模型。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19186914.8 | 2019-07-18 | ||
EP19186914.8A EP3767553A1 (en) | 2019-07-18 | 2019-07-18 | Method and device for detecting anomalies, corresponding computer program product and non-transitory computer-readable carrier medium |
PCT/EP2020/068941 WO2021008913A1 (en) | 2019-07-18 | 2020-07-06 | Method and device for detecting anomalies, corresponding computer program product and non-transitory computer-readable carrier medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114450700A true CN114450700A (zh) | 2022-05-06 |
Family
ID=67437931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080065348.2A Pending CN114450700A (zh) | 2019-07-18 | 2020-07-06 | 用于检测异常的方法和设备、相应的计算机程序产品和非暂时性计算机可读载体介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220277225A1 (zh) |
EP (2) | EP3767553A1 (zh) |
CN (1) | CN114450700A (zh) |
WO (1) | WO2021008913A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116539619A (zh) * | 2023-04-19 | 2023-08-04 | 广州里工实业有限公司 | 产品缺陷检测方法、系统、装置及存储介质 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11743135B2 (en) | 2019-07-23 | 2023-08-29 | Vmware, Inc. | Presenting data regarding grouped flows |
US11340931B2 (en) | 2019-07-23 | 2022-05-24 | Vmware, Inc. | Recommendation generation based on selection of selectable elements of visual representation |
US11321213B2 (en) | 2020-01-16 | 2022-05-03 | Vmware, Inc. | Correlation key used to correlate flow and con text data |
US20220214677A1 (en) * | 2021-01-05 | 2022-07-07 | Samsung Electronics Company, Ltd. | Detecting anomalous events using a microcontroller |
US11991187B2 (en) | 2021-01-22 | 2024-05-21 | VMware LLC | Security threat detection based on network flow analysis |
US11785032B2 (en) | 2021-01-22 | 2023-10-10 | Vmware, Inc. | Security threat detection based on network flow analysis |
US20220256333A1 (en) * | 2021-02-09 | 2022-08-11 | Qualcomm Incorporated | Method and System for Protecting Proprietary Information Used to Determine a Misbehavior Condition for Vehicle-to-Everything (V2X) Reporting |
US11831667B2 (en) | 2021-07-09 | 2023-11-28 | Vmware, Inc. | Identification of time-ordered sets of connections to identify threats to a datacenter |
US11997120B2 (en) | 2021-07-09 | 2024-05-28 | VMware LLC | Detecting threats to datacenter based on analysis of anomalous events |
CN113688938B (zh) * | 2021-09-07 | 2023-07-28 | 北京百度网讯科技有限公司 | 确定对象情感的方法、训练情感分类模型的方法及装置 |
US11792151B2 (en) | 2021-10-21 | 2023-10-17 | Vmware, Inc. | Detection of threats based on responses to name resolution requests |
US12015591B2 (en) | 2021-12-06 | 2024-06-18 | VMware LLC | Reuse of groups in security policy |
CN114466009A (zh) * | 2021-12-22 | 2022-05-10 | 天翼云科技有限公司 | 数据处理方法、边缘超融合端、云端及可读存储介质 |
US20230342867A1 (en) * | 2022-04-20 | 2023-10-26 | State Farm Mutual Automobile Insurance Company | Systems and Methods for Generating a Home Score for a User |
WO2024102051A1 (en) * | 2022-11-08 | 2024-05-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Feedback on executed field service operation |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9699205B2 (en) * | 2015-08-31 | 2017-07-04 | Splunk Inc. | Network security system |
US10469511B2 (en) * | 2016-03-28 | 2019-11-05 | Cisco Technology, Inc. | User assistance coordination in anomaly detection |
US11777963B2 (en) * | 2017-02-24 | 2023-10-03 | LogRhythm Inc. | Analytics for processing information system data |
US10462169B2 (en) * | 2017-04-29 | 2019-10-29 | Splunk Inc. | Lateral movement detection through graph-based candidate selection |
US11483324B2 (en) * | 2017-11-30 | 2022-10-25 | Shape Security, Inc. | Detection of malicious activity using behavior data |
US11288672B2 (en) * | 2017-12-28 | 2022-03-29 | Paypal, Inc. | Machine learning engine for fraud detection following link selection |
US11416603B2 (en) * | 2018-11-16 | 2022-08-16 | Intel Corporation | Methods, systems, articles of manufacture and apparatus to detect process hijacking |
-
2019
- 2019-07-18 EP EP19186914.8A patent/EP3767553A1/en active Pending
-
2020
- 2020-07-06 CN CN202080065348.2A patent/CN114450700A/zh active Pending
- 2020-07-06 WO PCT/EP2020/068941 patent/WO2021008913A1/en unknown
- 2020-07-06 EP EP20735206.3A patent/EP4000234A1/en active Pending
- 2020-07-06 US US17/627,835 patent/US20220277225A1/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116539619A (zh) * | 2023-04-19 | 2023-08-04 | 广州里工实业有限公司 | 产品缺陷检测方法、系统、装置及存储介质 |
CN116539619B (zh) * | 2023-04-19 | 2024-05-10 | 广州里工实业有限公司 | 产品缺陷检测方法、系统、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021008913A1 (en) | 2021-01-21 |
EP3767553A1 (en) | 2021-01-20 |
US20220277225A1 (en) | 2022-09-01 |
EP4000234A1 (en) | 2022-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114450700A (zh) | 用于检测异常的方法和设备、相应的计算机程序产品和非暂时性计算机可读载体介质 | |
US11120127B2 (en) | Reconstruction-based anomaly detection | |
US10733536B2 (en) | Population-based learning with deep belief networks | |
US11108575B2 (en) | Training models for IOT devices | |
JP6643211B2 (ja) | 異常検知システム及び異常検知方法 | |
JP7082461B2 (ja) | 故障予知方法、故障予知装置および故障予知プログラム | |
US20100100521A1 (en) | Diagnostic system | |
CN105325023B (zh) | 用于小区异常检测的方法和网络设备 | |
Vodenčarević et al. | Identifying behavior models for process plants | |
US20210235543A1 (en) | Split predictions for iot devices | |
US20200334578A1 (en) | Model training apparatus, model training method, and program | |
EP3183622B1 (en) | Population-based learning with deep belief networks | |
US20230316720A1 (en) | Anomaly detection apparatus, anomaly detection method, and program | |
CN113780466B (zh) | 模型迭代优化方法、装置、电子设备和可读存储介质 | |
US20190037040A1 (en) | Model tiering for iot device clusters | |
KR101941854B1 (ko) | 미취득 데이터 보정을 통한 부하 예측 시스템 및 방법 | |
US11368358B2 (en) | Automated machine-learning-based ticket resolution for system recovery | |
JP4862446B2 (ja) | 障害原因推定システム、方法、及び、プログラム | |
CN112148768A (zh) | 一种指标时间序列异常检测方法、系统及存储介质 | |
JP7268756B2 (ja) | 劣化抑制プログラム、劣化抑制方法および情報処理装置 | |
WO2022024211A1 (ja) | 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法 | |
US20210081800A1 (en) | Method, device and medium for diagnosing and optimizing data analysis system | |
CN112988437B (zh) | 一种故障预测方法、装置及电子设备和存储介质 | |
CN111752732A (zh) | 在实时安全关键嵌入应用中的增强异常预测和管理 | |
US20140188772A1 (en) | Computer-implemented methods and systems for detecting a change in state of a physical asset |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |