利索能及
我要发布
收藏
专利号: 2018109844193
申请人: 陕西理工大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-08-04
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.存在阵列误差的神经网络到达角估计方法,其特征在于:理想阵列由N个等间隔布置于x轴上的声压传感器阵元构成的均匀线性阵列,阵元间隔为dx,dx≤0.5λmin,λmin为入射信号的最小波长,但实际阵列由于自然或者人为原因阵元存在位置误差;

存在阵列误差的神经网络到达角估计方法的步骤如下:阵列接收K个远场窄带、互不相关声源信号,步骤一、利用N个阵元构成的线性阵列作为接收阵列,接收M组训练区间[‑θ0,θ0]范围内到达角为Θ=[Θ1;…;Θm;…ΘM]的信号源产生的原始训练数据集合Zx=[Z1,…,Zm,…,ZM];

训练区间范围为[‑θ0,θ0],0≤θ0≤90°,θ0的取值要把所有的信号源包含在[‑θ0,θ0],第T一组信号源到达角Θ1=[θ11,θ12,…,θ1k,…,θ1K] 入射到接收阵列上,阵列接收信号P次采样得到N×P的第一组原始训练数据Z1,其中θ11表示第一组中的第一个信号,θ1k表示第一组T中的第k个信号的到达角,第一组信号源到达角Θ1=[θ11,θ12,…,θ1k,…,θ1K] 整体旋转角T T度Δφ作为第二组信号源到达角Θ2=[θ21,θ22,…,θ2k,…,θ2K] ,其中(·) 表示对矩阵取转置,信号源到达角整体旋转可以保持信号源间的空间角度间隔不变θ21‑θ22=θ11‑θ12,且θ21‑θ11=Δφ,其中θ21表示第二组中的第一个信号到达角,θ2k表示第二组中的第k个信号的到达角,阵列接收信号P次采样得到N×P的第二组原始训练数据Z2;按照这样的方式得到信号源到达角Θ3,Θ4,…,ΘM和原始训练数据Z3,Z4,…,ZM,为了增强后续神经网络方法的泛化性能,要求信号源到达角Θ1,…,Θm,…,ΘM均匀分布在训练区间[‑θ0,θ0]的范围内,为了提高神经网络到达角的估计性能,需要减小Δφ的取值,则训练区间[‑θ0,θ0]的范围内的信号源组数M将变大,实际中根据到达角估计精度要求确定Δφ和M的数值,如精度要求是误差小于1°,则Δφ≤1°,步骤二、由原始训练数据集合Zx=[Z1,…,Zm,…,ZM]得到神经网络输入层训练数据集合R=[R1,…,Rm,…,RM];

H

由第m组训练数据Zm得到数据相关矩阵 是N×N的方阵,(·)表示对矩阵取转置复共轭,提取 主对角线及主对角线右上侧的矩阵元素并且按行顺序排成一列向量 并归一化得到 维矩阵Rm;

其中 对

进行归一化处理得到 j为虚数单位,归一化后Rm中元素的实部和虚部都在[‑1,1]范围内,取矩阵 中所有元素的实部构成矩阵取矩阵 中所有元素的虚部构成矩

阵 取矩阵

中所有元素的最小值 取矩阵 中所有元素的最大值

构造一个与 维数相同且矩阵中元素全部为1的矩阵

其中,Re(·)表示取实部,Im(·)表示取虚部,ones([·])表示与矩阵[·]维数相同的全1矩阵,size(·)表示求矩阵的维数;

按照计算训练数据Rm的方法得到训练数据R2,…,RM;

步骤三、根据训练数据Rm和信号源到达角Θm的维数确定输入层和输出层神经元的数目,根据精度要求设置隐层的层数和各个隐层中神经元的个数,根据输入层、隐层和输出层的神经元的数目确定各层的权值矩阵w=[W1,W2,…,Wl,…,wL,WL+1]和阈值矩阵B=[B1,B2,…,Bl,…,BL,BL+1]的维数,从而构建神经网络;

根据训练数据Rm和信号源到达角Θm构建神经网络,构造好的神经网络包含1个输入层、L个隐层、1个输出层,输入数据时将训练数据集合R=[R1,…,Rm,…,RM]中的第m组训练数据Rm中的每个元素的实部和虚部分别输入到输入层,Rm是一个列向量,该列向量中有N(N+1)/2个元素,则输入层神经元的数量为 输出层的神经元数等于信号个数K,L个隐层的神经元数量分别设置为L1,L2,…,Ll,…,LL,记神经网络各层的权值矩阵为W1,W2,…,Wl,…,WL,WL+1,其中W1是第一个隐层和输入层之间的权值矩阵,W1的维数与它连接的两个层的神经元数保持一致,第一个隐层的神经元数为L1,输入层的神经元数为 则W1为维的矩阵;Wl是第j个隐层和第j‑1个隐层之间的权值矩阵,Wl是一个Ll×Ll‑1维的矩阵,WL+1是输出层和第L个隐层之间的权值矩阵,WL+1是一个K×LL维矩阵;神经网络第一个隐层一直到第L个隐层的阈值矩阵分别设置为B1,B2,…,Bl,…,BL,输出层的阈值矩阵设置为BL+1,阈值矩阵的维数与该层的神经元数保持一致,其中Bl是第l个隐层的阈值矩阵,Bl是一个Ll×1维的矩阵,BL+1为输出层的阈值矩阵,BL+1是一个K×1维的矩阵;

步骤四、将M组训练数据集合R=[R1,…,Rm,…,RM]输给神经网络输入层,通过神经网络训练得到训练数据R和信号源到达角Θ之间映射关系的最优权值矩阵和最优阈值矩阵

(1)计算神经网络的输出值

对于一个训练数据Rm,首先将Rm中的各个数据通过输入层输入到第一个隐层中,经第一

1 1

个隐层处理后得到第一个隐层的输出矩阵y(m)output,y (m)output矩阵与B1矩阵维数一致;第一1

个隐层的输出矩阵y(m)output将作为第二个隐层的输入矩阵,经第二个隐层处理后得到第二

2 2

个隐层对应的输出y (m)output,y (m)output矩阵与B2矩阵维数一致;第l个隐层的输出值矩阵 与Bl矩阵维数 一致; 是输出层的 输入值并由计算得到神经网络的输出值 是一个K×1维的矩阵,其中,(2)计算损失函数Jm的值是否满足设定门限值;

计算神经网络输出值 与对应的K个信号源的到达角Θm之间的误差矩阵em是一个K×1维的矩阵,根据误差矩阵em构造损失函数Jm,其中(3)修正权值矩阵和阈值矩阵;

当损失函数Jm的值大于设定门限值J0时,计算神经网络中权值矩阵W1,W2,…,WL+1以及阈值矩阵B1,B2,…,BL,BL+1各自对应的修正值矩阵其中

η是学习率;从而得到修正后的权值矩阵

和修正后的阈值矩阵

其中,

其中门限值J0小

于精度值;

(4)计算修正后的神经网络输出值

利用修正后的权值矩阵 替代各层的权值矩阵w=[W1,W2,…,Wl,…,WL+1],修正后的阈值矩阵 替代各层的阈值矩阵B=[B1,B2,…,BL,BL+1],且让m比步骤四中(1)、(2)和(3)中的m增大1,重新向修正后神经网络输入训练数据集合R=[R1,…,Rm,…,RM]的下一个数据Rm,重复步骤四中的(1)计算得到神经网络输出值(5)重复步骤四中的(2)计算损失函数;

(6)若损失函数Jm的值仍大于设定门限值J0;重复步骤四中的(3)(4)(5);若训练数据集合R中的M个数据全部计算过一次后损失函数的值仍大于预设值J0,则重新从R的第一组数据R1开始继续进行训练,直至损失函数的值不大于预设值J0;此时神经网络的训练过程完成 ,得 到 了 最 优的 权值 矩 阵 和最 优 阈 值 矩阵步骤五、利用训练好的神经网络计算测试信号到达角的估计值;

用修正好的最优权值矩阵 替代各层的权值矩阵w=[W1,W2,…,Wl,…,WL+1],用最优阈值矩阵 替代各层的阈值矩阵B=[B1,B2,…,BL,BL+1],输入测试数据RC,按照步骤四中的(1)计算得到神经网络最终的输出值 就是测试信号到达角的估计值;

测试数据就是用于进行参数估计的数据,传感器阵列接收训练区间[‑θ0,θ0]范围内K个远场、窄带、独立信号的P次采样数据数据Xc,计算数据Xc的协方差矩阵是N×N的方阵,提取 主对角线及主对角线右上侧的元素并且按行顺序排成一列向量并归一化得到RC;

其中

对 进行归一化处理得到 归一化后RC中元素的实部和虚部都在[‑1,1]范围内,取矩阵 中所有元素的实部构成矩阵取矩阵 中所有元素的虚部构成矩阵

取矩阵 中所

有元素的 最小值 取 矩阵 中 所有元素的 最大 值构造一个与 维数相同且矩阵中元素全部为1的矩阵

按照步骤四中的(1)计算测试信号的到达角估计值 将RC中的各个数据通过输入层输

1 1

入到第一个隐层中,经第一个隐层处理后得到第一个隐层的输出矩阵y (C)output,y (C)output矩1

阵与 矩阵维数一致;第一个隐层的输出矩阵y (C)output将作为第二个隐层的输入矩阵经

2 2

第二隐层处理后得到第二个隐层对应的输出y (C)output,y(C)output矩阵与 矩阵维数一致;

第l个隐层的输出值 矩阵与 矩阵维数一致; 将作为输出层的输入值并由 计算得到神经网络最终的输出值 是一个K×1维的矩阵就是K个信号到达角的估计值 其中

前述步骤中的k=1,...,K表示信号个数,m=1,2,…,M表示训练样本数,l=1,2,…,L为隐层数目,j为虚数单位。