Page 133 - 应用声学2019年第4期
P. 133

第 38 卷 第 4 期               曾赛等: 水下目标多模态深度学习分类识别研究                                           593


                        输入: 带标签的训练样本,包含一维时域样本和二维频谱样本
                        输出: 网络优化参数 θ,连接参数 w,分类识别标签,识别概率
                          for 训练样本集
                          step1: 随机选取 1 个训练样本集中的带标签样本;
                          step2: 针对一维时域样本输入,执行一次梯度下降迭代优化 LSTM 连接参数 w;
                          step3: 针对二维频谱样本输入,若为连续的样本,则执行一次梯度下降迭代优化似然函数 L(θ);
                          step4: 针对二维频谱样本输入,如为非连续样本,则执行一次梯度下降迭代优化似然函数 L coh (θ, x 1 , x 2 );
                          step5: 针对一维时域样本输入,再次执行一次梯度下降,迭代优化 LSTM 中的连接参数 w。固定连接参
                              数 w,通过优化 θ 使得 LSTM 和 CNN 的联合概率模型 P 达到最大。
                          end
                        直到:迭代训练的误差小于设定的阈值


                 该算法充分利用水声信号帧之间的相关性,通                              (2) 二维频谱 Dataset:利用尺度不变特征变换
             过不同模态之间的训练迭代交替更新网络参数,能                            (Scale-invariant feature transform, SIFT)制作声谱
             够有效地对多模态特征进行融合,从而有效提高分                            图,将 10 帧数据做频谱分析得到一张二维频谱样
             类识别精度。                                            本,二维样本帧重叠率为 80%。与一维时域样本类
                                                               似,最后生成的训练集总样本数为42472。测试集样
             4 试验验证                                            本数为10668,测试样本与训练样本比例为4 : 1。
                                                                   将多模态深度学习模型与 SVM、CNN 以及
                 为了验证多模态深度学习方法在水下目标分                           LSTM 网络识别方法进行分类识别率比较。其中
             类识别中的性能,本文利用 5 类合作水声目标辐射                          SVM 采用高斯核函数,惩罚因子 C 的选择依赖于
             噪声数据进行算法验证。其中,3 类为水面舰船,2                          多次试验,惩罚因子越大,表示分类方法不能容忍
             类为水下高速航行体。每类目标有 5 段信噪比不同                          出现误差,但是容易出现过拟合,当惩罚因子越小
             的时域信号,通过人工加噪的方式使得同一目标时                            时,表示分类模型对误差的宽容度较强,但容易出现
             域信号的信噪比分别为12 dB、6 dB、0 dB、−6 dB、                  欠拟合,经过多次优化测试,选择惩罚因子为 67.3,
             −12 dB。信号的采样率为12 kHz。通常的关于水下                      训练步数设置为 200。CNN 设置两层卷积层,一层
             目标识别的论文之中,训练集与测试集来自于同一                            池化层和一层全连接层。激活函数为 ReLU,两层
             段时域信号,而在本文实验中,并未采用“留出法”                           卷积层的节点数分别设置为 16 和 32,卷积核大小
             将样本集划分为互斥的两类集合,本文的训练集与                            分别为 5 ∗ 5 和 3 ∗ 3,池化层卷积核大小为 3 ∗ 3,一
             测试集不是取自同一段时域信号,具体的取法是对                            层全连接层,采用 Softmax 输出层,输出节点为 5,
             每一类目标不同的时间段的 5 段时域信号,选取其                          学习率设置为 10 × 10      −5 ,epoch 为 10000 步,迭代
             中的 M 段时域信号作为训练集,选择 N 段作为测                         直到达到设定阈值。LSTM 网络参数中,一维信号
             试集,那么训练 -测试比为 M : N,这样便保证了训                       进行输入时首先进行归一化处理,动量因子设置
             练集和测试集数据不属于同一段时域信号。                               0.95,衰减因子设为 0.1,初始门控设置为 0,采用
                 实验一:训练-测试比实验                                  L1 正则化方法,激活函数为 sigmoid,学习速率设
                 训练 [12 dB, 0 dB,−6 dB, −12 dB]:测试比            置为 0.01,输入向量维度为 2,隐含层维度为 32,输
             [6 dB] = 4 : 1时,样本制作方法如下:                         出层维度为 1,迭代 10000 步。多模态深度学习模
                 (1) 一维时域信号 Dataset:采用分帧处理将时                   型的两种模态输入参数设置与上述一致,CCA 特
             域信号截断成训练样本,信号分帧长度为 60 ms,相                        征融合时初始迭代因子设置为 2,参数共享后,对
             邻帧之间重叠率为 50%。每类目标的每段时域信号                          特征向量进行深度自编码分类识别,自编码网络
             制作为 6000个帧训练样本。每类水声目标选取4段                         选择堆栈自编码 (Stacked auto-encoder, SAE)。采
             信号作为样本,1 段信号作为测试样本,则训练集样                          用 Tensorflow 深度学习框架        [18]  进行训练。采用英
             本为24000,测试集样本为 6000,训练样本与测试样                      伟达丽台 K4200 GPU 加速,每个模型训练时间达
             本比例为4 : 1。                                        到 6 h。该训练 -测试比条件下的结果如表 1 所示,
   128   129   130   131   132   133   134   135   136   137   138