一种基于DGRU神经网络的UUV集群行为识别方法与流程

文档序号:17162105发布日期:2019-03-20 00:53阅读:404来源:国知局
一种基于DGRU神经网络的UUV集群行为识别方法与流程

本发明属于深度学习领域,具体涉及一种基于dgru神经网络的uuv集群性行为识别方法。



背景技术:

水下无人潜航器uuv是一种主要以潜艇或水面舰船为支援平台、能长时间在水下自主远程进行的智能化装置,它可以携带多种传感器、专用设备或武器,执行特定的使命和任务,被视为现代海军的“力量倍增器”,其军事用途已经受到世界许多国家的广泛重视。

随着新军事变革的迅猛发展,战争无人化成为重要的发展趋势之一。近几年来,uuv已成为世界各国争相研制的热点兵器,其作用涵盖情报收集、水下及水上侦察监视、作战打击、后勤支援等诸多领域,已成为世界各国海军装备的一个重要的研究方向。而水下uuv的集群行为识别能力是反制敌方无人潜航器集群的基础。

现有的uuv集群性行为识别技术多数以循环神经网络为基础。传统循环神经网络结构通常难以训练,并且参数较多,而且存在梯度消失问题,使得水下uuv的集群行为识别能力难以提高。随着近年来人们对循环神经网络的研究逐渐加深,随之产生了众多循环神经网络的变种结构。其中以基于门结构的长短期记忆lstm模型对传统的rnn有较大的改进,随后有很多知名的变种结构则是在门结构的lstm基础上进行衍生。循环神经网络一个重要的优势是它可以对输入数据的历史信息进行记忆,但是传统rnn模型中可以记忆的上下文信息范围实际上是受到限制的,这主要是因为隐藏层中存储的参数信息会因为网络中的连接呈几何级数的增长或衰减,从而造成梯度消失的问题。梯度消失使得rnn对于长跨度时间的数据训练变得困难,因为时间跨度过长的数据特征会随着时间而逐渐被新来的数据特征所淹没。有研究表明,如果输入和相关输出的依赖超过了10个单位时间,传统rnn就很难学习到其中的数据特征和依赖关系。门控循环单元gru神经网络作为近几年取得重大突破的网络模型,使用了更新门与遗忘门,解决了传统循环神经网络梯度消失问题。更新门和遗忘门这两个门控向量决定了哪些信息最终能作为门控循环单元的输出,存储并过滤信息,能够保存长期序列中的信息,且不会随时间而清除或因为与预测不相关而移除。更新门帮助模型决定到底要将多少过去的信息传递到未来,或到底前一时间步和当前时间步的信息有多少需要继续传递,遗忘门主要决定了到底有多少过去的信息需要遗忘。但是gru在过滤过程中会出现重要信息丢失情况,会导致uuv的集群行为识别能力大大降低。



技术实现要素:

为了克服传统uuv集群性行为识别技术的缺点,对gru神经网络进行改进,提出一种能增强模型记忆力,防止信息丢失的dgru神经网络,并应用dgru神经网路建立欠驱动uuv集群行为识别模型,应用该模型可以精确识别欠驱动uuv集群行为的方法,本发明提出了一种基于dgru神经网络的uuv集群行为识别方法,包括数据预处理阶段、模型训练阶段和模型预测阶段,具体包括如下步骤:

(1)数据预处理阶段:对uuv集群行为数据集进行数据清洗,处理数据不平衡问题和缺失值问题;

(2)模型训练阶段:利用数据预处理后的数据集训练dgru神经网络,建立uuv集群行为识别模型;

(3)模型预测阶段:获取当前软件失效数据并采用(1)中同样的方法进行数据归一化处理,然后输入(2)所获得的预测模型进行uuv的集群行为识别,得到识别结果。

所述的步骤(1)具体包括:

(1.1)处理数据不平衡问题:首先分析正负样本比例,其次根据数据集的大小采用不同的采样方法处理,若数据量较充足,采取欠采样的方法,通过减少样本数据较多的类的数量来平衡数据集;若数据量较少,采取过采样的方法,通过增加数量较少的类的数量来平衡数据集;

(1.2)处理数据缺失值问题:首先分析缺失值的占比,其次根据缺失值的占比采取不同的方式处理,若特征的缺失值占比较高,则删除该特征;若缺失值占比适中,则将缺失值作为一个新类别,原特征替换为类别特征;若缺失值占比较低,则采用均值或中位数的方式替换;

所述的步骤(2)具体包括:

(2.1)将归一化处理后的数据按照序列的时间顺序分为两组,时间顺序靠前的一组作为训练数据集、时间顺序靠后的一组作为验证数据集;

(2.2)设定dgru神经网络的输入层神经元个数为5和输出层神经元个数为1,设定dgru神经网络隐含层的神经元个数为d,隐含层共3层,d=1,2,3...,dmax,其中dmax为预设值;

(2.3)依次在d的每个取值所对应的dgru神经网络结构上,利用训练集数据迭代地训练神经网络中的参数,并利用验证集数据对每次训练后的网络进行评估,更新并保存d的每个取值下性能最优的dgru神经网络,选取性能最优的dgru神经网络结构作为预测模型;

(2.3.1)进行外循环初始化,设定d=1;进行设定误差值的设置;

(2.3.2)进行内循环初始化,设定迭代次数=1,设定当前最小误差为无穷大,设定最大迭代次数;

(2.3.3)基于结构风险最小化原理,利用训练集数据进行dgru神经网络的训练;

(2.3.4)将验证集数据输入(2.3.3)训练好的dgru神经网络,利用经验风险函数进行验证集误差的计算;

(2.3.5)若验证集误差大于或等于当前最小误差,则直接迭代次数加1;若验证集误差小于当前最小误差,则将验证集误差的值赋予当前最小误差,则把当前dgru神经网络作为最优网络,更新并存储最优网络的参数和验证集误差,然后进行如下判断:

若验证集误差小于设定误差,则读取dgru神经网络的参数,并执行(2.3.8);若验证集误差大于或等于设定误差则迭代次数加1;

(2.3.6)若迭代次数小于或等于最大迭代次数,则执行(2.3.3);若迭代次数大于最大迭代次数则d=d+1,然后进行如下判断:

若d>dmax则执行(2.3.7);若d≤dmax则执行(2.3.2);

(2.3.7)对比不同d值时最后网络的验证集误差,选取验证集误差最小的最优网络,并读取所对应的dgru神经网络的参数;

(2.3.8)依据所选择的网络参数确定dgru神经网络结构的软件可靠性的预测模型。

所述的步骤(3)具体包括:

(3.1)获取软件的最近一次的uuv集群行为数据ct,以及最近一次时间以前的失效时间数据ct-1,ct-2,...,ct-n;

(3.2)利用步骤a1中方法,对ct,ct-1,ct-2,...,ct-n进行数据的归一化处理;

(3.3)将经过归一化处理过的ct,ct-1,ct-2,...,ct-n数据输入到步骤a2所获得的预测模型,得到预测结果进行反归一化后,得到下一次的uuv集群行为识别;

反归一化如如下:

其中,为下一次uuv集群行为数据,为下一次输入dgru神经网络的数据。

本发明的有益效果如下:本发明增加了不同层之间的信息传递,增强模型的记忆能力,克服传统gru神经网络信息丢失问题,并且应用dgru建立精确高效的uuv集群行为识别模型,解决传统方法无法准确识别uuv集群行为的问题。

附图说明

图1为基于dgru神经网络的uuv集群行为识别模型框图;

图2为标准gru神经网络结构图;

图3为dgru神经网络结构图;

图4为dgru神经网络训练流程示意图。

具体实施方式

下面将结合附图对本发明加以详细说明,应指出的是,所描述的实施例仅旨在便于解释本发明,并不构成对本发明的限制。

结合附图1,本发明提出了一种基于dgru神经网络的uuv集群行为识别模型,该模型包括三个部分,即数据预处理阶段、模型训练阶段和模型预测阶段。

数据预处理阶段:

(1)对uuv集群行为数据集进行数据清洗,包括处理数据不平衡问题、缺失值问题。

(1.1)数据不平衡问题的处理,首先分析正负样本比例,其次根据数据集的大小采用不同的采样方法处理,如果数据量较充足,可采取欠采样的方法,通过减少样本数据较多的类的数量来平衡数据集;如果数据量较少,可采取过采样的方法,通过增加数量较少的类的数量来平衡数据集。

(1.2)数据缺失值的处理,首先分析缺失值的占比,其次根据缺失值的占比采取不同的方式处理,如果特征的缺失值占比较高,则删除该特征;如果缺失值占比适中,则将缺失值作为一个新类别,原特征替换为类别特征;如果缺失值占比较低,则采用均值或中位数的方式替换。

(2)利用数据预处理后的数据集训练dgru神经网络,建立uuv集群行为识别模型:

dgru神经网络由输入层、输出层、隐含层组成,隐含层由dgru神经元构成,dgru神经网络的输入数据为经过数据预处理后的t时刻的集群行为数据输出数据为预测的下一刻集群行为dgru是在gru的基础上改进,标准gru单元结构如附图2所示,dgru单元结构如附图3所示。

标准的gru单元包括遗忘门和更新门。设输入序列为则在t时刻更新门遗忘门标准gru单元输出计算公式如下所示:

其中表示t时刻第l层的输入;表示第l层更新门的权重;表示第l层遗忘门的权重;表示第l层cell单元的输出;wl表示第l层输入和cell单元之间的权重;表示t-1时刻第l层隐含单元输出;表示输入和输出的权重;表示t时刻标准gru单元输出。

考虑到各个时段之间的时序关联,t时刻的同一时刻邻近的两层gru单元之间添加一个控制门,controlgate,通过控制同一时刻低层gru的记忆单元向邻近高层记忆单元的信息流传输实现。则dgru网络中t时刻第l+1层隐含单元与第l层隐含单元之间连接的控制门输入的计算公式如下:

其中,上标l+1表示第l+1层的操作,wd表示第l层控制门的权重。控制门也可以用于连接第一层隐含层状态与输入值在这种情况下,当l=0时,对于控制门的计算如下所示:

则dgru中t时刻第l+1层更新门遗忘门标准gru单元输出计算公式如下所示:

具体的训练过程包括以下步骤:

(2.1)将归一化处理后的数据按照序列的时间顺序分为两组,时间顺序靠前的一组作为训练数据集、时间顺序靠后的一组作为验证数据集;

(2.2)设定dgru神经网络的输入层神经元个数为5和输出层神经元个数为1,设定dgru神经网络隐含层的神经元个数为d,隐含层共3层,d=1,2,3...,dmax,其中dmax为预设值;

(2.3)依次在d的每个取值所对应的dgru神经网络结构上,利用训练集数据迭代地训练神经网络中的参数,并利用验证集数据对每次训练后的网络进行评估,更新并保存d的每个取值下性能最优的dgru神经网络,选取性能最优的dgru神经网络结构作为预测模型。

(2.3)的过程如附图4所示,包括以下步骤:

(2.3.1)进行外循环初始化,设定d=1;进行设定误差值的设置;

(2.3.2)进行内循环初始化,设定迭代次数=1,设定当前最小误差为无穷大,设定最大迭代次数;

(2.3.3)基于结构风险最小化原理,利用训练集数据进行dgru神经网络的训练;

(2.3.4)将验证集数据输入步骤(2.3.3)训练好的dgru神经网络,利用经验风险函数进行验证集误差的计算;

(2.3.5)若验证集误差大于或等于当前最小误差,则直接迭代次数+1;

若验证集误差小于当前最小误差,则将验证集误差的值赋予当前最小误差,则把当前dgru神经网络作为最优网络,更新并存储最优网络的参数和验证集误差,然后进行如下判断:

若验证集误差小于设定误差,则读取dgru神经网络的参数,并执行步骤(2.3.8),若验证集误差大于或等于设定误差则迭代次数+1;

(2.3.6)若迭代次数小于或等于最大迭代次数,则执行步骤(2.3.3);

若迭代次数大于最大迭代次数则d=d+1,然后进行如下判断:

若d>dmax则执行步骤a237;若d≤dmax则执行步骤(2.3.2);

(2.3.7)对比不同d值时最后网络的验证集误差,选取验证集误差最小的最优网络,并读取所对应的dgru神经网络的参数;

(2.3.8)依据所选择的网络参数确定dgru神经网络结构的软件可靠性的预测模型。

模型预测部分:

(3)获取当前软件失效数据并采用(1)同样的方法进行数据归一化处理,然后输入(2)所获得的预测模型进行uuv的集群行为识别,得到识别结果。

(3.1)获取软件的最近一次的uuv集群行为数据ct,以及最近一次时间以前的失效时间数据ct-1,ct-2,...,ct-n;

(3.2)利用步骤a1中方法,对ct,ct-1,ct-2,...,ct-n进行数据的归一化处理。

(3.3)将经过归一化处理过的ct,ct-1,ct-2,...,ct-n数据输入到(2)所获得的预测模型,得到预测结果进行反归一化后,得到下一次的uuv集群行为识别。

反归一化如公式(11)所示:

最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1