一种基于循环神经网络的滤波器构建方法与流程

文档序号:17069060发布日期:2019-03-08 23:09阅读:196来源:国知局
一种基于循环神经网络的滤波器构建方法与流程

本发明涉及数字滤波技术,更具体地,本发明涉及一种基于循环神经网络的滤波器构建方法,适用于目标跟踪中目标状态估计和其他滤波估计问题。



背景技术:

数字滤波是去除噪声还原真实数据的一种数据处理技术。数字滤波器可以分为经典滤波器和现代滤波器两大部分。经典滤波器假定输入信号中的有用成分和希望滤除成分分别位于不同频带,通过一个线性系统实现噪声的滤除,包括高通滤波器、低通滤波器、带通滤波器和带阻滤波器等多种不同类型,但不适用于解决信号和噪声频谱相互混叠的滤波问题。现代滤波器则是通过把信号和噪声视为随机信号,利用它们的统计特性差异,来实现信号的滤波估计,包括维纳滤波、卡尔曼滤波、自适应滤波等多种不同实现方法。其中卡尔曼滤波是在线性系统状态空间表示的基础上,利用输出和输入观测数据,通过求取系统状态的最优估计,来实现信号的滤波,包括基本卡尔曼滤波方法、α-β滤波方法,以及为解决非线性、非高斯滤波问题先后被提出的扩展卡尔曼滤波方法、无迹卡尔曼滤波方法、多模卡尔曼滤波方法、粒子滤波等。相比于维纳滤波,卡尔曼滤波无需要求信号和噪声必须是严格平稳过程,拓展了滤波适用范围,自提出以来,在通信、导航、制导与控制等多个领域得到了广泛应用,是目前应用最为广泛的滤波技术。然而随着信息处理领域的不断拓展和滤波性能要求不断提高,滤波问题正变的日益复杂,同一滤波问题涵盖了更加多样的场景,包含了多种不同的目标状态转移模式,亟需滤波器能解决复杂场景多模共存情况下的滤波问题。由于卡尔曼滤波及其改进方法是基于简单的模型或有限的模型对滤波问题进行描述,其仅能解决简单、单一、有限复杂且相匹配的滤波问题,譬如在目标跟踪滤波中,匀速运动模型下的卡尔曼滤波方法仅能有效解决匀速目标跟踪滤波问题,如果目标实际运动模式发生改变,卡尔曼滤波效果就会变差,甚至发生恶化。虽然多模卡尔曼通过集成多种目标状态转移模型,以牺牲最优性能、提高平均性能的方式,提升了卡尔曼滤波的多场景适应能力,但由于其仅能进行有限数量模式的简单罗列式集成,仍难以从根本上解决复杂滤波问题。除此之外,现有卡尔曼滤波方法还存在超级参数与滤波性能关联性大,难以调优的问题,不具有从实测数据中进行学习的能力,实际运用门槛较高,难以快速应用部署。因此,当前亟需构建一种复杂度高、性能强大、适用范围广、泛化能力强并且具备学习能力的滤波器。



技术实现要素:

本发明的目的是构建一种通用、高效、可训练的滤波器,旨在克服现有滤波技术的缺陷,解决现有滤波技术模型简单、复杂度低、通适性差且无法学习的问题。

本发明所述的一种基于循环神经网络的滤波器构建方法,具体包括以下技术措施:首先确定滤波的输入、输出和滤波阶数。然后根据滤波阶数,以循环神经网络为基本单元,构建多级联合残差滤波网络。同步地,广泛采集滤波问题的输入数据和期望得到的对应输出数据,构建联合残差滤波网络训练数据集。再然后,利用训练数据集,采用神经网络训练方法,由上到下依次训练优化各级滤波网络单元权重参数,直到整个多级联合残差滤波网络训练好为止。最后,根据滤波输出需求,选取相关层级残差滤波网络结构的输出结果,作为整个滤波网络的滤波结果进行输出。至此,构建并训练好的多级联合残差滤波网络和输入输出设置即为所需的滤波器。

本发明提出的一种基于循环神经网络的滤波器构建方法,可基于大量训练样本数据,快速生成与滤波问题相匹配的滤波方法,具有适用范围广、适配场景多、实用效果好等优点,所生成的滤波方法可无需调试直接应用于相应实际问题中,实用性强。

附图说明

图1是基于循环神经网络的滤波器构建流程图;

图2是多级联合残差滤波网络结构图;

具体实施方式

本发明提出的一种基于循环神经网络的滤波器构建方法包括以下步骤:

步骤1,确定滤波的输入、输出和滤波阶数。

步骤1.1,对滤波问题进行分析,确定滤波所能提供的输入和期望得到的输出,如果滤波输入和滤波输出不在同一个空间内,对滤波输入进行必要转换,使其与滤波输出空间相同。

步骤1.2,根据滤波输入序列的固有特性或已有滤波输入样本的分析,判断输入序列是否为平稳序列,如果为非平稳,通过差分进行处理,如果处理后,仍为非平稳,进一步进行差分处理,直至平稳为止,并记录总共需要的差分次数,作为输入平稳化差分次数,其中差分处理是指序列后一时刻的值减去前一时刻的值,如果序列时间间隔不均匀,或者根据输出需要,进一步除以时间间隔,消除时间不一致的影响。

步骤1.3,根据滤波输入与滤波输出间的运算关系,确定由输入得到输出各分量所需要的差分运算次数,记录所需最大差分次数,作为输入解算输出差分次数;

步骤1.4,选取输入平稳化差分次数和输入解算输出差分次数中的最大值,作为滤波阶数;

步骤2,以循环神经网络为基本单元,构建多级联合残差滤波网络。

步骤2.1,以循环神经网络为基本单位,构建滤波网络单元,在构建过程中可选择不同的循环神经网络的类别、层数、每层节点个数,通常一般循环神经网络后面还需要添加全连接网络;

步骤2.2,向滤波网络单元外围添加输入输出辅助单元,一起构成两路输入、三路输出残差滤波结构,输入输出辅助单元主要包括差分器、累加器、累加器初始化设置、归一化、反归一化、相减处理和相加处理,其中累加器是差分器的逆操作,最后一级滤波网络单元外围仅有差分器,没有累加器;

步骤2.3,残差滤波结构与外部和内部间的连接关系为:如果有差分器,结构外部输入a首先经差分器处理,差分处理结果分为两路,一路直接作为结构输出a,一路进一步与结构外部输入b经累加器处理的结果进行相减处理,相减结果经归一化处理输入到滤波网络单元中进行处理,而滤波网络单元处理后的输出经反归一化处理,处理结果作为输出b,再进一步加上累加器的输出,作为输出c;

步骤2.4,多个残差滤波结构相级联,构成多级联合残差滤波网络,其级数需大于步骤1.4中的滤波阶数,残差滤波结构间的连接方式为上一级残差滤波结构的输出b作为下一级的输入b,下一级的输出a作为上一级的输入a,而最后一级的输入a设置为滤波输入,作为多级联合残差滤波网络的输入,第一级的输入b设置为0,而多级联合残差滤波网络的滤波输出则根据选择由各级网络的输出c构成;

步骤3,采集滤波问题的输入数据和期望得到的对应输出数据,构建联合残差滤波网络训练数据集。

步骤3.1,尽可能多、尽可能全地采集滤波问题的输入序列数据和期望得到的对应输出序列数据,其中输入序列数据是指多级联合残差滤波网络的输入数据,每个时间点可包括多维输入特征,而输入对应的输出序列数据则指相应输入期望从最后一级残差滤波结构获取的输出c;

步骤3.2,一条输入序列数据和对应的输出序列数据,分别作为x和y,构成一条训练样本,多个训练样本合并在一起,构成联合残差滤波网络训练数据集;

步骤4,采用神经网络训练方法,利用训练数据集,在上一级残差滤波网络训练好的基础上,进行下级残差滤波网络训练,直到整个联合残差滤波网络训练好为止。

步骤4.1,首先采用神经网络训练方法,对第一级残差滤波结构中的滤波网络单元进行训练检验,其训练数据由训练数据集中的训练样本经m-1次差分器处理,并经归一化处理得到,如果训练检验效果不满意,尝试采用不同的网络权重优化方法,或进一步改进网络,或者直接增大训练数据集,然后重新对第一级滤波网络单元进行训练检验,直到训练检验效果满意为止,其中m为多级联合残差滤波网络的级数;

步骤4.2,在第l级滤波网络单元训练好的基础上,继续进行第l+1级滤波网络单元训练,直到多级联合残差滤波网络中所有滤波网络单元训练好为止;其训练数据由训练数据集中的训练样本经m-l次差分器处理,然后减去本级累加器的相应输出得到,而本级累加器的输入,即本级残差滤波结构输入b,则通过相应样本经过上级所有残差滤波结构处理,由第l级残差滤波结构输出b得到;

步骤5,根据滤波输出需求,选取相关层级网络的滤波结果进行输出,至此,已得到了由联合残差滤波网络构成的滤波方法,根据需要,导入输入数据,即可实现滤波。

步骤5.1,根据滤波输出需要,从各级残差滤波结构中选取相应的输出c作为多级联合残差滤波网络的滤波结果进行输出;

步骤5.2,至此,已得到了由联合残差滤波网络构成的滤波方法,从多级联合残差滤波网络的输入接口导入滤波输入数据,即可输出所需滤波数据,实现输入的滤波。

为更好阐述本发明,下面以固定两坐标雷达目标跟踪滤波器设计为具体实施例,对本发明步骤进行详细说明:

步骤11,确定固定两坐标雷达目标跟踪滤波的输入、输出和滤波阶数。

步骤11.1,对固定两坐标雷达目标跟踪滤波问题进行分析可知,滤波能提供的输入为雷达探测获取的目标不同时刻距离和方位序列信息,存在量测噪声,而期望得到的输出为消除量测噪声后相应时刻的目标平面位置和速度序列信息,目标跟踪滤波的输入序列在极坐标系,而期望获得的输出序列则在直角坐标系,因此需根据极坐标系与直角坐标系间的转换关系,把原始输入转换到与期望输出相同的直角坐标系中,得到新的滤波输入为存在量测噪声的目标平面位置序列;

步骤11.2,由于平面位置序列是存在一定的趋势的,是非平稳的,因此需要对滤波输入进行差分处理,差分后得到存在量测噪声的平面速度序列,一般可认为是平稳的,根据需要还可以进一步差分得到平面加速度序列,这里假定经过两次差分处理,输入序列才能平稳,因此输入平稳化差分次数为2;

步骤11.3,根据滤波输入与滤波输出间的运算关系,由滤波输入得到滤波输出中的目标平面位置序列不需要进行差分,而得到目标平面速度序列需要进行一次差分,因此可知输入解算输出差分次数为1;

步骤11.4,选取输入平稳化差分次数和输入解算输出差分次数中的最大值,作为滤波阶数,因此固定两坐标雷达目标跟踪滤波问题的滤波阶数为2;

步骤12,以循环神经网络为基本单元,构建多级联合残差滤波网络。

步骤12.1,由门限循环神经网络结构和全连接网络结构级联,构建滤波网络单元,其中门限循环神经网络结构的输入维度为2,全连接网络结构的输出维度为2,门限循环神经网络结构的输出和全连接网络结构的输入可设置为20或者40,其他选用的典型循环神经网络结构还有简单循环神经网络(srns)、长短记忆循环神经网络(lstm)以及引入注意力机制的增强循环神经网络(augmentedrnn);

步骤12.2,向滤波网络单元外围添加输入输出辅助单元,一起构成两路输入、三路输出残差滤波结构,输入输出辅助单元主要包括差分器、累加器、累加器初始化设置、归一化、反归一化、相减处理和相加处理,其中差分器处理方法为两相邻时刻序列相减,然后除以相邻时刻时间差,序列的第一时刻差分值设置为0,而累加器是差分器的逆操作,处理方法为后一时刻的值乘以与前一时刻值的时间差,并加上前一时刻已获取的累加值,累加器初始值设置为相应差分器所处理序列的第一个值;

步骤12.3,残差滤波结构与外部和内部间的连接关系为:第一级和第二级残差滤波结构有差分器,它们的结构外部输入a首先经差分器处理,差分处理结果分为两路,一路直接作为本结构输出a,一路进一步与本结构外部输入b经累加器处理的结果进行相减处理,相减结果经归一化处理输入到滤波网络单元中进行处理,而滤波网络单元处理后的输出经反归一化处理,处理结果作为本结构输出b,再进一步加上累加器的输出,作为本结构输出c,第三级,即最后一级残差滤波结构没有差分器,它们的结构外部输入a,即整个联合残差滤波网络的滤波输入,直接与本结构外部输入b经累加器处理的结果进行相减处理,相减结果经归一化处理输入到滤波网络单元中进行处理,而滤波网络单元处理后的输出经反归一化处理,处理结果作为输出b,再进一步加上累加器的输出,作为本结构输出c

步骤12.4,3个残差滤波结构相级联,构成多级联合残差滤波网络,残差滤波结构间的连接方式为上一级残差滤波结构的输出b作为下一级的输入b,下一级的输出a作为上一级的输入a,而最后一级的输入a设置为滤波输入,作为多级联合残差滤波网络的输入,第一级的输入b设置为0,而多级联合残差滤波网络的滤波输出由第二级和第三级残差滤波结构输出c构成,其中第二级残差滤波输出c得到目标跟踪滤波期望得到的目标速度序列信息,第三级残差滤波输出c得到滤波期望得到的目标位置序列信息;

步骤13,采集滤波问题的输入数据和期望得到的对应输出数据,构建联合残差滤波网络训练数据集。

步骤13.1,结合合作目标信息接收设备,对同一雷达或同一型号不同雷达在不同时段、不同区域,对不同合作目标的量测数据,和相应合作目标信息接收设备获取的真实数据进行广泛收集,需要说明的是不同型号、不同类别的雷达在目标探测类别、分辨力、量测误差等方面存在较大差别,需要不同的目标跟踪滤波器,即使是同一个雷达,如果有不同的探测模型,譬如具有对空对海两种探测模型,也需要两种不同的目标跟踪滤波方法,因此需要针对具体雷达,进行雷达探测数据收集,另外合作目标信息接收设备包括但不限于ais设备(船舶自动识别系统)、ads设备(民航广播式自动相关监视)、gps设备和北斗设备;

步骤13.2,对收集的数据进行整理,剔除异常数据,进行必要坐标变换,并把雷达探测的目标平面位置序列数据和相应目标真实平面位置序列数据进行配对,其中雷达探测的目标平面位置序列数据作为输入序列数据和相应目标真实平面位置序列数据作为输出序列数据,分别作为训练数据的x和y,构成一条训练样本,多个目标或不同时间段训练样本合并在一起,构成联合残差滤波网络训练数据集;

步骤14,采用神经网络训练方法,利用训练数据集,在上一级残差滤波网络训练好的基础上,进行下级残差滤波网络训练,直到整个联合残差滤波网络训练好为止。

步骤14.1,首先采用神经网络训练方法,对第一级残差滤波结构中的滤波网络单元进行训练检验,其训练数据由训练数据集中的训练样本经2次差分器处理,并经归一化处理得到,如果训练检验效果不满意,尝试采用不同的网络权重优化方法,或进一步改进网络,或者直接增大训练数据集,然后重新对第一级滤波网络单元进行训练检验,直到训练检验效果满意为止,其中典型的循环神经网络训练方法有bptt(backpropagationthroughtime)、hessian-free。

步骤14.2,在第l级滤波网络单元训练好的基础上,继续进行第l+1级滤波网络单元训练,直到多级联合残差滤波网络中所有滤波网络单元训练好为止;其训练数据由训练数据集中的训练样本经3-l次差分器处理,然后减去本级累加器的相应输出得到,而本级累加器的输入,即本级残差滤波结构输入b,则通过相应样本经过上级所有残差滤波结构处理,由第l级残差滤波结构输出b得到;

步骤15,根据滤波输出需求,选取相关层级网络的滤波结果进行输出,至此,已得到了由联合残差滤波网络构成的滤波方法,根据需要,导入输入数据,即可实现滤波。

步骤15.1,根据滤波输出需要,选取第二级和第三级残差滤波结构输出c作为多级联合残差滤波网络的滤波结果进行输出

步骤15.2,至此,已得到了由联合残差滤波网络构成的目标跟踪滤波方法,从多级联合残差滤波网络的输入接口导入滤波输入数据,即可输出所需滤波数据,实现输入的滤波。

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