掌桥专利:专业的专利平台
掌桥专利
首页

数据处理系统中的警报管理

文献发布时间:2023-06-19 19:37:02


数据处理系统中的警报管理

背景技术

本发明总体上涉及数据处理系统中的警报管理,尤其涉及用于动态更新警报管理系统的方法和系统,所述警报管理系统将警报与用于处理警报的自动化过程相匹配。

当某些可检测的条件或其他事件发生时,在数据处理系统中生成警报,这对系统操作的整体管理很重要。在诸如计算机网络、数据中心、云计算系统和其他复杂IT基础设施的处理系统中,可能会生成大量这样的警报。这些警报包括对已发生事件的描述,必须进行适当的处理和处置,以缓解警报状况并维持可靠的系统运行。警报管理系统接收并处理警报,决定哪些可以由自动化流程(“自动机(automata)”)处理,哪些应该上报给系统工程师进行响应。自动机的使用允许警报管理系统每天管理数百万个警报。可以使用预定义的规则将警报与自动机相匹配,以基于警报描述来决定哪个(如果有的话)自动化工具适合于响应警报。

自动机通常在潜在敏感系统上以提升的权限运行。部署这些工具的规则集必须仔细构建,并且需要不断的人工检查和维护。随着处理系统的发展和基础设施的改变,警报也会随之改变。适应这种改变,同时确保自动机的有效和适当的使用提出了重大的挑战。

发明内容

本发明的一个方面提供了一种用于动态更新警报管理系统的计算机实现方法,该警报管理系统使用主规则集将数据处理系统中的警报与用于处理警报的自动化过程(“自动机”)相匹配。该方法包括使用训练数据集训练机器学习模型以将警报与自动机关联,该训练数据集包括由自动机成功处理的匹配警报。然后应用机器学习模型将未匹配警报与自动机关联,其中未匹配警报没有通过主规则集与自动机匹配。该方法还包括分析与未匹配警报的关联相关的机器学习模型的操作,以定义用于将未匹配警报与自动机匹配的新规则集。该方法还包括输出新规则集,用于审计新规则集中的每个规则。响应于审计的规则的批准,审计的规则被添加到主规则集中。

体现本发明的方法使警报管理系统能够在系统运行期间动态发展和改进。可以利用机器学习(ML)的能力来改善系统操作,同时克服ML模型的不可预测性与控制自动机部署的规则的透明度和审计需求之间的内在冲突。ML模型,在由匹配的自动机成功处理的警报上训练,不简单地用于将自动机分配给与主规则集不匹配警报。相反,这些警报会应用到模型中,并对这些特定警报的关联操作进行分析,以提取新规则集。然后,在将规则添加到主规则集之前,可以审计为不匹配警报派生的新规则集。这为警报管理系统的系统改进提供了优雅而强大的技术。随着处理系统的发展,系统可以不断适应以改进警报处理,扩展其自动响应能力并适应新警报。

体现本发明的方法可使用各种ML模型,甚至“黑盒”型模型,诸如神经网络,其不容易检查。在这些实施例中,分析模型操作的步骤可以使用独立于模型的解释技术来识别每个不匹配警报的一个或多个元素,这些元素对于获得该警报的关联结果是重要的。例如,ML模型通常为关联结果提供某种类型的置信值,该置信值估计关联准确度。例如,模型可以提供一组概率,指示每个可能的关联结果或分类对于输入样本是正确的可能性。利用这些模型,分析模型操作的步骤可以包括,当应用模型来关联每个不匹配警报时,为初始关联结果计算初始置信度值,估计关联准确度。对于警报的不同元素(例如,特定字段或字符串),该元素然后被移除,并且该模型被重新应用于结果警报以计算初始关联结果的新置信度值。基于不同元素的初始置信度值和新置信度值之间的差异,警报的至少一个元素可以被识别为初始关联结果的重要元素。然后,新规则集的生成可以基于不匹配警报的重要元素。这提供了一种简单的规则提取技术,在选择ML模型时具有灵活性,甚至允许在需要时使用黑盒模型。

在优选实施例中,ML模型包括树集成模型。在这些实施例中,分析模型的操作的步骤可以包括基于通过树集成中的树的路径的特征,生成新树,定义新规则集,不匹配警报经由该路径与自动机关联。对不匹配警报的推理过程的分析可以利用树集成模型的结构来有效地生成新规则集。这些实施例可以利用模型的可检查性来获得比黑盒模型可实现的更复杂的规则集。规则集可以以各种方式生成,并且基于下面进一步详述的置信度和/或覆盖方面被有利地定制。

本发明的另一方面提供了一种计算机程序产品,包括包含程序指令的计算机可读存储介质,所述程序指令可由处理装置执行,以使处理装置实施如上所述的用于动态更新警报管理系统的方法。

本发明的另一方面提供了一种警报管理系统,其包括用于从数据处理系统接收警报的通信接口、存储用于处理警报的自动机和用于将警报与自动机匹配的主规则集的存储器,以及配置为实施上述方法的控制逻辑。

下文将参照附图,通过说明性和非限制性示例,对本发明的实施例进行更详细的描述。

附图说明

图1是根据本发明的实施例的用于实施警报管理系统方法的示例性计算设备的框图;

图2示出了根据本发明的实施例的警报管理系统的组件模块;

图3描绘了根据本发明的实施例的图2的警报管理系统的步骤流程图;

图4示出了根据本发明的实施例的警报管理系统中使用的树集成模型中的决策树的结构;

图5示出了根据本发明的实施例的分析过程的操作;

图6示出了根据本发明的实施例的替代分析过程的操作;和

图7指示了根据本发明的实施例的使用黑盒模型的分析过程的步骤。

具体实施方式

本发明可为系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),用于使处理器执行本发明的各方面。

计算机可读存储介质可为有形设备,可保留和存储供指令执行设备使用的指令。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述设备的任何合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备,诸如穿孔卡或其上记录有指令的凹槽中的凸起结构,以及前述的任何合适的组合。如此处所使用的,计算机可读存储介质不应被解释为本身是瞬时信号,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。

本文所述的计算机可读程序指令可通过网络,例如互联网、局域网、广域网和/或无线网络,从计算机可读存储介质下载至相应计算/处理设备,或下载至外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。

用于执行本发明操作的计算机可读程序指令可为汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微码、固件指令、状态设置数据,或以一种或多种编程语言的任意组合编写的源代码或目标代码,包括面向对象的编程语言,诸如Smalltalk、C++等,以及常规程序编程语言,诸如“C”编程语言或类似编程语言。计算机可读程序指令可以完全在用户计算机上执行,部分在用户计算机上执行,作为独立软件包,部分在用户计算机上执行,部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令,以个性化电子电路,从而执行本发明的方面。

本文参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图,描述了本发明的各方面。将会理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。

可将这些计算机可读程序指令提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,以生产机器,从而通过计算机或其他可编程数据处理装置的处理器执行的指令,可创建用于实施流程图和/或框图框中规定的功能/动作的设备。这些计算机可读程序指令也可以存储在计算机可读存储介质中,该计算机可读存储介质可以指导计算机、可编程数据处理装置和/或其他设备以特定方式运行,使得其中存储有指令的计算机可读存储介质包括制造品,该制造品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。

计算机可读程序指令也可加载到计算机、其他可编程数据处理装置或其他设备上,以使一系列操作步骤在计算机、其他可编程装置或其他设备上执行,从而生成计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实施流程图和/或框图的一个或多个框中规定的功能/动作。

图中的流程图和框图说明了根据本发明各种实施例的系统、方法和计算机程序产品的可能实施的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、片段或部分,其包括用于实现(一个或多个)指定逻辑功能的一个或多个可执行指令。在一些替代实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意到,框图和/或流程图图示中的每个框以及框图和/或流程图图示中的框的组合可以由基于专用硬件的系统来实现,该系统执行指定的功能或动作或者执行专用硬件和计算机指令的组合。

待描述的实施例可作为用于动态更新警报管理系统的计算机实现方法来执行。该方法可以由包括一个或多个通用或专用计算机的计算系统来实现,每个通用或专用计算机可以包括一个或多个(真实或虚拟)机器,提供用于实现本文描述的操作的功能。体现本发明的方法的步骤可以由程序指令实现,例如由系统的处理装置实现的程序模块。通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。该计算系统可以在诸如云计算环境的分布式计算环境中实现,其中任务由通过通信网络链接的远程处理设备来执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质中。

图1是根据本发明的实施例的用于实施警报管理系统方法的示例性计算设备的框图。计算设备以通用计算机1的形式示出。计算机1的组件可包括处理装置,诸如由处理单元2、系统存储器3和总线4表示的一个或多个处理器,总线4将包括系统存储器3在内的各种系统组件耦合到处理单元2。

总线4代表多种类型总线结构中的一种或多种,包括存储器总线或存储器控制器、外围总线、加速图形端口和使用多种总线架构中的任何一种的处理器或局部总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线。

计算机1通常包括各种计算机可读介质。这种介质可以是计算机1可访问的任何可用介质,包括易失性和非易失性介质,以及可移动和不可移动介质。例如,系统存储器3可以包括易失性存储器形式的计算机可读介质,诸如随机存取存储器(RAM)5和/或高速缓冲存储器6。计算机1还可以包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。仅作为示例,存储系统7可以被提供用于从不可移动、非易失性磁介质(通常称为“硬盘驱动器”)读取和向其写入。虽然未示出,但是也可以提供用于从可移动、非易失性磁盘(例如“软盘”)读取和向其写入的磁盘驱动器,以及用于从可移动、非易失性光盘(诸如CD-ROM、DVD-ROM或其他光学介质)读取或向其写入的光盘驱动器。在这种情况下,每个都可以通过一个或多个数据介质接口连接到总线4。

存储器3可包括具有一个或多个程序模块的至少一个程序产品,所述程序模块被配置为执行本发明的实施例的功能。举例来说,具有一组(至少一个)程序模块9的程序/实用程序8,以及操作系统、一个或多个应用程序、其他程序模块和程序数据,可以存储在存储器3中。操作系统、一个或多个应用程序、其他程序模块和程序数据中的每一个或其某种组合都可以包括网络环境的实现。程序模块9通常执行本文描述的本发明的实施例的功能和/或方法。

计算机1还可与一个或多个外部设备10通信,诸如键盘、定点设备、显示器11等;使用户能够与计算机1交互的一个或多个设备;和/或任何设备(例如,网卡、调制解调器等),其使计算机1能够与一个或多个其他计算设备通信。这种通信可以经由输入/输出(I/O)接口12进行。此外,计算机1可以经由网络适配器13与一个或多个网络通信,诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,互联网)。如所描绘的,网络适配器13通过总线4与计算机1的其他组件通信。计算机1还可以与附加的处理装置14通信,诸如GPU(图形处理单元)或FPGA,用于实现本发明的实施例。应当理解,尽管未示出,但是其他硬件和/或软件组件可以与计算机1结合使用。示例包括但不限于微码、设备驱动程序、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器、数据归档存储系统等。

图2示出了根据本发明的实施例的警报管理系统20的组件模块。警报管理系统20包括通信接口21、存储器22和控制系统操作的控制逻辑23。控制逻辑23包括警报管理器模块25、数据收集模块26、训练模块27以及推理和分析模块28。

在操作中,警报管理系统20经由通信接口21接收数据处理系统(此处由网络29表示)中生成的警报。警报管理器25接收并处理这些警报,决定哪些可以由自动响应过程处理,哪些应该升级给系统工程师。特别地,存储器22存储一组用于实现自动响应过程的自动过程(“自动机”)30。自动机30包括软件工具Ai,其中i=1到M,其可以由警报管理器25部署以实现用于处理网络29中的各种警报事件的过程。这种自动机可以处理许多系统任务,例如,响应于容量使用警报来归档日志,识别并移除不提供有用输出的所谓“僵尸”进程,等等。存储器22还存储主规则集31,主规则集31定义了用于将警报与适当的自动机相匹配的规则。主规则集31为警报与自动机的确定性匹配提供了一组封闭形式的规则。这种规则可以使用正则表达式,用于基于警报描述的元素,例如警报格式中特定字段或字符串的内容,将警报映射到自动机。警报管理器25使用主规则集31来决定接收到的警报是否与自动机Ai匹配。如果没有,则例如经由在一个或多个用户计算机上提供的操作员图形用户界面(GUI)将警报传送给系统工程师,所述用户计算机可以在系统20的本地或远程。如果识别出匹配的自动机,则警报管理器部署自动机来处理警报并监控任务的完成。如果警报条件已成功解决,则可以取消警报。如果需要进一步的行动,可以相应地通知系统工程师。

数据收集模块26通过在系统存储器22中存储所有警报、响应和结果的详细信息,监控警报处理系统的整体性能。该警报历史在图2中被表示为数据库32。因此,该数据库累积了由系统中的自动机成功处理的所有警报的细节,由自动机处理但未成功解决的警报,以及任何“不匹配警报”的细节,即,与主规则集的自动机不匹配警报,因此必须升级以供人工响应。

控制逻辑23的训练模块27和推理/分析模块28为警报管理系统20提供实施动态更新过程的功能。这个过程包括ML模型33的训练和分析,其参数存储在系统存储器22中。下面详细描述动态更新过程。

控制逻辑模块25至28的功能通常可通过软件(如程序模块)或硬件或其组合实现。在其他实施例中,可以在系统的模块之间不同地分配功能,并且可以组合一个或多个模块的功能。通常,警报管理系统20的组件模块可以在计算系统的一个或多个计算机中提供。例如,所有模块可以在图1的计算机1中提供,其可以集成在警报管理系统20中,或者模块可以分布在多个计算机/服务器上,这些计算机/服务器可以是警报管理系统20的本地或远程。系统存储器22可以由与警报管理系统20的一个或多个计算机相关联的一个或多个存储器/存储组件来实现。

图3描绘了根据本发明的实施例的图2的警报管理系统的步骤流程图。步骤40表示由警报管理器模块25和数据收集模块26在系统操作期间执行的上述警报管理和数据收集操作。如上所述,所有警报的细节(尤其包括不匹配警报和自动机成功处理的警报)都存储在数据库32中。成功处理的警报形成了可以用于训练ML模型33的训练数据集。具体地,在步骤41中,训练模块27使用这些“成功的”警报来训练ML模型33,以经由监督学习过程将警报与自动机关联。这种过程是众所周知的,并且使用已知的训练样本的分类,这里自动机Ai与成功的警报相匹配,作为学习过程的标签,经由该学习过程,模型参数被逐步调整,直到模型可以将警报与自动机关联到期望的准确度。

在模型33的训练之后,在步骤42中,推理和分析模块28应用该模型将数据库32中的不匹配警报与自动机关联。这些推理操作的关联结果存储在数据库32中。在步骤43中,推理和分析模块28分析与不匹配警报的关联相关的模型的操作。该过程检查模型中专门针对不匹配警报的推理过程,如下面更详细解释的。基于该分析,在步骤44中,推理和分析模块28定义新规则集,用于将不匹配警报与自动机相匹配。在步骤45中,例如通过在GUI中显示新(一个或多个)规则来输出新规则集(可以包括一个或多个规则),以供系统工程师审计。如步骤46所示,响应于审计的规则的批准,推理和分析模块28在步骤47中将审计的规则添加到系统存储器22中的主规则集31中。

上述过程允许警报管理系统20逐步改进操作,动态更新其自动响应能力,以减少不匹配警报的升级,并处理具有新/修改的警报描述的警报,这在受监控系统的发展过程中不可避免地会出现。警报管理系统利用机器学习的能力,同时满足部署自动机的规则的透明性和审计的需要。通过对不匹配警报的推理操作的分析而生成的新规则可以被审查和批准,以确保所部署的自动机适合于警报事件并满足任何相关联的客户协议的合同条款。因此,动态更新过程能够通过提高质量和降低系统维护成本来系统地改进警报管理系统,同时确保所有更新都能够得到尽职调查的授权。

图3的步骤41中的模型训练可在足够的成功警报可用时进行,或可在成功警报累积时定期进行。因此,训练可以在系统操作期间继续,以提高模型性能。对不匹配警报的推理也可以周期性地执行,例如,对成批的不匹配警报,或者可以在接收到单个不匹配警报时执行,以记录分类结果。步骤43的分析过程可以在被认为适合于给定系统时执行,例如,当已经累积了预定数量的不匹配警报、或者给定类型的不匹配警报或者在推理步骤42中具有给定分类结果的不匹配警报时。基于对数据库32中警报历史的监控,分析也可以在操作者的控制下启动。在步骤46中对审计的规则的批准可以由操作者输入来指示,要么按原样批准规则,要么批准通过审计过程定义的规则的修改形式,例如通过在GUI中修改规则。例如,规则可以被修改以拓宽它们的应用,例如,根据操作者的判断,覆盖规则中使用的特定关键字的所有形式/结尾。

作为上述过程的简单说明,训练数据可包括具有摘要的多个警报,诸如“磁盘利用率超过95%”或“存储空间利用率超过90%”,其使用自动机“磁盘压缩器”解决。新系统传感器可能会生成与任何现有规则都不完全匹配的类似消息,例如“磁盘利用率超过92%”的摘要。推理将“磁盘压缩器”确定为这些警报的可能类别,分析表明,任何摘要中包括单词“磁盘”、“利用率”和“超过”的警报都应该与“磁盘压缩器”匹配。在添加到主规则集之前,可以在审计期间手动修改新规则,以允许“超过”或“被超过”。

推理和分析模块28中的推理分析过程的示例在下文中详细描述。在优选实施例中,ML模型33包括树集成模型,诸如增强随机森林(RF)模型。树集成模型包括在训练期间生成的多个决策树,以将训练样本映射到适当的关联结果,本文是将警报映射到自动机。基于样本的随机选择的元素是否满足选择的条件,通过重复地将训练数据集中的样本分成子集来生成树。每个结果树包括节点和分支的层次结构,如图4的简单示意图所示。每个节点表示关于输入样本的指定元素是否满足指定条件的判定,从该节点开始的分支指示判定结果,根据条件是否满足,本文为“是”或“否”(Y或N)。在本实施例中,输入样本是警报,应用条件的元素表示警报格式的特定字段。例如,警报可以包括一系列名称:值对,例如,以JavaScript对象符号(JSON)格式,具有名为“标题(header)”、“摘要(summary)”、“描述(description)”、“优先级(priority)”等的对。每个都具有定义对应的“值”的文本字段。条件可以测试指定元素的文本字段中指定字符串的出现。模型训练可以使用警报格式的全部或选定子集(诸如标题、摘要和描述字段)作为训练样本的模型输入,然后在推理过程中使用不匹配警报的相应元素。样本的推理过程从树的第一个(根)节点开始,并将相关条件应用于测试样本,沿着结果分支到应用下一个条件的下一个节点,依此类推。因此,对样本的推理定义了从根节点到一个末端分支(叶子)的路径。每个叶子与特定的关联结果相关联,这里是对应于自动机Ai到AM之一的分类。

虽然图4显示了决策树的简单示例,但是树集成模型包括大量决策树,具有用于确定分裂元素、条件和其他模型参数的各种复杂算法。这种模型的推理输出通常包括来自所有树的具有相关联的置信度值的分类结果的一些平均值(例如,模式)。例如,该模型可以输出一组概率,每个概率对应一个可能的分类,最高概率的分类指示总体关联结果。

在使用树集成模型的优选实施例中,由推理和分析模块28执行的推理分析操作包括基于通过树集成中的树的路径的特征来生成新的树,即,为未匹配警报定义新的规则集,未匹配警报经由该路径与自动机关联。。这里的特征可以包括特定的分支及其相关联的条件,和/或包括推理路径中的一个以上分支/条件的路径部分,经由该推理路径,在集成的树中对不匹配警报进行分类。因为不同的树将在树结构中以不同的顺序使用不同的样本元素/条件,所以优选实施例使用修剪(pruning)来减少在规则提取过程中考虑的树特征的数量。修剪可以基于与树中的路径/分支相关联的置信度值和/或覆盖,即经由那些路径/分支与自动机关联的不匹配警报的数量。然后,可以使用一些或所有剩余的、未修剪路径/分支来生成新树,该树定义了不匹配警报的新规则集。

优选实施例基于置信度和覆盖执行积极修剪,以将树特征的数量减少至规则提取的实用水平。图5示出了使用合成过程来生成新规则集的树的实施例中的推理和分析模块28的操作。在步骤50中,模型决策树中的推理路径首先根据为每个路径计算的指示关联准确度的置信度值进行修剪。这里的置信度值可以对应于如上所述的特定分类结果的模型输出的概率。这些值又可以通过组合(例如求和)与树中推理路径的各个分支相关联的置信度值来计算。可以采用各种技术来基于置信度值进行修剪。举例来说,具有小于定义的阈值置信度的路径可以被剪除,或者除了定义数量的最高置信度路径之外的所有路径,无论是整体还是每个类别,都可以被修剪。一般来说,可以采用一个或多个置信度评估标准,总体目标是只保留高置信度路径。

在步骤51中,根据经由相应路径与自动机关联的不匹配警报的数量,进一步修剪所得路径,此处的目的是保留具有更大覆盖的路径(即,适用于更高数量的不匹配警报)。同样,这里可以应用各种标准中的一个或组合,例如,仅保留在阈值覆盖以上的路径,保留定义数量的最高覆盖路径等。这种修剪过程的总体效果是丢弃最不可能对不匹配警报的分类有显著性值的路径。

在步骤52中,剩余的未修剪路径被合并,以从这些路径生成新树。该过程分析与路径的节点/分支相关联的元素/条件,并创建容纳这些元素/条件的新树。这可能涉及节点的适当排序和/或条件的修改(例如,合并),以确保新树广泛地包含由所有未规划的路径定义的决策过程。在步骤53,推理和分析模块28输出由新树定义的规则集。决策树在逻辑上等同于规则的列表,两者都可以从另一个构建。这里,可以通过将树中的每个路径分配给所分配的补救类中的主题专家来分配审查/审计阶段(步骤54)。在批准每个被审计的规则后,在步骤55中,新规则被添加到主规则集中。

图6示出了实施例中的分析操作,其使用分解过程来生成新规则集的树。在步骤60中,推理和分析模块28首先基于与相应特征相关联的显著性值从模型的决策树中选择特征。这里的显著性值与训练模型的特征相关联,并且指示用于将原始训练数据集中的警报与自动机之一关联的相关联特征的重要性。当评估任何模型的质量时,通常的做法是执行分析过程,以提取对于每个可能的分类结果最重要的模型特征。这种分析的结果可以在这里用于获得与针对不匹配警报获得的分类结果相关联的最重要的模型特征。对于本实施例的树模型,显著性值可以是通常与每个分类结果的树的各个分支相关联的置信度值。

在选择最重要的特征后,在步骤61中,根据这些特征在不匹配警报的推理过程中的重要性对其进行修剪。具体而言,可以基于置信度和覆盖考虑中的一个,并且优选地基于这两者来修剪特征。该过程类似于图5的步骤51和52,但是应用于重要的特征,这里是分支,而不是路径。可以首先基于经由包括每个特征的路径与自动机关联的不匹配警报的数量来修剪所选择的重要特征,保留那些具有较高覆盖的特征。该过程可以剪除所有没有出现在任何推理路径中的特征、那些出现在少于阈值数量的路径中的特征、或者作为定义百分比的最少使用的特征等。可以基于为不匹配警报的推理路径计算的置信度值来进一步修剪剩余的特征,例如,仅保留出现在高置信度推理路径中的那些特征,这些特征可以以如上所述的各种方式来识别。

在步骤62中,从剩余的未修剪特征中生成新树。该过程再次分析与剩余分支相关联的元素/条件,并创建容纳这些元素/条件的新树,通常如图5过程中所述。后续步骤63、64和65分别对应于图5的步骤53、54和55。

图5和图6的分析过程可利用树集成模型的结构来提取对不匹配警报的分类特别重要的特征,从而为这些警报构建新规则集。这是一种强大的规则提取技术,利用对模型操作的深入了解来生成微调的规则集。然而,体现本发明的方法可以使用其他类型的ML模型,诸如神经网络(包括深度神经网络)、支持向量机(SVM)等。

图7指示了采用通用黑盒ML模型33的系统中推理和分析模块28执行的分析过程的步骤。这里的分析过程建立在用于解释模型预测的本地可解释模型不可知解释(LIME)类型的技术上。在步骤70中,选择包括元素e

在步骤77中,推理和分析模块28基于不同元素的初始置信度值Ci和新置信度值Cii至Cm之间的差异,将警报的至少一个元素识别为初始关联Ai的重要元素。本文可以采用各种标准来识别重要的元素,例如,选择当被移除时置信度值降低超过阈值量的元素,或者选择与置信度的最大下降相关联的一个或多个元素,等等。然后,为正在讨论的警报存储重要元素的结果集。

如步骤78所示,对当前批次中的所有不匹配警报重复上述过程。该过程可以在逐批的基础上执行,其中每批包括一组不匹配警报,该警报由模型分配给相同的类/自动机Ai。批次可以进一步限于ML模型以大于阈值置信度值分类的警报组。在步骤79中,推理和分析模块28然后基于不匹配警报的重要元素集构建新规则集。本文为每个分类结果Ai分别重新生成规则。例如,对于给定的类别Ai,规则可以指定包含分配给该类别的不匹配警报的重要元素的任何已识别集的警报,或者这些集的公共元素,应该与自动机Ai匹配。

虽然图7示出了黑盒模型的分析过程的一个示例,但通常可使用任何模型无关的解释技术来识别不匹配警报的元素,这些元素对于获得的警报关联结果很重要。然后,可以像以前一样基于不匹配警报的重要元素来构建规则集。

可以看出,本发明的实施例提供了改进的警报管理系统,该系统可动态发展,以增强其自动响应能力,同时保持自动补救程序的经审计的确定性规则集的安全性。当然,应当理解,可以对所描述的示例性实施例进行多种改变和修改。例如,流程图的步骤可以以不同于所示的顺序来实现,并且在适当的情况下,一些步骤可以并行执行。一般而言,在本文参考体现本发明的方法描述特征的情况下,可以在体现本发明的系统/计算机程序产品中提供相应特征,反之亦然。

本发明各种实施例的描述仅用于说明目的,但并非旨在穷尽或限制所公开的实施例。在不脱离所述实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。选择本文使用的术语是为了最好地解释实施例的原理、实际应用或对市场上发现的技术的技术改进,或者使本领域的其他普通技术人员能够理解本文公开的实施例。

技术分类

06120115978603