CN106682503B - 基于遗传算法的隐马尔科夫模型在主机风险评估中的应用 - Google Patents
基于遗传算法的隐马尔科夫模型在主机风险评估中的应用 Download PDFInfo
- Publication number
- CN106682503B CN106682503B CN201710011231.6A CN201710011231A CN106682503B CN 106682503 B CN106682503 B CN 106682503B CN 201710011231 A CN201710011231 A CN 201710011231A CN 106682503 B CN106682503 B CN 106682503B
- Authority
- CN
- China
- Prior art keywords
- host
- chromosome
- hidden
- markov model
- hmm
- 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
Classifications
-
- 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/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Security & Cryptography (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Genetics & Genomics (AREA)
- Computer Hardware Design (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physiology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Image Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于网络安全技术领域,具体涉及基于遗传算法的隐马尔科夫模型在主机风险评估中的应用;所述的基于遗传算法的隐马尔科夫模型在主机风险评估中的应用包括以下具体步骤:1)建立隐马尔科夫模型;2)应用遗传算法优化隐马尔科夫模型;本发明将隐马尔可夫模型和遗传算法结合使用来对主机风险进行评估,能够避免单独使用隐马尔可夫模型来对主机风险进行评估时的有时警报可能不在特定时间段内出现,关于该警报的先验信息则无法捕获,或者有时由于系统错误而可能生成太多警报,则先验信息会被夸大的问题。
Description
技术领域
本发明属于网络安全技术领域,具体涉及基于遗传算法的隐马尔科夫模型在主机风险评估中的应用。
背景技术
由于企业网络规模庞大,检测风险主机变得越来越困难。警报的数量迅速增加,这使得主机的选择和优先级排序变得非常关键。另一方面,大多数分析主机或警报的方法是手动进行的。当警报的数量太大时,这是不方便的。因此,需要一种更自动和智能的方法来对主机进行处理和优先级排序。
隐马尔可夫模型(HMM)是一种随机模型,并且假定模型系统是一个具有隐藏状态的马尔可夫过程。HMM用于根据观察来评估隐藏状态。隐马尔科夫模型有两层:观察层和隐藏状态层。在不同的隐藏状态中有一些转换,而观察与观察之间没有任何连接。
发明内容
为了克服背景技术中存在的不足,本发明提出基于遗传算法的隐马尔科夫模型在主机风险评估中的应用,通过一种智能的方式对主机进行处理和优先级排序,对主机风险进行评估。
本发明是通过如下技术方案实现的
基于遗传算法的隐马尔科夫模型在主机风险评估中的应用包括以下具体步骤:
1)建立隐马尔科夫模型
在安全应用中,我们为每个主机假定两个隐藏状态作为风险度量:良好或受损;
主机的状态序列由X=X1,…,XT表示;
警报序列由Y=Y1,…,YT表示;
三组参数被用来描述一个HMM模型,包括隐藏状态转换矩阵P,发射矩阵Q和初始状态分布π,HMM的参数可以表示为λ=(P,Q,π),P,Q和π可以通过一些先验信息或专家知识来初始化。
2)应用遗传算法优化隐马尔科夫模型
隐马尔可夫模型的参数将被编码为染色体或种群,对于矩阵P和Q,条目按行编码;
在种群初始化之后,将计算每个种群的适应度,其值用来表示种群的好坏;
HMM的前向算法用于计算适应度的值,即当前隐藏状态和历史观测序列p(x(t),(y(1),y(2),...,y(t)))的合并概率;
然后根据适应度值选择最佳父群体。父群体将通过交叉和变异,得到新一代的群体;
具有最低适应度值的种群将被消除,这种演变将继续,直到满足停止标准,最后,来自遗传算法的最佳参数将被应用到Baum-Welch算法以训练隐马尔科夫模型,并且可以使用Viterbi算法推断主机的隐藏状态。
进一步,在步骤1)中矩阵P描述隐藏状态之间转换的概率,条目pi,j=P(Xt+1=j|Xt=i)表示主机在时间t从状态i到时间t+1转换为状态j的概率。
进一步,在步骤1)中矩阵Q描述了主机处于某种状态时给出不同观察的概率,假设主机在时间t处于隐藏状态i,则条目qi,j=P(Yt=yj|Xt=i)表示在时间t出现第j个观察的概率。
进一步,在步骤2)中选择是指适合度值用于选择父染色体,这意味着适合度值越高,被选择为父染色体的机会越多。
进一步,在步骤2)中交叉是指随机生成范围从0到1的数字,如果数字小于交叉率,父代个体将进行交叉,父代染色体中的一些基因将被交换以获得新的群体。
进一步,在步骤2)中变异是指突变随机模拟染色体中基因的永久性改变,将产生随机数并与突变率进行比较,如果数量小于突变率,它将随机选择群体池中的一条染色体,并改变染色体中的一些基因。
本发明的有益效果:
本发明将隐马尔可夫模型和遗传算法结合使用来对主机风险进行评估,能够避免单独使用隐马尔可夫模型来对主机风险进行评估时的有时警报可能不在特定时间段内出现,关于该警报的先验信息则无法捕获,或者有时由于系统错误而可能生成太多警报,则先验信息会被夸大的问题。
附图说明
图1为隐马尔可夫模型;
图2为混合GA-HMM;
图3为染色体编码。
图中,G和C代表这两个隐藏状态,Yk代表不同的警报。
具体实施方式
为了使本发明的目的、技术方案和有益效果更加清楚,下面将结合附图,对本发明的优选实施例进行详细的说明,以方便技术人员理解。
如图1-3所示,马尔可夫模型(HMM)是一种随机模型,并且假定模型系统是一个具有隐藏状态的马尔可夫过程。HMM用于根据观察来评估隐藏状态。隐马尔科夫模型有两层:观察层和隐藏状态层。在不同的隐藏状态中有一些转换,而观察与观察之间没有任何连接。
在安全应用中,我们为每个主机假定两个隐藏状态作为风险度量:良好或受损。而观察将是每个主机的安全警报。图1表示出了HMM模型的结构,其中G和C代表这两个隐藏状态,Yk代表不同的警报,例如,Y1可以是恶意软件感染,Y2可以是数据渗漏等等。
主机状态随时间变化而变化。主机的状态序列由X=X1,…,XT表示。警报序列由Y=Y1,…,YT表示。三组参数被用来描述一个HMM模型,包括隐藏状态转换矩阵P,发射矩阵Q和初始状态分布π。
矩阵P描述隐藏状态之间转换的概率。条目pi,j=P(Xt+1=j|Xt=i)表示主机在时间t从状态i到时间t+1转换为状态j的概率。矩阵Q描述了主机处于某种状态时给出不同观察的概率。假设主机在时间t处于隐藏状态i,则条目qi,j=P(Yt=yj|Xt=i)表示在时间t出现第j个观察的概率。HMM的参数可以表示为λ=(P,Q,π)。
估计矩阵P,Q的参数和向量π非常重要,这将决定模型的精确度。P,Q和π可以通过一些先验信息或专家知识来初始化。例如,我们可以为良好和受损状态、以相等的初始概率来设置π=[0.5,0.5]。安全分析师可能认为好的主机有0.1的概率被损坏,而被损坏的主机有0.2的概率恢复正常,那么我们可以设置对于Q,我们可以获得与受损主机nC和良好主机nG相关的警报数量,以及与受损主机nkC和良好主机nkG相关的kth警报的数量。发射矩阵中与kth警报相关的条目可以如下计算:
从良好状态到kth警报:qG,k=nkG/nG;
从损坏状态到kth警报:qC,k=nkC/nC。
从这些P,Q和π的初始值,可以使用Baum-Welch算法来学习参数。HMM中的参数学习任务是在给定输出序列的情况下找到隐藏状态转换和发射概率的最佳集合。该任务通常是在给定输出序列集合的情况下导出HMM的参数的最大似然估计。在参数学习之后,可以使用Viberti算法来找到由观察到的事件序列导致的最可能的隐藏状态序列。例如,一台主机上来自Viberti算法的HMM输出即使如此。从最近推断的状态,我们知道这个主机很可能存在风险。
然而,Baum-Welch算法倾向于收敛到接近初始参数的局部最优解。因此,如果先验信息不正确,我们将得到不准确的结果。另一方面,遗传算法(GA)有助于找到全局最优值。因此,我们提出一个基于GA的混合隐马尔可夫模型,以提高HMM的性能。整个过程如图2所示。
在这里,隐马尔可夫模型的参数将被编码为染色体或种群。对于矩阵P和Q,条目按行编码。如图3所示,在每个染色体中有三个片段分别代表矩阵P,Q和向量π。例如,假设我们有20种不同类型的警报,则P是2乘2矩阵,Q是2乘20矩阵。π是具有2个元素的向量。每条染色体的长度为2X2+2X20+2=46。
在种群初始化之后,将计算每个种群的适应度,其值用来表示种群的好坏。HMM的前向算法用于计算适应度的值,即当前隐藏状态和历史观测序列p(x(t),(y(1),y(2),...,y(t)))的合并概率。因此,适应度值越高,参数越适合数据。然后根据适应度值选择最佳父群体。父群体将通过交叉和变异,得到新一代的群体。关于选择/交叉/突变操作的更多细节描述如下。
选择:适合度值用于选择父染色体,这意味着适合度值越高,被选择为父染色体的机会越多。轮盘赌选择法被用于选择最佳染色体,轮盘中染色体的面积与其适应度值成比例。具有最高值的染色体将被从群体池中选择出来。
交叉:对于交叉,随机生成范围从0到1的数字。如果数字小于交叉率,父代个体将进行交叉。父代染色体中的一些基因将被交换以获得新的群体。
变异:突变随机模拟染色体中基因的永久性改变。将产生随机数并与突变率进行比较。如果数量小于突变率,它将随机选择群体池中的一条染色体,并改变染色体中的一些基因。
具有最低适应度值的种群将被消除。这种演变将继续,直到满足停止标准(例如,迭代次数或适应度值的改变)。最后,来自遗传算法的最佳参数将被应用到Baum-Welch算法以训练隐马尔科夫模型,并且可以使用Viterbi算法推断主机的隐藏状态。
最后说明的是,以上优选实施例仅用于说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的。
Claims (1)
1.基于遗传算法的隐马尔科夫模型在主机风险评估中的应用方法,其特征在于:所述隐马尔可夫模型即HMM是一种随机模型,并且假定模型系统是一个具有隐藏状态的马尔可夫过程,HMM用于根据观察来评估隐藏状态,隐马尔科夫模型有两层:观察层和隐藏状态层,在不同的隐藏状态中有一些转换,而观察与观察之间没有任何连接;
在安全应用中,为每个主机假定两个隐藏状态作为风险度量:良好或受损,而观察将是每个主机的安全警报;在HMM模型的结构,其中G和C代表这两个隐藏状态,Yk代表不同的警报,Y1是恶意软件感染,Y2是数据渗漏;
主机状态随时间变化而变化,主机的状态序列由X = X1, …, XT表示;警报序列由Y =Y1,…, YT表示;三组参数被用来描述一个HMM模型,包括隐藏状态转换矩阵P,发射矩阵Q和初始状态分布π;
矩阵P描述隐藏状态之间转换的概率,条目表示主机在时间t从状态i到时间t + 1转换为状态j的概率;矩阵Q描述了主机处于某种状态时给出不同观察的概率,主机在时间t处于隐藏状态i,则条目表示在时间t出现第j个观察的概率;HMM的参数表示为;
P,Q和π通过一些先验信息或专家知识来初始化;为良好和受损状态、以相等的初始概率来设置π= [0.5,0.5];好的主机有0.1的概率被损坏,而被损坏的主机有0.2的概率恢复正常,设置;对于Q,获得与受损主机n C 和良好主机n G 相关的警报数量,以及与受损主机n kC 和良好主机n kG 相关的k th 警报的数量;发射矩阵中与kth警报相关的条目如下计算:
从良好状态到 kth 警报: qG,k= nkG/ nG;
从损坏状态到 kth 警报: qC,k = nkC/ nC;
从这些P,Q和π的初始值,使用Baum-Welch算法来学习参数,HMM中的参数学习任务是在给定输出序列的情况下找到隐藏状态转换和发射概率的最佳集合,该任务是在给定输出序列集合的情况下导出HMM的参数的最大似然估计,在参数学习之后,使用Viberti算法来找到由观察到的事件序列导致的最可能的隐藏状态序列,Baum-Welch算法倾向于收敛到接近初始参数的局部最优解;隐马尔可夫模型的参数将被编码为染色体或种群,对于矩阵P和Q,条目按行编码,在每个染色体中有三个片段分别代表矩阵P,Q和向量π;有20种不同类型的警报,则P是2乘2矩阵,Q是2乘20矩阵;π是具有2个元素的向量;每条染色体的长度为2×2 +2×20 + 2 = 46;
在种群初始化之后,将计算每个种群的适应度,其值用来表示种群的好坏;HMM的前向算法用于计算适应度的值,即当前隐藏状态和历史观测序列的合并概率;因此,适应度值越高,参数越适合数据; 然后根据适应度值选择最佳父群体;父群体将通过交叉和变异,得到新一代的群体;关于选择/交叉/突变操作的更多细节描述如下;
选择:适合度值用于选择父染色体,这意味着适合度值越高,被选择为父染色体的机会越多;轮盘赌选择法被用于选择最佳染色体,轮盘中染色体的面积与其适应度值成比例;具有最高值的染色体将被从群体池中选择出来;
交叉:对于交叉,随机生成范围从0到1的数字;如果数字小于交叉率,父代个体将进行交叉;父代染色体中的一些基因将被交换以获得新的群体;
变异:突变随机模拟染色体中基因的永久性改变;将产生随机数并与突变率进行比较;如果数量小于突变率,它将随机选择群体池中的一条染色体,并改变染色体中的一些基因。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710011231.6A CN106682503B (zh) | 2017-01-06 | 2017-01-06 | 基于遗传算法的隐马尔科夫模型在主机风险评估中的应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710011231.6A CN106682503B (zh) | 2017-01-06 | 2017-01-06 | 基于遗传算法的隐马尔科夫模型在主机风险评估中的应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106682503A CN106682503A (zh) | 2017-05-17 |
CN106682503B true CN106682503B (zh) | 2018-12-21 |
Family
ID=58850337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710011231.6A Active CN106682503B (zh) | 2017-01-06 | 2017-01-06 | 基于遗传算法的隐马尔科夫模型在主机风险评估中的应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106682503B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107577918A (zh) * | 2017-08-22 | 2018-01-12 | 山东师范大学 | 基于遗传算法和隐马尔可夫模型的CpG岛识别方法、装置 |
CN110633569A (zh) * | 2019-09-27 | 2019-12-31 | 上海赛可出行科技服务有限公司 | 基于隐马尔科夫模型的用户行为与实体行为分析方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218521A (zh) * | 2013-03-25 | 2013-07-24 | 南通大学 | 基于隐半马尔科夫模型的设备状态动态自适应报警方法 |
-
2017
- 2017-01-06 CN CN201710011231.6A patent/CN106682503B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218521A (zh) * | 2013-03-25 | 2013-07-24 | 南通大学 | 基于隐半马尔科夫模型的设备状态动态自适应报警方法 |
Non-Patent Citations (3)
Title |
---|
基于遗传算法的系统调用异常检测模型研究;张志利;《中国优秀硕士学位论文全文数据库(电子期刊)》;20100715(第7期);第7页-第20页 * |
基于隐马尔科夫模型的入侵检测方法研究;张倩倩;《中国优秀硕士学位论文全文数据库(电子期刊)》;20130215(第2期);第14页-第43页 * |
基于马尔科夫链的主机异常检测方法研究;刘永庆等;《计算机与数字工程》;20101231;第38卷(第7期);第20页-第23页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106682503A (zh) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111310915B (zh) | 一种面向强化学习的数据异常检测防御方法 | |
CN108520272B (zh) | 一种改进苍狼算法的半监督入侵检测方法 | |
CN106682503B (zh) | 基于遗传算法的隐马尔科夫模型在主机风险评估中的应用 | |
CN113206842B (zh) | 一种基于双层动态切换观测器的分布式安全状态重构方法 | |
CN106096911B (zh) | 一种基于角色的有人/无人协同指挥控制系统及其方法 | |
CN110361744B (zh) | 基于密度聚类的rbmcda水下多目标跟踪方法 | |
WO2005013081A2 (en) | Methods and systems for applying genetic operators to determine system conditions | |
CN108880915A (zh) | 一种电力信息网络安全告警信息误报判定方法和系统 | |
CN110336768A (zh) | 一种基于联合隐马尔可夫模型与遗传算法的态势预测方法 | |
CN108920812A (zh) | 一种机械加工表面粗糙度预测方法 | |
CN111832725A (zh) | 一种基于改进遗传算法的多机器人多任务分配方法及装置 | |
CN109242026A (zh) | 一种基于杂交水稻算法优化的模糊c均值聚类方法及系统 | |
CN114003059B (zh) | 运动学约束条件下基于深度强化学习的uav路径规划方法 | |
CN108594793A (zh) | 一种改进的rbf飞控系统故障诊断网络训练方法 | |
CN111988786B (zh) | 一种基于高维多目标分解算法的传感器网络覆盖方法及系统 | |
CN105204438A (zh) | 一种面向缸盖零件的加工质量控制方法 | |
Hu et al. | Multi-objective deep reinforcement learning for emergency scheduling in a water distribution network | |
Falcon et al. | A response-aware risk management framework for search-and-rescue operations | |
CN107396375B (zh) | 基于量子头脑风暴的异构传感器网络最佳目标覆盖方法 | |
CN108090566B (zh) | 基于串并联遗传算法的多目标测试优选方法 | |
CN110619394A (zh) | 一种基于混沌免疫遗传机制的uuv智能体行为学习与演化模型 | |
Humann et al. | Adaptability tradeoffs in the design of self-organizing systems | |
Li et al. | An improved many-objective evolutionary algorithm for multi-satellite joint large regional coverage | |
CN114742123A (zh) | 一种用于样本不足的工控系统的工控异常检测方法 | |
Zolna et al. | Reinforced imitation learning from observations |
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 |