CN113656796B - 一种过采样方法、装置、设备及存储介质 - Google Patents

一种过采样方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113656796B
CN113656796B CN202111013130.5A CN202111013130A CN113656796B CN 113656796 B CN113656796 B CN 113656796B CN 202111013130 A CN202111013130 A CN 202111013130A CN 113656796 B CN113656796 B CN 113656796B
Authority
CN
China
Prior art keywords
sample
sub
cluster
sampled
samples
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
Application number
CN202111013130.5A
Other languages
English (en)
Other versions
CN113656796A (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.)
DBAPPSecurity Co Ltd
Original Assignee
DBAPPSecurity 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 DBAPPSecurity Co Ltd filed Critical DBAPPSecurity Co Ltd
Priority to CN202111013130.5A priority Critical patent/CN113656796B/zh
Publication of CN113656796A publication Critical patent/CN113656796A/zh
Application granted granted Critical
Publication of CN113656796B publication Critical patent/CN113656796B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种过采样方法、装置、设备及存储介质,该方法包括:获取包含攻击样本及正常样本的样本集,所述攻击样本为计算机发生网络攻击时采集的对应数据,所述正常样本为所述计算机未发生网络攻击时采集的对应数据;对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含所述攻击样本的子簇均为待采样子簇;按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个所述待采样子簇中选取种子样本,基于所述种子样本合成新的样本,以实现样本过采样。本申请能够使得样本集实现数据平衡,有效提高基于采集到的样本集实现入侵检测时的入侵检测准确性。

Description

一种过采样方法、装置、设备及存储介质
技术领域
本发明涉及入侵检测技术领域,更具体地说,涉及一种过采样方法、装置、设备及存储介质。
背景技术
入侵检测领域中,网络攻击类型繁杂,有些攻击类型很常见,如DDOS、暴力破解、ARP欺骗等;而有些攻击类型出现比较少,如未获授权的本地超级用户特权访问(U2R)、未授权的远程主机的访问(R2L)等。不同攻击带来的影响不同,如DDOS攻击可能会对整个网络造成破坏,降低服务性能,阻止终端服务,而远程主机的未授权访问会导致主机被控制从而进行违法犯罪活动。为了实现入侵检测以避免上述不良影响,通常需要对可能发生网络攻击的计算机进行数据采集,进而基于采集的数据判断计算机是否发生网络攻击;现有技术中通过过采样算法实现数据采集,但是经常会发生采集到的数据不平衡的问题,也即表示计算机未发生网络攻击的数据远多于表示计算机发生网络攻击的数据,此时基于采集到的数据实现入侵检测会导致入侵检测准确性较低的问题。
发明内容
本发明的目的是提供一种过采样方法、装置、设备及存储介质,能够使得样本集实现数据平衡,有效提高基于采集到的样本集实现入侵检测时的入侵检测准确性。
为了实现上述目的,本发明提供如下技术方案:
一种过采样方法,包括:
获取包含攻击样本及正常样本的样本集,所述攻击样本为计算机发生网络攻击时采集的对应数据,所述正常样本为所述计算机未发生网络攻击时采集的对应数据;
对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含所述攻击样本的子簇均为待采样子簇;
按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个所述待采样子簇中选取种子样本,基于所述种子样本合成新的样本,以实现样本过采样。
优选的,从每个所述待采样子簇中选取种子样本之前,还包括:
按照任意待采样子簇中样本密集程度越高、该任意待采样子簇对应采样比例越低的原则,基于每个待采样子簇中样本密集程度确定每个待采样子簇的采样比例,并确定需要合成的新的样本总数量与任意采样比例的乘积、为需要基于该任意采样比例对应待采样子簇合成的新的样本的数量。
优选的,基于每个待采样子簇中样本密集程度确定需要基于每个待采样子簇合成的新的样本的数量,包括:
确定每个待采样子簇中的任意待采样子簇为当前待采样子簇;
按照下列公式计算当前待采样子簇的样本密集程度:
按照下列公式计算当前待采样子簇的采样比例:
按照下列公式计算需要基于当前待采样子簇合成的新的样本的数量:
Nume=Numsmote*SR;
其中,n为当前待采样子簇中包含的样本总数量,dist为当前待采样子簇中每两个样本之间的欧氏距离的和,intensity为当前待采样子簇的样本密集程度,SR为当前待采样子簇的采样比例,Numsmote为所述样本集中攻击样本与正常样本的个数差,Nume为需要基于当前待采样子簇合成的新的样本的数量。
优选的,从当前待采样子簇中选取种子样本,包括:
按照下列公式计算当前待采样子簇中各样本的概率分布:
其中,seedi为样本i的概率,k为样本i的k近邻中的k,SP为当前待采样子簇中各样本的概率分布,dq为当前待采样子簇中样本i到样本i的k近邻中每个样本之间的距离;
基于当前待采样子簇中各样本的概率分布,按照轮盘赌算法从当前待采样子簇中选取种子样本。
优选的,对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,包括:
将所述样本集中包含的全部样本初始化为多个子簇,且每个所述子簇中至多包含一个攻击样本;
确定距离小于距离阈值的分别包含有攻击样本的两个子簇分别为第一子簇及第二子簇,如果第一子簇及第二子簇之间不存在不含有攻击样本的子簇,则将第一子簇及第二子簇合并,否则,确定无法将第一子簇及第二子簇合并;
返回执行确定第一子簇及第二子簇的步骤,直至任意两个分别包含攻击样本的子簇之间的距离均大于距离阈值为止。
优选的,基于所述种子样本合成新的样本,包括:
针对任意种子样本,从该任意种子样本所属待采样子簇包含的属于该任意种子样本k近邻的样本中,选取一个样本作为待用样本,通过在该任意种子样本及对应待用样本之间插值合成新的样本。
优选的,基于所述种子样本合成新的样本之后,包括:
将新的样本加入至样本集中,判断所述样本集中攻击样本及正常样本的数量差值是否在差值范围内,如果是,则确定完成过采样,否则,返回执行对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇的步骤。
一种过采样装置,包括:
获取模块,用于:获取包含攻击样本及正常样本的样本集,所述攻击样本为计算机发生网络攻击时采集的对应数据,所述正常样本为所述计算机未发生网络攻击时采集的对应数据;
划分模块,用于:对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含所述攻击样本的子簇均为待采样子簇;
采样模块,用于:按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个所述待采样子簇中选取种子样本,基于所述种子样本合成新的样本,以实现样本过采样。
一种过采样设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一项所述过采样方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述过采样方法的步骤。
本发明提供了一种过采样方法、装置、设备及存储介质,该方法包括:获取包含攻击样本及正常样本的样本集,所述攻击样本为计算机发生网络攻击时采集的对应数据,所述正常样本为所述计算机未发生网络攻击时采集的对应数据;对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含所述攻击样本的子簇均为待采样子簇;按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个所述待采样子簇中选取种子样本,基于所述种子样本合成新的样本,以实现样本过采样。本申请获取包含计算机发生网络攻击时采集的攻击样本、未发生网络攻击时采集的正常样本的样本集后,对样本集进行聚类划分得到相应多个子簇;针对该多个子簇中包含攻击样本的子簇,按照周围存在攻击样本越多、被选取可能性越大的原则选取种子样本,进而基于种子样本合成新的样本,以实现样本过采样。由于任意样本周围存在攻击样本越多,合成的位于该任意样本周围的样本是攻击样本的可能性越大,本申请中针对包含有攻击样本的子簇按照周围攻击样本越多被选取可能性越大的原则选择种子样本,进而基于种子样本合成相应新的样本,能够使得新的样本是攻击样本的可能性比较大,进而有效增加样本集中攻击样本的数量,使得样本集实现数据平衡,有效提高基于采集到的样本集实现入侵检测时的入侵检测准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种过采样方法的流程图;
图2为本发明实施例提供的一种过采样装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提供的一种过采样方法的流程图,具体可以包括:
S11:获取包含攻击样本及正常样本的样本集,攻击样本为计算机发生网络攻击时采集的对应数据,正常样本为计算机未发生网络攻击时采集的对应数据。
本申请实施例对于可能发生网络攻击的计算机进行相应的数据采集;对未发生网络攻击的计算机进行数据采集所得的数据为正常样本,对已发生网络攻击的计算机进行数据采集所得的数据为攻击样本,从而得到有多个样本(样本包括正常样本及攻击样本)的样本集,进而基于样本集实现相应的过采样。需要说明的是,本申请实施例的样本集中各样本所包含的值对应参数项是相同的,但是所包含的各参数项的值并不完全相同;而参数项可以根据实际需要进行设定,例如可以包括TCP连接基本特征(如连接持续时间、协议类型、网络服务类型、连接正常或错误的状态、从源主机到目标主机的数据字节数、从目标主机到源主机的数据字节数、连接是否来自/送达同一主机/端口、错误分段的数量及加急包的数量等)、TCP连接的内容特征(如访问系统敏感文件和目录的次数、登录尝试失败的次数、成功是否登录的结果、某项条件出现的次数、是否获得root shell的结果、是否出现”su root”命令的结果、root用户访问次数、文件创建操作的次数、使用shell命令的次数、访问控制文件的次数、一个FTP会话中出站连接的次数、登录是否属于“hot”列表的结果、是否为guest登录的结果等)、基于时间的网络流量统计特征(如过去两秒内与当前连接具有相同的目标主机的连接数、过去两秒内与当前连接具有相同服务的连接数、过去两秒内在与当前连接具有相同目标主机的连接中出现“SYN”错误的连接的百分比、过去两秒内在与当前连接具有相同服务的连接中出现“SYN”错误的连接的百分比、过去两秒内在与当前连接具有相同目标主机的连接中出现“REJ”错误的连接的百分比、过去两秒内在与当前连接具有相同服务的连接中出现“REJ”错误的连接的百分比、过去两秒内在与当前连接具有相同目标主机的连接中与当前连接具有相同服务的连接的百分比、过去两秒内在与当前连接具有相同目标主机的连接中与当前连接具有不同服务的连接的百分比、过去两秒内在与当前连接具有相同服务的连接中与当前连接具有不同目标主机的连接的百分比等)、基于主机的网络流量统计特征(如前100个连接中与当前连接具有相同目标主机的连接数、前100个连接中与当前连接具有相同目标主机相同服务的连接数、前100个连接中与当前连接具有相同目标主机相同服务的连接所占的百分比、前100个连接中与当前连接具有相同目标主机不同服务的连接所占的百分比、前100个连接中与当前连接具有相同目标主机相同源端口的连接所占的百分比、前100个连接中与当前连接具有相同目标主机相同服务的连接中与当前连接具有不同源主机的连接所占的百分比、前100个连接中与当前连接具有相同目标主机的连接中出现SYN错误的连接所占的百分比、前100个连接中与当前连接具有相同目标主机相同服务的连接中出现SYN错误的连接所占的百分比、前100个连接中与当前连接具有相同目标主机的连接中出现REJ错误的连接所占的百分比、前100个连接中与当前连接具有相同目标主机相同服务的连接中出现REJ错误的连接所占的百分比等)。
S12:对样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含攻击样本的子簇均为待采样子簇。
需要说明的是,样本集很可能为不平衡样本集,不平衡样本集是指样本集中包含的不同类别的样本数量不相等,大量存在的样本为正常样本,而攻击样本类型样本只占一小部分;考虑样本集中类别间的不平衡,在获取到样本集中,对样本集中包含的全部样本进行聚类划分得到相应的多个子簇,每个子簇中包含有至少一个样本。另外,由于子簇中可能包含攻击样本、也可能不包含攻击样本,为了使得过采样到的样本为攻击样本,本申请实施例将包含攻击样本的子簇作为待采样子簇,进而基于包含攻击样本的待采样子簇实现相应的样本过采样。
S13:按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个待采样子簇中选取种子样本,基于种子样本合成新的样本,以实现样本过采样。
其中,预设范围可以根据实际需要进行设定;如果任意样本在另一样本周围预设范围内,则认为该任意样本与另一样本的距离较近,否则说明两者距离较远。另外,如果距离任意样本较近的样本中攻击样本较多,则说明该任意样本周围存在攻击样本的可能性越大。基于此,本申请确定各待采样子簇中各样本周围预设范围内存在攻击样本的数量,进而按照任意样本预设范围内存在攻击样本越多、该任意样本被选取可能性越大的原则,基于待采样子簇中各样本周围预设范围内存在攻击样本的数量、从各待采样子簇中选取出种子样本,然后再合成位于种子样本周围的样本,以实现样本过采样。
本申请获取包含计算机发生网络攻击时采集的攻击样本、未发生网络攻击时采集的正常样本的样本集后,对样本集进行聚类划分得到相应多个子簇;针对该多个子簇中包含攻击样本的子簇,按照周围存在攻击样本越多、被选取可能性越大的原则选取种子样本,进而基于种子样本合成新的样本,以实现样本过采样。由于任意样本周围存在攻击样本越多,合成的位于该任意样本周围的样本是攻击样本的可能性越大,本申请中针对包含有攻击样本的子簇按照周围攻击样本越多被选取可能性越大的原则选择种子样本,进而基于种子样本合成相应新的样本,能够使得新的样本是攻击样本的可能性比较大,进而有效增加样本集中攻击样本的数量,使得样本集实现数据平衡,有效提高基于采集到的样本集实现入侵检测时的入侵检测准确性。
本发明实施例提供的一种过采样方法,从每个待采样子簇中选取种子样本之前,还可以包括:
按照任意待采样子簇中样本密集程度越高、该任意待采样子簇对应采样比例越低的原则,基于每个待采样子簇中样本密集程度确定每个待采样子簇的采样比例,并确定需要合成的新的样本总数量与任意采样比例的乘积、为需要基于该任意采样比例对应待采样子簇合成的新的样本的数量。
基于每个待采样子簇中样本密集程度确定需要基于每个待采样子簇合成的新的样本的数量,可以包括:
确定每个待采样子簇中的任意待采样子簇为当前待采样子簇;
按照下列公式计算当前待采样子簇的样本密集程度:
按照下列公式计算当前待采样子簇的采样比例:
按照下列公式计算需要基于当前待采样子簇合成的新的样本的数量:
Nume=Numsmote*SR;
其中,n为当前待采样子簇中包含的样本总数量,dist为当前待采样子簇中每两个样本之间的欧氏距离的和,intensity为当前待采样子簇的样本密集程度,SR为当前待采样子簇的采样比例,Numsmote为样本集中攻击样本与正常样本的个数差,Nume为需要基于当前待采样子簇合成的新的样本的数量。
本申请实施例在从待采样子簇中选取种子样本之前可以根据不同子簇样本的密集程度计算出过采样的采样比例,进而按照该采样比例实现种子样本的选取及新样本的合成,如果待采样子簇中样本点之间的距离过大,而样本点数又少,则此攻击样本类簇是比较稀疏的,而样本点之间距离较小,样本点数又多,则此攻击样本类簇是比较密集的,因此可以使用样本点个数与样本点之间距离来表征攻击样本类合成簇的密集程度。具体来说,需要合成的新样本的总数量可以为样本集中正常样本总数量与攻击样本总数量的差值,对于某个待采样子簇,该待采样子类簇中含有样本点{x1,x2...,xn],将样本点与样本点之间的欧氏距离的之和记为dist,根据欧氏距离之和及该待采样子簇中样本点的数量n,得到该待采样子簇的样本密集程度intensity如上述公式所示;每个待采样子簇的采样比例与该待采样子簇的样本密集程度intensity成反比,同时所有待采样子簇要合成的样本总数量是固定的,则每个待采样子簇的采样比例SR如上述公式所示;最后根据不平衡样本集中攻击样本与正常样本个数之差Numsmote,和每个待采样子簇的采样比例得到每个待采样子簇要合成的攻击样本的数量Nume,如上述公式所示。可见,本申请实现待采样子簇中样本合成时是基于待采样子簇的样本密集程度实现的,进而使得实现样本合成的操作与待采样子簇的样本密集程度相符合,保证样本合成操作的有效性及准确性。
本发明实施例提供的一种过采样方法,从当前待采样子簇中选取种子样本,可以包括:
按照下列公式计算当前待采样子簇中各样本的概率分布:
其中,seedi为样本i的概率,k为样本i的k近邻中的k,SP为当前待采样子簇中各样本的概率分布,dq为当前待采样子簇中样本i到样本i的k近邻中每个样本之间的距离;
基于当前待采样子簇中各样本的概率分布,按照轮盘赌算法从当前待采样子簇中选取种子样本。
本申请实施例在从任意待采样子簇中选取种子样本时,引入子簇概率分布的概念,具体可以先确定出该任意待采样子簇中各样本的概率分布,进而基于概率分布按照轮盘赌算法增大选择攻击样本边界的概率,实现该任意待采样子簇中种子样本的选择,从而实现周围攻击样本越多、被选取可能性越大的原则的实现,也即使得基于选取到的种子样本合成的新样本是攻击样本的可能性比较大。具体来说,确定任意待采样子簇中各样本的概率分布为根据该任意待采样子簇中各攻击样本与所对应正常边界样本集合的距离提出的;在待采样子簇中C′t中,t的取值范围为需要基于该待采样子簇合成的攻击样本的个数,在合成新的样本中时C′t中任意样本被选中的概率称为种子概率,将待采样子簇C′t所有样本的被选中的概率组合为种子样本选取概率分布(也即概率分布),记为SP;根据样本点xi到xi的K邻近中正常边界样本点集合Smaj(xi)(即xi的K邻近中的正常样本)中的欧氏距离,得到该样本点xi的种子概率seedi,根据所有样本点的种子概率得到该待采样的概率分布。
在得到待采样子簇的概率分布SP后,根据概率分布SP可以确定从大范围内选择样本成为种子样本的最好区域,根据轮盘赌算法对于整体范围概率的选择,选择落在较大概率内的样本成为种子样本会带来更好的效果,减少在随机合成新样本时候产生的误差;进而根据选择样本落概率带的哪个位置,选择最佳位置的样本成为种子样本既可以进行随机样本的合成;简单来说,利用轮盘赌算法实现种子样本选择时,概率分布中相应概率越大,则被选择的可能性也越大。
本发明实施例提供的一种过采样方法,对样本集中包含的全部样本进行聚类划分得到相应的多个子簇,可以包括:
将样本集中包含的全部样本初始化为多个子簇,且每个子簇中至多包含一个攻击样本;
确定距离小于距离阈值的分别包含有攻击样本的两个子簇分别为第一子簇及第二子簇,如果第一子簇及第二子簇之间不存在不含有攻击样本的子簇,则将第一子簇及第二子簇合并,否则,确定无法将第一子簇及第二子簇合并;
返回执行确定第一子簇及第二子簇的步骤,直至任意两个分别包含攻击样本的子簇之间的距离均大于距离阈值为止。
距离阈值可以根据实际需要确定;本申请实施例实现样本集中全部样本的聚类划分可以包括:对样本集进行初始化得到多个子簇,每个子簇中包含一个正常样本或者攻击样本;计算每两个子簇之间的欧式距离(欧式距离表示相似度),合并距离最小的且之间不存在所包含样本全部为正常样本的子簇的两个子簇(或者说距离小于距离阈值且两者之间不存在所包含样本全部为正常样本的子簇);返回执行计算每两个子簇之间的欧式距离,直至不存在无法合并的子簇为止或者子簇的数量足够小为止。从而通过上述步骤有效准确的实现样本集中全部样本的分类。
本发明实施例提供的一种过采样方法,基于种子样本合成新的样本,可以包括:
针对任意种子样本,从该任意种子样本所属待采样子簇包含的属于该任意种子样本k近邻的样本中,选取一个样本作为待用样本,通过在该任意种子样本及对应待用样本之间插值合成新的样本。
本申请实施例中针对任意种子样本,从该种子样本的k近邻样本中选取一个样本作为待用样本,然后再该任意种子样本及该待用样本之间使用随机函数选取位置进行插值合成新的样本,从而实现新样本的快速有效合成。
本发明实施例提供的一种过采样方法,基于种子样本合成新的样本之后,可以包括:
将新的样本加入至样本集中,判断样本集中攻击样本及正常样本的数量差值是否在差值范围内,如果是,则确定完成过采样,否则,返回执行对样本集中包含的全部样本进行聚类划分得到相应的多个子簇的步骤。
其中,差值范围可以根据实际需要进行设定;在确定出样本集中全部种子样本并合成相应的新样本后,将全部新样本加入至样本集中,并判断样本集中攻击样本及正常样本的数量差值是否在差值范围内,如果是,则说明样本集已经达到数据平衡,因此可以直接使用样本集实现入侵检测,否则,返回执行对样本集进行聚类划分得到相应多个子簇的步骤,以继续实现新样本的合成,从而进一步保证样本集的数据平衡性。
本申请实施例首先考虑样本集中类别间的不平衡,通过层次聚类产生攻击样本类子簇,然后根据不同子簇的密集程度计算出过采样的比例,再引入种子子簇概率分布的概念,使用轮盘赌算法增大选择攻击样本类边界样本的概率,在同一个子簇中选择种子样本合成新的样本,从而结合机器学习中的过采样算法可以使得不平衡的入侵检测数据集变为平衡数据集。可以有效的减少重叠样本的产生,保证合成数据的质量,有效减少过采样产生的过拟合问题。具体来说,本申请实施例使用的采样算法为人工合成攻击样本类别过采样算法(Synthetic minority over-sampling Algorithm,SMOTE),该算法针对攻击样本,主要思想是通过随机寻找攻击样本类样本点作为种子样本,然后在距离该样本点k个最临近样本中寻找一个样本,在两个样本点之间使用随机函数选取位置进行插值,合成新的样本,加入到训练集中,该算法的模拟过程使用了K近邻(K-NearestNeighbor,KNN)技术;在使用过采样算法前为了充分利用攻击样本类数据信息,使用层次聚类来进行攻击样本类簇划分。层次聚类可以根据数据之间的相似性,从下而上将所有攻击样本类样本合并为攻击样本类簇,最大程度将每个攻击样本类样本利用起来。
本发明实施例还提供了一种过采样装置,如图2所示,可以包括:
获取模块11,用于:获取包含攻击样本及正常样本的样本集,攻击样本为计算机发生网络攻击时采集的对应数据,正常样本为计算机未发生网络攻击时采集的对应数据;
划分模块12,用于:对样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含攻击样本的子簇均为待采样子簇;
采样模块13,用于:按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个待采样子簇中选取种子样本,基于种子样本合成新的样本,以实现样本过采样。
本发明实施例还提供了一种过采样设备,可以包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上任一项过采样方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任一项过采样方法的步骤。
需要说明的是,本发明实施例提供的一种过采样装置、设备及存储介质中相关部分的说明请参见本发明实施例提供的一种过采样方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (7)

1.一种过采样方法,其特征在于,包括:
获取包含攻击样本及正常样本的样本集,所述攻击样本为计算机发生网络攻击时采集的对应数据,所述正常样本为所述计算机未发生网络攻击时采集的对应数据;
对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含所述攻击样本的子簇均为待采样子簇;
按照任意待采样子簇中样本密集程度越高、该任意待采样子簇对应采样比例越低的原则,基于每个待采样子簇中样本密集程度确定每个待采样子簇的采样比例,并确定需要合成的新的样本总数量与采样比例的乘积、为需要基于采样比例对应待采样子簇合成的新的样本的数量,包括:确定每个待采样子簇中的任意待采样子簇为当前待采样子簇;按照下列公式计算当前待采样子簇的样本密集程度:
按照下列公式计算当前待采样子簇的采样比例:
按照下列公式计算需要基于当前待采样子簇合成的新的样本的数量:
Nume=Numsmote*SR;
其中,n为当前待采样子簇中包含的样本总数量,dist为当前待采样子簇中每两个样本之间的欧氏距离的和,intensity为当前待采样子簇的样本密集程度,SR为当前待采样子簇的采样比例,Numsmote为所述样本集中攻击样本与正常样本的个数差,Nume为需要基于当前待采样子簇合成的新的样本的数量;
按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个所述待采样子簇中选取种子样本,基于所述种子样本合成新的样本,以实现样本过采样;从当前待采样子簇中选取种子样本,包括:按照下列公式计算当前待采样子簇中各样本的概率分布:
其中,seedi为样本i的概率,k为样本i的k近邻中的k,SP为当前待采样子簇中各样本的概率分布,dq为当前待采样子簇中样本i到样本i的k近邻中每个样本之间的距离;
基于当前待采样子簇中各样本的概率分布,按照轮盘赌算法从当前待采样子簇中选取种子样本。
2.根据权利要求1所述的方法,其特征在于,对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,包括:
将所述样本集中包含的全部样本初始化为多个子簇,且每个所述子簇中至多包含一个攻击样本;
确定距离小于距离阈值的分别包含有攻击样本的两个子簇分别为第一子簇及第二子簇,如果第一子簇及第二子簇之间不存在不含有攻击样本的子簇,则将第一子簇及第二子簇合并,否则,确定无法将第一子簇及第二子簇合并;
返回执行确定第一子簇及第二子簇的步骤,直至任意两个分别包含攻击样本的子簇之间的距离均大于距离阈值为止。
3.根据权利要求2所述的方法,其特征在于,基于所述种子样本合成新的样本,包括:
针对任意种子样本,从该任意种子样本所属待采样子簇包含的属于该任意种子样本k近邻的样本中,选取一个样本作为待用样本,通过在该任意种子样本及对应待用样本之间插值合成新的样本。
4.根据权利要求3所述的方法,其特征在于,基于所述种子样本合成新的样本之后,包括:
将新的样本加入至样本集中,判断所述样本集中攻击样本及正常样本的数量差值是否在差值范围内,如果是,则确定完成过采样,否则,返回执行对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇的步骤。
5.一种过采样装置,其特征在于,包括:
获取模块,用于:获取包含攻击样本及正常样本的样本集,所述攻击样本为计算机发生网络攻击时采集的对应数据,所述正常样本为所述计算机未发生网络攻击时采集的对应数据;
划分模块,用于:对所述样本集中包含的全部样本进行聚类划分得到相应的多个子簇,并确定包含所述攻击样本的子簇均为待采样子簇;
采样模块,用于:按照任意待采样子簇中样本密集程度越高、该任意待采样子簇对应采样比例越低的原则,基于每个待采样子簇中样本密集程度确定每个待采样子簇的采样比例,并确定需要合成的新的样本总数量与采样比例的乘积、为需要基于采样比例对应待采样子簇合成的新的样本的数量,包括:确定每个待采样子簇中的任意待采样子簇为当前待采样子簇;按照下列公式计算当前待采样子簇的样本密集程度:
按照下列公式计算当前待采样子簇的采样比例:
按照下列公式计算需要基于当前待采样子簇合成的新的样本的数量:
Nume=Numsmote*SR;
其中,n为当前待采样子簇中包含的样本总数量,dist为当前待采样子簇中每两个样本之间的欧氏距离的和,intensity为当前待采样子簇的样本密集程度,SR为当前待采样子簇的采样比例,Numsmote为所述样本集中攻击样本与正常样本的个数差,Nume为需要基于当前待采样子簇合成的新的样本的数量;按照任意样本周围预设范围内存在攻击样本越多、该任意样本被选取为种子样本的概率越大的原则,从每个所述待采样子簇中选取种子样本,基于所述种子样本合成新的样本,以实现样本过采样;从当前待采样子簇中选取种子样本,包括:按照下列公式计算当前待采样子簇中各样本的概率分布:
其中,seedi为样本i的概率,k为样本i的k近邻中的k,SP为当前待采样子簇中各样本的概率分布,dq为当前待采样子簇中样本i到样本i的k近邻中每个样本之间的距离;基于当前待采样子簇中各样本的概率分布,按照轮盘赌算法从当前待采样子簇中选取种子样本。
6.一种过采样设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述过采样方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述过采样方法的步骤。
CN202111013130.5A 2021-08-31 2021-08-31 一种过采样方法、装置、设备及存储介质 Active CN113656796B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111013130.5A CN113656796B (zh) 2021-08-31 2021-08-31 一种过采样方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111013130.5A CN113656796B (zh) 2021-08-31 2021-08-31 一种过采样方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113656796A CN113656796A (zh) 2021-11-16
CN113656796B true CN113656796B (zh) 2024-02-27

Family

ID=78482557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111013130.5A Active CN113656796B (zh) 2021-08-31 2021-08-31 一种过采样方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113656796B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114070635A (zh) * 2021-11-22 2022-02-18 深圳大学 Shdos数据处理、模型训练方法、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981624A (zh) * 2019-03-18 2019-07-05 中国科学院计算机网络信息中心 入侵检测方法、装置及存储介质
CN111314353A (zh) * 2020-02-19 2020-06-19 重庆邮电大学 一种基于混合采样的网络入侵检测方法及系统
CN111651755A (zh) * 2020-05-08 2020-09-11 中国联合网络通信集团有限公司 入侵检测方法和装置
CN112418352A (zh) * 2020-12-14 2021-02-26 哈尔滨理工大学 一种基于谱聚类的过采样方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981624A (zh) * 2019-03-18 2019-07-05 中国科学院计算机网络信息中心 入侵检测方法、装置及存储介质
CN111314353A (zh) * 2020-02-19 2020-06-19 重庆邮电大学 一种基于混合采样的网络入侵检测方法及系统
CN111651755A (zh) * 2020-05-08 2020-09-11 中国联合网络通信集团有限公司 入侵检测方法和装置
CN112418352A (zh) * 2020-12-14 2021-02-26 哈尔滨理工大学 一种基于谱聚类的过采样方法

Also Published As

Publication number Publication date
CN113656796A (zh) 2021-11-16

Similar Documents

Publication Publication Date Title
CN112953924B (zh) 网络异常流量检测方法、系统、存储介质、终端及应用
CN111107102A (zh) 基于大数据实时网络流量异常检测方法
CN110166454B (zh) 一种基于自适应遗传算法的混合特征选择入侵检测方法
CN106982230B (zh) 一种流量检测方法及系统
CN111953665B (zh) 服务器攻击访问识别方法及系统、计算机设备、存储介质
CN111786951B (zh) 流量数据特征提取方法、恶意流量识别方法及网络系统
Garg et al. HyClass: Hybrid classification model for anomaly detection in cloud environment
CN113468071A (zh) 模糊测试用例生成方法、系统、计算机设备及存储介质
CN113656796B (zh) 一种过采样方法、装置、设备及存储介质
CN111935185A (zh) 基于云计算构建大规模诱捕场景的方法及系统
WO2021169239A1 (zh) 一种爬虫数据的识别方法、系统及设备
CN111224984B (zh) 一种基于数据挖掘算法的Snort改进方法
Chindove et al. Adaptive machine learning based network intrusion detection
Nalavade et al. Evaluation of k-means clustering for effective intrusion detection and prevention in massive network traffic data
CN111092873B (zh) 非对称卷积网络的流量检测模型的训练方法及检测方法
CN110581857B (zh) 一种虚拟执行的恶意软件检测方法及系统
KR20210088146A (ko) Ae-cgan 모델 기반의 네트워크 침입 탐지 시스템 및 방법
CN115514720B (zh) 一种面向可编程数据平面的用户活动分类方法及应用
CN116915450A (zh) 基于多步网络攻击识别和场景重构的拓扑剪枝优化方法
Atli et al. Network intrusion detection using flow statistics
CN114760113B (zh) 一种异常告警检测方法、装置及电子设备和存储介质
CN115567224A (zh) 一种用于检测区块链交易异常的方法及相关产品
CN113810342B (zh) 一种入侵检测方法、装置、设备、介质
Sija et al. Automatic payload signature generation for accurate identification of internet applications and application services
CN114866297A (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