一种交易异常检测方法及装置与流程

文档序号:23341843发布日期:2020-12-18 16:39阅读:117来源:国知局
一种交易异常检测方法及装置与流程

本发明涉及大数据技术领域,具体涉及一种交易异常检测方法及装置。



背景技术:

目前,金融行业的交易中,会出现交易异常的情况,需要发现交易异常并找出导致交易异常的原因进行解决。

现有技术中,金融行业的交易异常检测,一种方法是通过运维人员对生产上的交易进行巡检,以发现交易异常;另一种方法是设定阈值,比如某类型的交易失败率超过5%,或者某类型交易超过同比或者环比交易量的设定倍数则判定交易异常。但随着银行领域业务范围越来越广,类似应用程序接口(applicationprogramminginterface,简称api)开放平台这种中间平台支持业务系统,经常会有到亿级别的交易量,通过运维人员去巡检交易异常已然不现实。当交易全是技术成功和业务失败时,依靠阈值无法探测这类异常交易,且设置阈值可能会存在误报的情况。



技术实现要素:

针对现有技术中的问题,本发明实施例提供一种交易异常检测方法及装置,能够至少部分地解决现有技术中存在的问题。

一方面,本发明提出一种交易异常检测方法,包括:

获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;

对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;

根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;

对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;

根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常。

另一方面,本发明提供一种交易异常检测装置,包括:

统计单元,用于获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;

归一化处理单元,用于对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;

预测单元,用于根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;

反归一化处理单元,用于对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;

确定单元,用于根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常。

再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述交易异常检测方法的步骤。

又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述交易异常检测方法的步骤。

本发明实施例提供的交易异常的检测方法及装置,获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数,对交易参数进行归一化处理,获得当前时间段的交易特征数据,根据当前时间段的交易特征数据以及应用程序接口的预测模型,获得下一时间段的交易特征数据,对下一时间段的交易特征数据进行反归一化处理,获得下一时间段的预测交易参数,根据下一时间段的预测交易参数和对应的实际交易参数,确定应用程序接口是否存在交易异常,能够基于预测模型,快速且准确地进行应用程序接口的交易异常检测,提高了交易异常检测的效率和准确性。

附图说明

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

图1是本发明一实施例提供的交易异常检测方法的流程示意图。

图2是本发明另一实施例提供的交易异常检测方法的流程示意图。

图3是本发明又一实施例提供的交易异常检测方法的流程示意图。

图4是本发明再一实施例提供的交易异常检测方法的流程示意图。

图5是本发明一实施例提供的交易异常检测装置的结构示意图。

图6是本发明另一实施例提供的交易异常检测装置的结构示意图。

图7是本发明又一实施例提供的交易异常检测装置的结构示意图。

图8是本发明再一实施例提供的交易异常检测装置的结构示意图。

图9是本发明一实施例提供的电子设备的实体结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行说明。在目前的金融行业中国,api接口的交易是否正常都会随着时间特征明显变化、并且与交易量、交易成功率、交易耗时、超时交易率等交易参数都有极大的相关性,因此,本发明实施例提供一种交易异常检测方法,考虑交易随着时间变化的特征,能够快速准确地检测出api接口的交易异常。

图1是本发明一实施例提供的交易异常检测方法的流程示意图,如图1所示,本发明实施例提供的交易异常检测方法,包括:

s101、获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;

具体地,服务器可以通过消息中间件获取交易日志,再从交易日志中获取应用程序接口的交易数据,然后根据api的交易数据统计获得当前时间段对应的交易参数,所述交易参数包括但不限于单位时间内的交易次数(tps)、交易成功率、交易平均耗时和超时交易率,根据实际需要进行设置,本发明实施例不做限定。其中,时间段可以是分钟级别,比如1分钟、5分钟,根据实际需要进行设置,本发明实施例不做限定。本发明实施例提供的交易异常检测方法的执行主体包括但不限于服务器。

例如,交易发起方可以通过网关调用api进行交易,所述网关会对交易进行记录,产生交易日志,然后将交易日志发送到消息中间件,所述服务器从消息中间件获取所述交易日志,然后从所述交易日志中获取当前1分钟时间段之前1分钟时间段的交易数据,计算获得当前时间段对应的交易参数。其中,所述网关可以通过日志传输工具filebeat将交易日志发送到消息中间件kafka。所述交易日志可以包括交易服务器、交易时间、交易耗时、交易唯一标识、交易返回码等信息,根据实际需要进行设置,本发明实施例不做限定。

s102、对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;

具体地,所述服务器在获得所述交易参数之后,可以对所述交易参数进行归一化处理,将所述交易参数转换成0-1之间的数据,获得所述当前时间段的交易特征数据。

例如,可以采用线性归一化,使所述交易参数映射到[0,1]之间,线性归一化的转换函数如下:

其中,y为x的归一化处理结果,y大于等于0且小于等于1,x为所述交易参数,min(x)为所述交易参数的最小值,max(x)为所述交易参数的最大值,所述交易参数的最小值和最大值可以设置为常数,根据经验进行设置,本发明实施例不做限定。

s103、根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;

具体地,所述服务器在获得所述当前时间段的交易特征数据之后,将所述当前时间段的交易特征数据输入到所述应用程序接口的预测模型中,经过所述预测模型的处理,可以输出下一时间段的交易特征数据。其中,所述预测模型是基于交易特征训练数据以及状态标签训练获得的,所述状态标签是预设的,包括正常和异常两种情况。

s104、对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;

具体地,所述服务器在获得所述下一时间段的交易特征数据之后,对所述下一时间段的交易特征数据进行反归一化处理,可以获得所述下一时间段的预测交易参数。

例如,由公式(1)可以获得反线性归一化的转换函数如下:

x=min(x)+y(max(x)-min(x))(2)

将所述下一时间段的交易特征数据带入到y中,根据公式(2)能够计算出所述下一时间段的预测交易参数。

s105、根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在异常。

具体地,api的交易数据是实时变化的,所述服务器在获得所述下一时间段的预测交易参数之后,可以根据api的交易数据统计获得所述下一时间段的实际交易参数,然后根据所述下一时间段的预测交易参数和对应的实际交易参数,确定api是否存在异常。如果api存在异常,那么可以进行预警,将预警信息通过短信、邮件等方式推送到运维以及相关开发人员,以便及时解决导致api交易异常的问题。

例如,所述服务器可以计算所述下一时间段的预测交易参数和对应的实际交易参数的差值的绝对值,然后将上述差值的绝对值与对应报警阈值进行比较,如果存在大于对应的报警阈值的差值的绝对值,那么确定api存在交易异常,如果不存在大于对应的报警阈值的差值的绝对值,那么确定所述应用程序接口不存在交易异常。其中,所述报警阈值可以根据实际经验进行设置,本发明实施例不做限定。

本发明实施例提供的交易异常的检测方法,获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数,对交易参数进行归一化处理,获得当前时间段的交易特征数据,根据当前时间段的交易特征数据以及应用程序接口的预测模型,获得下一时间段的交易特征数据,对下一时间段的交易特征数据进行反归一化处理,获得下一时间段的预测交易参数,根据下一时间段的预测交易参数和对应的实际交易参数,确定应用程序接口是否存在交易异常,能够基于预测模型,快速且准确地进行应用程序接口的交易异常检测,提高了交易异常检测的效率和准确性。特别是对于交易数据随着时间变化而变化的交易、可以快速精准地检测出应用程序接口的交易异常。

图2是本发明另一实施例提供的交易检测方法的流程示意图,如图2所示,在上述各实施例的基础上,进一步地,基于交易特征训练数据以及状态标签训练获得所述预测模型的步骤包括:

s201、获取所述交易特征训练数据以及对应的状态标签;

具体地,可以从交易日志中获取所述应用程序接口的历史交易数据,然后从所述历史交易数据中统计获得预设数量个历史时间段的交易参数,再对各个历史时间段的交易参数进行归一化处理,获得各个历史时间段的交易特征数据,各个历史时间段按照时间先后的顺序依次排列,将按照时间先后排序的各个历史时间段的交易特征数据作为所述交易特征训练数据,即所述交易特征训练数据是时间序列的数据。所述服务器可以获取所述交易特征训练数据。可以通过人工判断各个历史时间段的历史交易参数是否存在异常,如果存在异常,将对应的历史时间段的历史交易参数所对应的状态标签设置为异常,如果不存在异常,将对应的历史时间段的历史交易参数所对应的状态标签设置为正常,可以获得各个历史时间段的交易特征数据对应的状态标签。所述服务器可以获得各个历史时间段的交易特征数据对应的状态标签,作为所述交易特征训练数据对应的状态标签。其中,所述预设数量根据实际需要进行设置,本发明实施例不做限定。

s202、根据初始模型、所述交易特征训练数据以及对应的状态标签,训练获得所述预测模型。

具体地,所述服务器可以将所述交易特征训练数据划分为训练集和测试集,将所述训练集以及对应的状态标签输入到所述初始模型中,对所述初始模型进行模型训练,可以获得待确认预测模型。然后将所述测试集输入到所述待确认预测模型中,输出所述测试集中每个历史时间段的交易特征数据对应的预测结果,所述预测结果为正常或者异常,将所述测试集中各个历史时间段的交易特征数据对应的状态标签与对应的预测结果进行比较,统计其中状态标签与预测结果相同的数量和状态标签与预测结果不相同的数量,从而可以计算出所述待确认预测模型的预测准确率,如果所述预测准确率大于阈值,那么将所述待确认预测模型作为所述预测模型。否则,重新对所述初始模型进行训练。其中,所述初始模型可以采用长短期记忆网络(longshort-termmemory,简称lstm)模型。其中,所述阈值根据实际经验进行设置,本发明实施例不做限定。

例如,初始模型采用lstm模型,在进行训练之前,需要将训练集的数据格式改造成lstm模型的输入格式,将所述训练集中的数据作为输入变量,所述训练集对应的状态标签作为输出变量,输入变量需要设定样本、步骤、特征,即[samples,timesteps,features],lstm模型的训练是一批一批训练的,样本设定了训练的批次数,步骤设定了每个批次采用的训练样本数量,特征设定了每个训练样本包括的特征数量。改造完成的训练集以及对应的状态标签可以输入到lstm模型中进行模型训练。

图3是本发明又一实施例提供的交易异常检测方法的流程示意图,如图3所示,在上述各实施例的基础上,进一步地,所述获取所述交易特征训练数据包括:

s2011、获取所述应用程序接口的历史交易数据;

具体地,服务器可以通过消息中间件获取交易日志,再从交易日志中获取api的历史交易数据。

s2012、对所述历史交易数据进行数据清洗,获得中间数据;

具体地,由于交易日志可能会存在数据缺失等情况,所述服务器可以对所述历史交易数据进行数据清洗,比如删除空值,根据需要统计的交易参数精简所述历史交易数据,去除与所述交易参数无关的数据,可以获得中间数据。

s2013、根据设定时间段对所述中间数据进行统计计算,获得各个历史时间段的交易参数;

具体地,所述服务器在获得所述中间数据之后,按照设定时间段将所述中间数据划分为各个历史时间段的历史交易数据,分别对每个历史时间段的历史交易数据进行统计计算,获得每个历史时间段的交易参数。其中,每个历史时间段的时间长度与所述设定时间段相同,所述设定时间段可以是分钟维度的,比如1分钟、5分钟,根据实际需要进行设置,本发明实施例不做限定。基于分钟维度计算得到的交易参数获得交易特征训练数据,交易特征训练数据进行模型训练更容易得到按照分钟交易的特征,并且获得的预测模型有利于及时检测出api的交易异常,并且时间段在分钟级,能更快定位问题。

例如,可以通过python脚本加载中间数据,并将交易发生时间信息解析为pandasdataframe索引,并保存成文件,以便于后续的统计计算。

s2014、对各个历史时间段的交易参数进行归一化处理并按照时间先后进行排列,获得所述交易特征训练数据。

具体地,所述服务器在获得各个历史时间段的交易参数之后,分别对每个历史时间段的交易参数进行归一化处理,获得每个历史时间段的交易特征数据,然后将各个历史时间段的交易特征数据按照时间先后进行排列,成为时间序列的数据,从而获得所述交易特征训练数据。其中,对每个历史时间段的交易参数进行归一化处理的具体过程与对当前时间段对应的交易参数的归一化处理过程类似,此处不进行赘述。

图4是本发明再一实施例提供的交易异常检测方法的流程示意图,如图4所示,在上述各实施例的基础上,进一步地,所述根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常包括:

s1051、计算所述下一时间段的预测交易参数和对应的实际交易参数的差值的绝对值;

具体地,所述服务器获得所述下一时间段的预测交易参数和对应的实际交易参数之后,可以计算所述下一时间段的预测交易参数和对应的实际交易参数的差值的绝对值。可理解的是,所述差值的绝对值可以有一个、两个或者大于两个。

例如,所述预测参数包括预测交易成功率和预测交易耗时,对应的实际交易参数包括实际交易成功率和实际交易耗时,所述服务器计算所述预测交易成功率与所述实际交易成功率的差值的绝对值,以及所述预测交易耗时与所述实际交易耗时的差值的绝对值。

s1052、根据每个差值的绝对值与对应的报警阈值,确定所述应用程序接口是否存在交易异常。

具体地,所述服务器在获得每个差值的绝对值之后,将每个差值的绝对值与对应的报警阈值进行比较,如果存在一个差值的绝对值大于等于对应的报警阈值,那么所述api存在交易异常,如果所有差值的绝对值都小于对应的报警阈值匹配,那么所述api不存在交易异常。其中,所述报警预设根据实际情况进行设置,本发明实施例不做限定。

例如,所述服务器获得所述预测交易成功率与所述实际交易成功率的差值的绝对值a和所述预测交易耗时与所述实际交易耗时的差值的绝对值b,然后将差值的绝对值a与对应的报警阈值a进行比较,并将差值的绝对值b与对应的报警阈值b进行比较,如果差值的绝对值a大于等于报警阈值a,或者差值的绝对值b大于等于对应的报警阈值b,那么所述api存在交易异常;如果差值的绝对值a小于报警阈值a,并且差值的绝对值b小于对应的报警阈值b,那么所述api不存在交易异常。

其中,当前的报警阈值可以根据前一天的对应的差值的绝对值的平均值、最大值和最小值进行确定。比如,要确定当天预测交易耗时与实际交易耗时的差值的绝对值对应的报警阈值,可以获取前一天各个时间段的预测交易耗时与实际交易耗时的差值的绝对值,计算出前一天各个时间段的预测交易耗时与实际交易耗时的差值的绝对值的平均值davg,获取前一天各个时间段的预测交易耗时与实际交易耗时的差值的绝对值的最大值dmax和dmin,然后计算davg与dmax的差值的绝对值d1,以及davg与dmin的差值的绝对值d2,再比较d1和d2的大小,取d1和d2两个值中的较大值作为当天预测交易耗时与实际交易耗时的差值的绝对值对应的报警阈值。

在上述各实施例的基础上,进一步地,所述交易参数包括单位时间内的交易次数、交易成功率、交易平均耗时和超时交易率。

具体地,所述交易参数可以包括单位时间内的交易次数、交易成功率、交易平均耗时和超时交易率。应用程序接口的每个时间段的单位时间内的交易次数,通过计算每个时间段对应的交易总次数除以时间段的时间长度获得;应用程序接口的每个时间段的交易成功率,通过计算每个时间段对应的交易成功次数除以交易总次数获得;应用程序接口的每个时间段的交易平均耗时,通过计算每个时间段对应的各个已完成交易的交易耗时的平均值获得;应用程序接口的每个时间段的超时交易率,通过计算每个时间段对应的交易超时的交易次数除以交易总次数获得。

图5是本发明一实施例提供的交易异常检测装置的结构示意图,如图5所示,本发明实施例提供的交易异常检测装置包括统计单元501、归一化处理单元502、预测单元503、反归一化处理单元504和确定单元505,其中:

统计单元501用于获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;归一化处理单元502用于对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;预测单元503用于根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;反归一化处理单元504用于对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;确定单元505用于根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常。

具体地,统计单元501可以通过消息中间件获取交易日志,再从交易日志中获取应用程序接口的交易数据,然后根据api的交易数据统计获得当前时间段对应的交易参数,所述交易参数包括但不限于单位时间内的交易次数(tps)、交易成功率、交易平均耗时和超时交易率,根据实际需要进行设置,本发明实施例不做限定。其中,时间段可以是分钟级别,比如1分钟、5分钟,根据实际需要进行设置,本发明实施例不做限定。

在获得所述交易参数之后,归一化处理单元502可以对所述交易参数进行归一化处理,将所述交易参数转换成0-1之间的数据,获得所述当前时间段的交易特征数据。

在获得所述当前时间段的交易特征数据之后,预测单元503将所述当前时间段的交易特征数据输入到所述应用程序接口的预测模型中,经过所述预测模型的处理,可以输出下一时间段的交易特征数据。其中,所述预测模型是基于交易特征训练数据以及状态标签训练获得的,所述状态标签是预设的,包括正常和异常两种情况。

在获得所述下一时间段的交易特征数据之后,反归一化处理单元504对所述下一时间段的交易特征数据进行反归一化处理,可以获得所述下一时间段的预测交易参数。

api的交易数据是实时变化的,在获得所述下一时间段的预测交易参数之后,确定单元505可以根据api的交易数据统计获得所述下一时间段的实际交易参数,然后根据所述下一时间段的预测交易参数和对应的实际交易参数,确定api是否存在异常。如果api存在异常,那么可以进行预警,将预警信息通过短信、邮件等方式推送到运维以及相关开发人员,以便及时解决导致api交易异常的问题。

本发明实施例提供的交易异常的检测装置,获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数,对交易参数进行归一化处理,获得当前时间段的交易特征数据,根据当前时间段的交易特征数据以及应用程序接口的预测模型,获得下一时间段的交易特征数据,对下一时间段的交易特征数据进行反归一化处理,获得下一时间段的预测交易参数,根据下一时间段的预测交易参数和对应的实际交易参数,确定应用程序接口是否存在交易异常,能够基于预测模型,快速且准确地进行应用程序接口的交易异常检测,提高了交易异常检测的效率和准确性。特别是对于交易数据随着时间变化而变化的交易、可以快速精准地检测出应用程序接口的交易异常。

图6是本发明另一实施例提供的交易异常检测装置的结构示意图,如图6所示,在上述各实施例的基础上,进一步地,本发明实施例提供的交易异常检测装置还包括获取单元506和训练单元507,其中:

获取单元506用于获取所述交易特征训练数据以及对应的状态标签;训练单元507用于根据初始模型、所述交易特征训练数据以及对应的状态标签,训练获得所述预测模型。

具体地,可以从交易日志中获取所述应用程序接口的历史交易数据,然后从所述历史交易数据中统计获得预设数量个历史时间段的交易参数,再对各个历史时间段的交易参数进行归一化处理,获得各个历史时间段的交易特征数据,各个历史时间段按照时间先后的顺序依次排列,将按照时间先后排序的各个历史时间段的交易特征数据作为所述交易特征训练数据,即所述交易特征训练数据是时间序列的数据。获取单元506可以获取所述交易特征训练数据。可以通过人工判断各个历史时间段的历史交易参数是否存在异常,如果存在异常,将对应的历史时间段的历史交易参数所对应的状态标签设置为异常,如果不存在异常,将对应的历史时间段的历史交易参数所对应的状态标签设置为正常,可以获得各个历史时间段的交易特征数据对应的状态标签。获取单元506可以获得各个历史时间段的交易特征数据对应的状态标签,作为所述交易特征训练数据对应的状态标签。其中,所述预设数量根据实际需要进行设置,本发明实施例不做限定。

训练单元507器可以将所述交易特征训练数据划分为训练集和测试集,将所述训练集以及对应的状态标签输入到所述初始模型中,对所述初始模型进行模型训练,可以获得待确认预测模型。然后将所述测试集输入到所述待确认预测模型中,输出所述测试集中每个历史时间段的交易特征数据对应的预测结果,所述预测结果为正常或者异常,将所述测试集中各个历史时间段的交易特征数据对应的状态标签与对应的预测结果进行比较,统计其中状态标签与预测结果相同的数量和状态标签与预测结果不相同的数量,从而可以计算出所述待确认预测模型的预测准确率,如果所述预测准确率大于阈值,那么将所述待确认预测模型作为所述预测模型。否则,重新对所述初始模型进行训练。其中,所述初始模型可以采用长短期记忆网络(longshort-termmemory,简称lstm)模型。其中,所述阈值根据实际经验进行设置,本发明实施例不做限定。

图7是本发明又一实施例提供的交易异常检测装置的结构示意图,如图7所示,在上述各实施例的基础上,进一步地,获取单元506包括获取子单元5061、数据清洗子单元5062、统计子单元5063和处理子单元5064,其中:

获取子单元5061用于获取所述应用程序接口的历史交易数据;数据清洗子单元5062用于对所述历史交易数据进行数据清洗,获得中间数据;统计子单元5063用于根据设定时间段对所述中间数据进行统计计算,获得各个历史时间段的交易参数;处理子单元5064用于对各个历史时间段的交易参数进行归一化处理并按照时间先后进行排列,获得所述交易特征训练数据。

具体地,获取子单元5061可以通过消息中间件获取交易日志,再从交易日志中获取api的历史交易数据。

由于交易日志可能会存在数据缺失等情况,数据清洗子单元5062可以对所述历史交易数据进行数据清洗,比如删除空值,根据需要统计的交易参数精简所述历史交易数据,去除与所述交易参数无关的数据,可以获得中间数据。

在获得所述中间数据之后,统计子单元5063按照设定时间段将所述中间数据划分为各个历史时间段的历史交易数据,分别对每个历史时间段的历史交易数据进行统计计算,获得每个历史时间段的交易参数。其中,每个历史时间段的时间长度与所述设定时间段相同,所述设定时间段可以是分钟维度的,比如1分钟、5分钟,根据实际需要进行设置,本发明实施例不做限定。基于分钟维度计算得到的交易参数获得交易特征训练数据,交易特征训练数据进行模型训练更容易得到按照分钟交易的特征,并且获得的预测模型有利于及时检测出api的交易异常,并且时间段在分钟级,能更快定位问题。

在获得各个历史时间段的交易参数之后,处理子单元5064分别对每个历史时间段的交易参数进行归一化处理,获得每个历史时间段的交易特征数据,然后将各个历史时间段的交易特征数据按照时间先后进行排列,成为时间序列的数据,从而获得所述交易特征训练数据。其中,对每个历史时间段的交易参数进行归一化处理的具体过程与对当前时间段对应的交易参数的归一化处理过程类似,此处不进行赘述。

图8是本发明再一实施例提供的交易异常检测装置的结构示意图,如图8所示,在上述各实施例的基础上,进一步地,确定单元505包括计算子单元5051和确定子单元5052,其中:

计算子单元5051用于计算所述下一时间段的预测交易参数和对应的实际交易参数的差值的绝对值;确定子单元5052用于根据每个差值的绝对值与对应的报警阈值,确定所述应用程序接口是否存在交易异常。

具体地,获得所述下一时间段的预测交易参数和对应的实际交易参数之后,计算子单元5051可以计算所述下一时间段的预测交易参数和对应的实际交易参数的差值的绝对值。可理解的是,所述差值的绝对值可以有一个、两个或者大于两个。

在获得每个差值的绝对值之后,确定子单元5052将每个差值的绝对值与对应的报警阈值进行比较,如果存在一个差值的绝对值大于等于对应的报警阈值,那么所述api存在交易异常,如果所有差值的绝对值都小于对应的报警阈值匹配,那么所述api不存在交易异常。其中,所述报警预设根据实际情况进行设置,本发明实施例不做限定。

在上述各实施例的基础上,进一步地,所述交易参数包括单位时间内的交易次数、交易成功率、交易平均耗时和超时交易率。

具体地,所述交易参数可以包括单位时间内的交易次数、交易成功率、交易平均耗时和超时交易率。应用程序接口的每个时间段的单位时间内的交易次数,通过计算每个时间段对应的交易总次数除以时间段的时间长度获得;应用程序接口的每个时间段的交易成功率,通过计算每个时间段对应的交易成功次数除以交易总次数获得;应用程序接口的每个时间段的交易平均耗时,通过计算每个时间段对应的各个已完成交易的交易耗时的平均值获得;应用程序接口的每个时间段的超时交易率,通过计算每个时间段对应的交易超时的交易次数除以交易总次数获得。

本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。

图9是本发明一实施例提供的电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)901、通信接口(communicationsinterface)902、存储器(memory)903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信。处理器901可以调用存储器903中的逻辑指令,以执行如下方法:获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常。

此外,上述的存储器903中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常。

本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:获取应用程序接口的交易数据,并统计获得当前时间段对应的交易参数;对所述交易参数进行归一化处理,获得所述当前时间段的交易特征数据;根据所述当前时间段的交易特征数据以及所述应用程序接口的预测模型,获得下一时间段的交易特征数据;其中,所述预测模型是基于交易特征训练数据以及对应的状态标签训练获得的;对所述下一时间段的交易特征数据进行反归一化处理,获得所述下一时间段的预测交易参数;根据所述下一时间段的预测交易参数和对应的实际交易参数,确定所述应用程序接口是否存在交易异常。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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