CN116633804A - 网络流量检测模型的建模方法、防护方法及相关设备 - Google Patents
网络流量检测模型的建模方法、防护方法及相关设备 Download PDFInfo
- Publication number
- CN116633804A CN116633804A CN202310532203.4A CN202310532203A CN116633804A CN 116633804 A CN116633804 A CN 116633804A CN 202310532203 A CN202310532203 A CN 202310532203A CN 116633804 A CN116633804 A CN 116633804A
- Authority
- CN
- China
- Prior art keywords
- network traffic
- log data
- detection model
- network
- word vector
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 116
- 238000000034 method Methods 0.000 title claims abstract description 76
- 239000011159 matrix material Substances 0.000 claims abstract description 78
- 238000013528 artificial neural network Methods 0.000 claims abstract description 57
- 238000012549 training Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims description 23
- 230000003595 spectral effect Effects 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 12
- 238000001228 spectrum Methods 0.000 claims description 12
- 230000002159 abnormal effect Effects 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000012886 linear function Methods 0.000 claims description 10
- 238000002372 labelling Methods 0.000 claims description 5
- 238000007637 random forest analysis Methods 0.000 claims description 5
- 238000010187 selection method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 16
- 230000006399 behavior Effects 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000003058 natural language processing Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007786 learning performance Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
- G06F16/212—Schema design and management with details for data modelling support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning 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/06—Management of faults, events, alarms or notifications
-
- 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/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开实施例提供了一种网络流量检测模型的建模方法、应用程序的防护方法、装置、计算机设备、可读存储介质及程序,涉及计算机技术领域。该方法包括:获取网络流量的日志数据;将所述网络流量的日志数据进行标注;将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。本公开实施例提供的方案建立的网络流量检测模型,能够根据日志数据对故障进行检测的网络流量检测模型。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种网络流量检测模型的建模方法、应用程序的防护方法、装置、计算机设备、可读存储介质及程序。
背景技术
目前,云计算、区块链和第六代移动通信等新技术的发展带动了海量的服务器新需求,服务器也朝着集约化一体化管理演进。虚拟化的服务器资源带来了更高效的资源利用率,但也为故障检测带来了很大困难,过于复杂的内部结构让开发人员很难迅速调试和测试。因此,如何通过智能化技术快速判断故障发生的时间和类型是未来十分意义的研究方向。
发明内容
本公开实施例提供了一种网络流量检测模型的建模方法、应用程序的防护方法、装置、计算机设备、可读存储介质及程序,涉及计算机技术领域,建立的网络流量检测模型,能够根据日志数据对故障进行检测的网络流量检测模型。
本公开实施例提供了一种网络流量检测模型的建模方法,包括:获取网络流量的日志数据;将所述网络流量的日志数据进行标注;将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。
在一个实施例中,根据所述网络流量的日志数据词向量矩阵确定神经网络的层数包括:将所述网络流量的日志数据词向量矩阵进行傅里叶变换以获取所述词向量矩阵的频谱图;根据所述频谱图获取第一线性值;根据所述第一线性值通过线性整流函数ReLU获取所述神经网络的层数。
在一个实施例中,根据所述频谱图获取第一线性值包括:根据所述频谱图获取最大频率和70频谱功率谱范围;将所述最大频率和所述70频谱功率谱范围代入第一线性函数以获得所述第一线性值。
在一个实施例中,建模方法还包括:根据具体实践获得不同训练情形下所述神经网络的最佳层数;获取不同训练情形下词向量矩阵对应的最大频率和70频谱功率谱范围;根据不同训练情形下所述神经网络的最佳层数和所述ReLU进行反向传播,以获取所述第一线性函数;其中,所述第一线性函数的变量为最大频率和70频谱功率谱范围。
在一个实施例中,建模方法还包括:根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重。
在一个实施例中,根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重包括:将所述网络流量的日志数据进行类别标注;将类别标注完的所述网络流量的日志数据用随机森林提升树特征选择法获取不同类别的信息增益率;根据不同类别的信息增益率确定相应类别的注意力权重值。
本公开实施例提供了一种应用程序的防护方法,包括:获取用户程序的访问日志数据;将所述访问日志数据转换成词向量矩阵;将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问;其中所述网络流量检测模型是网络流量检测模型的建模方法中任一项所述的方法所建立的网络流量检测模型。
本公开实施例提供了一种网络流量检测模型的建模装置,包括:第一获取模块,用于获取网络流量的日志数据;标注模块,用于将所述网络流量的日志数据进行标注;第一转换模块,用于将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;第一确定模块,用于根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;训练模块,用于将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。
本公开实施例提供了一种应用程序的防护装置,包括:第二获取模块,用于获取用户程序的访问日志数据;第二转换模块,用于将所述访问日志数据转换成词向量矩阵;输入模块,用于将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;第二确定模块,用于在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;所述第二确定模块,用于在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问;其中所述网络流量检测模型是网络流量检测模型的建模中任一项所述的方法所建立的网络流量检测模型。
本公开实施例提供了一种计算机设备,包括处理器、存储器、输入输出接口;所述处理器分别与所述存储器和所述输入输出接口相连,其中,所述输入输出接口用于接收数据及输出数据,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行如上实施例中任一项所述的方法。
本公开实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行如上实施例中中任一项所述的方法。
本公开实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上实施例中任一项所述的方法。
本申请的建模方法,通过获取网络流量的日志数据;将所述网络流量的日志数据进行标注;将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。本公开实施例提供的方案建立的网络流量检测模型,能够根据日志数据对故障进行检测的网络流量检测模型。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本公开实施方式的网络流量检测模型的建模方法的示例性***架构的示意图;
图2是本公开实施例提供的一种网络流量检测模型的建模方法的流程图;
图3示出了本公开一个实施例的网络流量的日志数据转换为词向量矩阵的示意图;
图4是本公开实施例提供的根据所述网络流量的日志数据词向量矩阵确定神经网络的层数方法的流程图;
图5是本公开实施例提供的根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重方法的流程图;
图6是本公开实施例提供的神经网络的训练或预测结构图;
图7是本公开实施例提供的一种应用程序的防护方法的流程图;
图8是本公开实施例提供的一种网络流量检测模型的建模装置的结构示意图;
图9是本公开实施例提供的一种应用程序的防护装置的结构示意图;
图10是本公开实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
在本公开实施例中,可以基于深度学习技术,获取网络流量的日志数据;将所述网络流量的日志数据进行标注;将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力,从而建立能够根据日志数据对故障进行检测的网络流量检测模型。
下面首先对本公开的一些术语进行说明:
深度学习(DL,Deep Learning)是机器学习(ML,Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI,ArtificialIntelligence)。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字、图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
词嵌入,自然语言处理(NLP)中语言模型与表征学习技术的统称。概念上而言,它是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。词嵌入的方法包括人工神经网络、对词语同现矩阵降维、概率模型以及单词所在上下文的显式表示等。在底层输入中,使用词嵌入来表示词组的方法极大提升了NLP中语法分析器和文本情感分析等的效果。
超参数,在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,需要对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。
本公开实施例提供的方案涉及深度学习和NLP等技术。
图1示出了可以应用本公开实施方式的网络流量检测模型的建模方法的示例性***架构100的示意图。
如图1所示,***架构100可以包括终端101、102、103中的一种或多种,网络104和服务器105。网络104是用以在终端101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
终端101、102、103通过网络104与服务器105交互,可以接收或发送消息等。终端101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器。例如终端103(也可以是终端101或102)向服务器105发送网络流量检测模型的建模的指令,服务器105可以获取网络流量的日志数据;将所述网络流量的日志数据进行标注;将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力,以使所述网络流量检测模型具备根据所述日志数据识别故障的能力。
图1中***架构也可以应用本申请的应用程序的防护方法。本申请的网络流量检测模型在完成建模后,可以设置在服务器105,在用户通过终端103(也可以是终端101或102)向服务器105发出调用请求时,服务器105端的网络流量检测模型可以对用户程序的访问日志数据进行检测,在网络流量检测模型检测为正常访问日志时,允许用户访问;在网络流量检测模型检测为异常访问日志时,拒绝用户访问。
其中,终端可以是手机(如终端101)或平板电脑(如终端102),还可以是台式计算机(如终端101)等,在此不做限制。其中,终端中可以显示应用程序,该应用程序可以是网络流量检测模型的建模的应用程序等。其中,图1中的终端仅为例举出的部分设备,在本公开中终端并不仅限于该图1中所例举的设备。
可以理解的是,本公开实施例中所提及的终端可以是一种用户设备,本公开实施例中的服务器包括但不限于服务器或服务器组成的集群。其中,以上所提及的终端可以是一种电子设备,包括但不限于手机、平板电脑、智能语音交互设备、智能家电、车载终端、台式电脑、笔记本电脑、掌上电脑、车载设备、增强现实/虚拟现实(Augmented Reality/Virtual Reality,AR/VR)设备、头盔显示器、智能电视、可穿戴设备、智能音箱、数码相机、摄像头及其他具备网络接入能力的移动互联网设备(mobile internet device,MID),或者火车、轮船、飞行等场景下的终端设备等。
其中,以上所提及的服务器可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、车路协同、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,还可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***。
可选的,本公开实施例中所涉及的数据可以存储在云平台中,或者可以基于云存储技术、区块链技术对该数据进行存储,在此不做限制。
日志数据是在程序中嵌入的打印输出代码所产生的文本数据。日志数据记录了程序运行时的变量和执行状态等关键信息。通过日志数据,能够定位异常请求,追踪程序执行逻辑,执行更加细粒度的故障诊断。日志数据作为文本数据,既可以为机器学习的特征工程提供信息,也是属于深度学习广泛应用的自然语言处理。
图2是本公开实施例提供的一种网络流量检测模型的建模方法的流程图。本公开实施例提供的方法可以由图1实施例中的终端或服务器执行,或由终端和服务器交互执行。
如图2所示,本公开实施例提供的方法可以包括如下步骤。
在步骤S210中,获取网络流量的日志数据。
在该步骤中,终端或服务器获取网络流量的日志数据。其中,该步骤中的日志数据可以是用于对模型进行训练和测试的日志数据,
在步骤S220中,将所述网络流量的日志数据进行标注。
在该步骤中,终端或服务器将所述网络流量的日志数据进行标注。标注过程中可以是终端或服务器自动对所述网络流量的日志数据进行标注,也可以是工作人员通过终端或服务器对所述网络流量的日志数据进行标注。在一个实施例中,在所述日志数据为故障日志时,将所述日志数据标注为故障日志数据;在所述日志数据为非故障日志时,将所述日志数据标注为非故障日志数据。
在步骤S230中,将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵。
在该步骤中,终端或服务器将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵。
图3示出了本公开一个实施例的网络流量的日志数据转换为词向量矩阵的示意图。
网络流量的日志数据是持续产生的文本信息,而计算机以及神经网络是无法理解字符型信息的。因此,为了让计算机理解日志数据,必须首先将日志数据进行向量化,通过词嵌入转换为词向量矩阵。可以通过pytorch提供的嵌入函数,在设定好嵌入向量大小后获取词向量,并在词向量基础上补充位置编码和类别编码。在获取词向量矩阵后,将词向量矩阵送入到神经网络中进行学习。
在一个实施例中,可以通过正弦sin函数位置的计算给出位置编码并连接到词向量中;此外,可以根据网络流量类别的不同补充类别编码,这样可以在一开始便提供给神经网络一定的参考信息。
在步骤S240中,根据所述网络流量的日志数据词向量矩阵确定神经网络的层数。
在该步骤中,终端或服务器根据所述网络流量的日志数据词向量矩阵确定神经网络的层数。在该步骤中可以根据傅里叶变换确定神经网络的层数。
在步骤S250中,将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。
在该步骤中,终端或服务器将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。在一个实施例中,将所述词向量矩阵作为输入对卷积神经网络进行训练以完成网络流量检测模型的建模。
图2的网络流量检测模型的建模方法,通过获取网络流量的日志数据;将所述网络流量的日志数据进行标注;将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力,能够建立根据日志数据对故障进行检测的网络流量检测模型。
图4是本公开实施例提供的根据所述网络流量的日志数据词向量矩阵确定神经网络的层数方法的流程图。本公开实施例提供的方法可以由图1实施例中的终端或服务器执行,或由终端和服务器交互执行。
如图4所示,本公开实施例提供的方法可以包括如下步骤。
在步骤S410中,将所述网络流量的日志数据词向量矩阵进行傅里叶变换以获取所述词向量矩阵的频谱图。
在该步骤中,终端或服务器将所述网络流量的日志数据词向量矩阵进行傅里叶变换以获取所述词向量矩阵的频谱图。
在步骤S420中,根据所述频谱图获取第一线性值。
在该步骤中,终端或服务器根据所述频谱图获取第一线性值。
其中,根据所述频谱图获取第一线性值包括:根据所述频谱图获取最大频率和70频谱功率谱范围;将所述最大频率和所述70频谱功率谱范围代入第一线性函数以获得所述第一线性值。70频谱功率谱范围就是70%的频率所在的范围。
在一个实施例中,根据具体实践获得不同训练情形下所述神经网络的最佳层数;获取不同训练情形下词向量矩阵对应的最大频率和70频谱功率谱范围;根据不同训练情形下所述神经网络的最佳层数和所述ReLU进行反向传播,以获取所述第一线性函数;其中,所述第一线性函数的变量为最大频率和70频谱功率谱范围。第一线性函数例如为公式(1):
f(x,y)=ax+by+c (1)
其中,x为最大频率;y为70频谱功率谱范围;abc为参数,通过不同训练情形下所述神经网络的最佳层数和所述ReLU进行反向传播可以获得。
在步骤S430中,根据所述第一线性值通过线性整流函数ReLU获取所述神经网络的层数。
在该步骤中,终端或服务器根据所述第一线性值通过线性整流函数ReLU获取所述神经网络的层数。
在一个实施例中,网络流量检测模型的建模方法还包括:根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重。
图5是本公开实施例提供的根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重方法的流程图。本公开实施例提供的方法可以由图1实施例中的终端或服务器执行,或由终端和服务器交互执行。
如图5所示,本公开实施例提供的方法可以包括如下步骤。
在步骤S510中,将所述网络流量的日志数据进行类别标注。
在该步骤中,终端或服务器将所述网络流量的日志数据进行类别标注。
在步骤S520中,将类别标注完的所述网络流量的日志数据用随机森林提升树特征选择法获取不同类别的信息增益率。
在该步骤中,终端或服务器将类别标注完的所述网络流量的日志数据用随机森林提升树特征选择法获取不同类别的信息增益率。
在步骤S530中,根据不同类别的信息增益率确定相应类别的注意力权重值。
在该步骤中,终端或服务器根据不同类别的信息增益率确定相应类别的注意力权重值。
图6是本公开实施例提供的神经网络的训练或预测结构图。
如图6所示,本申请的神经网络是batch_size为单位进行处理的,即同时将网络流量的batch_size个数据进行卷积并送入到全连接层。在全连接层创新的添加注意力机制,它会为每batch_size的数据依据它的行为重要性(类别)赋予不同的权重,而这个权重是通过随机森林提升树特征选择法中的信息增益率来实现获取的。具体实现为:将网络流量的调用信息分为了6类(服务行为,注册表行为,操作进程行为,***信息获取行为,网络通信行为,操作文件行为),对应着6种不同的端口调用,而每种端口的API(ApplicationProgramming Interface,应用程序接口)数量是不同的,由信息熵的理论可知,某个端口的数量越多,那么确定了具体调用接口后的信息增益就越大,越有可能从这条数据中判断流量是哪类,因此理应对这些信息增益更大的流量调用信息予以更高的权重。
图7是本公开实施例提供的一种应用程序的防护方法的流程图。本公开实施例提供的方法可以由图1实施例中的服务器执行。
本申请上述的网络流量检测模型在完成建模后,可以设置在图1中***架构的服务器105端,在用户通过终端103(也可以是终端101或102)向服务器105发出调用请求时,会生成相应的访问日志数据,服务器105端的网络流量检测模型可以通过图7的方法对用户程序的访问日志数据进行检测。
如图7所示,本公开实施例提供的方法可以包括如下步骤:
在步骤S710中,获取用户程序的访问日志数据;
在步骤S720中,将所述访问日志数据转换成词向量矩阵;
在步骤S730中,将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;
在步骤S740中,在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;
在步骤S750中,在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问。
本公开的应用程序的防护方法,在接收用户程序的调用请求时,获取用户程序的访问日志数据;将所述访问日志数据转换成词向量矩阵;将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问,能够实现对用户程序的访问的检测。
图8是本公开实施例提供的一种网络流量检测模型的建模装置的结构示意图。
如图8所示,本公开实施例提供的网络流量检测模型的建模装置800可以包括:
第一获取模块810,用于获取网络流量的日志数据;
标注模块820,用于将所述网络流量的日志数据进行标注;
第一转换模块830,用于将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;
第一确定模块840,用于根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;
训练模块850,用于将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。
本申请的网络流量检测模型的建模装置,通过第一获取模块,用于获取网络流量的日志数据;标注模块,用于将所述网络流量的日志数据进行标注;第一转换模块,用于将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;第一确定模块,用于根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;训练模块,用于将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力,从而建立能够根据日志数据对故障进行检测的网络流量检测模型。
图9是本公开实施例提供的一种应用程序的防护装置的结构示意图。
如图9所示,本公开实施例提供的应用程序的防护装置900可以包括:
第二获取模块910,用于获取用户程序的访问日志数据;
第二转换模块920,用于将所述访问日志数据转换成词向量矩阵;
输入模块930,用于将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;
第二确定模块940,用于在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;
所述第二确定模块940,用于在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问;
本公开的应用程序的防护装置,通过第二获取模块,用于获取用户程序的访问日志数据;第二转换模块,用于将所述访问日志数据转换成词向量矩阵;输入模块,用于将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;第二确定模块,用于在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;所述第二确定模块,用于在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问,能够实现对用户程序的访问的检测。
参见图10,图10是本公开实施例提供的一种计算机设备1000的结构示意图。如图10所示,本公开实施例中的计算机设备可以包括:一个或多个处理器1001、存储器1002和输入输出接口1003。该处理器1001、存储器1002和输入输出接口1003通过总线1004连接。存储器1002用于存储计算机程序,该计算机程序包括程序指令,输入输出接口1003用于接收数据及输出数据,如用于宿主机与计算机设备之间进行数据交互,或者用于在宿主机中的各个虚拟机之间进行数据交互;处理器1001用于执行存储器1002存储的程序指令。
其中,该处理器1001可以执行如下操作:
获取日志数据;将所述日志数据进行分组,其中每组日志数据均属于同一程序;将所述日志数据以组为单位进行标注;将完成标注的日志数据组转换成词嵌入矩阵组;将所述词嵌入矩阵组作为输入对神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据所述日志数据识别故障的能力。
或者,该处理器1001可以执行如下操作:
获取用户程序的访问日志数据;将所述访问日志数据转换成词向量矩阵;将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问。
在一些可行的实施方式中,该处理器1001可以是中央处理单元(centralprocessing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1002可以包括只读存储器和随机存取存储器,并向处理器1001和输入输出接口1003提供指令和数据。存储器1002的一部分还可以包括非易失性随机存取存储器。例如,存储器1002还可以存储设备类型的信息。
具体实现中,该计算机设备可通过其内置的各个功能模块执行如上述实施例中各个步骤所提供的实现方式,具体可参见上述实施例中各个步骤所提供的实现方式,在此不再赘述。
本公开实施例通过提供一种计算机设备,包括:处理器、输入输出接口、存储器,通过处理器获取存储器中的计算机程序,执行上述实施例中所示方法的各个步骤,进行传输操作。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序适于由该处理器加载并执行上述实施例中各个步骤所提供的方法,具体可参见上述实施例中各个步骤所提供的实现方式,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本公开所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本公开方法实施例的描述。作为示例,计算机程序可被部署为在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行。
该计算机可读存储介质可以是前述任一实施例提供的装置或者该计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart mediacard,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本公开实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中的各种可选方式中所提供的方法。
本公开实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在该说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
本公开实施例提供的方法及相关装置是参照本公开实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程传输设备的处理器以产生一个机器,使得通过计算机或其他可编程传输设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程传输设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程传输设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本公开较佳实施例而已,当然不能以此来限定本公开之权利范围,因此依本公开权利要求所作的等同变化,仍属本公开所涵盖的范围。
Claims (12)
1.一种网络流量检测模型的建模方法,其特征在于,包括:
获取网络流量的日志数据;
将所述网络流量的日志数据进行标注;
将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;
根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;
将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。
2.根据权利要求1所述的方法,其特征在于,根据所述网络流量的日志数据词向量矩阵确定神经网络的层数包括:
将所述网络流量的日志数据词向量矩阵进行傅里叶变换以获取所述词向量矩阵的频谱图;
根据所述频谱图获取第一线性值;
根据所述第一线性值通过线性整流函数ReLU获取所述神经网络的层数。
3.根据权利要求2所述的方法,其特征在于,根据所述频谱图获取第一线性值包括:
根据所述频谱图获取最大频率和70频谱功率谱范围;
将所述最大频率和所述70频谱功率谱范围代入第一线性函数以获得所述第一线性值。
4.根据权利要求3所述的方法,其特征在于,还包括:
根据具体实践获得不同训练情形下所述神经网络的最佳层数;
获取不同训练情形下词向量矩阵对应的最大频率和70频谱功率谱范围;
根据不同训练情形下所述神经网络的最佳层数和所述ReLU进行反向传播,以获取所述第一线性函数;
其中,所述第一线性函数的变量为最大频率和70频谱功率谱范围。
5.根据权利要求1所述的方法,其特征在于,还包括:
根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重。
6.根据权利要求5所述的方法,其特征在于,根据所述网络流量的日志数据的类别为所述神经网络的全连接层赋予不同日志类别的注意力权重包括:
将所述网络流量的日志数据进行类别标注;
将类别标注完的所述网络流量的日志数据用随机森林提升树特征选择法获取不同类别的信息增益率;
根据不同类别的信息增益率确定相应类别的注意力权重值。
7.一种应用程序的防护方法,其特征在于,包括:
获取用户程序的访问日志数据;
将所述访问日志数据转换成词向量矩阵;
将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;
在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;
在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问;
其中所述网络流量检测模型是权利要求1-6中任一项所述的方法所建立的网络流量检测模型。
8.一种网络流量检测模型的建模装置,其特征在于,包括:
第一获取模块,用于获取网络流量的日志数据;
标注模块,用于将所述网络流量的日志数据进行标注;
第一转换模块,用于将标注后的所述网络流量的日志数据向量化以获得所述网络流量的日志数据词向量矩阵;
第一确定模块,用于根据所述网络流量的日志数据词向量矩阵确定神经网络的层数;
训练模块,用于将所述词向量矩阵作为输入对所述神经网络进行训练以完成网络流量检测模型的建模,以使所述网络流量检测模型具备根据日志数据识别故障的能力。
9.一种应用程序的防护装置,其特征在于,包括:
第二获取模块,用于获取用户程序的访问日志数据;
第二转换模块,用于将所述访问日志数据转换成词向量矩阵;
输入模块,用于将所述访问日志数据的词向量矩阵输入至通过训练的网络流量检测模型进行检测;
第二确定模块,用于在所述网络流量检测模型检测为正常访问日志时,允许所述用户程序访问;
所述第二确定模块,用于在所述网络流量检测模型检测为异常访问日志时,拒绝所述用户程序访问;
其中所述网络流量检测模型是权利要求1-6中任一项所述的方法所建立的网络流量检测模型。
10.一种计算机设备,其特征在于,包括处理器、存储器、输入输出接口;
所述处理器分别与所述存储器和所述输入输出接口相连,其中,所述输入输出接口用于接收数据及输出数据,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-6或7中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-6或7中任一项所述的方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-6或7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310532203.4A CN116633804A (zh) | 2023-05-11 | 2023-05-11 | 网络流量检测模型的建模方法、防护方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310532203.4A CN116633804A (zh) | 2023-05-11 | 2023-05-11 | 网络流量检测模型的建模方法、防护方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116633804A true CN116633804A (zh) | 2023-08-22 |
Family
ID=87620553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310532203.4A Pending CN116633804A (zh) | 2023-05-11 | 2023-05-11 | 网络流量检测模型的建模方法、防护方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116633804A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435511A (zh) * | 2023-12-20 | 2024-01-23 | 厦门市唯云网络科技有限公司 | 一种基于图神经网络的流量监测软件的测试方法和装置 |
-
2023
- 2023-05-11 CN CN202310532203.4A patent/CN116633804A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435511A (zh) * | 2023-12-20 | 2024-01-23 | 厦门市唯云网络科技有限公司 | 一种基于图神经网络的流量监测软件的测试方法和装置 |
CN117435511B (zh) * | 2023-12-20 | 2024-03-19 | 厦门市唯云网络科技有限公司 | 一种基于图神经网络的流量监测软件的测试方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111460446B (zh) | 基于模型的恶意文件检测方法及装置 | |
CN109743311A (zh) | 一种WebShell检测方法、装置及存储介质 | |
CN114268747A (zh) | 基于虚拟数字人的访谈业务处理方法及相关装置 | |
CN116633804A (zh) | 网络流量检测模型的建模方法、防护方法及相关设备 | |
CN115116458B (zh) | 语音数据转换方法、装置、计算机设备及存储介质 | |
CN114422271B (zh) | 数据处理方法、装置、设备及可读存储介质 | |
CN115687980A (zh) | 数据表的脱敏分类方法、分类模型训练方法及装置 | |
CN116541492A (zh) | 一种数据处理方法及相关设备 | |
CN112367222B (zh) | 网络异常检测方法和装置 | |
CN117473249A (zh) | 网络流量检测模型的建模方法、检测方法及相关设备 | |
CN117149996A (zh) | 面向人工智能应用的人机界面数字会话挖掘方法及ai*** | |
CN116881971A (zh) | 一种敏感信息泄露检测方法、设备及存储介质 | |
CN116704581A (zh) | 人脸识别方法、装置、设备及存储介质 | |
CN112765022B (zh) | 一种基于数据流的Webshell静态检测方法及电子设备 | |
CN115203674A (zh) | 一种应用程序自动登录方法、***、装置及存储介质 | |
CN114266906A (zh) | 用户端识别违规数据的方法、设备、介质及程序产品 | |
CN114419371A (zh) | 图像分类识别模型训练方法、装置及计算机设备 | |
CN113888760A (zh) | 基于软件应用的违规信息监控方法、装置、设备及介质 | |
CN113935847A (zh) | 线上流程的风险处理方法、装置、服务器及介质 | |
CN113688232A (zh) | 招标文本分类方法、装置、存储介质及终端 | |
CN115550014B (zh) | 应用程序防护方法及相关设备 | |
CN115480946B (zh) | 故障检测模型的建模方法、防护实现方法及相关设备 | |
CN113535594B (zh) | 业务场景测试用例的生成方法、装置、设备和存储介质 | |
CN115238805B (zh) | 异常数据识别模型的训练方法及相关设备 | |
CN116599718A (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 |