System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及异常检测技术,尤其涉及基于值函数强化学习的嵌入式软件时序异常检测方法。
技术介绍
1、嵌入式软件在运行过程中可能出现各种异常行为,如死循环、内存泄漏、执行时序异常等,这些异常可能导致系统性能下降或功能失效。因此,对嵌入式软件运行时的异常行为进行有效检测具有重要意义。
2、时序异常检测是嵌入式软件异常检测的重要研究方向。传统的时序异常检测方法主要基于统计分析和机器学习算法,通过建立正常行为模型来识别异常模式。随着深度学习技术的发展,基于深度神经网络的异常检测方法展现出良好的性能,能够自动学习复杂的时序特征表示。强化学习作为人工智能的重要分支,通过智能体与环境的交互来学习最优策略,在异常检测领域具有广阔的应用前景。
3、现有的嵌入式软件时序异常检测技术存在以下不足:
4、现有方法主要依赖预先定义的异常模式和规则,缺乏自适应学习能力,难以应对复杂多变的异常场景。这种基于规则的方法需要大量的专家经验,且容易产生误报和漏报。
5、传统的异常检测算法往往将时序数据作为独立样本处理,忽略了时序数据之间的长期依赖关系,无法有效捕捉时序特征的动态变化规律,导致检测精度受限。
技术实现思路
1、本专利技术实施例提供基于值函数强化学习的嵌入式软件时序异常检测方法,能够解决现有技术中的问题。
2、本专利技术实施例的第一方面,提供基于值函数强化学习的嵌入式软件时序异常检测方法,包括:
3、获取嵌入式软件运行过程中的时序数据
4、基于所述状态空间矩阵,采用长短时记忆网络提取时序特征向量;将所述时序特征向量输入深度神经网络,生成q值函数网络,所述q值函数网络用于评估时序状态下的动作值函数;构建奖励函数,所述奖励函数基于时序片段的异常程度进行计算,异常程度通过当前时序片段与历史正常时序片段的马氏距离度量获得;
5、采用深度q学习算法训练所述q值函数网络,在训练过程中,基于ε-贪婪策略选择动作,将选择的动作与当前状态输入所述q值函数网络得到q值;将所述q值与基于所述奖励函数计算的目标q值进行比较,通过最小化损失函数对所述q值函数网络的参数进行优化;
6、基于优化后的q值函数网络,计算时序片段的异常得分,所述异常得分通过当前状态下最优动作的q值与预设阈值进行比较得到;当所述异常得分超过预设阈值时,判定当前时序片段存在异常,并输出异常检测结果。
7、将所述时序特征向量输入深度神经网络,生成q值函数网络,所述q值函数网络用于评估时序状态下的动作值函数包括:
8、获取时序特征向量,将所述时序特征向量输入多层感知机结构,所述多层感知机结构包括第一全连接层、第二全连接层和输出层,其中所述第一全连接层包括256个神经元且采用relu激活函数,所述第二全连接层包括128个神经元且采用relu激活函数,所述输出层采用双曲正切函数将输出值限定在[-1,1]范围内,得到深度映射特征;
9、基于所述深度映射特征构建双流网络结构的q值函数网络,所述q值函数网络包括状态值函数分支和优势函数分支,将所述状态值函数分支的输出值与所述优势函数分支的输出值进行组合,并减去所述优势函数在动作空间上的平均值,得到状态-动作值函数。
10、采用深度q学习算法训练所述q值函数网络,在训练过程中,基于ε-贪婪策略选择动作,将选择的动作与当前状态输入所述q值函数网络得到q值;将所述q值与基于所述奖励函数计算的目标q值进行比较,通过最小化损失函数对所述q值函数网络的参数进行优化包括:
11、构建动作选择概率分布模型,根据q值函数网络输出的状态-动作值确定最优动作,对于最优动作赋予1-ε+ε/|a|的选择概率,对于其他动作赋予ε/|a|的选择概率,其中|a|为动作空间大小;基于训练轮次对探索率ε进行衰减更新,探索率的初始值为最大探索率与最小探索率之差与衰减指数的乘积;
12、计算状态不确定性,获取状态-动作对应的多个q值样本,计算多个q值样本与其均值的方差,将所述方差作为状态不确定性度量,将探索率与状态不确定性的乘积作为自适应探索率;基于所述自适应探索率选择动作;
13、基于所选择的动作构建多步时序差分目标,计算即时奖励的折扣累加与终止状态的最大q值得到n步累积回报,将所述n步累积回报进行加权组合得到多步时序差分目标值,将所述多步时序差分目标值与当前q值的差值作为时序差分误差;
14、根据所述时序差分误差建立优先经验回放机制,将所述时序差分误差的绝对值与预设优先级偏置的和作为样本优先级,将样本优先级的α次幂除以所有样本优先级α次幂之和得到采样概率分布,基于所述采样概率分布对经验回放池中的样本进行采样,将采样概率与经验池大小的乘积的倒数的β次幂作为重要性权重;
15、构建参数优化目标,当所述时序差分误差的绝对值小于阈值参数时采用平方误差,当所述时序差分误差的绝对值大于阈值参数时采用线性误差减去固定偏置得到huber损失,将所述huber损失与所述重要性权重的乘积作为最终的优化目标,基于所述优化目标对q值函数网络的参数进行梯度更新。
16、基于所选择的动作构建多步时序差分目标,计算即时奖励的折扣累加与终止状态的最大q值得到n步累积回报,将所述n步累积回报进行加权组合得到多步时序差分目标值,将所述多步时序差分目标值与当前q值的差值作为时序差分误差包括:
17、n步累积回报计算公式如下:
18、;
19、其中,:t时刻开始的n步累积回报;
20、γ:折扣因子,范围[0,1],用于平衡即时奖励和未来奖励;
21、rt+k:t+k时刻获得的即时奖励;
22、:t+n时刻状态下所有动作的q值;st+n:t+n时刻的状态;a表示动作;n:累积步数;
23、多步时序差分目标值计算公式如下:
24、;
25、yt:t时刻的多步时序差分目标值;
26、λ:用于控制不同步长回报的权重参数;
27、n:最大考虑步数;
28、时序差分误差计算公式如下:
29、;
30、δt:t时刻的时序差分误差。
31、基于优化后的q值函数网络,计算时序片段的异常得分,所述异常得分通过当前状态下最优动作的q值与预设阈值进行比较得到包括:
32、从q值函数网络中提取当前状态的最优动作,基于所述最优动作获取对应的最优q值,在预设时间窗口内计算历史最优q值的均值与标准差,将所述均值与标准差的加权和作为动态阈值;
33、基于所述最优q值与历史最优q值的均值计算差值,将所述差值与标准差的比值作为基础异常分数,引入时间衰减函数计算时序权重,所述时序权重通过当前时刻与参考时刻的本文档来自技高网...
【技术保护点】
1.基于值函数强化学习的嵌入式软件时序异常检测方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,将所述时序特征向量输入深度神经网络,生成Q值函数网络,所述Q值函数网络用于评估时序状态下的动作值函数包括:
3.根据权利要求1所述的方法,其特征在于,采用深度Q学习算法训练所述Q值函数网络,在训练过程中,基于ε-贪婪策略选择动作,将选择的动作与当前状态输入所述Q值函数网络得到Q值;将所述Q值与基于所述奖励函数计算的目标Q值进行比较,通过最小化损失函数对所述Q值函数网络的参数进行优化包括:
4.根据权利要求3所述的方法,其特征在于,基于所选择的动作构建多步时序差分目标,计算即时奖励的折扣累加与终止状态的最大Q值得到n步累积回报,将所述n步累积回报进行加权组合得到多步时序差分目标值,将所述多步时序差分目标值与当前Q值的差值作为时序差分误差包括:
5.根据权利要求1所述的方法,其特征在于,基于优化后的Q值函数网络,计算时序片段的异常得分,所述异常得分通过当前状态下最优动作的Q值与预设阈值进行比较得到包括:
6.根据
7.一种电子设备,其特征在于,包括:
8.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法。
...【技术特征摘要】
1.基于值函数强化学习的嵌入式软件时序异常检测方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,将所述时序特征向量输入深度神经网络,生成q值函数网络,所述q值函数网络用于评估时序状态下的动作值函数包括:
3.根据权利要求1所述的方法,其特征在于,采用深度q学习算法训练所述q值函数网络,在训练过程中,基于ε-贪婪策略选择动作,将选择的动作与当前状态输入所述q值函数网络得到q值;将所述q值与基于所述奖励函数计算的目标q值进行比较,通过最小化损失函数对所述q值函数网络的参数进行优化包括:
4.根据权利要求3所述的方法,其特征在于,基于所选择的动作构建多步时序差分目标,计算即时奖励的折扣累加与终止状态的最大q值得到n步累积回报,将所述n步累积回报进行...
【专利技术属性】
技术研发人员:张志杰,原攀峰,陈廷梁,
申请(专利权)人:浙江数新网络有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。