CN107276805B - 一种基于入侵检测模型的样本预测方法、装置及电子设备 - Google Patents
一种基于入侵检测模型的样本预测方法、装置及电子设备 Download PDFInfo
- Publication number
- CN107276805B CN107276805B CN201710463676.8A CN201710463676A CN107276805B CN 107276805 B CN107276805 B CN 107276805B CN 201710463676 A CN201710463676 A CN 201710463676A CN 107276805 B CN107276805 B CN 107276805B
- Authority
- CN
- China
- Prior art keywords
- cluster
- sample set
- samples
- target
- initial
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种基于入侵检测模型的样本预测方法、装置及电子设备,方法包括:对初始训练样本集中的样本进行聚类,得到第一簇,针对每个第一簇,如果其内的全部样本都属于同一个类别,则将该第一簇中的样本从该初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;获得目标训练样本集、目标入侵检测模型以及初始测试样本集,针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离;获得由初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用目标入侵检测模型,对目标测试样本集中的每个样本进行类别预测。应用本发明实施例提供的方案进行样本预测时,提高了样本预测的准确度。
Description
技术领域
本发明涉及网络安全技术领域,特别是涉及一种基于入侵检测模型的样本预测方法、装置及电子设备。
背景技术
近年来,各种网络安全事件频频发生,为了应对频发的网络安全事件,保护计算机的免遭非法入侵与恶意攻击,网络安全技术应用而生。入侵检测作为一种主动防御型的网络安全技术,得到了人们的广泛研究。
入侵检测技术主要是基于入侵检测模型来预测样本的类别,从而可以对内部攻击、外部攻击和误操作等行为进行实时监控,在网络系统受到危害之前加以拦截,达到保护网络的目的。一般而言,样本的类别可以分为:正常类别和攻击类别,其中,攻击类别包括多种,例如,口令攻击类别、拒绝服务攻击类别、信息收集攻击类别等等。
基于入侵检测模型的过程如图1所示,具体为:获得训练样本集和测试样本集,其中,训练样本集中的样本都是有标记样本,然后,将训练样本集以及测试样本集进行数据预处理,例如,数据归一化处理、去噪处理、降维处理等等,利用数据预处理后的训练样本集训练初始的入侵检测模型,例如,神经网络模型、支持向量机模型、决策树模型等等,初始的入侵检测模型在经过训练后,能够得到初始的入侵检测模型的参数信息,从而形成用于样本预测的目标入侵检测模型,利用该目标入侵检测模型对测试样本集中的样本进行预测,预测类别是训练样本集中出现过的类别。
目前,基于入侵检测模型进行样本预测时,存在两个问题:一是采用的训练样本集中各个类别的样本数量存在严重不平衡现象,有些类别的样本数量可能是另一些类别的样本数量的成千上万倍,由于拥有样本数量较多的类别涵盖的样本特征比较全面,而拥有较少样本数量的类别涵盖的样本特征比较匮乏,因而,利用这种训练样本集训练得到目标入侵检测模型在对样本进行类别预测时,会倾向于预测该样本的类别为:拥有样本数量较多的类别,使得对拥有较少样本数量的类别的难以准确预测,导致样本类别的预测准确度不高;二是采用的训练样本集中的样本都是有标记样本,而测试样本集中的样本都是无标记样本,并且测试样本集中的样本类别与训练样本集中的样本类别不服从同一概率分布,一旦测试样本集中出现训练样本集中未曾出现的类别,将导致入侵检测模型无法准确预测属于该类别的样本,从而使得样本预测的准确度不高。
发明内容
本发明实施例的目的在于提供一种基于入侵检测模型的样本预测方法、装置及电子设备,以实现提高样本预测的准确度。具体技术方案如下:
第一方面,本发明实施例提供了一种基于入侵检测模型的样本预测方法,所述方法包括:
利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,其中,所述初始训练样本集包括无标记样本与有标记样本;
针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;
获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
获得目标入侵检测模型以及初始测试样本集,其中,所述目标入侵检测模型基于目标训练集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布;
针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离;
获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用所述目标入侵检测模型,对所述目标测试样本集中的每个样本进行类别预测。
可选的,所述针对初始测试样本集中的每个样本,判断将其是否从所述初始测试样本集中抽离的步骤,包括:
获得距离该样本最近的第一簇,作为目标簇;
判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
可选的,如果判定该目标簇为被标记类别的第一簇,所述方法还包括:
将该样本的类别标记为:该目标簇的类别。
可选的,每个所述第一簇包括有标记样本和/或无标记样本,所述利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别的步骤包括:
如果该第一簇内的有标记样本的都属于同一类别,并且该第一簇中的有标记样本所占的比值大于目标比值,则判定该第一簇内的全部样本都属于同一个类别,其中,所述目标比值为:表示所述初始训练样本集中的有标记样本所占的比值。
可选的,将由所述纯簇判定规则判定的其内全部样本不都属于同一个类别的第一簇,作为第二簇,针对每个所述第二簇,所述方法还包括:
利用所述聚类算法,对该第二簇中的样本进行聚类,得到第二预设数量个子簇;
针对该第二簇中的每个所述子簇,判断其内的样本数是否小于第一预设阈值;
如果否,则利用所述纯簇判定规则,判断该子簇内的全部样本是否都属于同一个类别;如果判定该子簇内的全部样本都属于同一个类别,则将该子簇中的样本从所述初始训练样本集中抽离;如果判定该子簇内的全部样本不都属于同一个类别,则更新该子簇为:第二簇,返回执行所述利用所述聚类算法,对其内的样本进行聚类,得到第二预设数量个子簇的步骤,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
可选的,获得所述目标入侵检测模型的步骤,包括;
利用所述目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型;
或者,
对所述目标训练样本集进行处理,并用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型。
可选的,通过以下步骤获得所述处理后的目标训练样本集:
利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
用重新标记后的目标训练样本集,作为所述处理后的目标训练样本集;
或者,
利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
获得第一训练样本集和第一测试样本集,其中,第一训练样本集为:重新标记后的目标训练样本集中,类别为非新类别的有标记样本组成的样本集,第一测试样本集为:重新标记后的目标训练样本集中,类别为新类别的有标记样本组成的样本集;
利用所述第一训练样本集训练预设的初始分类器,得到目标分类器;并利用所述目标分类器对所述第一测试样本集中的样本进行类别预测,获得所述第一测试样本集中每个样本的预测类别,以及该样本属于该预测类别的概率;
获得各个子样本集,其中,所述子样本集为:所述第一测试样本集中属于同一个第三簇的的样本组成的样本集;
针对各个子样本集,判断其内的各个样本是否都属于同一个预测类别;如果是,则获得该子样本集中各个样本属于该预测类别的各个概率,判断各个所述概率是否大于第三预设阈值;如果大于,则将该子样本集中各个样本的类别重新标记为:该预测类别;
将重新标记后的第一测试样本集和所述第一训练样本集合并,作为所述处理后的目标训练样本集。
可选的,所述方法还包括:
获得第二样本集,其中,所述第二样本集为:所述目标测试样本集中预测类别为新类别的样本组成的样本集;
利用所述聚类算法,对所述第二样本集中的样本进行聚类,得到第四预设数量个第四簇;
针对各个所述第四簇,从该第四簇中抽取第五预设数量个样本;
针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
第二方面,本发明实施例提供了一种基于入侵检测模型的样本预测装置,所述装置包括:
第一聚类模块,用于利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,其中,所述初始训练样本集包括无标记样本与有标记样本;
第一判断模块,用于针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;
第一获得模块,用于获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
第二获得模块,用于获得目标入侵检测模型以及初始测试样本集,其中,所述目标入侵检测模型基于目标训练集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布;
第二判断模块,用于针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离;
第三获得模块,用于获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用所述目标入侵检测模型,对所述目标测试样本集中的每个样本进行类别预测。
可选的,所述第二判断模块,包括:
第一获得子模块,用于获得距离该样本最近的第一簇,作为目标簇;
第一判断子模块,用于判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
可选的,如果判定该目标簇为被标记类别的第一簇,所述装置还包括:
标记模块,用于将该样本的类别标记为:该目标簇的类别。
可选的,每个所述第一簇包括有标记样本和/或无标记样本,所述第一判断模块包括:
判定子模块,用于如果该第一簇内的有标记样本的都属于同一类别,并且该第一簇中的有标记样本所占的比值大于目标比值,则判定该第一簇内的全部样本都属于同一个类别,其中,所述目标比值为:表示所述初始训练样本集中的有标记样本所占的比值。
可选的,将由所述纯簇判定规则判定的其内全部样本不都属于同一个类别的第一簇,作为第二簇,针对每个所述第二簇,所述装置还包括:
第二聚类模块,用于利用所述聚类算法,对该第二簇中的样本进行聚类,得到第二预设数量个子簇;
第三判断模块,用于针对该第二簇中的每个所述子簇,判断其内的样本数是否小于第一预设阈值;
第四判断模块,用于在所述第三判断模块的判断结果为否时,利用所述纯簇判定规则,判断该子簇内的全部样本是否都属于同一个类别;如果判定该子簇内的全部样本都属于同一个类别,则将该子簇中的样本从所述初始训练样本集中抽离;如果判定该子簇内的全部样本不都属于同一个类别,则更新该子簇为:第二簇,返回执行所述利用所述聚类算法,对其内的样本进行聚类,得到第二预设数量个子簇的步骤,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
可选的,所述装置还包括:
第四获得模块,用于获得所述目标入侵检测模型,所述第四获得模块,包括;
第二获得子模块,用于利用所述目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型;
或者,
第三获得子模块,用于对所述目标训练样本集进行处理,并用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型。
可选的,所述装置还包括:第五获得模块,所述第五获得模块用于获得所述处理后的目标训练样本集,所述第五获得模块,包括:
第一聚类子模块,用于利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
第一计算子模块,用于计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
第四获得子模块,用于用重新标记后的目标训练样本集,作为所述处理后的目标训练样本集;
或者,
第二聚类模块,用于利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
第二计算模块,用于计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
第五获得子模块,用于获得第一训练样本集和第一测试样本集,其中,第一训练样本集为:重新标记后的目标训练样本集中,类别为非新类别的有标记样本组成的样本集,第一测试样本集为:重新标记后的目标训练样本集中,类别为新类别的有标记样本组成的样本集;
第六获得子模块,用于利用所述第一训练样本集训练预设的初始分类器,得到目标分类器;并利用所述目标分类器对所述第一测试样本集中的样本进行类别预测,获得所述第一测试样本集中每个样本的预测类别,以及该样本属于该预测类别的概率;
第七获得子模块,用于获得各个子样本集,其中,所述子样本集为:所述第一测试样本集中属于同一个第三簇的的样本组成的样本集;
第二判断子模块,用于针对各个子样本集,判断其内的各个样本是否都属于同一个预测类别;如果是,则获得该子样本集中各个样本属于该预测类别的各个概率,判断各个所述概率是否大于第三预设阈值;如果大于,则将该子样本集中各个样本的类别重新标记为:该预测类别;
第二获得子模块,用于将重新标记后的第一测试样本集和所述第一训练样本集合并,作为所述处理后的目标训练样本集。
可选的,所述装置还包括:
第六获得模块,用于获得第二样本集,其中,所述第二样本集为:所述目标测试样本集中预测类别为新类别的样本组成的样本集;
第三聚类模块,用于利用所述聚类算法,对所述第二样本集中的样本进行聚类,得到第四预设数量个第四簇;
抽取模块,用于针对各个所述第四簇,从该第四簇中抽取第五预设数量个样本;
加入模块,用于针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
第三方面,本发明实施例还提供了一种电子设备,该电子设备包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现本发明实施例所提供的基于入侵检测模型的样本预测方法的步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例所提供的基于入侵检测模型的样本预测方法的步骤。
可见,应用本发明实施例提供的技术方案,将初始训练样本集中的同类别样本进行抽离,使得获得的目标训练样本集中,各个类别的样本数量保持平衡,从而在利用目标训练样本集训练得到的目标入侵检测模型进行样本的类别预测时,不会偏向于将样本的类别预测为:拥有样本数量较多的类别,提高了样本预测的准确度,并且,进一步的,初始训练样本集包括无标记样本与有标记样本,初始测试样本集中的样本类别与初始训练样本集中的无标记样本的样本类别服从同一概率分布,使得目标训练样本集会包含目标测试样本集的样本类别,从而利用目标训练样本集训练得到目标入侵检测模型能够准确预测出目标测试样本集中的样本类别,提高了样本预测的准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中的基于入侵检测模型的样本预测方法的流程示意图;
图2为本发明实施例提供的一种基于入侵检测模型的样本预测方法的流程示意图;
图3为利用本发明实施例提供的基于入侵检测模型的样本预测方法进行样本预测的示意图;
图4为本发明实施例提供的一种基于入侵检测模型的样本预测装置的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高样本预测的准确度,本发明实施例提供了一种基于入侵检测模型的样本预测方法、装置及电子设备。
下面首先对本发明实施例提供的一种基于入侵检测模型的样本预测方法进行介绍。
需要说明的是,本发明实施例提供的基于入侵检测模型的样本预测方法应用于电子设备,其中,在具体应用中,该电子设备可以为服务器,也可以为终端设备,这都是合理的。另外,实现本发明实施例所提供的一种基于入侵检测模型的样本预测方法的功能软件可以为专门的样本预测软件,也可以为现有样本预测软件或其他具有样本预测功能的软件中的插件。
参见图2所示,本发明实施例提供的一种基于入侵检测模型的样本预测方法,该方法包括如下步骤:
S201,利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇。
其中,该初始训练样本集包括:无标记样本与有标记样本。初始训练样本集中的无标记样本由网络流量发生器采集得到,故初始训练样本集中的无标记样本能够反映当前的流量分布特点。
可以理解的是,无标记样本是指未被标记类别的样本;有标记样本是指已被标记类别的样本。聚类算法可以将样本聚类成第一预设数量个第一簇,第一预设数量是事先给定的聚类数,例如,第一预设数量可以为:8、9、10、11等等自然数。常见的聚类算法包括:K-MEANS算法、K-MEDOIDS算法、CLARANS算法。本发明实施例对具体使用的聚类算法不做限定。例如,聚类算法可以为:K-MEANS算法。
S202,针对每个第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从该初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别。
需要说明的是,每个第一簇包括有标记样本和/或无标记样本,具体的,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别的步骤,可以为:
如果该第一簇内的有标记样本的都属于同一类别,并且该第一簇中的有标记样本所占的比值大于目标比值,则判定该第一簇内的全部样本都属于同一个类别,其中,该目标比值为:表示该初始训练样本集中的有标记样本所占的比值。
需要说明的是,第一簇中的有标记样本所占的比值是指第一簇中的有标记样本数与总样本数的比值,初始训练样本集中的有标记样本所占的比值是指初始训练样本集中的有标记样本数与总样本数的比值。
例如,初始训练样本集的样本总数与有标记样本数分别为200、100,则=100/200=0.5,目标比值为:某个第一簇的样本总数为50,该第一簇中的有标记样本数为40,则有标记样本数所占的比值为:且如果该第一簇中的有标记样本的都属于同一类别,则判定该第一簇内的全部样本都属于同一个类别。
可以理解的是,针对每个第一簇,如果利用预设的纯簇判定规则,判定该第一簇内的全部样本都属于同一个类别,则将该第一簇中的样本从该初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别。例如,某个第一簇中的有标记样本的类别均为M,且利用预设的纯簇判定规则,判定该第一簇内的全部样本都属于同一个类别,则将该第一簇中的样本从该初始训练样本集中抽离,并标记该第一簇的类别为:M。
实际应用中,为了从该初始训练样本集中抽离更多的样本,以减少初始训练样本集的数量,可以细化第一簇的层次关系,具体的,可以将由该纯簇判定规则判定的其内全部样本不都属于同一个类别的第一簇,作为第二簇,针对每个第二簇,该方法还包括以下步骤:
步骤A1,利用该聚类算法,对该第二簇中的样本进行聚类,得到第二预设数量个子簇。
第二预设数量和第一预设数量可以相同,也可以不同,本发明实施例对此不做限定。第二预设数量的具体数值可以根据用户需求设定,例如,具体数值可以为:6、7、8、9等等。
例如,利用K-MEANS算法,对该第二簇中的样本进行聚类,得到K个子簇。
步骤A2,针对该第二簇中的每个子簇,判断其内的样本数是否小于第一预设阈值;如果否,则执行步骤A3。
第一预设阈值可以根据用户需求设定,本发明实施例对第一预设阈值的具体数值不做限定。例如,可以为20、30、40等等。
示例性的,第一预设阈值为20,针对该第二簇中的每个子簇,如果该子簇中的样本数是否小于20,则执行步骤A3。
步骤A3,利用该纯簇判定规则,判断该子簇内的全部样本是否都属于同一个类别;如果判定该子簇内的全部样本都属于同一个类别,则将该子簇中的样本从该初始训练样本集中抽离;如果判定该子簇内的全部样本不都属于同一个类别,则更新该子簇为:第二簇,返回执行步骤A1,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
例如,如果利用该纯簇判定规则,判定子簇C1内的全部样本都属于同一个类别,则将子簇C1中的样本从该初始训练样本集中抽离;如果利用该纯簇判定规则,判定子簇C1内的全部样本不都属于同一个类别,则更新子簇C1为:第二簇,并返回执行步骤A1,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
可以看出,本发明实施例使得聚类过程变得有层次,可以将第一次聚类得到的簇,称为第一簇,有的第一簇拥有子簇,第一簇的子簇即为二级簇,有的二级簇也拥有子簇,二级簇的子簇即为三级簇,依次类推,直到叶子簇。叶子簇不可再分,它们要么是纯簇,要么簇中的样本个数小于第一预设阈值,纯簇即为经由纯簇判定规则判定的其内全部样本都属于同一个类别的簇,对于叶子簇中的纯簇,可以将其从该初始训练样本集中抽离,因此实现了从该初始训练样本集中抽离更多的样本,减少了初始训练样本集的数量。
S203,获得由该初始训练样本集中未被抽离的样本组成的目标训练样本集。
可以理解的是,如果利用预设的纯簇判定规则,判定某个第一簇内的全部样本都属于同一个类别,则可以认为第一簇为纯簇,进一步,可以将该纯簇中的所有样本从初始训练样本集中抽离;如果利用预设的纯簇判定规则,判定某个第一簇内的全部样本不都属于同一个类别,则可以认为第一簇为非纯簇,故可以认为初始训练样本集中未被抽离的样本为:所有非纯簇中的样本。
可以看出,本发明实施例利用纯簇判定规则,将初始训练样本集中的样本进行抽离,有利于减少目标训练样本集中的样本数量,并且能够使目标训练样本集中各个类别的样本数量保持平衡。
S204,获得目标入侵检测模型以及初始测试样本集。
其中,该目标入侵检测模型基于目标训练集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布。
实际应用中,为了使初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布,可以用采集初始训练样本集的无标记样本的网络流量发生器采集得到初始测试样本集。
具体的,获得该目标入侵检测模型的步骤,可以为;
利用该目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型;或者,对该目标训练样本集进行处理,并用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型。
初始入侵检测模型可以为:无监督学习模型,也可以为:监督学习模型,无监督学习模型通常基于聚类算法(如K-MEANS算法),监督学习模型通常基于决策树、支持向量机、神经网络、随机森林等智能算法,通过利用目标训练样本集或者处理后的目标训练样本集训练初始入侵检测模型,就可以得到模型参数,具有模型参数的初始入侵检测模型即为目标入侵检测模型。
现有技术中有标记样本的类别都是专家根据经验和理论知识事先标记的,无法实时对目标训练样本集中新出现的类别进行标记,因此,为了对目标训练样本集中新出现的类别进行标记,在一种具体的实施方式中,可以对目标训练样本集进行未知发现处理,进而可以获得处理后的目标训练样本集,具体的未知发现处理可以包括以下步骤:
步骤B1,利用聚类算法,对目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇。
第三预设数量跟第一预设数量、第二预设数量可以相同,也可以不同,具体的第三预设数量可以根据用户需求设定,本发明实施例对第三预设数量的具体数值不做限定。例如,可以为:6、7、8、9、10等等。可以理解的是,由于初始训练样本集包括:无标记样本与有标记样本,故目标训练样本集也包括:有标记样本和无标记样本,对目标训练样本集中的样本进行聚类得到的第三簇也包括:有标记样本和无标记样本。
具体的聚类算法的描述可以参照S201部分,在此不再赘述。
步骤B2,计算每个第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别。
需要说明的是,第三簇中的有标记样本所占的比值是指第三簇中的有标记样本数与总样本数的比值,例如,第三簇中的有标记样本数为20,总样本数为100,则有标记样本所占的比值为:20/100=0.2。
第二预设阈值跟第一预设阈值是大小无关,具体的第二预设阈值可以根据用户需求事先设定,例如,可以为0.1、0.15、0.2等等。
可以理解的是,针对每个第三簇,如果该第三簇中有标记样本所占的比值小于第二预设阈值,则可以认为,该第三簇是未知模式的簇,可以将该第三簇中所有样本的类别重新标记为:新类别,其中,新类别为:不同于初始训练样本集中的任一有标记样本的类别。
具体的,在对目标训练样本集进行未知发现处理后,获得处理后的目标训练样本集可以为:用重新标记后的目标训练样本集,作为处理后的目标训练样本集。
可以看出,处理后的目标训练样本集包括:专家事先标记的有标记样本、无标记样本以及被标记为新类别的样本,处理后的目标训练样本集能够实时反映出网络中出现的新类别,用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型,使得目标入侵检测模型不仅能够预测已知类别,还能够预测出新类别,从而提高了样本预测的准确度。
为了更准确的将目标训练样本集中的样本标记为新类别,在另一种具体的实施方式中,可以在对目标训练样本集进行未知发现处理后,进一步进行已知补偿处理,进而可以获得处理后的目标训练样本集,具体的已知补偿处理过程可以以下步骤:
步骤C1,获得第一训练样本集和第一测试样本集,其中,第一训练样本集为:重新标记后的目标训练样本集中,类别为非新类别的有标记样本组成的样本集,第一测试样本集为:重新标记后的目标训练样本集中,类别为新类别的有标记样本组成的样本集。
可以理解的是,重新标记后的目标训练样本集中包括:专家事先标记的有标记样本、无标记样本以及被标记为新类别的有标记样本,类别为非新类别的有标记样本即为专家事先标记的有标记样本,可以称为已知的有标记样本,类别为新类别的有标记样本,可以称为未知的有标记样本。故第一训练样本集由已知的有标记样本组成,第一测试样本集由未知的有标记样本组成。
步骤C2,利用该第一训练样本集训练预设的初始分类器,得到目标分类器,并利用该目标分类器对第一测试样本集中的样本进行类别预测,获得该第一测试样本集中每个样本的预测类别,以及该样本属于该预测类别的概率。
需要说明的是,利用该第一训练样本集训练预设的初始分类器,即可得到具备参数的初始分类器,即目标分类器。具体的,初始分类器可以为:softmax分类器,softmax分类器是以多项式分布(Multinomial Distribution)为模型建模的,它可以识别不同的样本类别。利用训练得到的目标softmax分类器可以对样本进行类别预测,并能获得样本属于该预测类别的概率。
步骤C3,获得各个子样本集。
其中,该子样本集为:第一测试样本集中属于同一个第三簇的的样本组成的样本集。
可以理解的是,第一测试样本集由各个属于未知模式的第三簇中的所有样本组成,各个子样本集即为各个属于未知模式的第三簇,各个子样本集中样本的当前类别为:新类别。
步骤C4,针对各个子样本集,判断其内的各个样本是否都属于同一个预测类别;如果是,则获得该子样本集中各个样本属于该预测类别的各个概率,判断各个概率是否大于第三预设阈值;如果大于,则将该子样本集中各个样本的类别重新标记为:该预测类别。
可以理解的是,由于目标分类器是基于第一训练样本集训练得到的,第一训练样本集由已知的有标记样本组成,故预测类别为某一已知的有标记样本的类别。例如,所有已知的有标记样本的类别分别为:A、B、C、D,则预测类别为A、B、C、D中的某一个,可以为A,或者B,或者C,或者D。实际应用中,第三预设阈值可以根据用户需求事先设定,例如,可以为0.1、0.15、0.2等等。
针对各个子样本集,如果该子样本集中的各个样本都属于同一个预测类别,并且各个样本属于该预测类别的各个概率均大于第三预设阈值,即可认为该子样本集中各个样本均为已知的有标记样本,故可以将该子样本集中各个样本的类别重新标记为:该预测类别。
例如,第三预设阈值为0.75,某个子样本集中的各个样本都属于同一个预测类别N,且各个样本属于该预测类别的各个概率均大于0.75,则将该子样本集中各个样本的类别重新标记为:N。
具体的,在对目标训练样本集进行已知补偿处理后,获得处理后的目标训练样本集可以为:将重新标记后的第一测试样本集和所述第一训练样本集合并,作为处理后的目标训练样本集。
可以看出,本发明实施例在对目标训练样本集中新类别进行标记的基础上,进一步,还能够将被标记为新类别的样本重新标记为:该预测类别,避免了将已知的有标记样本标记为未知的有标记样本的情况,从而提高了类别标记的准确度。
S205,针对初始测试样本集中的每个样本,判断是否将其从初始测试样本集中抽离,如果是,将其从初始测试样本集中抽离。
具体的,针对初始测试样本集中的每个样本,判断将其是否从所述初始测试样本集中抽离的步骤,可以为:
获得距离该样本最近的第一簇,作为目标簇;判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
实际应用中,针对初始测试样本集中的每个样本,获得距离该样本最近的第一簇的方式可以为:首先获得各个第一簇的簇中心点,然后计算该样本到各个第一簇的簇中心点的距离,将距离该样本最近的簇中心点对应的第一簇,作为距离该样本最近的第一簇,即目标簇。在获得目标簇以后,可以判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
如果该目标簇不为被标记类别的第一簇,但是该目标簇有子簇,则可以在该目标簇的子簇集中获得距离该样本最近的子簇,判断该子簇是否被标记类别;如果是,则判定将该样本从所述初始测试样本集中抽离,依次类推,直到距离该样本最近的子簇为未被标记类别的叶子簇。
可以看出,针对初始测试样本集中的每个样本,可以利用迭代方式确定距离该样本最近的第一簇,进而,根据该第一簇是否被标记类别,而确定是否将该样本从初始测试样本集中抽离,故可以减少初始测试样本集中的样本数量。
为了预测被抽离的样本的类别,在判定该目标簇为被标记类别的第一簇后,该方法还包括:
将该样本的类别标记为:该目标簇的类别。
S206,获得由初始测试样本集中未被抽离的样本组成的目标测试样本集,并利用目标入侵检测模型,对目标测试样本集中的每个样本进行类别预测。
可以看出,初始测试样本集的样本类别与初始训练样本集的无标记样本的样本类别服从同一概率分布,目标测试样本集由初始测试样本集中未被抽离的样本组成,目标训练样本集由所述初始训练样本集中未被抽离的样本组成,因此,目标训练样本集会包含目标测试样本集的样本类别,从而利用目标训练样本集训练得到的目标入侵检测模型能够准确预测出目标测试样本集中的样本类别,提高了样本的预测准确度。
可见,应用本发明实施例提供的技术方案,将初始训练样本集中的同类别样本进行抽离,使得获得的目标训练样本集中,各个类别的样本数量保持平衡,从而在利用该目标训练样本集训练得到的目标入侵检测模型进行样本的类别预测时,不会偏向于将样本的类别预测为:拥有样本数量较多的类别,提高了样本预测的准确度,并且,进一步的,初始训练样本集包括无标记样本与有标记样本,初始测试样本集中的样本类别与初始训练样本集中的无标记样本的样本类别服从同一概率分布,使得目标训练样本集会包含目标测试样本集的样本类别,从而利用目标训练样本集训练得到目标入侵检测模型能够准确预测出目标测试样本集中的样本类别,提高了样本预测的准确度。
为了使目标训练样本集能够实时反映出当前网络的流量分布,在对目标测试样本集中每个样本的进行类别预测之后,该方法还包括:
步骤D1,获得第二样本集;
可以理解的是,在利用目标入侵检测模型,对目标测试样本集中每个样本的进行类别预测之后,目标测试样本集中每个样本都获得预测类别,其中,有的样本的预测类别为新类别,该第二样本集为:目标测试样本集中预测类别为新类别的样本组成的样本集。
步骤D2,利用聚类算法,对该第二样本集中的样本进行聚类,得到第四预设数量个第四簇。
可以理解的是,第四簇由对第二样本集中的样本聚类所得,第四预设数量可以根据用户需求设定,本发明实施例对此不做限定。
步骤D3,针对每个第四簇,从该第四簇中抽取第五预设数量个样本;
第四簇中的样本均为预测类别为新类别的样本,第五预设数量为事先设定的数值,可以为:5、6、7、8等等。
步骤D4,针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
可以理解的是,抽取出来的各个样本均为新类别,即未知类别,实际应用中,可以引入人工干预确定抽取出来的各个样本是否都属于同一个类别,从而,针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
实际应用中,针对抽取出来的各个样本都属于同一个类别的情况,进一步,如果该第四簇的样本数量足够多且与被抽离样本的第一簇在特征空间上不重叠,就可以把该第四簇的簇中心点加入到第一簇所在的特征空间。具体的,可以认为当样本数量大于样本阈值时,即为样本数量足够多,样本阈值可以根据用户需求设定,例如,可以为20、30、40等等。
可以看出,如果网络中的流量分布更新,那么目标训练集中将包括反映出新类别的样本,故基于目标训练样本集得到的目标入侵检测模型能够识别出新类别,从而使得目标入侵检测模型能够能够适应新的流量分布。
下面通过一个具体实例来对本发明实施例进行简单介绍。
将本发明实施例提供的基于入侵检测模型的样本预测方法应用于服务器,该服务器进行样本预测的流程如图3所示。
获得初始训练样本集与初始测试样本集,其中,初始训练样本集包括无标记样本与有标记样本,无标记样本由当前网络流量发生器采样而得,初始测试样本集也由当前网络流量发生器采样而得,故初始测试样本集的样本类别与初始训练样本集的无标记样本的样本类别服从同一概率分布。
对初始训练样本集与初始测试样本集进行数据预处理,具体的,对初始训练样本集与初始测试样本集中的连续特征进行归一化处理,对初始训练样本集与初始测试样本集中的离散特征进行独热(one-hot)处理,具体的归一化处理以及独热处理过程属于现有技术,在此不再赘述。
利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,这个过程可以看做是对初始训练样本集的纯簇抽离过程;进而,获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离,并将该样本的类别标记为:该目标簇的类别,这个过程可以看做是对初始测试样本集的纯簇抽离过程;进而,获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;
对目标训练样本集进行未知发现处理和已知补偿处理,得到处理后的目标训练样本集,用处理后的目标训练样本集训练初始的监督或半监督模型,得到目标监督或半监督模型,即目标入侵检测模型;
利用该目标入侵检测模型,对目标测试样本集中的各个样本进行类别预测;
判断目标测试样本集中是否有样本,如果有,针对目标测试样本集中的各个样本,判断该样本的预测类别是否为新类别如果是,将该样本加入第二样本集,在对各个样本判断完成后,即可获得第二样本集,进而,利用聚类算法,对该第二样本集中的样本进行聚类,得到第四簇,针对各个第四簇,从该第四簇中抽取m个样本,引入人工干预或通过自动判别确定抽取出来的各个样本是否都属于同一个类别,针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到目标训练样本集中;针对抽取出来的各个样本都属于同一个类别,并且如果该第四簇的样本数量足够多且与被抽离样本的第一簇在特征空间上不重叠,就把该第四簇的簇中心点加入到第一簇所在的特征空间,从而,基于加入第四簇的簇中心点以后的所有第一簇,经过纯簇抽离过程获得新的目标训练样本集。
可见,应用本发明实施例提供的技术方案,将初始训练样本集中的同类别样本进行抽离,使得获得的目标训练样本集中,各个类别的样本数量保持平衡,从而在利用该目标训练样本集训练得到的目标入侵检测模型进行样本的类别预测时,不会出现偏向于将样本的类别预测为:拥有样本数量较多的类别,提高了入侵检测模型的预测准确度,并且,进一步的,初始训练样本集包括无标记样本与有标记样本,初始测试样本集中的样本类别与初始训练样本集中的无标记样本的样本类别服从同一概率分布,使得目标训练样本集会包含目标测试样本集的样本类别,从而利用目标入侵检测模型能够准确预测出目标测试样本集中的样本类别,提高了样本预测的准确度,并且,目标训练样本集能够实时反映出当前网络的流量分布,故基于目标训练样本集得到的目标入侵检测模型能够识别出新类别,从而使得目标入侵检测模型能够能够适应新的流量分布,进一步提高了样本预测的准确度。
与上述的方法实施例相对应,本发明实施例还提供一种基于入侵检测模型的样本预测装置。
参见图4,图4为本发明实施例所提供的一种基于入侵检测模型的样本预测装置的结构示意图,包括:
第一聚类模块401,用于利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,其中,所述初始训练样本集包括无标记样本与有标记样本;
第一判断模块402,用于针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;
第一获得模块403,用于获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
第二获得模块404,用于获得目标入侵检测模型以及初始测试样本集,其中,所述目标入侵检测模型基于目标训练集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布;
第二判断模块405,用于针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离;
第三获得模块406,用于获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用所述目标入侵检测模型,对所述目标测试样本集中的每个样本进行类别预测。
可见,应用本发明实施例提供的技术方案,将初始训练样本集中的同类别样本进行抽离,使得获得的目标训练样本集中,各个类别的样本数量保持平衡,从而在利用目标训练样本集训练得到的目标入侵检测模型进行样本的类别预测时,不会偏向于将样本的类别预测为:拥有样本数量较多的类别,提高了样本预测的准确度,并且,进一步的,初始训练样本集包括无标记样本与有标记样本,初始测试样本集中的样本类别与初始训练样本集中的无标记样本的样本类别服从同一概率分布,使得目标训练样本集会包含目标测试样本集的样本类别,从而利用目标训练样本集训练得到目标入侵检测模型能够准确预测出目标测试样本集中的样本类别,提高了样本预测的准确度。
其中,所述第二判断模块405,包括:
第一获得子模块,用于获得距离该样本最近的第一簇,作为目标簇;
第一判断子模块,用于判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
其中,如果判定该目标簇为被标记类别的第一簇,所述装置还包括:
标记模块,用于将该样本的类别标记为:该目标簇的类别。
其中,每个所述第一簇包括有标记样本和/或无标记样本,所述第一判断模块402包括:
判定子模块,用于如果该第一簇内的有标记样本的都属于同一类别,并且该第一簇中的有标记样本所占的比值大于目标比值,则判定该第一簇内的全部样本都属于同一个类别,其中,所述目标比值为:表示所述初始训练样本集中的有标记样本所占的比值。
其中,将由所述纯簇判定规则判定的其内全部样本不都属于同一个类别的第一簇,作为第二簇,针对每个所述第二簇,所述装置还包括:
第二聚类模块,用于利用所述聚类算法,对该第二簇中的样本进行聚类,得到第二预设数量个子簇;
第三判断模块,用于针对该第二簇中的每个所述子簇,判断其内的样本数是否小于第一预设阈值;
第四判断模块,用于在所述第三判断模块的判断结果为否时,利用所述纯簇判定规则,判断该子簇内的全部样本是否都属于同一个类别;如果判定该子簇内的全部样本都属于同一个类别,则将该子簇中的样本从所述初始训练样本集中抽离;如果判定该子簇内的全部样本不都属于同一个类别,则更新该子簇为:第二簇,返回执行所述利用所述聚类算法,对其内的样本进行聚类,得到第二预设数量个子簇的步骤,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
其中,所述装置还包括:
第四获得模块,用于获得所述目标入侵检测模型,所述第四获得模块,包括;
第二获得子模块,用于利用所述目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型;
或者,
第三获得子模块,用于对所述目标训练样本集进行处理,并用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型。
其中,所述装置还包括:第五获得模块,所述第五获得模块用于获得所述处理后的目标训练样本集,所述第五获得模块,包括:
第一聚类子模块,用于利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
第一计算子模块,用于计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
第四获得子模块,用于用重新标记后的目标训练样本集,作为所述处理后的目标训练样本集;
或者,
第二聚类模块,用于利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
第二计算模块,用于计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
第五获得子模块,用于获得第一训练样本集和第一测试样本集,其中,第一训练样本集为:重新标记后的目标训练样本集中,类别为非新类别的有标记样本组成的样本集,第一测试样本集为:重新标记后的目标训练样本集中,类别为新类别的有标记样本组成的样本集;
第六获得子模块,用于利用所述第一训练样本集训练预设的初始分类器,得到目标分类器;并利用所述目标分类器对所述第一测试样本集中的样本进行类别预测,获得所述第一测试样本集中每个样本的预测类别,以及该样本属于该预测类别的概率;
第七获得子模块,用于获得各个子样本集,其中,所述子样本集为:所述第一测试样本集中属于同一个第三簇的的样本组成的样本集;
第二判断子模块,用于针对各个子样本集,判断其内的各个样本是否都属于同一个预测类别;如果是,则获得该子样本集中各个样本属于该预测类别的各个概率,判断各个所述概率是否大于第三预设阈值;如果大于,则将该子样本集中各个样本的类别重新标记为:该预测类别;
第二获得子模块,用于将重新标记后的第一测试样本集和所述第一训练样本集合并,作为所述处理后的目标训练样本集。
其中,所述装置还包括:
第六获得模块,用于获得第二样本集,其中,所述第二样本集为:所述目标测试样本集中预测类别为新类别的样本组成的样本集;
第三聚类模块,用于利用所述聚类算法,对所述第二样本集中的样本进行聚类,得到第四预设数量个第四簇;
抽取模块,用于针对各个所述第四簇,从该第四簇中抽取第五预设数量个样本;
加入模块,用于针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现本发明实施例提供的基于入侵检测模型的样本预测方法,具体的,该方法包括如下步骤:
利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,其中,所述初始训练样本集包括无标记样本与有标记样本;
针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;
获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
获得目标入侵检测模型以及初始测试样本集,其中,所述目标入侵检测模型基于目标训练集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布;
针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离;
获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用所述目标入侵检测模型,对所述目标测试样本集中的每个样本进行类别预测。
可选的,所述针对初始测试样本集中的每个样本,判断将其是否从所述初始测试样本集中抽离的步骤,包括:
获得距离该样本最近的第一簇,作为目标簇;
判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
可选的,如果判定该目标簇为被标记类别的第一簇,所述方法还包括:
将该样本的类别标记为:该目标簇的类别。
可选的,每个所述第一簇包括有标记样本和/或无标记样本,所述利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别的步骤包括:
如果该第一簇内的有标记样本的都属于同一类别,并且该第一簇中的有标记样本所占的比值大于目标比值,则判定该第一簇内的全部样本都属于同一个类别,其中,所述目标比值为:表示所述初始训练样本集中的有标记样本所占的比值。
可选的,将由所述纯簇判定规则判定的其内全部样本不都属于同一个类别的第一簇,作为第二簇,针对每个所述第二簇,所述方法还包括:
利用所述聚类算法,对该第二簇中的样本进行聚类,得到第二预设数量个子簇;
针对该第二簇中的每个所述子簇,判断其内的样本数是否小于第一预设阈值;
如果否,则利用所述纯簇判定规则,判断该子簇内的全部样本是否都属于同一个类别;如果判定该子簇内的全部样本都属于同一个类别,则将该子簇中的样本从所述初始训练样本集中抽离;如果判定该子簇内的全部样本不都属于同一个类别,则更新该子簇为:第二簇,返回执行所述利用所述聚类算法,对其内的样本进行聚类,得到第二预设数量个子簇的步骤,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
可选的,获得所述目标入侵检测模型的步骤,包括;
利用所述目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型;
或者,
对所述目标训练样本集进行处理,并用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型。
可选的,通过以下步骤获得所述处理后的目标训练样本集:
利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
用重新标记后的目标训练样本集,作为所述处理后的目标训练样本集;
或者,
利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
获得第一训练样本集和第一测试样本集,其中,第一训练样本集为:重新标记后的目标训练样本集中,类别为非新类别的有标记样本组成的样本集,第一测试样本集为:重新标记后的目标训练样本集中,类别为新类别的有标记样本组成的样本集;
利用所述第一训练样本集训练预设的初始分类器,得到目标分类器;并利用所述目标分类器对所述第一测试样本集中的样本进行类别预测,获得所述第一测试样本集中每个样本的预测类别,以及该样本属于该预测类别的概率;
获得各个子样本集,其中,所述子样本集为:所述第一测试样本集中属于同一个第三簇的的样本组成的样本集;
针对各个子样本集,判断其内的各个样本是否都属于同一个预测类别;如果是,则获得该子样本集中各个样本属于该预测类别的各个概率,判断各个所述概率是否大于第三预设阈值;如果大于,则将该子样本集中各个样本的类别重新标记为:该预测类别;
将重新标记后的第一测试样本集和所述第一训练样本集合并,作为所述处理后的目标训练样本集。
可选的,所述方法还包括:
获得第二样本集,其中,所述第二样本集为:所述目标测试样本集中预测类别为新类别的样本组成的样本集;
利用所述聚类算法,对所述第二样本集中的样本进行聚类,得到第四预设数量个第四簇;
针对各个所述第四簇,从该第四簇中抽取第五预设数量个样本;
针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例所提供的基于入侵检测模型的样本预测的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (9)
1.一种基于入侵检测模型的样本预测方法,其特征在于,所述方法包括:
利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,其中,所述初始训练样本集包括无标记样本与有标记样本;
针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;
获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
获得目标入侵检测模型以及初始测试样本集,其中,所述目标入侵检测模型基于所述目标训练样本集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布;
针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离;
获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用所述目标入侵检测模型,对所述目标测试样本集中的每个样本进行类别预测;
所述针对初始测试样本集中的每个样本,判断将其是否从所述初始测试样本集中抽离的步骤,包括:
获得距离该样本最近的第一簇,作为目标簇;
判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
2.根据权利要求1所述的方法,其特征在于,如果判定该目标簇为被标记类别的第一簇,所述方法还包括:
将该样本的类别标记为:该目标簇的类别。
4.根据权利要求1所述的方法,其特征在于,将由所述纯簇判定规则判定的其内全部样本不都属于同一个类别的第一簇,作为第二簇,针对每个所述第二簇,所述方法还包括:
利用所述聚类算法,对该第二簇中的样本进行聚类,得到第二预设数量个子簇;
针对该第二簇中的每个所述子簇,判断其内的样本数是否小于第一预设阈值;
如果否,则利用所述纯簇判定规则,判断该子簇内的全部样本是否都属于同一个类别;如果判定该子簇内的全部样本都属于同一个类别,则将该子簇中的样本从所述初始训练样本集中抽离;如果判定该子簇内的全部样本不都属于同一个类别,则更新该子簇为:第二簇,返回执行所述利用所述聚类算法,对其内的样本进行聚类,得到第二预设数量个子簇的步骤,直到判断第二簇中的每个子簇的样本个数小于第一预设阈值。
5.根据权利要求1所述的方法,其特征在于,获得所述目标入侵检测模型的步骤,包括;
利用所述目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型;
或者,
对所述目标训练样本集进行处理,并用处理后的目标训练样本集训练预设的初始入侵检测模型,得到目标入侵检测模型。
6.根据权利要求5所述的方法,其特征在于,通过以下步骤获得所述处理后的目标训练样本集:
利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
用重新标记后的目标训练样本集,作为所述处理后的目标训练样本集;
或者,
利用所述聚类算法,对所述目标训练样本集中的样本进行聚类,得到第三预设数量个第三簇;
计算每个所述第三簇中的有标记样本所占的比值,并将比值小于第二预设阈值的各个第三簇中的样本的类别重新标记为:新类别,其中,所述新类别为:不同于所述初始训练样本集中的任一有标记样本的类别;
获得第一训练样本集和第一测试样本集,其中,第一训练样本集为:重新标记后的目标训练样本集中,类别为非新类别的有标记样本组成的样本集,第一测试样本集为:重新标记后的目标训练样本集中,类别为新类别的有标记样本组成的样本集;
利用所述第一训练样本集训练预设的初始分类器,得到目标分类器;并利用所述目标分类器对所述第一测试样本集中的样本进行类别预测,获得所述第一测试样本集中每个样本的预测类别,以及该样本属于该预测类别的概率;
获得各个子样本集,其中,所述子样本集为:所述第一测试样本集中属于同一个第三簇的样本组成的样本集;
针对各个子样本集,判断其内的各个样本是否都属于同一个预测类别;如果是,则获得该子样本集中各个样本属于该预测类别的各个概率,判断各个所述概率是否大于第三预设阈值;如果大于,则将该子样本集中各个样本的类别重新标记为:该预测类别;
将重新标记后的第一测试样本集和所述第一训练样本集合并,作为所述处理后的目标训练样本集。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获得第二样本集,其中,所述第二样本集为:所述目标测试样本集中预测类别为新类别的样本组成的样本集;
利用所述聚类算法,对所述第二样本集中的样本进行聚类,得到第四预设数量个第四簇;
针对各个所述第四簇,从该第四簇中抽取第五预设数量个样本;
针对抽取出来的各个样本不都属于同一个类别的情况,将该第四簇的样本加入到所述目标训练样本集中。
8.一种基于入侵检测模型的样本预测装置,其特征在于,所述装置包括:
第一聚类模块,用于利用聚类算法,对获得的初始训练样本集中的样本进行聚类,得到第一预设数量个第一簇,其中,所述初始训练样本集包括无标记样本与有标记样本;
第一判断模块,用于针对每个所述第一簇,利用预设的纯簇判定规则,判断其内的全部样本是否都属于同一个类别;如果是,则将该第一簇中的样本从所述初始训练样本集中抽离,并标记该第一簇的类别为:该第一簇中的任一有标记样本的类别;
第一获得模块,用于获得由所述初始训练样本集中未被抽离的样本组成的目标训练样本集;
第二获得模块,用于获得目标入侵检测模型以及初始测试样本集,其中,所述目标入侵检测模型基于所述目标训练样本集训练所得,所述初始测试样本集的样本类别与所述初始训练样本集的无标记样本的样本类别服从同一概率分布;
第二判断模块,用于针对初始测试样本集中的每个样本,判断是否将其从所述初始测试样本集中抽离,如果是,将其从所述初始测试样本集中抽离;
第三获得模块,用于获得由所述初始测试样本集中未被抽离的样本组成的目标测试样本集;并利用所述目标入侵检测模型,对所述目标测试样本集中的每个样本进行类别预测;
所述第二判断模块,包括:
第一获得子模块,用于获得距离该样本最近的第一簇,作为目标簇;
第一判断子模块,用于判断该目标簇是否为被标记类别的第一簇;如果是,则判定将该样本从所述初始测试样本集中抽离。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710463676.8A CN107276805B (zh) | 2017-06-19 | 2017-06-19 | 一种基于入侵检测模型的样本预测方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710463676.8A CN107276805B (zh) | 2017-06-19 | 2017-06-19 | 一种基于入侵检测模型的样本预测方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107276805A CN107276805A (zh) | 2017-10-20 |
CN107276805B true CN107276805B (zh) | 2020-06-05 |
Family
ID=60069026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710463676.8A Active CN107276805B (zh) | 2017-06-19 | 2017-06-19 | 一种基于入侵检测模型的样本预测方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107276805B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107798235B (zh) | 2017-10-30 | 2020-01-10 | 清华大学 | 基于one-hot编码机制的无监督异常访问检测方法及装置 |
CN108038108B (zh) * | 2017-12-27 | 2021-12-10 | 东软集团股份有限公司 | 分词模型训练方法和装置、及存储介质 |
CN109993179A (zh) * | 2017-12-29 | 2019-07-09 | 北京京东尚科信息技术有限公司 | 一种对数据进行聚类的方法和装置 |
CN109190379B (zh) * | 2018-08-03 | 2020-05-19 | 清华大学 | 一种深度学习系统的漏洞检测方法和装置 |
CN109660522B (zh) * | 2018-11-29 | 2021-05-25 | 华东师范大学 | 面向综合电子系统的基于深层自编码器的混合入侵检测方法 |
CN111435451B (zh) * | 2019-01-11 | 2023-04-28 | 北京达佳互联信息技术有限公司 | 确定图片类别的方法、装置、服务器和存储介质 |
CN110008987B (zh) * | 2019-02-20 | 2022-02-22 | 深圳大学 | 分类器鲁棒性的测试方法、装置、终端及存储介质 |
CN109688030B (zh) * | 2019-02-26 | 2020-11-03 | 百度在线网络技术(北京)有限公司 | 报文检测方法、装置、设备和存储介质 |
CN110191085B (zh) * | 2019-04-09 | 2021-09-10 | 中国科学院计算机网络信息中心 | 基于多分类的入侵检测方法、装置及存储介质 |
CN110113226B (zh) * | 2019-04-16 | 2021-03-12 | 新华三信息安全技术有限公司 | 一种检测设备异常的方法及装置 |
CN110222782A (zh) * | 2019-06-13 | 2019-09-10 | 齐鲁工业大学 | 基于密度聚类的有监督二分类数据分析方法及系统 |
CN110377828B (zh) * | 2019-07-22 | 2023-05-26 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、服务器及存储介质 |
CN110933102B (zh) * | 2019-12-11 | 2021-10-26 | 支付宝(杭州)信息技术有限公司 | 基于半监督学习的异常流量检测模型训练方法及装置 |
CN113452648A (zh) * | 2020-03-24 | 2021-09-28 | 北京沃东天骏信息技术有限公司 | 检测网络攻击的方法、装置、设备和计算机可读介质 |
CN111651755B (zh) * | 2020-05-08 | 2023-04-18 | 中国联合网络通信集团有限公司 | 入侵检测方法和装置 |
CN112906813A (zh) * | 2021-03-09 | 2021-06-04 | 中南大学 | 一种基于密度聚类和胶囊神经网络的浮选工况识别方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011077013A1 (en) * | 2009-12-23 | 2011-06-30 | Teknologian Tutkimuskeskus Vtt | Intrusion detection in communication networks |
CN106228183A (zh) * | 2016-07-18 | 2016-12-14 | 北京邮电大学 | 一种半监督学习分类方法与装置 |
CN106817248A (zh) * | 2016-12-19 | 2017-06-09 | 西安电子科技大学 | 一种apt攻击检测方法 |
-
2017
- 2017-06-19 CN CN201710463676.8A patent/CN107276805B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011077013A1 (en) * | 2009-12-23 | 2011-06-30 | Teknologian Tutkimuskeskus Vtt | Intrusion detection in communication networks |
CN106228183A (zh) * | 2016-07-18 | 2016-12-14 | 北京邮电大学 | 一种半监督学习分类方法与装置 |
CN106817248A (zh) * | 2016-12-19 | 2017-06-09 | 西安电子科技大学 | 一种apt攻击检测方法 |
Non-Patent Citations (1)
Title |
---|
基于K-Means聚类算法入侵检测系统研究;凤祥云;《电脑知识与技术》;20160630;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107276805A (zh) | 2017-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107276805B (zh) | 一种基于入侵检测模型的样本预测方法、装置及电子设备 | |
CN107294993B (zh) | 一种基于集成学习的web异常流量监测方法 | |
CN109302410B (zh) | 一种内部用户异常行为检测方法、系统及计算机存储介质 | |
CN109522716B (zh) | 一种基于时序神经网络的网络入侵检测方法及装置 | |
CN109995611B (zh) | 流量分类模型建立及流量分类方法、装置、设备和服务器 | |
CN110969066A (zh) | 直播视频的识别方法、装置及电子设备 | |
CN103870751A (zh) | 入侵检测方法及系统 | |
CN107579846B (zh) | 一种云计算故障数据检测方法及系统 | |
CN105426762A (zh) | 一种android应用程序恶意性的静态检测方法 | |
CN109446804B (zh) | 一种基于多尺度特征连接卷积神经网络的入侵检测方法 | |
CN102045358A (zh) | 一种基于整合相关性分析与分级聚类的入侵检测方法 | |
CN112329811A (zh) | 异常账号识别方法、装置、计算机设备和存储介质 | |
CN107483451B (zh) | 基于串并行结构网络安全数据处理方法及系统、社交网络 | |
CN111325067B (zh) | 违规视频的识别方法、装置及电子设备 | |
CN112632535A (zh) | 攻击检测方法、装置、电子设备及存储介质 | |
CN112765660A (zh) | 一种基于MapReduce并行聚类技术的终端安全性分析方法和系统 | |
CN117675387B (zh) | 基于用户行为分析的网络安全风险预测方法及系统 | |
CN110889451A (zh) | 事件审计方法、装置、终端设备以及存储介质 | |
CN108900538B (zh) | 一种工控信号检测方法和装置 | |
CN114970694B (zh) | 一种网络安全态势评估方法及其模型训练方法 | |
Wang et al. | Temperature forecast based on SVM optimized by PSO algorithm | |
WO2022222832A1 (zh) | 图像攻击检测、图像攻击检测模型训练方法和装置 | |
CN116707859A (zh) | 特征规则提取方法和装置、网络入侵检测方法和装置 | |
CN109739840A (zh) | 数据空值处理方法、装置及终端设备 | |
WO2022157867A1 (ja) | 生成装置、生成方法および生成プログラム |
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 |