CN108920310A - 接口数据的异常值检测方法及系统 - Google Patents

接口数据的异常值检测方法及系统 Download PDF

Info

Publication number
CN108920310A
CN108920310A CN201810503984.3A CN201810503984A CN108920310A CN 108920310 A CN108920310 A CN 108920310A CN 201810503984 A CN201810503984 A CN 201810503984A CN 108920310 A CN108920310 A CN 108920310A
Authority
CN
China
Prior art keywords
request amount
amount
data
interface
hyper parameter
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.)
Granted
Application number
CN201810503984.3A
Other languages
English (en)
Other versions
CN108920310B (zh
Inventor
胡江泽
张玉峰
张勇
金丽丽
苏达鼐
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.)
Ctrip Travel Network Technology Shanghai Co Ltd
Original Assignee
Ctrip Travel Network Technology Shanghai Co Ltd
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 Ctrip Travel Network Technology Shanghai Co Ltd filed Critical Ctrip Travel Network Technology Shanghai Co Ltd
Priority to CN201810503984.3A priority Critical patent/CN108920310B/zh
Publication of CN108920310A publication Critical patent/CN108920310A/zh
Application granted granted Critical
Publication of CN108920310B publication Critical patent/CN108920310B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种接口数据的异常值检测方法及系统,所述异常值检测方法包括:获取接口在设定历史时间范围内的历史请求量;根据历史请求量获取请求量特征值;采用LightGBM算法对请求量特征值进行处理,建立请求量预测模型;根据请求量预测模型,预测接口在下一个设定时间段内的请求量预测值;根据历史请求量和请求量预测值,获取下一个设定时间段对应的正常请求量范围;判断请求量预测值是否在正常请求量范围内,若不在,则发送报警信息。本发明克服了现有技术中的检测接口数据中的异常值时存在容易产生误报、漏报的缺陷,且可以实时获取的各个接口的历史请求量自动调整请求量预测模型,实现及时报警,具有通用性。

Description

接口数据的异常值检测方法及系统
技术领域
本发明涉及数据处理技术领域,特别涉及一种接口数据的异常值检测方法及系统。
背景技术
现有技术中,很多场景中需要对接口的请求量等数值是否发生异常进行检测。其中,请求量是指代码调取接口的次数,接口的请求量发生异常是指请求量大幅度地偏离历史正常数值或者为零等异常情况。
目前,一般根据设定的规则对数值中的异常值进行检测,比如检测本期数据偏离历史同期数据的情况,或是根据一些简单的统计量进行判断,比如偏离三个标准差以上的情况等;但是,这些简单的设定规则会导致以下问题:1)当同期数据发生异常时,会导致本期数值原本属于正常但由于偏离该同期数值较大时,从而产生误报的情况;2)当同期数据发生异常时,会导致本期数值属于异常但由于偏离同期数值较小时,从而产生漏报的情况;3)由于节假日等特殊日期的临近,数值每天的正常增量导致的与近期数值偏差较大,从而产生误报的情况;4)由于每个请求量的特殊性,导致不能有效地设定通用的偏离值和报警规则。
发明内容
本发明要解决的技术问题是现有技术中的检测接口数据中的异常值的方式存在容易产生误报、漏报,且不能有效地设定通用的偏离值和报警规则等缺陷,目的在于提供一种接口数据的异常值检测方法及系统。
本发明是通过下述技术方案来解决上述技术问题:
本发明提供一种接口数据的异常值检测方法,所述异常值检测方法包括:
S1、获取接口在设定历史时间范围内的历史请求量;
S2、根据所述历史请求量获取请求量特征值;
其中,所述请求量特征值是指所述接口在所述设定历史时间范围中的各个设定时间段内的请求量;
S3、采用LightGBM算法(一种机器学习算法)对所述请求量特征值进行处理,建立请求量预测模型;
S4、根据所述请求量预测模型,预测所述接口在下一个设定时间段内的请求量预测值;
S5、根据所述历史请求量和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
S6、判断所述请求量预测值是否在所述正常请求量范围内,若不在,则发送报警信息。
较佳地,步骤S3具体包括:
采用LightGBM算法和Ridge算法(一种机器学习算法)对所述请求量特征值进行处理,建立请求量预测模型。
较佳地,步骤S1之后、步骤S4之前还包括:
S11、判断所述历史请求量是否为新增接口对应的请求量,若否,则继续步骤S2;若是,则继续步骤S12;
S12、根据所述新增接口的请求量获取超参数,继续步骤S13;
S13、采用LightGBM算法对所述超参数进行处理,建立所述请求量预测模型。
较佳地,步骤S12具体包括:
S121、根据所述新增接口的请求量获取超参数集合;
S122、根据所述超参数集合和所述历史请求量,采用网格搜索方式、随机搜索方式或贝叶斯搜索方式对所述超参数集合进行搜索处理,获取目标超参数;
其中,所述目标超参数包括树的数量、树的深度、最小的叶子样本数、最大的叶子样本数、特征数收缩比例、样本数收缩比例、采样频率、一阶正则率、二阶正则率和学习率中的至少一种。
较佳地,步骤S5具体包括:
根据所述历史请求量,获取初始请求量范围;
根据所述初始请求量范围和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
其中,所述初始请求量范围的公式如下:
upper=qt(data,0.5)+[qt(data,0.75)-qt(data,0.5)]×6
lower=qt(data,0.5)-[qt(data,0.5)-qt(data,0.25)]×6
其中,upper表示初始请求量上限值,lower表示初始请求量下限值,qt表示分位数函数,data表示设定历史时间范围内的历史请求量;
所述正常请求量范围的公式如下:
pred_upper=predict+[qt(data,0.75)-qt(data,0.5)]×6
pred_lower=predict-[qt(data,0.5)-qt(data,0.25)]×6
其中,pred_upper表示中间请求量上限值,pred_lower表示中间请求量下限值,upperadjust表示目标请求量上限值,loweradjust表示目标请求量下限值,predict表示所述请求量预测值。
本发明还提供一种接口数据的异常值检测系统,所述异常值检测系统包括历史请求量获取模块、特征值获取模块、第一预测模型获取模块、请求量预测模块、请求量范围获取模块和第一判断模块;
所述历史请求量获取模块用于获取接口在设定历史时间范围内的历史请求量;
所述特征值获取模块用于根据所述历史请求量获取请求量特征值;
其中,所述请求量特征值是指所述接口在所述设定历史时间范围中的各个设定时间段内的请求量;
所述第一预测模型获取模块用于采用LightGBM算法对所述请求量特征值进行处理,建立请求量预测模型;
所述请求量预测模块用于根据所述请求量预测模型,预测所述接口在下一个设定时间段内的请求量预测值;
所述请求量范围获取模块用于根据所述历史请求量和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
所述第一判断模块用于判断所述请求量预测值是否在所述正常请求量范围内,若不在,则发送报警信息。
较佳地,所述第一预测模型获取模块还用于采用LightGBM算法和Ridge算法对所述请求量特征值进行处理,建立请求量预测模型。
较佳地,所述异常值检测系统还包括第二判断模块、超参数获取模块和第二预测模型获取模块;
所述第二判断模块用于判断所述历史请求量是否为新增接口对应的请求量,若否,则调用所述特征值获取模块;若是,则调用所述超参数获取模块;
所述超参数获取模块用于根据所述新增接口的请求量获取超参数;
所述第二预测模型获取模块用于采用LightGBM算法对所述超参数进行处理,建立所述请求量预测模型。
较佳地,所述超参数获取模块包括超参数集合获取单元和目标超参数设定单元;
所述超参数集合获取单元用于根据所述新增接口的请求量获取超参数集合;
所述目标超参数设定单元用于根据所述超参数集合和所述历史请求量,采用网格搜索方式、随机搜索方式或贝叶斯搜索方式对所述超参数集合进行搜索处理,获取目标超参数;
其中,所述目标超参数包括树的数量、树的深度、最小的叶子样本数、最大的叶子样本数、特征数收缩比例、样本数收缩比例、采样频率、一阶正则率、二阶正则率和学习率中的至少一种。
较佳地,所述请求量范围获取模块包括初始请求量范围获取单元和正常请求量范围获取单元;
所述初始请求量范围获取单元用于根据所述历史请求量,获取初始请求量范围;
所述正常请求量范围获取单元用于根据所述初始请求量范围和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
其中,所述初始请求量范围的公式如下:
upper=qt(data,0.5)+[qt(data,0.75)-qt(data,0.5)]×6
lower=qt(data,0.5)-[qt(data,0.5)-qt(data,0.25)]×6
其中,upper表示初始请求量上限值,lower表示初始请求量下限值,qt表示分位数函数,data表示设定历史时间范围内的历史请求量;
所述正常请求量范围的公式如下:
pred_upper=predict+[qt(data,0.75)-qt(data,0.5)]×6
pred_lower=predict-[qt(data,0.5)-qt(data,0.25)]×6
其中,pred_upper表示中间请求量上限值,pred_lower表示中间请求量下限值,upperadjust表示目标请求量上限值,loweradjust表示目标请求量下限值,predict表示所述请求量预测值。
本发明的积极进步效果在于:
本发明中,通过获取设定历史时间范围内接口的历史请求量,并根据该历史请求量得到对应的请求量特征值,基于特征值采用LightGBM算法建立请求量预测模型,并根据请求量预测模型预测接口在下一个设定时间段内的请求量预测值,再通过历史请求量和请求量预测值得到正常请求量范围,当请求量预测值不在正常请求量范围时,发送报警信息,从而克服了现有技术中的检测接口数据中的异常值时存在容易产生误报、漏报的缺陷,且可以实时获取的各个接口的历史请求量自动调整请求量预测模型,实现及时报警,具有通用性。
附图说明
图1为本发明实施例1的接口数据的异常值检测方法的流程图;
图2为本发明实施例2的接口数据的异常值检测方法的流程图;
图3为本发明实施例3的接口数据的异常值检测系统的模块示意图;
图4为本发明实施例4的接口数据的异常值检测系统的模块示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
如图1所示,本实施例的接口数据的异常值检测方法包括:
S101、获取接口在设定历史时间范围内的历史请求量;
S102、根据历史请求量获取请求量特征值;
其中,请求量特征值是指接口在设定历史时间范围中的各个设定时间段内的请求量;
具体地,获取历史请求量中的当前所处时间段内的请求量、前一天同一时间段内的请求量、前一周同一时间段内的请求量以及前一个小时对应的请求量。
为了避免由于请求量数据本身的波动或者异常导致请求量预测模型预测结果的不稳定,一般采取如下两种策略:
通过选择多个请求量特征值来替换个别请求量特征值的波动,比如若需要预测某一接口在当天10:00至10:05这一时间段内的请求量,不再基于前一天同一时间段(10:00至10:05)内的请求量作为请求量特征值,以防止由于前一天同一时间段内的请求量数据存在异常导致当天的预测请求量也异常;而是采用前三天同一时间段内的请求量,再取前三天中每天10点后且靠近10点的5个时间段内的请求量作为请求量特征值,即通过前三天对应的18个请求量特征值来预测某一接口在当天10:00至10:05这一时间段内的请求量,相比通过一个请求量特征值预测当天的预测请求量,选择多个请求量特征值预测当天的预测请求量发生异常的概率明显降低。
另外,采用一段时间内的请求量的中位数替换一段时间内的总请求量,使得预测当天的预测请求量不受个别极端值的影响,降低了预测请求量发生异常的概率。
S103、采用LightGBM算法对请求量特征值进行处理,建立请求量预测模型;
S104、根据请求量预测模型,预测接口在下一个设定时间段内的请求量预测值;
S105、根据历史请求量和请求量预测值,获取下一个设定时间段对应的正常请求量范围;
具体地,步骤S105包括:
S1051、根据历史请求量,获取初始请求量范围;
S1052、根据初始请求量范围和请求量预测值,获取下一个设定时间段对应的正常请求量范围;
其中,所述初始请求量范围的公式如下:
upper=qt(data,0.5)+[qt(data,0.75)-qt(data,0.5)]×6
lower=qt(data,0.5)-[qt(data,0.5)-qt(data,0.25)]×6
其中,upper表示初始请求量上限值,lower表示初始请求量下限值,qt表示分位数函数,data表示设定历史时间范围内的历史请求量;
所述正常请求量范围的公式如下:
pred_upper=predict+[qt(data,0.75)-qt(data,0.5)]×6
pred_lower=predict-[qt(data,0.5)-qt(data,0.25)]×6
其中,pred_upper表示中间请求量上限值,pred_lower表示中间请求量下限值,upperadjust表示目标请求量上限值,loweradjust表示目标请求量下限值,predict表示所述请求量预测值;min()表示求最小值函数;max()表示求最大值函数,predict>lower表示请求量预测值大于初始请求量下限值,其对应的else表示请求量预测值小于或等于初始请求量下限值;predict<upper表示请求量预测值小于初始请求量上限值,其对应的else表示请求量预测值大于或等于初始请求量上限值。
S106、判断请求量预测值是否在正常请求量范围内,若不在,则发送报警信息。
其中,通过邮件的方式发送报警信息;同时可以根据实际需求设置发送报警信息的时间粒度,如5分钟、10分钟、30分钟等。
本实施例中,通过获取设定历史时间范围内接口的历史请求量,并根据该历史请求量得到对应的请求量特征值,基于特征值采用LightGBM算法建立请求量预测模型,并根据请求量预测模型预测接口在下一个设定时间段内的请求量预测值,再通过历史请求量和请求量预测值得到正常请求量范围,当请求量预测值不在正常请求量范围时,发送报警信息,从而克服了现有技术中的检测接口数据中的异常值时存在容易产生误报、漏报的缺陷,且可以实时获取的各个接口的历史请求量自动调整请求量预测模型,实现及时报警,具有通用性。
实施例2
如图2所示,本实施例是对实施例1的进一步改进,具体地:
步骤S101之后、步骤S104之前还包括:
S1011、判断历史请求量是否为新增接口对应的请求量,若否,则继续步骤S102;若是,则继续步骤S1012;
S1012、根据新增接口的请求量获取超参数,继续步骤S1013;
具体地,步骤S1012包括:
S10121、根据所述新增接口的请求量获取对应模型的超参数集合;
S10122、根据所述超参数集合和所述历史请求量,采用网格搜索方式、随机搜索方式或贝叶斯搜索方式对所述超参数集合进行搜索处理,获取目标超参数。
其中,所述目标超参数包括树的数量、树的深度、最小的叶子样本数、最大的叶子样本数、特征数收缩比例、样本数收缩比例、采样频率、一阶正则率、二阶正则率和学习率中的至少一种;
另外,优选随机搜索方式对超参数集合进行搜索处理,获取目标超参数;且目标超参数为超参数集合中最优或者较优的超参数,即目标超参数更能表征新增接口的请求量的数据特性。
S1013、采用LightGBM算法对目标超参数进行处理,建立请求量预测模型。
其中,步骤S1013也可以采用LightGBM算法对目标超参数进行处理,同时,采用Ridge算法对与Ridge算法对应的基本超参数进行处理,然后将两种算法对超参数的处理结果相结合,建立请求量预测模型。
本实施例中,通过获取设定历史时间范围内接口的历史请求量,并根据该历史请求量得到对应的请求量特征值,基于特征值采用LightGBM算法建立请求量预测模型;或,当历史请求量为新增接口对应的请求量时,根据述新增接口的请求量获取超参数,采用LightGBM算法对超参数进行处理,建立请求量预测模型;然后根据请求量预测模型预测接口在下一个设定时间段内的请求量预测值,再通过历史请求量和请求量预测值得到正常请求量范围,当请求量预测值不在正常请求量范围时,发送报警信息,从而克服了现有技术中的检测接口数据中的异常值时存在容易产生误报、漏报的缺陷,且可以实时获取的各个接口的历史请求量自动调整请求量预测模型,实现及时报警,具有通用性。
实施例3
如图3所示,本实施例的接口数据的异常值检测系统包括历史请求量获取模块1、特征值获取模块2、第一预测模型获取模块3、请求量预测模块4、请求量范围获取模块5和第一判断模块6。
其中,请求量范围获取模块5包括初始请求量范围获取单元51和正常请求量范围获取单元52。
历史请求量获取模块1用于获取接口在设定历史时间范围内的历史请求量;
特征值获取模块2用于根据历史请求量获取请求量特征值;
其中,请求量特征值是指接口在设定历史时间范围中的各个设定时间段内的请求量;
具体地,获取历史请求量中的当前所处时间段内的请求量、前一天同一时间段内的请求量、前一周同一时间段内的请求量以及前一个小时对应的请求量。
为了避免由于请求量数据本身的波动或者异常导致请求量预测模型预测结果的不稳定,一般采取如下两种策略:
通过选择多个请求量特征值来替换个别请求量特征值的波动,比如若需要预测某一接口在当天10:00至10:05这一时间段内的请求量,不再基于前一天同一时间段(10:00至10:05)内的请求量作为请求量特征值,以防止由于前一天同一时间段内的请求量数据存在异常导致当天的预测请求量也异常;而是采用前三天同一时间段内的请求量,再取前三天中每天10点后且靠近10点的5个时间段内的请求量作为请求量特征值,即通过前三天对应的18个请求量特征值来预测某一接口在当天10:00至10:05这一时间段内的请求量,相比通过一个请求量特征值预测当天的预测请求量,选择多个请求量特征值预测当天的预测请求量发生异常的概率明显降低。
另外,采用一段时间内的请求量的中位数替换一段时间内的总请求量,使得预测当天的预测请求量不受个别极端值的影响,降低了预测请求量发生异常的概率。
第一预测模型获取模块3用于采用LightGBM算法对请求量特征值进行处理,建立请求量预测模型;
请求量预测模块4用于根据请求量预测模型,预测接口在下一个设定时间段内的请求量预测值;
请求量范围获取模块5用于根据历史请求量和请求量预测值,获取下一个设定时间段对应的正常请求量范围;
第一判断模块6用于判断请求量预测值是否在正常请求量范围内,若不在,则发送报警信息。
第一预测模型获取模块3还用于采用LightGBM算法和Ridge算法对请求量特征值进行处理,建立请求量预测模型。
初始请求量范围获取单元51用于根据历史请求量,获取初始请求量范围;
正常请求量范围获取单元52用于根据初始请求量范围和请求量预测值,获取下一个设定时间段对应的正常请求量范围;
其中,所述初始请求量范围的公式如下:
upper=qt(data,0.5)+[qt(data,0.75)-qt(data,0.5)]×6
lower=qt(data,0.5)-[qt(data,0.5)-qt(data,0.25)]×6
其中,upper表示初始请求量上限值,lower表示初始请求量下限值,qt表示分位数函数,data表示设定历史时间范围内的历史请求量;
所述正常请求量范围的公式如下:
pred_upper=predict+[qt(data,0.75)-qt(data,0.5)]×6
pred_lower=predict-[qt(data,0.5)-qt(data,0.25)]×6
其中,pred_upper表示中间请求量上限值,pred_lower表示中间请求量下限值,upperadjust表示目标请求量上限值,loweradjust表示目标请求量下限值,predict表示所述请求量预测值;min()表示求最小值函数;max()表示求最大值函数,predict>lower表示请求量预测值大于初始请求量下限值,其对应的else表示请求量预测值小于或等于初始请求量下限值;predict<upper表示请求量预测值小于初始请求量上限值,其对应的else表示请求量预测值大于或等于初始请求量上限值。
其中,通过邮件的方式发送报警信息;同时可以根据实际需求设置发送报警信息的时间粒度,如5分钟、10分钟、30分钟等。
本实施例中,通过获取设定历史时间范围内接口的历史请求量,并根据该历史请求量得到对应的请求量特征值,基于特征值采用LightGBM算法建立请求量预测模型,并根据请求量预测模型预测接口在下一个设定时间段内的请求量预测值,再通过历史请求量和请求量预测值得到正常请求量范围,当请求量预测值不在正常请求量范围时,发送报警信息,从而克服了现有技术中的检测接口数据中的异常值时存在容易产生误报、漏报的缺陷,且可以实时获取的各个接口的历史请求量自动调整请求量预测模型,实现及时报警,具有通用性。
实施例4
如图4所示,本实施例是对实施例3的进一步改进,具体地:
异常值检测系统还包括第二判断模块7、超参数获取模块8和第二预测模型获取模块9。
第二判断模块7用于判断历史请求量是否为新增接口对应的请求量,若否,则调用特征值获取模块;若是,则调用超参数获取模块;
超参数获取模块8用于根据新增接口的请求量获取超参数;
具体地,超参数获取模块8包括超参数集合获取单元和目标超参数设定单元;
所述超参数集合获取单元用于根据所述新增接口的请求量获取对应模型的超参数集合;
所述目标超参数设定单元用于根据所述超参数集合和所述历史请求量,采用网格搜索方式、随机搜索方式或贝叶斯搜索方式对所述超参数集合进行搜索处理,获取目标超参数。
其中,所述目标超参数包括树的数量、树的深度、最小的叶子样本数、最大的叶子样本数、特征数收缩比例、样本数收缩比例、采样频率、一阶正则率、二阶正则率和学习率中的至少一种;
另外,优选随机搜索方式对超参数集合进行搜索处理,获取目标超参数;且目标超参数为超参数集合中最优或者较优的超参数,即目标超参数更能表征新增接口的请求量的数据特性。
第二预测模型获取模块9用于采用LightGBM算法对超参数进行处理,建立请求量预测模型。
其中,第二预测模型获取模块9还用于采用LightGBM算法对目标超参数进行处理,同时,采用Ridge算法对与Ridge算法对应的基本超参数进行处理,然后将两种算法对超参数的处理结果相结合,建立请求量预测模型。
本实施例中,通过获取设定历史时间范围内接口的历史请求量,并根据该历史请求量得到对应的请求量特征值,基于特征值采用LightGBM算法建立请求量预测模型;或,当历史请求量为新增接口对应的请求量时,根据述新增接口的请求量获取超参数,采用LightGBM算法对超参数进行处理,建立请求量预测模型;然后根据请求量预测模型预测接口在下一个设定时间段内的请求量预测值,再通过历史请求量和请求量预测值得到正常请求量范围,当请求量预测值不在正常请求量范围时,发送报警信息,从而克服了现有技术中的检测接口数据中的异常值时存在容易产生误报、漏报的缺陷,且可以实时获取的各个接口的历史请求量自动调整请求量预测模型,实现及时报警,具有通用性。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式作出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

Claims (10)

1.一种接口数据的异常值检测方法,其特征在于,所述异常值检测方法包括:
S1、获取接口在设定历史时间范围内的历史请求量;
S2、根据所述历史请求量获取请求量特征值;
其中,所述请求量特征值是指所述接口在所述设定历史时间范围中的各个设定时间段内的请求量;
S3、采用LightGBM算法对所述请求量特征值进行处理,建立请求量预测模型;
S4、根据所述请求量预测模型,预测所述接口在下一个设定时间段内的请求量预测值;
S5、根据所述历史请求量和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
S6、判断所述请求量预测值是否在所述正常请求量范围内,若不在,则发送报警信息。
2.如权利要求1所述的接口数据的异常值检测方法,其特征在于,步骤S3具体包括:
采用LightGBM算法和Ridge算法对所述请求量特征值进行处理,建立请求量预测模型。
3.如权利要求1所述的接口数据的异常值检测方法,其特征在于,步骤S1之后、步骤S4之前还包括:
S11、判断所述历史请求量是否为新增接口对应的请求量,若否,则继续步骤S2;若是,则继续步骤S12;
S12、根据所述新增接口的请求量获取超参数,继续步骤S13;
S13、采用LightGBM算法对所述超参数进行处理,建立所述请求量预测模型。
4.如权利要求3所述的接口数据的异常值检测方法,其特征在于,步骤S12具体包括:
S121、根据所述新增接口的请求量获取超参数集合;
S122、根据所述超参数集合和所述历史请求量,采用网格搜索方式、随机搜索方式或贝叶斯搜索方式对所述超参数集合进行搜索处理,获取目标超参数;
其中,所述目标超参数包括树的数量、树的深度、最小的叶子样本数、最大的叶子样本数、特征数收缩比例、样本数收缩比例、采样频率、一阶正则率、二阶正则率和学习率中的至少一种。
5.如权利要求1所述的接口数据的异常值检测方法,其特征在于,步骤S5具体包括:
根据所述历史请求量,获取初始请求量范围;
根据所述初始请求量范围和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
其中,所述初始请求量范围的公式如下:
upper=qt(data,0.5)+[qt(data,0.75)-qt(data,0.5)]×6
lower=qt(data,0.5)-[qt(data,0.5)-qt(data,0.25)]×6
其中,upper表示初始请求量上限值,lower表示初始请求量下限值,qt表示分位数函数,data表示设定历史时间范围内的历史请求量;
所述正常请求量范围的公式如下:
pred_upper=predict+[qt(data,0.75)-qt(data,0.5)]×6
pred_lower=predict-[qt(data,0.5)-qt(data,0.25)]×6
其中,pred_upper表示中间请求量上限值,pred_lower表示中间请求量下限值,upperadjust表示目标请求量上限值,loweradjust表示目标请求量下限值,predict表示所述请求量预测值。
6.一种接口数据的异常值检测系统,其特征在于,所述异常值检测系统包括历史请求量获取模块、特征值获取模块、第一预测模型获取模块、请求量预测模块、请求量范围获取模块和第一判断模块;
所述历史请求量获取模块用于获取接口在设定历史时间范围内的历史请求量;
所述特征值获取模块用于根据所述历史请求量获取请求量特征值;
其中,所述请求量特征值是指所述接口在所述设定历史时间范围中的各个设定时间段内的请求量;
所述第一预测模型获取模块用于采用LightGBM算法对所述请求量特征值进行处理,建立请求量预测模型;
所述请求量预测模块用于根据所述请求量预测模型,预测所述接口在下一个设定时间段内的请求量预测值;
所述请求量范围获取模块用于根据所述历史请求量和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
所述第一判断模块用于判断所述请求量预测值是否在所述正常请求量范围内,若不在,则发送报警信息。
7.如权利要求6所述的接口数据的异常值检测系统,其特征在于,所述第一预测模型获取模块还用于采用LightGBM算法和Ridge算法对所述请求量特征值进行处理,建立请求量预测模型。
8.如权利要求6所述的接口数据的异常值检测系统,其特征在于,所述异常值检测系统还包括第二判断模块、超参数获取模块和第二预测模型获取模块;
所述第二判断模块用于判断所述历史请求量是否为新增接口对应的请求量,若否,则调用所述特征值获取模块;若是,则调用所述超参数获取模块;
所述超参数获取模块用于根据所述新增接口的请求量获取超参数;
所述第二预测模型获取模块用于采用LightGBM算法对所述超参数进行处理,建立所述请求量预测模型。
9.如权利要求8所述的接口数据的异常值检测系统,其特征在于,所述超参数获取模块包括超参数集合获取单元和目标超参数设定单元;
所述超参数集合获取单元用于根据所述新增接口的请求量获取超参数集合;
所述目标超参数设定单元用于根据所述超参数集合和所述历史请求量,采用网格搜索方式、随机搜索方式或贝叶斯搜索方式对所述超参数集合进行搜索处理,获取目标超参数;
其中,所述目标超参数包括树的数量、树的深度、最小的叶子样本数、最大的叶子样本数、特征数收缩比例、样本数收缩比例、采样频率、一阶正则率、二阶正则率和学习率中的至少一种。
10.如权利要求6所述的接口数据的异常值检测系统,其特征在于,所述请求量范围获取模块包括初始请求量范围获取单元和正常请求量范围获取单元;
所述初始请求量范围获取单元用于根据所述历史请求量,获取初始请求量范围;
所述正常请求量范围获取单元用于根据所述初始请求量范围和所述请求量预测值,获取所述下一个设定时间段对应的正常请求量范围;
其中,所述初始请求量范围的公式如下:
upper=qt(data,0.5)+[qt(data,0.75)-qt(data,0.5)]×6
lower=qt(data,0.5)-[qt(data,0.5)-qt(data,0.25)]×6
其中,upper表示初始请求量上限值,lower表示初始请求量下限值,qt表示分位数函数,data表示设定历史时间范围内的历史请求量;
所述正常请求量范围的公式如下:
pred_upper=predict+[qt(data,0.75)-qt(data,0.5)]×6
pred_lower=predict-[qt(data,0.5)-qt(data,0.25)]×6
其中,pred_upper表示中间请求量上限值,pred_lower表示中间请求量下限值,upperadjust表示目标请求量上限值,loweradjust表示目标请求量下限值,predict表示所述请求量预测值。
CN201810503984.3A 2018-05-23 2018-05-23 接口数据的异常值检测方法及系统 Active CN108920310B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810503984.3A CN108920310B (zh) 2018-05-23 2018-05-23 接口数据的异常值检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810503984.3A CN108920310B (zh) 2018-05-23 2018-05-23 接口数据的异常值检测方法及系统

Publications (2)

Publication Number Publication Date
CN108920310A true CN108920310A (zh) 2018-11-30
CN108920310B CN108920310B (zh) 2022-05-03

Family

ID=64403428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810503984.3A Active CN108920310B (zh) 2018-05-23 2018-05-23 接口数据的异常值检测方法及系统

Country Status (1)

Country Link
CN (1) CN108920310B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783773A (zh) * 2018-12-14 2019-05-21 微梦创科网络科技(中国)有限公司 一种确定网站接口非正常流量的方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1617512A (zh) * 2004-11-25 2005-05-18 中国科学院计算技术研究所 一种自适应网络流量预测和异常报警方法
CN101267362A (zh) * 2008-05-16 2008-09-17 亿阳信通股份有限公司 一种性能指标值正常波动范围的动态确定方法及其装置
CN102355381A (zh) * 2011-08-18 2012-02-15 网宿科技股份有限公司 自适应的差分自回归移动平均模型的流量预测方法和系统
CN104156791A (zh) * 2014-08-29 2014-11-19 哈尔滨工业大学 基于ls-svm的概率集成学习锂离子电池剩余寿命预测方法
US9900244B2 (en) * 2013-02-13 2018-02-20 Amazon Technologies, Inc. Predicting route utilization and non-redundant failures in network environments
CN107729671A (zh) * 2017-10-25 2018-02-23 西安科技大学 一种基于支持向量机的矿井巷道摩擦阻力系数预测方法
CN107943809A (zh) * 2016-10-13 2018-04-20 阿里巴巴集团控股有限公司 数据质量监控方法、装置及大数据计算平台

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1617512A (zh) * 2004-11-25 2005-05-18 中国科学院计算技术研究所 一种自适应网络流量预测和异常报警方法
CN101267362A (zh) * 2008-05-16 2008-09-17 亿阳信通股份有限公司 一种性能指标值正常波动范围的动态确定方法及其装置
CN102355381A (zh) * 2011-08-18 2012-02-15 网宿科技股份有限公司 自适应的差分自回归移动平均模型的流量预测方法和系统
US9900244B2 (en) * 2013-02-13 2018-02-20 Amazon Technologies, Inc. Predicting route utilization and non-redundant failures in network environments
CN104156791A (zh) * 2014-08-29 2014-11-19 哈尔滨工业大学 基于ls-svm的概率集成学习锂离子电池剩余寿命预测方法
CN107943809A (zh) * 2016-10-13 2018-04-20 阿里巴巴集团控股有限公司 数据质量监控方法、装置及大数据计算平台
CN107729671A (zh) * 2017-10-25 2018-02-23 西安科技大学 一种基于支持向量机的矿井巷道摩擦阻力系数预测方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783773A (zh) * 2018-12-14 2019-05-21 微梦创科网络科技(中国)有限公司 一种确定网站接口非正常流量的方法及装置
CN109783773B (zh) * 2018-12-14 2022-11-11 微梦创科网络科技(中国)有限公司 一种确定网站接口非正常流量的方法及装置

Also Published As

Publication number Publication date
CN108920310B (zh) 2022-05-03

Similar Documents

Publication Publication Date Title
CN111984503B (zh) 一种监控指标数据异常数据识别的方法及装置
CN111143102B (zh) 异常数据检测方法、装置、存储介质及电子设备
US7620533B2 (en) Method and system for detecting change in data streams
CN110086649A (zh) 异常流量的检测方法、装置、计算机设备及存储介质
CN110874674B (zh) 一种异常检测方法、装置及设备
CN105376255A (zh) 一种基于K-means聚类的Android平台入侵检测方法
US20100082295A1 (en) Method and System of Wind Turbine Condition Monitoring
CN108509323A (zh) 基于日志分析的业务处理方法、装置及计算机设备
CN103123602A (zh) 基于java的异常报警监控方法及其装置
US11556445B2 (en) Mechanism for monitoring and alerts of computer systems applications
CN110826767B (zh) 一种基于排放源监测数据的空气污染追溯方法和装置
CN113988565A (zh) 一种建筑施工质量安全在线风险管理方法及系统
CN110836952A (zh) 利用排放源监测数据调整排放源清单的空气质量预报方法和装置
CN108920310A (zh) 接口数据的异常值检测方法及系统
CN108803545A (zh) 多参数联合分析报警方法及系统
CN109240243A (zh) 一种产量监控方法、装置、系统、计算机设备和存储介质
CN115983114A (zh) 一种窑炉温度预测方法、系统、设备及介质
CN111879522B (zh) 基于时序概率的汽轮机运行监测和故障判别方法及系统
CN105471938A (zh) 服务器负载管理方法及装置
CN115880101B (zh) 一种基于大数据的水利数据管理系统
CN111817896B (zh) 一种接口监控方法及装置
CN117149746A (zh) 基于云原生和存算分离的数据仓库管理系统
CN112532615A (zh) 一种智能电网蠕虫检测方法
CN116344012A (zh) 一种基于诊疗日志的医疗管理系统
CN115129011A (zh) 基于边缘计算的工业资源管理方法

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
GR01 Patent grant
GR01 Patent grant