网络数据检测方法、装置、计算机设备和存储介质与流程

文档序号:14993437发布日期:2018-07-20 22:59阅读:153来源:国知局

本申请涉及计算机技术领域,特别是涉及一种网络数据检测方法、装置、计算机设备和存储介质。



背景技术:

随着计算机技术的发展,出现了各种各样的营销活动,但是为了获取到该些营销活动中的奖励,出现了羊毛党,其中,羊毛党是指活跃在各互联网金融平台上,搜集各大电子商城、银行、实体店等各渠道的优惠促销活动、免费业务之类的信息,以此赚取小额奖励的投资者。

为了识别出该些羊毛党,传统上是基于事前规则进行的,即通过事前规则判断对应的网络数据是否为作弊数据来判断该网络数据对应的用户是否为羊毛党。然而基于规则的反作弊系统需要事先制定规则,并根据该制定的规则对网络数据进行判断,并根据羊毛党的特征手动调整规则,但是这种判断方式中,由于手动调整的规则极易出现错误,因此通过手动调整规则极易造成羊毛党的判断错误。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高作弊数据判断准确率的网络数据检测方法、装置、计算机设备和存储介质。

一种网络数据检测方法,所述方法包括:

截取待检测网络数据,并将所截取的待检测网络数据存放至数据队列中;

将存储在所述数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果;

当所述初始判断结果表示所述待检测网络数据为第一作弊数据时,则将所述第一作弊数据与规则库中的第二作弊数据进行匹配;

当所述第一作弊数据与所述规则库中的第二作弊数据匹配成功时,则将所述待检测网络数据标记为作弊数据。

在其中一个实施例中,所述方法还包括:

获取已经标记的历史网络数据,并提取所述历史网络数据的特征数据;

将标记为作弊数据的所述历史网络数据添加至黑名单库,将标记为正常数据的所述历史网络数据添加至白名单库;

根据所述黑名单库中的历史网络数据的特征数据以及所述白名单库中的历史网络数据的特征数据建立机器学习模型。

在其中一个实施例中,所述提取所述历史网络数据的特征数据的步骤,包括:

对所述历史网络数据进行分词处理;

根据当前分词在当前历史网络数据中的词频,并根据包含所述当前分词的历史网络数据的条数以及所述历史网络数据的总条数获取到所述当前分词的逆文档频率;

根据所述当前分词的词频和逆文档频率计算所述当前分词的词权重;

获取词权重最大的当前分词作为所述当前历史网络数据的特征数据。

在其中一个实施例中,所述截取待检测网络数据的步骤之后,还包括:

获取所述待检测网络数据对应的终端的网络地址;

统计截取到的所述网络地址对应的终端发送的所述待检测网络数据的频率;

当所述频率大于预设频率时,则将所述待检测网络数据添加到所述黑名单库中。

在其中一个实施例中,所述方法还包括:

当所述初始判断结果表示所述待检测网络数据不为第一作弊数据时,则将所述待检测网络数据标记为正常数据;

将所述正常数据添加到所述白名单库中。

在其中一个实施例中,所述方法还包括:

按照所述黑名单库中的历史网络数据的顺序获取所述黑名单库中相同的历史网络数据;

按照所述白名单库中的历史网络数据的顺序获取所述白名单库中相同的历史网络数据;

对所述相同的历史网络数据进行去重处理。

在其中一个实施例中,所述根据所述黑名单库中的历史网络数据的特征数据以及所述白名单库中的历史网络数据的特征数据建立机器学习模型的步骤之后,还包括:

将预设正样本和预设负样本输入至所述机器学习模型中得到测试结果;

将所述测试结果与预期结果进行比较得到比较结果;

根据所述比较结果计算所述机器学习模型的评分;

当所述评分小于预设分数时,则通过所述预设正样本和预设负样本对所述机器学习模型进行修正;

当所述评分大于等于所述预设分数时,则继续将存储在所述数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。

一种网络数据检测装置,所述装置包括:

截取模块,用于截取待检测网络数据,并将所截取的待检测网络数据存放至数据队列中;

机器学习模型判断模块,用于将存储在所述数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果;

规则判断模块,用于当所述初始判断结果表示所述待检测网络数据为第一作弊数据时,则将所述第一作弊数据与规则库中的第二作弊数据进行匹配;

标记模块,用于当所述第一作弊数据与所述规则库中的第二作弊数据匹配成功时,则将所述待检测网络数据标记为作弊数据。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。

上述网络数据检测方法、装置、计算机设备和存储介质,首先通过机器学习模型对待检测网络数据进行初步判断,然后再通过规则库进行判断,两者相互查漏补缺,可以提高判断的准确率,且机器学习模型的处理速度比较快,可以预先过滤掉大部分无效数据,再传输给规则库,可以提高判断的效率。且机器学习模型的可以根据历史网络数据产生大量的新的规则,不需要人工添加,减少人力投入。

附图说明

图1为一个实施例中网络数据检测方法的应用场景图;

图2为一实施例中的检测平台的架构图;

图3为一个实施例中网络数据检测方法的流程示意图;

图4为一个实施例中网络数据检测装置的结构框图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的网络数据检测方法,可以应用于如图1所示的应用环境中。其中,终端通过网络与服务器通过网络进行通信。检测平台可以截取到终端与服务器通信的网络数据,并对该网络数据进行检测。例如,在检测平台截取到待检测网络数据后,则将所截取的待检测网路数据存放在数据队列中,然后依次通过机器学习模型和规则库中的规则对数据队列中的待检测网络数据进行检测,在机器学习模型和规则库中的规则均判定该待检测网络数据为作弊数据时,则将该待检测网络数据标记为作弊数据。终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器即为网络服务器,其可以用独立的服务器或者是多个服务器组成的服务器集群来实现。检测平台也可以是以服务器或者多个服务器组成的服务器集群的形式实现。

参见图2,图2为一实施例中检测平台的架构图,其中包括h5侦测引擎、android侦测引擎、ios侦测引擎、数据队列模块、机器学习模型模块、规则管理模块、风控引擎、活动管理模块、决策引擎模块、日志管理模块、数据监控平台、黑名单库和白名单库。其中,h5侦测引擎、android侦测引擎、ios侦测引擎用于截取待检测网络数据,并将所截取到的待检测网络数据放在数据队列中,机器学习模型模块用于对所截取到的待检测网络数据进行判断得到初始判断结果,当初始判断结果为作弊数据时,则继续通过规则管理模块调用风控引擎中的规则对该作弊数据进行进一步的判断。其中风控引擎中存储有对应的规则,活动管理模块中存储有对应的活动,且建立活动与规则之间的关系,决策引擎模块即将判断结果输出至数据监控平台,数据监控平台可以查看系统中的数据并对活动等进行管理。日志管理模块中存储有每次的判断记录,黑名单库中存储有作弊数据,白名单库中存储有正常数据等。

在一个实施例中,如图3所示,提供了一种网络数据检测方法,以该方法应用于图1中的检测平台为例进行说明,包括以下步骤:

s302:截取待检测网络数据,并将所截取的待检测网络数据存放至数据队列中。

具体地,该检测平台可以通过设置代理服务器的方式截取待检测网络数据,例如设置代理服务器,并在终端预先设置调用程序,当终端与服务器发生数据交互时,则代理服务器可以通过该调用程序获取到终端所发出的待检测网络数据,并将该待检测网络数据发送给检测平台,从而检测平台在接收到该待检测网络数据后将该待检测网络数据存储至数据队列中,从而保证后续检测平台可以从数据队列中获取数据进行处理。之所以设置数据队列预先存储是为了在大量数据的情况出现时,可以防止检测平台故障,检测平台依然可以根据当前处理情况获取到对应数量的待检测网络数据进行处理,从而保证检测平台有条不紊地处理待检测网络数据。

s304:将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。

具体地,机器学习模型是预先设置的模型,该模型可以对待检测网络数据进行处理以判断该待检测网络数据是否为作弊数据,该机器学习模型可以是根据历史网络数据学习得到的。

机器学习模型可以根据当前在处理的待检测网络数据的数量从数据队列中获取待检测网络数据,还可以是分批从数据队列中获取到待检测网络数据,即在当前在处理的待检测网络数据处理完成后,才会从数据队列中获取到下一次要处理的待检测网络数据。其中机器学习模型可以同时对多个待检测网络数据进行处理,例如通过多线程的方式实现等,以提高数据处理的速度。

s306:当初始判断结果表示待检测网络数据为第一作弊数据时,则将第一作弊数据与规则库中的第二作弊数据进行匹配。

具体地,当初始判断结果,即经过机器学习模型所得到的待检测网络数据为作弊数据时,则可以通过规则库进行进一步的判断,以保证机器学习模型的判断结果正确。当初始判断结果,即经过机器学习模型所得到的待检测网络数据为正常数据时,则不会对该待检测网络数据进行拦截等,以保证终端与服务器的正常通信,或者也可以将正常数据发送至规则库中进行二次判断,以防止机器学习模型将作弊数据判断为正常数据的情况的发生。

其中,规则库中存储有大量的用于判断待检测网络数据是否为作弊数据的数据规则,可以第一作弊数据与规则库中的规则中的数据进行匹配。

s308:当第一作弊数据与规则库中的第二作弊数据匹配成功时,则将待检测网络数据标记为作弊数据。

具体地,当第一作弊数据与规则库中的第二作弊数据匹配成功时,则说明该待检测网络数据为作弊数据,从而通过两者相互查漏补缺,可以提高判断的准确率,防止机器学习模型产生误判的情况。且当第一作弊数据与规则库中的第二作弊数据未匹配成功时,还可以将该第一作弊数据输出,以便于用户进行人工干预,对规则库进行调整等,例如当人工判断出该第一作弊数据确实为作弊数据时,则可以对规则库进行调整,增加相应的规则,实现规则库的扩充;当人工判断出该第一作弊数据不为作弊数据时,则可以通过该第一作弊数据对机器学习模型进行修正,以进一步提高机器学习模型的准确度。

其中,当检测平台截取到待检测网络数据后,需要判断该网络数据是否为羊毛党的终端发出的网络数据,即作弊数据,且为了在接收大量数据情况下检测平台能够正常运行,检测平台首先将待检测网络数据存放在数据队列中,然后通过机器学习模型对该待检测数据进行预判断得到初始判断结果,即先根据大数据智能模型(ai学习模型,即上述的机器学习模型)对该待检测数据进行初始判断,当该待检测网络数据为作弊数据时,则将该作弊数据再输入至规则库中进行检测,从而确保机器学习模型所作出的判断正确,其中通过机器学习模型首先对待检测网络数据进行判断,而不是首先通过规则库对待检测网络数据进行判断的原因是由于机器学习模型的判断速度更加快,从而可以提高待检测网络数据的检测速度,其由于大多数网络数据均是正常网络数据,而非羊毛党的终端发出的网络数据,因此通过机器学习模型可以大量地减少输入至规则库的待检测网络数据,从而相比于先通过规则库进行判断的方式效率更高。

其中通过机器学习模型的判断,可以是首先提取到待检测网络数据的特征数据,该特征数据的提取方式可以是根据下文中提取历史网络数据的特征数据的方式相同,即首先对该待检测网络数据进行分词处理,然后计算当前分词在当前待检测网络数据中的词频,并根据包含当前分词的待检测网络数据的条数以及待检测网络数据的总条数获取到当前分词的逆文档频率;根据当前分词的词频和逆文档频率计算当前分词的词权重;获取词权重最大的当前分词作为当前待检测网络数据的特征数据;并通过所提取到的特征数据与机器模型中的特征数据进行比对,从而可以判断出该待检测网络数据是否为作弊数据,即是否为羊毛党对应的终端发出的数据,如果是,则继续将该作弊数据输入至规则库,并通过规则库对该作弊数据进行进一步的判断,由于机器学习模型的处理速度比较快,可以预先过滤掉大部分无效数据,再传输给规则库,可以提高判断的效率。

上述网络数据检测方法,首先通过机器学习模型对待检测网络数据进行初步判断,然后再通过规则库进行判断,两者相互查漏补缺,可以提高判断的准确率,且机器学习模型的处理速度比较快,可以预先过滤掉大部分无效数据,再传输给规则库,可以提高判断的效率。且机器学习模型的可以根据历史网络数据产生大量的新的规则,不需要人工添加,减少人力投入。

在其中一个实施例中,机器学习模型的生成主要包括三个步骤:定义目标问题,收集数据和特征,训练模型。因此该方法还包括一机器学习模型生成步骤,该机器学习模型生成步骤可以包括:获取已经标记的历史网络数据,并提取历史网络数据的特征数据;将标记为作弊数据的历史网络数据添加至黑名单库,将标记为正常数据的历史网络数据添加至白名单库;根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型。

其中,特征数据可以是可以代表该网络数据的数据,即如果某个特征数据在某一网络数据中出现的频率大,并且在其他网络数据中很少出现,则认为此特征数据具有很好的类别区分能力,因此该特征数据可以代表该网络数据,可选地,该特征数据可以为某一个词或某一个短语。

具体地,检测平台可以获取到以前标记完成的历史网络数据,该些历史网络数据已经进行了二分类,即已经根据标记分为正常数据和作弊数据,可以将正常数据存放在白名单库中,将作弊数据存放在黑名单库中;并提取该些历史网络数据的特征数据,根据特征数据和历史网络数据的类型即可以通过贝叶斯算法来进行建模生成机器学习模型。

其中,在生成机器学习模型后,还可以包括一个交叉训练步骤,即可以获取到其他的历史网络数据作为测试集用来对该机器学习模型进行优化。例如,通过gridsearchcv模型对机器学习模型中的参数进行优化,即遍历机器学习模型中多种参数组合,通过交叉验证确定最佳效果参数。其中,参数可以包括测试集中的网络数据与机器学习模型中的特征数据的相似度等,选择相似度合适的参数作为机器学习模型的参数,例如当大于90%的相似度则认为待检测网络数据与机器学习模型中的特征数据相同,此时机器学习模型的判断准确率最好,则将该参数最为机器学习模型的参数。在对机器学习模型进行交叉训练后,将模型进行存储,以作为标准模型进行使用。

上述实施例中,通过对历史网络数据进行二分类和提取特征,并根据贝叶斯算来生成机器学习模型,使得该机器学习模型可靠,且在生成模型后对该机器学习模型进行交叉训练调参,进一步提高了机器学习模型的可靠性。

在其中一个实施例中,提取历史网络数据的特征数据的步骤可以包括:对历史网络数据进行分词处理;根据当前分词在当前历史网络数据中的词频,并根据包含当前分词的历史网络数据的条数以及历史网络数据的总条数获取到当前分词的逆文档频率;根据当前分词的词频和逆文档频率计算当前分词的词权重;获取词权重最大的当前分词作为当前历史网络数据的特征数据。

具体地,可以对历史网络数据进行分词处理,该分词处理可以是根据预设的分词逻辑进行处理或者是对历史网络数据进行随机分词,在此不做限制。如果根据预设的分词逻辑进行处理时,可以设置分词逻辑库,在分词处理之前,首先获取到该分词逻辑库,再将该分词逻辑库中的分词与历史网络数据进行匹配,匹配成功,则在该词前后加入分词符以进行分词。如果是对历史网络数据进行随机分词,则可以预先设定分词步长,例如可以将预设步长设定为3个字符、5个字符等等。具体的预设步长可以根据实际经验进行设置。检测平台根据预设步长按照预设切分顺序将历史网络数据依次切分成多个分词,预设切分顺序可以为由右至左的顺序,也可以为由左至右的顺序,也可以为其他顺序。

其中,当前分词在当前历史网络数据中的词频=当前分词在当前历史网络数据中出现的次数/当前历史网络数据的总分词数据;当前分词的逆文档频率=log(包含当前分词的历史网络数据的条数)/(历史网络数据的总条数+1);词权重=词频*逆文档频率。

例如,当某次活动的历史网络数据包含1000条,第一条历史网络数据共计10个单词,其中单引号有3个,from也有3个,1000条历史网络数据中有10条语句包含单引号,100条语句包含from,则当前分词“单引号”的词频=3/10=0.3,逆文档频率=log(10/(1000+1))=1.958,因此词权重=0.3*1.958=0.5874。当前分词“from”的词频=3/10=0.3,逆文档频率=log(100/(1000+1))=0.995,因此词权重=0.3*0.995=0.3318。具体可以参见下表:

其中,单引号的词权重=0.587>from的词权重=0.3318,因此单引号的词权重对比之下更大,比from更能代表一条历史网络数据是否是攻击语句,即作弊数据。

上述实施例中,特征数据可以是可以代表该网络数据的数据,即如果某个特征数据在某一网络数据中出现的频率大,并且在其他网络数据中很少出现,则认为此特征数据具有很好的类别区分能力,因此该特征数据可以代表该网络数据,因此通过计算分词的词权重可以准确地判断出该分词是否可以作为特征数据,为提高后续机器学习模型的准确性奠定基础。

在其中一个实施例中,由于羊毛党可能根据机器学习对数据进行一定的修改,因此使得机器学习模型不再适应当前羊毛党的判断,为了避免这种情况的发生,可以对生成机器学习模型的黑名单库和白名单库中的历史网络数据进行优化,以提高样本的准确性,从而可以设置时间段重新生成该机器学习模型,提高机器学习模型的适应性。其中对于黑名单库和白名单库中的历史网络数据的优化可以包括历史网络数据的增加以及历史网络数据的删除,其中对于历史网络数据的增加可以包括黑名单库中的历史网络数据的增加和白名单库中的实例网络数据的增加。对于历史网络数据的删除主要是针对数据去重和加密数据的删除。

具体地,对于黑名单库中历史网络数据的增加可以是在截取待检测网络数据的步骤之后,即在截取待检测网络数据的步骤之后还可以包括获取待检测网络数据对应的终端的网络地址;统计截取到的网络地址对应的终端发送的待检测网络数据的频率;当频率大于预设频率时,则将待检测网络数据添加到黑名单库中。即可以通过日志管理模块搜集动态网络地址黑名单,将动态网络地址所发送的网络数据添加到黑名单中,一般会认为检测平台持续截取到某一网络地址对应的网络数据,则认为该网络地址所对应的网络数据为作弊数据,因此可以统计截取到的网络地址对应的终端发送的待检测网络数据的频率,即在预设时间段内截取到该网络地址所发送的网络数据的次数,如果大于预设次数,则认为该网络数据为作弊数据,直接加入到黑名单库中即可。

具体地,对于黑名单库中历史网络数据的增加可以包括当初始判断结果表示待检测网络数据不为第一作弊数据时,则将待检测网络数据标记为正常数据;将正常数据添加到白名单库中。即可以定期获取到正常数据的原始网络数据添加到白名单库中,以更新白名单库,保证白名单库的时效性,其中白名单数据可以包括通过机器学习模型判断得到的正常数据,还可以包括人工干预后确定的为正常数据的第一作弊数据,这样可以增加正常数据的多样性,提高正常数据的覆盖范围,从而可以保证白名单库中的网络数据的覆盖面更全。在该实施例中,可以定期将标记为正常数据的网络数据添加到白名单库中,例如检测平台可以获取到日志管理模块中的日志数据,从其中选取标记为正常数据的新的网络数据,例如可以根据上次添加的日期,获取上次添加日期后的新的网络数据,将该新的网络数据添加至对应的白名单库中。

具体地,对于历史网络数据的删除包括去重和加密数据的删除,其中去重包括按照黑名单库中的历史网络数据的顺序获取黑名单库中相同的历史网络数据;按照白名单库中的历史网络数据的顺序获取白名单库中相同的历史网络数据;对相同的历史网络数据进行去重处理。例如可以通过黑名单库中的第一条历史网络数据依次去匹配黑名单库中的其他历史网络数据,当两条历史网络数据的相似度大于预设相似度时,则认为该两条历史网络数据相同,因此删除掉其中一条,仅保留其中一条历史网络数据即可。同样地对于白名单库,可以通过白名单库中的第一条历史网络数据依次去匹配白名单库中的其他历史网络数据,当两条历史网络数据的相似度大于预设相似度时,则认为该两条历史网络数据相同,因此删除掉其中一条,仅保留其中一条历史网络数据即可,这样可以尽可能地将样本的数量,提高数据处理的效率。对于加密数据的去重,可以是根据预设参数名称从白名单库和黑名单库中去重,例如可以将加密的参数的名称预先进行存储,当该历史网络数据中存在该参数的名称时,则直接从白名单库和黑名单库中删除该参数对应的网络数据。

上述实施例中,对白名单库和黑名单库中的历史网络数据进行清洗,可以通过机器学习大量的样本并产生新的样本,大大释放原有人工的维护量。

在其中一个实施例中,还包括一对机器学习模型进行评估的步骤,该步骤可以是在生成机器学习模型的步骤之后进行,即在根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型的步骤之后,还可以包括:将预设正样本和预设负样本输入至机器学习模型中得到测试结果;将测试结果与预期结果进行比较得到比较结果;根据比较结果计算机器学习模型的评分;当评分小于预设分数时,则通过预设正样本和预设负样本对机器学习模型进行修正;当评分大于等于预设分数时,则继续将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。

具体地,预设的正样本和负样本是已经确定其为正常数据还是作弊数据的网络数据,将该网络数据输入至机器学习模型中可以得到测试结果,将该测试结果与预期结果进行比较得到比较结果,并可以根据比较结果得到机器学习模型的评分。例如参见下表所示:

将该测试结果与预期结果进行比较得到比较结果:tp:正确肯定——实际是正常数据,识别为正常数据;fn:错误否定(漏报)——实际是正常数据,却识别成了作弊数据;fp:错误肯定(误报)——实际是作弊数据,却识别成了正常数据;tn:正确否定——实际是作弊数据,识别为作弊数据。并根据比较结果计算机器学习模型的评分:其中评分的参数包括:准确率、误分率、召回率、查准率、tpr、far、frr以及f1-score等,该些参数的具体计算方式如下:

accuracyrate(准确率):(tp+tn)/(tp+tn+fn+fp);

errorrate(误分率):(fn+fp)/(tp+tn+fn+fp);

recall(召回率、查全率、击中概率):tp/(tp+fn),在所有正常数据中有多少被识别为正常数据;

precision(查准率):tp/(tp+fp),在所有识别成正常数据中有多少是真正的正常数据;

tpr(truepositiverate):tp/(tp+fn),实际就是recall;

far(falseacceptancerate)或fpr(falsepositiverate):fp/(fp+tn),错误接收率,误报率,在所有作弊数据中有多少被识别为正常数据;

frr(falserejectionrate):fn/(tp+fn),错误拒绝率,拒真率,在所有正常数据中有多少被识别为作弊数据,它等于1-recall;

f1-score是召回率和准确率的调和平均数,并假设两者一样重要,计算公式:f1-score=(2*recall*accuracy)/(recall+accuracy)。

根据所计算的参数可以对机器学习模型进行打分或分级,只有分数或等级合适的机器学习模型才会投入使用。即当评分大于等于预设分数时,则继续将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。当评分小于预设分数时,则通过预设正样本和预设负样本对机器学习模型进行修正,例如通过预设正常本和预设负样本对在机器学习模型的基础上再次进行训练等。

上述实施例中,在生成机器学习模型之后,并非直接将机器学习模型投入使用,而是对机器学习模型进行打分,只有分数合适的机器学习模型才会投入使用,进一步提高了待检测网络数据的检测准确性。

应该理解的是,虽然图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种网络数据检测装置,包括:截取模块100、机器学习模型判断模块200、规则判断模块300、标记模块400,其中:

截取模块100,用于截取待检测网络数据,并将所截取的待检测网络数据存放至数据队列中。

机器学习模型判断模块200,用于将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。

规则判断模块300,用于当初始判断结果表示待检测网络数据为第一作弊数据时,则将第一作弊数据与规则库中的第二作弊数据进行匹配。

标记模块400,用于当第一作弊数据与规则库中的第二作弊数据匹配成功时,则将待检测网络数据标记为作弊数据。

在其中一个实施例中,装置还包括:

特征数据提取模块,用于获取已经标记的历史网络数据,并提取历史网络数据的特征数据。

库生成模块,用于将标记为作弊数据的历史网络数据添加至黑名单库,将标记为正常数据的历史网络数据添加至白名单库。

机器学习模型生成模块,用于根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型。

在其中一个实施例中,特征数据提取模块包括:

分词单元,用于对历史网络数据进行分词处理。

词特征获取单元,用于根据当前分词在当前历史网络数据中的词频,并根据包含当前分词的历史网络数据的条数以及历史网络数据的总条数获取到当前分词的逆文档频率。

词权重计算单元,用于根据当前分词的词频和逆文档频率计算当前分词的词权重。

特征数据提取单元,用于获取词权重最大的当前分词作为当前历史网络数据的特征数据。

在其中一个实施例中,装置还包括:

网络地址获取模块,用于在截取待检测网络数据后,获取待检测网络数据对应的终端的网络地址。

频率统计模块,用于统计截取到的网络地址对应的终端发送的待检测网络数据的频率。

黑名单库添加模块,用于当频率大于预设频率时,则将待检测网络数据添加到黑名单库中。

在其中一个实施例中,标记模块400还用于当初始判断结果表示待检测网络数据不为第一作弊数据时,则将待检测网络数据标记为正常数据。

装置还包括:白名单库添加模块,用于将正常数据添加到白名单库中。

在其中一个实施例中,装置还包括:

相同数据获取模块,用于按照黑名单库中的历史网络数据的顺序获取黑名单库中相同的历史网络数据;按照白名单库中的历史网络数据的顺序获取白名单库中相同的历史网络数据。

去重模块,用于对相同的历史网络数据进行去重处理。

在其中一个实施例中,装置还包括:

测试模块,用于将预设正样本和预设负样本输入至机器学习模型中得到测试结果。

比较模块,用于将测试结果与预期结果进行比较得到比较结果。

评分模块,用于根据比较结果计算机器学习模型的评分。

修正模块,用于当评分小于预设分数时,则通过预设正样本和预设负样本对机器学习模型进行修正。

机器学习模型判断模块还用于当评分大于等于预设分数时,则继续将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。

关于网络数据检测装置的具体限定可以参见上文中对于网络数据检测方法的限定,在此不再赘述。上述网络数据检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储黑名单库、白名单库以及日志数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种网络数据检测方法。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:截取待检测网络数据,并将所截取的待检测网络数据存放至数据队列中;将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果;当初始判断结果表示待检测网络数据为第一作弊数据时,则将第一作弊数据与规则库中的第二作弊数据进行匹配;当第一作弊数据与规则库中的第二作弊数据匹配成功时,则将待检测网络数据标记为作弊数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取已经标记的历史网络数据,并提取历史网络数据的特征数据;将标记为作弊数据的历史网络数据添加至黑名单库,将标记为正常数据的历史网络数据添加至白名单库;根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型。

在一个实施例中,处理器执行计算机程序时所实现的提取历史网络数据的特征数据的步骤,可以包括:对历史网络数据进行分词处理;根据当前分词在当前历史网络数据中的词频,并根据包含当前分词的历史网络数据的条数以及历史网络数据的总条数获取到当前分词的逆文档频率;根据当前分词的词频和逆文档频率计算当前分词的词权重;获取词权重最大的当前分词作为当前历史网络数据的特征数据。

在一个实施例中,处理器执行计算机程序时所实现的截取待检测网络数据的步骤之后,还可以包括:获取待检测网络数据对应的终端的网络地址;统计截取到的网络地址对应的终端发送的待检测网络数据的频率;当频率大于预设频率时,则将待检测网络数据添加到黑名单库中。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:当初始判断结果表示待检测网络数据不为第一作弊数据时,则将待检测网络数据标记为正常数据;将正常数据添加到白名单库中。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:按照黑名单库中的历史网络数据的顺序获取黑名单库中相同的历史网络数据;按照白名单库中的历史网络数据的顺序获取白名单库中相同的历史网络数据;对相同的历史网络数据进行去重处理。

在一个实施例中,处理器执行计算机程序时所实现的根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型的步骤之后,还可以包括:将预设正样本和预设负样本输入至机器学习模型中得到测试结果;将测试结果与预期结果进行比较得到比较结果;根据比较结果计算机器学习模型的评分;当评分小于预设分数时,则通过预设正样本和预设负样本对机器学习模型进行修正;当评分大于等于预设分数时,则继续将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:截取待检测网络数据,并将所截取的待检测网络数据存放至数据队列中;将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果;当初始判断结果表示待检测网络数据为第一作弊数据时,则将第一作弊数据与规则库中的第二作弊数据进行匹配;当第一作弊数据与规则库中的第二作弊数据匹配成功时,则将待检测网络数据标记为作弊数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取已经标记的历史网络数据,并提取历史网络数据的特征数据;将标记为作弊数据的历史网络数据添加至黑名单库,将标记为正常数据的历史网络数据添加至白名单库;根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型。

在一个实施例中,计算机程序被处理器执行时所实现的提取历史网络数据的特征数据的步骤,可以包括:对历史网络数据进行分词处理;根据当前分词在当前历史网络数据中的词频,并根据包含当前分词的历史网络数据的条数以及历史网络数据的总条数获取到当前分词的逆文档频率;根据当前分词的词频和逆文档频率计算当前分词的词权重;获取词权重最大的当前分词作为当前历史网络数据的特征数据。

在一个实施例中,计算机程序被处理器执行时所实现的截取待检测网络数据的步骤之后,还可以包括:获取待检测网络数据对应的终端的网络地址;统计截取到的网络地址对应的终端发送的待检测网络数据的频率;当频率大于预设频率时,则将待检测网络数据添加到黑名单库中。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当初始判断结果表示待检测网络数据不为第一作弊数据时,则将待检测网络数据标记为正常数据;将正常数据添加到白名单库中。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:按照黑名单库中的历史网络数据的顺序获取黑名单库中相同的历史网络数据;按照白名单库中的历史网络数据的顺序获取白名单库中相同的历史网络数据;对相同的历史网络数据进行去重处理。

在一个实施例中,计算机程序被处理器执行时所实现的根据黑名单库中的历史网络数据的特征数据以及白名单库中的历史网络数据的特征数据建立机器学习模型的步骤之后,还可以包括:将预设正样本和预设负样本输入至机器学习模型中得到测试结果;将测试结果与预期结果进行比较得到比较结果;根据比较结果计算机器学习模型的评分;当评分小于预设分数时,则通过预设正样本和预设负样本对机器学习模型进行修正;当评分大于等于预设分数时,则继续将存储在数据队列中的待检测网络数据输入至机器学习模型中进行处理得到初始判断结果。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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