基于业务监控系统的样本选择方法、装置和系统与流程

文档序号:12734886阅读:362来源:国知局
基于业务监控系统的样本选择方法、装置和系统与流程

本发明涉及通信技术领域,具体涉及一种基于业务监控系统的样本选择方法、装置和系统。



背景技术:

业务监控系统,对于保障业务的正常运作有着重要的意义,而在业务监控系统中,如何选择合适的样本也极为重要。所谓选择样本,指的是根据历史样本数据,在参杂有脏数据(包括故障数据)样本、以及健康样本的多个样本中挑选出不含脏数据的健康样本的过程。

在早期,对于异常脏数据的处理办法有基于统计学的方法,以及基于数据挖掘的聚类算法等。然而,这些传统的异常脏数据处理方法,都是针对无序离散数据点中的异常点进行识别,而在监控系统配置项的自动化推导过程中,需要选中的健康样本,是从多个序列中识别出不含故障脏数据的序列,而不是识别其中的某些异常点。为了采用这些传统算法,通常做法是先把序列映射成点,或者把一个序列变换成一个多维的数据点,再把算法用在映射变换后的点上,不过,这必然也会带来映射规则构造或维度灾难等问题。虽然降低维度可以在一定程度上解决维度灾难问题,但是,随着监控要求越来越高,特别是对于长度是万级、十万级别、甚至更高的采样序列而言,维度灾难问题仍然不可控。为此,现有技术又提出了基于模型识别法,即通过历史数据建立分类模型,用模型来判断未知序列是否为异常脏数据序列,具体是先通过分析未知序列的基本特征,根据经验选择一个成熟的模型,再通过已知的健康序列带入模型,得到模型的可接受误差范围,然后把未知序列输入模型中,计算残差值,若残差在可接受误差范围内,则该序列满足该模型为认为是健康序列,否则,认为该序列是异常或含有脏数据序列。

在对现有技术的研究和实践过程中,本发明的发明人发现,现有的模型识别法虽然在一定程度上可以解决传统做法所带来的维度问题,但是,该方案的实施需要大量的历史样本数据,需要占用较大空间;同时,由于在模型选择过程中,可选模型过多,因此,遍历模型所耗费的时间也较长,而且模型训练过程也比较复杂,需要消耗的内存、以及保存模型空间消耗很大,此外,由于算法需要参入了较多的先验知识,因此,很大程度上依赖人的经验判断,处理效率较低。



技术实现要素:

本发明实施例提供一种基于业务监控系统的样本选择方法、装置和系统,不仅实现较为简单,消耗内存较少,而且可以减少空间的占用,以及提高处理效率。

本发明实施例提供一种基于业务监控系统的样本选择方法,包括:

获取预置数量的历史采样数据和相应的数据类型标识;

根据所述数据类型标识从所述历史采样数据中选择样本,得到输入样本集;

计算所述输入样本集中的样本的波动率累积差分,并选择所述波动率累积差分小于预设第一条件的样本,得到候选样本集;

对所述候选样本集中的样本进行排列组合,并计算每个组合中两两样本之间的相关系数,以及根据所述相关系数计算相应组合的相关系数累积和与极差;

选择所述相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到最优样本。

相应的,本发明实施例还提供一种样本选择装置,包括:

获取单元,用于获取预置数量的历史采样数据和相应的数据类型标识;

选择单元,用于根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集;

第一处理单元,用于计算该输入样本集中的样本的波动率累积差分,并选 择该波动率累积差分小于预设第一条件的样本,得到候选样本集;

第二处理单元,用于对该候选样本集中的样本进行排列组合,并计算每个组合中两两样本之间的相关系数,以及根据该相关系数计算相应组合的相关系数累积和与极差;

第三处理单元,用于选择该相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到最优样本。

此外,本发明实施例还提供一种业务监控系统,包括本发明实施例所提供的任一种样本选择装置。

本发明实施例采用获取预置数量的历史采样数据,从中选择样本作为输入样本集,然后,通过最小化输入样本集中样本的波动率累积差分值,从输入样本集中挑选出候选样本集,再通过计算候选样本集的每种样本组合的相关系数累积和与极差,并在累积和得到最大化的情况下,最小化该极差,从而达到选出最优样本的目的;由于该方案只需一定量的历史样本数据,而且,无需进行模型选择和模型训练,因此,实现较为简单,无需消耗过多的内存和存储空间,而且,由于此过程均可由系统自动完成,无需过多的人为经验介入,所以,可以大大提高处理效率;总而言之,相对于现有技术而言,该方案不仅实现较为简单,消耗内存较少,而且可以减少空间的占用,以及提高处理效率,有利于选择出合适的样本,即最优样本,避免脏数据扰乱准确性,进而有利于提高整个业务监控系统的监控质量。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1a是本发明实施例提供的业务监控系统的场景示意图;

图1b是本发明实施例提供的基于业务监控系统的样本选择方法的流程图;

图2是本发明实施例提供的基于业务监控系统的样本选择方法的另一流程图;

图3a是本发明实施例提供的样本选择装置的结构示意图;

图3b是本发明实施例提供的样本选择装置的另一结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在业务监控系统中,配置项对应值的设置,比如监控项阈值、波动率曲线等,是极为重要的一点,而推导配置项对应值的过程,必须根据历史健康样本数据进行,因此样本的选择关系到整个业务的监控质量,为保证业务监控的高质量运营,比如错误告警少、告警及时、运维工作量小等,本发明实施例提供一种基于业务监控系统的样本选择方法、装置和系统。

其中,该业务监控系统具体可以集成在服务器中,例如,参见图1a,该业务监控系统(如服务器)可以包括本发明实施例所提供的任一种样本选择装置,该样本选择装置,主要用于获取预置数量的历史采样数据,从中选择样本作为输入样本集,然后,通过最小化输入样本集中样本的波动率累积差分值,从输入样本集中挑选出候选样本集,再通过计算候选样本集的每种样本组合的相关系数累积和与极差,并在累积和得到最大化的情况下,最小化该极差,从而达到选出最优样本。在得到最优样本之后,该样本选择装置还可以根据该最优样本确定配置项对应值,比如阈值配置的对应值、以及波动率曲线的对应值等,然后输出该最优样本、以及该配置项对应值。

此外,如图1a所示,该业务监控系统还可以包括监控装置,主要用于根据 样本选择装置所输出的最优样本、以及该配置项对应值,对业务数据进行监控,并在确定业务数据发生异常,比如故障或错误时,发出告警。

以下将分别进行详细说明。

实施例一、

在本实施例中,将样本选择装置的角度进行描述,该样本选择装置具体可以集成在服务器,比如监控服务器等设备中。

一种基于业务监控系统的样本选择方法,包括:获取预置数量的历史采样数据(ModelDataIn)和相应的数据类型标识(DataRateflag);根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集;计算该输入样本集中的样本的波动率累积差分,并选择该波动率累积差分小于预设第一条件的样本,得到候选样本集;对该候选样本集中的样本进行排列组合,并计算每个组合中两两样本之间的相关系数,以及根据该相关系数计算相应组合的相关系数累积和与极差;选择该相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到最优样本。

如图1b所示,该基于业务监控系统的样本选择方法的具体流程可以如下:

101、获取预置数量的历史采样数据(ModelDataIn)和相应的数据类型标识(DataRateflag)。

其中,历史采样数据的数量可以根据实际应用的需求而定,而数据类型标识,则可以用于指示其业务特性,比如流量或在线用户数等,以及还可以指示数据类型,比如可以是比率数据,如失败率或成功率等;该数据类型标识可以根据业务特性来进行配置,其值可以为{1,-1}。

102、根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集。

其中,除了可以直接根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集之外,可选的,为了提高样本的选择效果,还可以对选择到的 样本进行预处理,然后,才添加至输入样本集中,即,步骤“根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集”可以包括:

根据该数据类型标识从该历史采样数据中选择样本,然后,对选择到的样本进行预处理,得到输入样本集。

其中,该预处理可以包括数据还原处理、数据缺失补齐处理、和/或毛刺定位与光滑化处理等处理。

其中,数据还原是针对某些业务,在采样数据上报过程中,经过某种变换后才上报到业务监控系统,这需要在配置监控项时约定好变换规则,比如失败率业务通常会将采样数据扩大10000倍后才上报到业务监控系统,等等,一般对于这种情况,需要进行数据还原处理,即将上报过来的采样数据缩小10000倍后,才能得到原始采样数据。

此外,由于在业务监控系统中,业务故障、或机器故障等情况是不可避免的,因此,常常会导致某些采样数据无法正常上报,从而造成数据缺失,所以,对于这种情况,可以进行数据缺失补齐处理,比如,可以查找其上报数据过程中对缺失数据的约定符号,然后,基于该约定符号对未上报的时间点的采样数据,通过采用向前移动平均法来进行处理。

而对于毛刺点(即毛刺异常点)定位与光滑化处理,则主要可以采用动态滑动窗口局部搜索算法,来对每个样本进行一次扫描,以找出毛刺点,然后,再对所有毛刺异常点进行光滑化处理。

103、计算该输入样本集中的样本的波动率累积差分。

其中,计算该输入样本集中的样本的波动率累积差分的方式可以有多种,例如,可以如下:

(1)计算该输入样本集中的样本的波动率序列,例如,可以如下:

A、从该输入样本集中确定当前需要处理的样本,以及扫描点。

B、确定该扫描点的采样值,以及预设时间间隔前的采样值。

其中,该预设时间可以根据实际应用的需求进行设置,在此不再赘述。

C、基于该扫描点的采样值、以及预设时间间隔前的采样值计算该扫描点的波动率,并返回执行从该输入样本集中确定当前需要处理的样本,以及扫描点的步骤,直至得到该输入样本集中所有样本的所有扫描点的波动率。

D、将属于同一样本的所有扫描点的波动率添加到同一序列中,得到相应的样本的波动率序列。

(2)根据该波动率序列计算样本的波动率累积差分。

例如,可以先确定当前需要计算波动率累积差分的样本,然后根据该确定的样本的波动率序列计算该样本的波动率累积差分,然后返回执行确定当前需要波动率累积差分的样本的步骤,直至计算出该输入样本集中所有样本的波动率累积差分。

104、选择该波动率累积差分小于预设第一条件的样本,得到候选样本集。

其中,第一条件可以根据实际应用的需求进行设置,例如,可以对波动率累积差分进行排序,然后基于排序选择V0波动率累积差分最小的样本,其中,V0可以根据实际应用的需求进行设置,比如,可以设置V0为14,等等。即,该“选择该波动率累积差分小于预设第一条件的样本,得到候选样本集”的步骤具体可以包括:

根据每个样本的波动率累积差分得到所有样本的波动率累积差分序列,采用选择排序法对该波动率累计差分序列进行排序,根据该排序选择预设数量个波动率累积差分最小的样本,得到候选样本集。

其中,在排序时,可以采用升序排序的方式,也可以采用降序排序的方式,比如,如果是采用升序排序的方式,则可以根据该排序选择前V0波动率累积差分,即波动率累积差分最小的前V0个作为候选样本集;而如果采用降序排序的方式,则可以根据该排序选择后V0波动率累积差分,即波动率累积差分最小的前V0个作为候选样本集,等等。

105、对该候选样本集中的样本进行排列组合,并计算每个组合中两两样本之间的相关系数,以及根据该相关系数计算相应组合的相关系数累积和与极 差,例如,具体可以如下:

从该候选样本集中选择出N0个样本作为一个组合,其中,该N0小于输入样本集中样本的数量,以及该N0小于等于候选样本集中样本的数量;计算每个组合中两两样本之间的相关系数,得到每个组合的相关矩阵,根据该相关矩阵计算每个组合的相关系数累积和与极差。

其中,由于需要从候选样本集中选出N0个样本作为一个组合,而候选样本集中共有V0个样本,因此,这是一个排列组合中的组合数问题,所以,选择方案有种。比如,为了方便操作,可以记候选集中样本的序号为1,2,…,V0,由此可以把样本组合问题等价化归为从{1,2,…,V0}这V0个数当中,选出N0个数的组合问题,则共有种组合,所以,从V0个样本中选出N0个样本,共有种选择,比如,其中的一个选择是{1,2,…,N0},即可以将第1至第N0个样本作为一个组合,若把样本组合序号按着从小到大的顺序排列,则{1,2,…,N0}这个组合是第一个组合,而最后一个组合是{V0-N0+1,V0-N0+2,…,V0}。若记总共的种样本组合为CombIndexs,则:

CombIndexs={{1,2,…,N0},{1,2,…,N0-1,N0+1},…,{V0-N0+1,V0-N0+2,…,V0}}。

得到了每N0个样本的组合后,可以循环计算每个组合中的两两样本的相关系数,得到每个组合的相关系数矩阵,即相关矩阵,然后,便可以根据该相关矩阵计算每个组合的相关系数累积和与极差。

其中,相关系数的定义为:

其中,X和Y分别代表任意两个序列,Cov(X,Y)是X和Y的协方差,是X的标准差,是Y的标准差。

根据相关系数的定义以及根据协方差的可交换性Cov(X,Y)=Cov(Y,X)可知,相关矩阵具有对称性,即矩阵的主对角线上方元素与主对角线下方元素对称相等;同时,根据协方差的定义可知,相关矩阵的主 对角线元素全为1,因此,在计算相关矩阵过程中,只需计算相关矩阵的主对角线上方的元素。由于一个样本组合有N0个样本,因此相关矩阵是一个N0阶方阵,若不利用相关矩阵的对称性与主对角线全1的性质,则计算相关矩阵需经过N0×N0次相关系数计算,而利用了这两个性质后,只需计算次相关系数,这样大大降低了算法的时间成本。若记相关矩阵主对角线上方元素为集合Ru={r1,r2,…,rP},对集合Ru求累积和与极差,即可得到一个组合的相关系数累积和sumrk与极差mmrk,其中累积和与极差的计算式分别为:

mmrk=max(Ru)-min(Ru);

其中max(Ru)是求集合Ru的最大值,min(Ru)是求集合Ru的最小值。

106、选择该相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到目标样本,为了描述方便,在本发明实施例中,将这些目标样本称为最优样本。

其中,第二条件和第三条件可以根据实际应用的需求进行设置,比如,可以对相关系数累积和、以及极差分别进行排序,然后基于该排序来选择相应的样本,即步骤“选择该相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到最优样本”可以包括:

采用选择排序法对该相关系数累积和、以及极差进行排序,基于该排序选择预设数量个相关系数累积和最大的组合,得到候选组合,从该候选组合中选择极差最小的组合,得到目标组合,根据该目标组合获取对应的样本,得到最优样本。

其中,在排序时,可以采用升序排序的方式,也可以采用降序排序的方式,而预设数量则可以根据实际应用的需求进行设置,在此不再赘述。

需说明的是,在选择组合时,除了可以直接选择组合之外,也可以选择组合的标识,比如组合号,然后通过该组合的标识如组合号来获取对应的样本, 得到最优样本,在此不再赘述。

此外,在得到最优样本之后,还可以根据该最优样本确定配置项对应值,然后输出该最优样本、以及该配置项对应值。

其中,配置项可以根据实际的业务而定,比如,可以是阈值配置或波动率曲线,等等,即步骤“根据该最优样本确定配置项对应值”可以包括:

若配置项为阈值配置,则获取该最优样本的均值,并对该均值进行聚合收敛,得到阈值配置的对应值,比如分时段“阈值”规则等;

若配置项为波动率曲线,则获取该最优样本对应的波动率计算公式,基于该波动率计算公式确定波动率曲线中扫描点的向上波动率和向下波动率,得到波动率曲线的对应值,比如波动率曲线值。

则此时,步骤“输出该最优样本、以及该配置项对应值”具体为:输出该最优样本、以及阈值配置的对应值和/或波动率曲线的对应值。

需说明的是,波动率计算公式可以根据实际应用的需求进行定义,而对于聚合收敛方法,也可以根据实际应用的需求而定,比如,可以采用K-means聚类法,等等。

在输出该最优样本、以及该配置项对应值之后,还可以保存该最优样本的相关数据,以供业务监控系统做算法验证之用;可选的,为了节省空间,可以只保存该最优样本的样本标签。

由上可知,本实施例采用获取预置数量的历史采样数据,从中选择样本作为输入样本集,然后,通过最小化输入样本集中样本的波动率累积差分值,从输入样本集中挑选出候选样本集,再通过计算候选样本集的每种样本组合的相关系数累积和与极差,并在累积和得到最大化的情况下,最小化该极差,从而达到选出最优样本的目的;由于该方案只需一定量的历史样本数据,而且,无需进行模型选择和模型训练,因此,实现较为简单,无需消耗过多的内存和存储空间,而且,由于此过程均可由系统自动完成,无需过多的人为经验介入,所以,可以大大提高处理效率;总而言之,相对于现有,技术而言,该方案不 仅实现较为简单,消耗内存较少,而且可以减少空间的占用,以及提高处理效率,有利于选择出合适的样本,即最优样本,避免脏数据扰乱准确性,进而有利于提高整个业务监控系统的监控质量。

实施例二、

根据实施例一所描述的方法,以下将举例作进一步详细说明。

在本实施例中,将以该样本选择装置具体集成在服务器中为例进行说明。

如图2所示,一种基于业务监控系统的样本选择方法,具体流程可以如下:

201、服务器获取M0个历史采样数据(ModelDataIn)和相应的数据类型标识(DataRateflag)。

其中,数据类型标识可以用于指示历史采样数据的业务特性,比如流量或在线用户数等,以及还可以指示数据类型,比如可以是比率数据,如失败率或成功率等;该数据类型标识可以根据业务特性来进行配置,其值可以为{1,-1}。

其中,M0指的是在该样本选择流程中,该业务监控系统最多可接受的样本数量;需说明的是,在流程执行之前,即步骤201之前,可以先对业务监控系统中的各个参数进行初始化,比如,对M0、以及N0、V0和m0等参数进行初始化。其中,N0为在该样本选择流程中,所利用的历史样本数量,即输入样本集中的样本数量;V0为在最小化波动率累积差分过程选择的样本数量,也就是候选集中的样本数;m0为计算波动率的时间间隔。

M0、以及N0、V0和m0的取值可以根据实际应用的需求而定,比如,根据业务特性,参数N0的值通常选为一个小的周期值,在没有特殊情况下,一个业务的运营情况一般会在一周内表现出来,因此,可以设定N0=7;对于参数V0,选择规则为:因此,可以设定V0=14;对于m0,由于监控系统要对业务数据进行采样,会存在采样延时问题,所以,通过分析当前业务监控系统中的历史数据,通常m0取值为3、4或5等,这几个取值的算 法精确度相差不大,当然,也可以通过参数寻优来处理,只是在时间成本上大大提高,为了描述方便,在本发明实施例中,可以设定m0=5;也就是说,在初始化各个参数时,可以设定M0=30,N0=7,V0=14,m0=5,等等,在此不再赘述。

202、服务器根据该数据类型标识从该历史采样数据中选择样本,例如,具体可以如下:

首先,根据历史采样数据(即ModelDataIn)的数据结构获取输入样本数量,记为M,且计算每个样本长度,记为n;接着,处理M与N0的关系:

若M<N0,则流程结束,并输出错误信息,比如,可以输出:“历史样本量过少”等错误信息。

若M=N0,则样本选择操作结束,并发出提醒信息,比如,可以输出:“样本量刚够配置项自动化推导的训练,无需做样本选择,请检查核实”等提示,此时无需进行最优样本选择,可以直接进行配置项的确定过程,即直接执行步骤210。

若M>N0,则将M与V0进行比较,如下:

若M<V0,则流程结束,并输出错误信息,比如,可以输出:“要选择的样本量已大于历史样本量”,等等。

若M=V0,则发出提醒信息,比如,可以输出:“样本选择无需经过最小化波动率来筛选出候选样本集,请检查核实”等提示,然后进行最优化相关系数过程,即执行步骤207。

若M>V0,则执行步骤203。

203、服务器对选择到的样本进行预处理,得到输入样本集。

其中,该预处理可以包括数据还原处理、数据缺失补齐处理、和/或毛刺定位与光滑化处理等处理。

其中,数据还原是针对某些业务,在采样数据上报过程中,经过某种变换后才上报到业务监控系统,这需要在配置监控项时约定好变换规则,比如失败 率业务通常会将采样数据扩大10000倍后才上报到业务监控系统,等等,一般对于这种情况,需要进行数据还原处理,即将上报过来的采样数据缩小10000倍后,才能得到原始采样数据。

此外,由于在业务监控系统中,业务故障、或机器故障等情况是不可避免的,因此,常常会导致某些采样数据无法正常上报,从而造成数据缺失,所以,对于这种情况,可以进行数据缺失补齐处理,比如,可以查找其上报数据过程中对缺失数据的约定符号,然后,基于该约定符号对未上报的时间点的采样数据,通过采用向前移动平均法来进行处理。

而对于毛刺点(即毛刺异常点)定位与光滑化处理,则主要可以采用动态滑动窗口局部搜索算法,来对每个样本进行一次扫描,以找出毛刺点,然后,再对所有毛刺异常点进行光滑化处理。

204、服务器计算该输入样本集中的样本的波动率序列。

例如,若当前样本(即样本序列)记为{x(i)},波动率序列记为{VolatySeqi(j)},其中,x(i)=ModelDataIn(k),k=1,2,…,M,且i=1,2,…,n;当前样本{x(i)}的当前扫描点记为j,则扫描点j的采样值可以记为x(j),而间隔m0个时间单位前的采样值可以记为x(j-m0),那么,可以定义扫描点j的波动率为:

其中j=m0+1,m0+2,…,n。

此外,对于x(j-m0)=0的情况,还可以重新定义扫描点j的波动率为:VolatySeqi(j)=|x(j)|。

对于第1至第m0个扫描点的波动率,采用与当前扫描点间隔为m0的“m0+1”个连续波动率的平均值来进行定义,即将当前扫描点所在的位置向前移动m0个时间间隔后,再以该移动后位置所对应的扫描点为起点,向前获取“m0+1”个连续的波动率,然后计算这些波动率的平均值,即为该当前扫描点的波动率;比如,第1个采样点的波动率,可以用第m0+1至第2m0+1个波动率的平均值来表示,等等,以此类推,便可以得到一个样本(包括多个扫描点)的波动率序列,记为:{VolatySeqi(j)},其中,j=1,2,…,n,根据上面的分析,可以确定该波 动率序列的定义式为:

205、服务器根据该波动率序列计算样本的波动率累积差分,并根据每个样本的波动率累积差分得到所有样本的波动率累积差分序列。

例如,以波动率序列记为{VolatySeqi(j)}后为例,若波动率差分的定义为:

doutaSeq(j)=|VolatySeqi(j+1)-VolatySeqi(j)|,其中j=1,2,…,n,则可得到一个样本的波动率累积差分sumi,如下:

采用上述方式,计算每个样本的波动率累积差分sumi,循环计算,便可得所有样本的波动率累积差分序列{VolatyCfseqSum(i)|VolatyCfseqSum(i)=sumi}。

206、服务器采用选择排序法对该波动率累计差分序列{VolatyCfseqSum(i)}进行排序,根据该排序选择V0个波动率累积差分最小的样本,得到候选样本集。

其中,在排序时,可以采用升序排序的方式,也可以采用降序排序的方式,比如,如果是采用升序排序的方式,则可以根据该排序选择前V0波动率累积差分,即波动率累积差分最小的前V0个作为候选样本集;而如果采用降序排序的方式,则可以根据该排序选择后V0波动率累积差分,即波动率累积差分最小的前V0个作为候选样本集,等等。

207、服务器从候选样本集中选择出N0个样本作为一个组合,其中N0小于输入样本集中样本的数量,以及该N0小于等于候选样本集中样本的数量。

其中,由于需要从候选样本集中选出N0个样本作为一个组合,而候选样本集中共有V0个样本,因此,这是一个排列组合中的组合数问题,所以,选择方案有种。比如,为了方便操作,可以记候选集中样本的序号为1,2,…,V0, 由此可以把样本组合问题等价化归为从{1,2,…,V0}这V0个数当中,选出N0个数的组合问题,则共有种组合,所以,从V0个样本中选出N0个样本,共有种选择,比如,其中的一个选择是{1,2,…,N0},即可以将第1至第N0个样本作为一个组合,若把样本组合序号按着从小到大的顺序排列,则{1,2,…,N0}这个组合是第一个组合,而最后一个组合是{V0-N0+1,V0-N0+2,…,V0}。若记总共的种样本组合为CombIndexs,则:

CombIndexs={{1,2,…,N0},{1,2,…,N0-1,N0+1},…,{V0-N0+1,V0-N0+2,…,V0}}。

208、服务器计算每个组合中两两样本之间的相关系数,得到每个组合的相关矩阵,根据该相关矩阵计算每个组合的相关系数累积和与极差。

其中,相关系数的定义为:

其中,X和Y分别代表任意两个序列,Cov(X,Y)是X和Y的协方差,是X的标准差,是Y的标准差。

根据相关系数的定义以及根据协方差的可交换性Cov(X,Y)=Cov(Y,X)可知,相关矩阵具有对称性,即矩阵的主对角线上方元素与主对角线下方元素对称相等;同时,根据协方差的定义可知,相关矩阵的主对角线元素全为1,因此,在计算相关矩阵过程中,只需计算相关矩阵的主对角线上方的元素。由于一个样本组合有N0个样本,因此相关矩阵是一个N0阶方阵,若不利用相关矩阵的对称性与主对角线全1的性质,则计算相关矩阵需经过N0×N0次相关系数计算,而利用了这两个性质后,只需计算次相关系数,这样大大降低了算法的时间成本。若记相关矩阵主对角线上方元素为集合Ru={r1,r2,…,rP},对集合Ru求累积和与极差,即可得到一个组合的相关系数累积和sumrk与极差mmrk,其中累积和与极差的计算式分别为:

mmrk=max(Ru)-min(Ru);

其中max(Ru)是求集合Ru的最大值,min(Ru)是求集合Ru的最小值。

209、服务器采用选择排序法对该相关系数累积和、以及极差进行排序,基于该排序选择预设数量个相关系数累积和最大的组合,得到候选组合,从该候选组合中选择极差最小的组合,得到目标组合,根据该目标组合获取对应的样本,得到最优样本,例如,具体可以如下:

得到种组合,以及每种组合所对应的相关系数累积和与极差之后,可以将组合、以及每种组合所对应的相关系数累积和与极差作为一个集合,如下:

CombIndexRsum={CombIndexRsum(k)}。

其中,CombIndexRsum(k)={CombIndexs(k),sumrk,mmrk},且sumrk、mmrk分别代表第k种组合(即样本组合)的相关系数累积和、与极差,

此后,可以采用选择排序法对CombIndexRsum第二维sumrk进行降序排列,选出前面的N0种组合,即相关系数累积和最大的N0种组合,记为CombIndexRsumN0={CombIndexRsum(t)|t=1,2,N0},需说明的是,这里的t与k不是同一变量,比如t=1时,不一定满足k=1。

在得到了N0种组合CombIndexRsumN0后,便可以从中挑选出最优的一个,比如选择出相关系数累积和最大,且极差最小的组合,等等。

其中,为了节省处理过程中所需占用的空间,在选择过程中,可以只保存相应的组合号,然后后续再根据该组合号去确定相应的组合,并获取相应的样子,得到最优样本。

例如,具体可以在CombIndexRsumN0中寻找第二维序列{sumrk(t)|t=1,2,…,N0}的最大值对应的组合号,记为s1,再寻找CombIndexRsumN0中第三维序列 {mmrk(t)|t=1,2,…,N0}的最小值对应的组合号,记为s2,由于最大最小值都可能存在多个,因此s1与s2都可能是一个集合,而不一定是一个唯一的数。比较s1与s2中的各个值,若存在两个相等的值,则表明找到了第一优的组合,将该找到的组合作为目标组合,组合号记为s0,也即表明找到了最优样本,此步骤(即步骤209)可以结束,可以继续执行步骤210。

若s1与s2中的各个值都不相等,即第一优的组合不存在,则继续找第二优 的组合,比如,可以去掉极差最大的样本组合(可能有多个组合),再从剩下的组合中挑选出相关系数累积和最大的组合,用得到的组合号更新s1,若s1是一个唯一的数,则表明找到了第二优的组合,此时可以将该找到的组合作为目标组合,更新组合号s0=s1;假如s1是一个集合(即s1不是一个唯一的数),则再从s1所对应的组合中去寻找极差最小的一个组合,该找到的组合即为第二优的组合,此时可以将该找到的组合作为目标组合,组合号可以记为s1 min,并更新组合号s0=s1 min。

综合以上可得目标组合(即最优样本所在的组合)的组合号s0,此时再根据各序列号的对应关系往前回溯,即可得到最优样本,也就是候选样本集的某种样本组合,其中包含有N0个历史样本。

210、服务器根据该最优样本确定配置项对应值,即根据该最优样本进行配置项对应值的推导,从而达到了自动化配置的效果。

其中,配置项可以根据实际的业务而定,比如,可以是阈值配置或波动率曲线,等等,即步骤“根据该最优样本确定配置项对应值”可以包括:

若配置项为阈值配置,则获取该最优样本的均值,并对该均值进行聚合收敛,得到阈值配置的对应值,比如分时段“阈值”规则等;

若配置项为波动率曲线,则获取该最优样本对应的波动率计算公式,基于该波动率计算公式确定波动率曲线中扫描点的向上波动率和向下波动率,得到波动率曲线的对应值,比如波动率曲线值。

其中,该波动率计算公式具体可以根据实际应用的需求进行定义,例如,可以如下:

定义“波动率曲线”的当前扫描点j的计算式为:

向上波动率为

向下波动率为

其中,Xj是扫描点j在N0个最优样本中的采样序列,即Xj={xj(i)|i=1,2,…,N0}。

需说明的是,对于聚合收敛方法,可以根据实际应用的需求而定,比如,可以采用K-means聚类法,等等。

211、服务器输出该最优样本、以及该配置项对应值,比如,输出该最优样本、以及阈值配置的对应值和/或波动率曲线的对应值。

在输出该最优样本、以及该配置项对应值之后,还可以保存该最优样本的相关数据,以供业务监控系统做算法验证之用;可选的,为了节省空间,可以不用保存最优样本的详细数据,而是只保存组合号,即只保存该最优样本的样本标签即可。

由上可知,本实施例采用获取预置数量的历史采样数据,从中选择样本作为输入样本集,然后,通过最小化输入样本集中样本的波动率累积差分值,从输入样本集中挑选出候选样本集,再通过计算候选样本集的每种样本组合的相关系数累积和与极差,并在累积和得到最大化的情况下,最小化该极差,从而达到选出最优样本的目的;由于该方案只需一定量的历史样本数据,而且,无需进行模型选择和模型训练,因此,实现较为简单,无需消耗过多的内存和存储空间,而且,由于此过程均可由系统自动完成,无需过多的人为经验介入,所以,可以大大提高处理效率;总而言之,相对于现有技术而言,该方案不仅实现较为简单,消耗内存较少,而且可以减少空间的占用,以及提高处理效率,有利于选择出合适的样本,即最优样本,避免脏数据扰乱准确性,进而有利于提高整个业务监控系统的监控质量。

实施例三、

基于实施例二所描述的流程,可以得到该基于业务监控系统的样本选择方法(为了描述方便,可以称为MVOCC(最小化波动率与最优化相关系数,Minimize Volatility and Optimization the Correlation Coefficient)算法)的逻辑伪代码,具体可以如下:

需说明的是,具体实施时,波动率计算公式中的时间间隔m0除了可以根据实际应用的需求预先进行设置之外,也可以根据时效性要求的不同,而采用其他的方式来确定,比如,若在时效性要求较高的情况下,可以采用预先设置的方式,比如设置m0=5,而若在时效性要求比较低的情况下,则可以通过“参数寻优”的方式来进行确定,其具体实现过程是:

算法的开始部分不设定m0=5,而是让m0为某个取值集合,比如m0={3,4,5},然后,循环m0的每个取值下,调用上述算法(即MVOCC算法)中的候选样本集,得到不同的m0值下对应的波动率曲线序列,再与实际采样值进行残差计 算,残差最小的情形则为最优选择,进而确定m0值为残差最小时所对应的值,这种方式虽然一定程度上降低了时效性,但是可以提高算法的精确性。

由上可知,本实施例采用获取预置数量的历史采样数据,从中选择样本作为输入样本集,然后,通过最小化输入样本集中样本的波动率累积差分值,从输入样本集中挑选出候选样本集,再通过计算候选样本集的每种样本组合的相关系数累积和与极差,并在累积和得到最大化的情况下,最小化该极差,从而达到选出最优样本的目的;由于该方案只需一定量的历史样本数据,而且,无需进行模型选择和模型训练,因此,实现较为简单,无需消耗过多的内存和存储空间,而且,由于此过程均可由系统自动完成,无需过多的人为经验介入,所以,可以大大提高处理效率;总而言之,相对于现有技术而言,该方案不仅实现较为简单,消耗内存较少,而且可以减少空间的占用,以及提高处理效率,有利于选择出合适的样本,即最优样本,避免脏数据扰乱准确性,进而有利于提高整个业务监控系统的监控质量。

实施例四、

为了更好地实施以上方法,本发明实施例还提供一种样本选择装置,如图3a所示,该样本选择装置可以包括获取单元301、选择单元302、第一处理单元303、第二处理单元304和第三处理单元305,如下:

(1)获取单元301;

获取单元301,用于获取预置数量的历史采样数据和相应的数据类型标识。

其中,历史采样数据的数量可以根据实际应用的需求而定,而数据类型标识,则可以用于指示其业务特性,比如流量或在线用户数等,以及还可以指示数据类型,比如可以是比率数据,如失败率或成功率等;该数据类型标识可以根据业务特性来进行配置,其值可以为{1,-1}。

(2)选择单元302;

选择单元302,用于根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集。

其中,除了可以直接根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集之外,可选的,为了提高样本的选择效果,还可以对选择到的样本进行预处理,然后,才添加至输入样本集中,即:

该选择单元302,具体可以用于根据该数据类型标识从该历史采样数据中选择样本,对选择到的样本进行预处理,得到输入样本集。

其中,该预处理可以包括数据还原处理、数据缺失补齐处理、和/或毛刺定位与光滑化处理等处理,具体可参见前面的方法实施例,在此不再赘述。

(3)第一处理单元303;

第一处理单元303,用于计算该输入样本集中的样本的波动率累积差分,并选择该波动率累积差分小于预设第一条件的样本,得到候选样本集。

其中,计算该输入样本集中的样本的波动率累积差分的方式可以有多种,例如,可以如下:

该第一处理单元303,具体可以用于计算该输入样本集中的样本的波动率序列,根据该波动率序列计算样本的波动率累积差分,比如,可以如下:

A、从该输入样本集中确定当前需要处理的样本,以及扫描点。

B、确定该扫描点的采样值,以及预设时间间隔前的采样值。

其中,该预设时间可以根据实际应用的需求进行设置,在此不再赘述。

C、基于该扫描点的采样值、以及预设时间间隔前的采样值计算该扫描点的波动率,并返回执行从该输入样本集中确定当前需要处理的样本,以及扫描点的步骤,直至得到该输入样本集中所有样本的所有扫描点的波动率。

D、将属于同一样本的所有扫描点的波动率添加到同一序列中,得到相应的样本的波动率序列。

在得到样本的波动率累积差分后,第一处理单元303便可以根据该波动率累积差分选择合适的样本,得到候选样本集,例如,具体可以如下:

第一处理单元,具体用于根据每个样本的波动率累积差分得到所有样本的波动率累积差分序列;采用选择排序法对该波动率累计差分序列进行排序;根 据该排序选择预设数量个波动率累积差分最小的样本,得到候选样本集。

其中,在排序时,可以采用升序排序的方式,也可以采用降序排序的方式,比如,如果是采用升序排序的方式,则可以根据该排序选择前V0波动率累积差分,即波动率累积差分最小的前V0个作为候选样本集;而如果采用降序排序的方式,则可以根据该排序选择后V0波动率累积差分,即波动率累积差分最小的前V0个作为候选样本集,等等。

(4)第二处理单元304;

第二处理单元304,用于对该候选样本集中的样本进行排列组合,并计算每个组合中两两样本之间的相关系数,以及根据该相关系数计算相应组合的相关系数累积和与极差。例如,具体可以如下:

该第二处理单元304,具体可以用于从该候选样本集中选择出N0个样本作为一个组合,该N0小于输入样本集中样本的数量;计算每个组合中两两样本之间的相关系数,得到每个组合的相关矩阵;根据该相关矩阵计算每个组合的相关系数累积和与极差,具体可参见前面的实施例,在此不再赘述。

(5)第三处理单元305;

第三处理单元305,用于选择该相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到最优样本。

其中,第二条件和第三条件可以根据实际应用的需求进行设置,比如,可以对相关系数累积和、以及极差分别进行排序,然后基于该排序来选择相应的样本,即:

第三处理单元305,具体可以用于采用选择排序法对该相关系数累积和、以及极差进行排序;基于该排序选择预设数量个相关系数累积和最大的组合,得到候选组合;从该候选组合中选择极差最小的组合,得到目标组合;根据该目标组合获取对应的样本,得到最优样本。

其中,在排序时,可以采用升序排序的方式,也可以采用降序排序的方式,而预设数量则可以根据实际应用的需求进行设置,在此不再赘述。

需说明的是,在选择组合时,除了可以直接选择组合之外,也可以选择组合的标识,比如组合号,然后通过该组合的标识如组合号来获取对应的样本,得到最优样本,在此不再赘述。

此外,在得到最优样本之后,还可以根据该最优样本确定配置项对应值,然后输出该最优样本、以及该配置项对应值,即如图3b所示,该样本选择装置还可以包括确定单元306和输出单元307,如下:

该确定单元306,用于根据该最优样本确定配置项对应值。

该输出单元307,用于输出该最优样本、以及该配置项对应值。

其中,配置项可以根据实际的业务而定,比如,可以是阈值配置或波动率曲线,等等,即该确定306单元,具体可以用于:

若配置项为阈值配置,则获取该最优样本的均值,并对该均值进行聚合收敛,得到阈值配置的对应值;

若配置项为波动率曲线,则获取该最优样本对应的波动率计算公式,基于该波动率计算公式确定波动率曲线中扫描点的向上波动率和向下波动率,得到波动率曲线的对应值。

则此时,输出单元307,具体可以用于输出该最优样本、以及阈值配置的对应值和/或波动率曲线的对应值。

需说明的是,波动率计算公式可以根据实际应用的需求进行定义,而对于聚合收敛方法,也可以根据实际应用的需求而定,比如,可以采用K-means聚类法,等等。

在输出该最优样本、以及该配置项对应值之后,还可以保存该最优样本的相关数据,以供业务监控系统做算法验证之用,可选的,为了节省空间,可以只保存该最优样本的样本标签,即如图3b所示,该样本选择装置还可以包括保存单元308,如下:

该保存单元308,用于保存该最优样本的样本标签。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意 组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

该样本选择装置具体可以集成在服务器,比如监控服务器等设备中。

由上可知,本实施例的样本选择装置的获取单元301可以获取预置数量的历史采样数据,并由选择单元302从中选择样本作为输入样本集,然后,由第一处理单元303通过最小化输入样本集中样本的波动率累积差分值,从输入样本集中挑选出候选样本集,再由第二处理单元304通过计算候选样本集的每种样本组合的相关系数累积和与极差,并由第三处理单元305在累积和得到最大化的情况下,最小化该极差,从而达到选出最优样本的目的;由于该方案只需一定量的历史样本数据,而且,无需进行模型选择和模型训练,因此,实现较为简单,无需消耗过多的内存和存储空间,而且,由于此过程均可由系统自动完成,无需过多的人为经验介入,所以,可以大大提高处理效率;总而言之,相对于现有技术而言,该方案不仅实现较为简单,消耗内存较少,而且可以减少空间的占用,以及提高处理效率,有利于选择出合适的样本,即最优样本,避免脏数据扰乱准确性,进而有利于提高整个业务监控系统的监控质量。

实施例五、

此外,本发明实施例还提供一种业务监控系统,包括本发明实施例所提供的任一种样本选择装置,具体可参见实施例四,例如,可以如下:

样本选择装置,用于获取预置数量的历史采样数据和相应的数据类型标识;根据该数据类型标识从该历史采样数据中选择样本,得到输入样本集;计算该输入样本集中的样本的波动率累积差分,并选择该波动率累积差分小于预设第一条件的样本,得到候选样本集;对该候选样本集中的样本进行排列组合,并计算每个组合中两两样本之间的相关系数,以及根据该相关系数计算相应组合的相关系数累积和与极差;选择该相关系数累积和大于预设第二条件,以及极差小于预设第三条件的组合所对应的样本,得到最优样本。

此外,该业务监控系统还可以包括其他的设备,比如,还可以包括监控装置,如下:

监控装置,主要用于根据样本选择装置所输出的最优样本、以及该配置项对应值,对业务数据进行监控,并在确定业务数据发生异常,比如故障或错误时,发出告警。

以上各个装置的具体实施可参见前面的实施例,在此不再赘述。

由于该业务监控系统可以包括本发明实施例所提供的任一种样本选择装置,因此,可以实现本发明实施例所提供的任一种样本选择装置所能实现的有益效果,详见前面的实施例,在此不再赘述。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。

以上对本发明实施例所提供的一种基于业务监控系统的样本选择方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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