一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于神经网络隐LSTM模型的二进制流信息分析方法与流程

2022-03-23 02:40:03 来源:中国专利 TAG:

基于神经网络隐lstm模型的二进制流信息分析方法
技术领域
1.本发明涉及数据流信息分析技术领域,具体涉及一种基于神经网络隐lstm模型的二进制流信息分析方法。


背景技术:

2.随着网络规模的日益扩大,网络攻击数量也随之增多。如何保证网络系统的正常平稳运行,成为了网络安全的最主要课题,而对二进制流信息的分析是发现威胁情报的重要环节。通过对二进制流信息的分析和学习,可以总结出其中威胁情报部分的攻击行为和攻击特征,并为网络安全的策略应对和已知及未知的攻击行为特征提取,提供良好的基础。
3.现有的二进制流信息分析主要为攻击特征提取技术,分为基于网络的攻击特征提取技术和基于主机的攻击特征提取技术,其中基于网络的攻击特征提取技术,利用网络上的攻击信息,通过算法对二进制流信息进行分析,并提取攻击信息中的攻击特征。攻击特征提取的过程十分繁琐复杂,采用渗透专家进行攻击特征提取的方式速度慢,因此需要一种二进制流信息分析的方法,提升信息分析的准确性,并推广其适用性。


技术实现要素:

4.本发明的目的在于,针对上述现有技术的不足,提供一种基于神经网络隐lstm模型的二进制流信息分析方法,以解决二进制流信息分析的问题。
5.为实现上述目的,本发明采用的技术方案如下:
6.本发明提供了一种基于神经网络隐lstm模型的二进制流信息分析方法,在神经网络中将二进制流看作为时序数据,利用lstm模型对时序数据进行训练,所述方法包括如下步骤:
7.确定嵌入空间的维数m,取二进制流中的每r位数据为一个字母,并确定相应的2^r个字母在嵌入空间的对应嵌入向量;
8.确定观测空间的维数n,观测空间的维数由观测状态的情况和观测状态的颗粒度来确定,观测状态为二进制流中的单个位的数据或者二进制流的单个字母所传输的信息的状态;
9.确定隐状态空间的维数l,隐状态空间是观测空间的状态转移所依赖的状态概率空间,同时也是lstm模型输出的概率空间;
10.建立lstm模型,并初始化模型参数,lstm模型的输入为二进制流转化的嵌入向量序列,输出序列的激活使用softmax函数,以模拟输出状态的概率分布;
11.建立状态空间到观测空间的状态转移模型;
12.设计lstm模型的模型整体损失函数,模型整体损失函数通过比较输出状态和实际观测到的状态标签来获取,在确定模型和参数后,通过前向传递计算模型整体损失函数,并对模型参数进行训练;
13.在模型参数训练完成以后,保存模型的嵌入参数、lstm参数和状态转移参数,以供
模型在对二进制流信息进行分析时使用。
14.可选地,r为8或者16。
15.可选地,二进制流的字母到嵌入空间的嵌入由一个2^r*m维的矩阵表示,矩阵的每一列为对应字母的嵌入向量。
16.可选地,嵌入空间的参数矩阵为如下中的一者:随机初始化参数矩阵中的参数,并且在训练过程中持续优化参数矩阵;或者引用特定的初始化参数作为参数矩阵中的参数,并且在训练过程中冻结参数矩阵。
17.可选地,观测状态分为具有攻击威胁的数据、不具有攻击威胁的正常数据两类,若观测状态的颗粒度为字母级,则观测空间的维数为2;若观测状态的颗粒度为单个位级,则观测空间的维数为2^r。
18.可选地,若观测状态的颗粒度为字母级,则另外引入其他的观测状态,其他的观测状态包括可疑数据。
19.可选地,隐状态空间的维数通过如下中的一者确定:通过训练中经验的调优所得;或者通过基于二进制流信息分析的机理模型中隐含状态与观测状态的关系来获得。
20.可选地,状态空间到观测空间的状态转移模型中的状态转移函数为线性的,状态转移函数由一个l*n的线性状态转移矩阵来描述,线性状态转移矩阵中的每项的值均为非负数,并且每行向量的和为1。
21.可选地,模型整体损失函数为交叉熵函数或者相关状态在观测空间的距离。
22.可选地,在模型参数训练完成以后,模型通过持续的训练更新进行优化,并在不同的使用场景中进行迁移学习,模型的更新优化过程中,冻结嵌入参数、lstm模型参数或状态转移参数中的任意部分;模型参数的迁移学习,将已有的隐lstm模型中的嵌入模型和lstm模型进行迁移,并根据使用场景设计新的观测空间、状态转移模型和损失函数,在迁移学习的过程中,嵌入参数和lstm模型参数保持冻结。
23.本发明的有益效果包括:
24.本发明提供的二进制流信息分析方法包括如下步骤:确定嵌入空间的维数m,取二进制流中的每r位数据为一个字母,并确定相应的2^r个字母在嵌入空间的对应嵌入向量;确定观测空间的维数n,观测空间的维数由观测状态的情况和观测状态的颗粒度来确定,观测状态为二进制流中的单个位的数据或者二进制流的单个字母所传输的信息的状态;确定隐状态空间的维数l,隐状态空间是观测空间的状态转移所依赖的状态概率空间,同时也是lstm模型输出的概率空间;建立lstm模型,并初始化模型参数,lstm模型的输入为二进制流转化的嵌入向量序列,输出序列的激活使用softmax函数,以模拟输出状态的概率分布;建立状态空间到观测空间的状态转移模型;设计lstm模型的模型整体损失函数,模型整体损失函数通过比较输出状态和实际观测到的状态标签来获取,在确定模型和参数后,通过前向传递计算模型整体损失函数,并对模型参数进行训练;在模型参数训练完成以后,保存模型的嵌入参数、lstm参数和状态转移参数,以供模型在对二进制流信息进行分析时使用。本发明通过将二进制流信息视为一种需要处理和分析的语言结构,结合隐马克可夫模型的想法和循环神经网络的应用,实现了对二进制流信息的分析,并且提升了信息分析的准确性。
附图说明
25.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
26.图1示出了本发明实施例提供的基于神经网络隐lstm模型的二进制流信息分析数据流图;
27.图2示出了本发明实施例提供的基于神经网络隐lstm模型的二进制流信息分析方法的流程图。
具体实施方式
28.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
29.随着网络规模的日益扩大,网络攻击数量也随之增多。如何保证网络系统的正常平稳运行,成为了网络安全的最主要课题,而对二进制流信息的分析是发现威胁情报的重要环节。通过对二进制流信息的分析和学习,可以总结出其中威胁情报部分的攻击行为和攻击特征,并为网络安全的策略应对和已知及未知的攻击行为特征提取,提供良好的基础。在算法方面,随着人工智能技术的发展,基于神经网络的人工智能方法正逐步应用到社会生产的各个方面。其中,基于循环神经网络的人工智能技术在自然语言处理方面取得了显著的成果,而传统的方法如隐马尔可夫模型,因为其相对良好的可解释性,也在网络安全领域得到应用和研究。
30.鉴于上述二进制流信息分析所面临的问题和现有的应用实践,本发明将二进制流信息视为一种需要处理和分析的语言结构,结合隐马克可夫模型的想法和循环神经网络的应用,提出了一种基于神经网络隐lstm模型的二进制流信息分析方法。
31.图1示出了本发明实施例提供的基于神经网络隐lstm模型的二进制流信息分析数据流图;图2示出了本发明实施例提供的基于神经网络隐lstm模型的二进制流信息分析方法的流程图。下面将参照图1和图2详细描述本发明实施例提供的基于神经网络隐lstm模型的二进制流信息分析方法。
32.本发明实施例提供了一种基于神经网络隐lstm模型的二进制流信息分析方法,研究了二进流信息分析建模的问题。这些神经网络将二进制流看作为时序数据,利用lstm模型进行对时序数据进行训练,具体来说,所述方法包括如下步骤:
33.步骤101、确定嵌入空间的维数m,取二进制流中的每r位数据为一个字母,并确定相应的2^r个字母在嵌入空间的对应嵌入向量。可选地,r为8或者16。二进制流的字母到嵌入空间的嵌入由一个2^r*m维的矩阵表示,矩阵的每一列为对应字母的嵌入向量。例如,在r为8时,取二进制流中每8位数据为一个字母,并确定相应的256个字母在嵌入空间的对应嵌入向量。从二进制流字母到嵌入空间的嵌入由一个256*m维的矩阵表示,其中矩阵的每一列为对应字母的嵌入向量x_i。
34.例如m=256,嵌入矩阵初始化为256*256的单位矩阵,则字母“00000000”对应到单位矩阵的第一行,即行向量[1,0,0,

];字母“00000001”对应到单位矩阵的第二行,即行向量[0,1,0,

];以此类推,此即为one-hot嵌入。由于one-hot嵌入阵比较稀疏,通常在使用中,训练后的嵌入矩阵的参数不再是稀疏阵。训练后的嵌入矩阵参数可以作为后续训练优化过程中的初始化参数使用。
[0035]
嵌入空间字母的选择,也可以根据训练场景的复杂程度,选于16位数据为一个字母,并确定相应的65536个字母的嵌入向量。
[0036]
嵌入空间的参数矩阵为如下中的一者:随机初始化参数矩阵中的参数,并且在训练过程中持续优化参数矩阵;或者引用特定的初始化参数作为参数矩阵中的参数,并且在训练过程中冻结参数矩阵。
[0037]
步骤102、确定观测空间的维数n,观测空间的维数由观测状态的情况和观测状态的颗粒度来确定,观测状态为二进制流中的单个位的数据或者二进制流的单个字母所传输的信息的状态。可选地,观测状态分为具有攻击威胁的数据、不具有攻击威胁的正常数据两类,若观测状态的颗粒度为字母级,则观测空间的维数为2;若观测状态的颗粒度为单个位级,则观测空间的维数为2^r。若观测状态的颗粒度为字母级,则另外引入其他的观测状态,其他的观测状态包括可疑数据。具体地,观测状态可以是单个位的数据是否可疑,或单个字母所传输的信息是否具有攻击威胁等。例如,观测状态分为具有攻击威胁、不具有攻击威胁的正常数据两类,若观测状态颗粒度为字母级(即8位数据组成的单个字母的状态),则观测空间维数为2;若观测状态颗粒度为单个位级,则观测空间的维数为256。若观测状态颗粒度为单个位级,则观测空间的维数较观测状态做指数级的增长,因此通常会标记为正负两类观测状态;若观测状态颗粒度为字母级,则可额外引入更多的观测状态,如在正常数据、威胁数据外引入可疑数据。
[0038]
步骤103、确定隐状态空间的维数l,隐状态空间是观测空间的状态转移所依赖的状态概率空间,同时也是lstm模型输出的概率空间。由于隐状态空间是不可直接被观测或标签定义的隐含状态,因此本方法所描述的二进制流信息分析方法是一种隐lstm模型。
[0039]
可选地,隐状态空间的维数通过如下中的一者确定:通过训练中经验的调优所得;或者通过基于二进制流信息分析的机理模型中隐含状态与观测状态的关系来获得。
[0040]
步骤104、建立lstm模型,并初始化模型参数,lstm模型的输入为二进制流转化的嵌入向量序列,输出序列的激活使用softmax函数,以模拟输出状态的概率分布;
[0041]
步骤105、建立状态空间到观测空间的状态转移模型。可选地,状态空间到观测空间的状态转移模型中的状态转移函数为线性的,状态转移函数由一个l*n的线性状态转移矩阵来描述。例如,状态空间到观测空间的状态转移模型o_t=f(y_t),状态转移函数f可以是线性的,以一个l*n矩阵(f_ij)描述。状态转移函数f也可以由更复杂的神经网络结构实现。状态转移模型参数可以随机初始化其参数,并在训练过程中持续优化;也可以引用特定的初始化参数,并在训练过程中进行冻结,例如隐状态空间的维数是基于二进制流信息分析的机理模型所得,则相应的从隐状态空间到观测空间的状态转移矩阵可以是基于机理模型的固定矩阵;由于线性状态转移矩阵表示状态转移的概率,因此线性状态转移矩阵中的每项的值均为非负数,并且每行向量的和为1。
[0042]
步骤106、设计lstm模型的模型整体损失函数,模型整体损失函数loss(o_t,l_t)
通过比较输出状态o_t和实际观测到的状态标签l_t来获取,在确定模型和参数后,通过前向传递计算模型整体损失函数,并对模型参数进行训练;可选地,模型整体损失函数为交叉熵函数或者相关状态在观测空间的距离。
[0043]
步骤107、在模型参数训练完成以后,保存模型的嵌入参数、lstm参数和状态转移参数,以供模型在对二进制流信息进行分析时使用。
[0044]
可选地,在模型参数训练完成以后,模型通过持续的训练更新进行优化,并在不同的使用场景中进行迁移学习,模型的更新优化过程中,冻结嵌入参数、lstm模型参数或状态转移参数中的任意部分;模型参数的迁移学习,将已有的隐lstm模型中的嵌入模型和lstm模型进行迁移,并根据使用场景设计新的观测空间、状态转移模型和损失函数,在迁移学习的过程中,嵌入参数和lstm模型参数保持冻结。
[0045]
综上所述,本发明实施例通过将二进制流信息视为一种需要处理和分析的语言结构,结合隐马克可夫模型的想法和循环神经网络的应用,实现了对二进制流信息的分析,并且提升了信息分析的准确性。
[0046]
上述实施例只为说明本发明的技术构思及特点,其目的在于让本领域普通技术人员能够了解本发明的内容并加以实施,并不能以此限制本发明的保护范围,凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献