system: [SYSTEM]

user: 3. 迁移深度学习 3.1. 典型预训练深度神经网络模型 3.1.1. GoogLeNet网络 GoogLeNet是由Google公司提出一种卷积神经网络模型，曾在2014年的ILSVRC分类任务比赛中荣获冠军。其参数数量仅为AlexNet的1/12，但精度却远远超过AlexNet。GoogLeNet的主要创新主要有两点：一是用全局平均池化层替换掉了最后的全连接层，从而减轻了过拟合并且模型训练的速度更快；二是借鉴Networkin Network (NIN)的思想设计了Inception结构，该结构能够在不显著加大计算负担的前提下，更好地利用网络中的计算资源，增加网络的深度和宽度。 一个简单的Inception结构如图3(a)所示。它由3组尺寸不同的卷积核及一个最大池化单元构成，通过并行地处理来自上一层的输入图像，然后对结果依据通道进行融合拼接。 在执行卷积运算中，假如输入图像的通道数过多，就会耗费大量的运算资源，卷积核的参数数量也会过多，此时就需要对数据进行降维处理。图3(b)为加上降维功能的Inception模块。该模块对除1 × 1卷积之外的所有卷积和池化操作均使用了1 × 1卷积运算进行降维，从而减少了图像的通道数。 采用了Inception的GoogLeNet模型深度共有22层，其网络结构如表1所示。 其中，“#3 × 3 reduce”，“#5 × 5 reduce”表示在3 × 3、5 × 5卷积操作前使用1 × 1卷积的数量。输入图像为224 × 224 × 3，并且经过了零均值化的预处理操作，所有降维层都采用了ReLU非线性激活函数。 3.1.2. ResNet网络 从经验来看，网络的深度对模型的性能尤为重要，更深层次的网络有助于提取更加复杂的特征，当模型更深时取得的效果也就越好。但研究表明，深度网络出现了退化问题：随着网络深度的不断增加，训练的准确率趋于饱和，甚至出现了下降趋势。为了解决该退化问题，一种称为ResNet的新型卷积神经网络模型由微软亚洲研究院何凯明团队提出，它以3.6%的错误率赢得了2015年的ILSVRC分类比赛。其主要创新是提出了残差模块(Residual Block)，有效解决了网络深度增加所引起的梯度消失和退化问题，残差模块的结构如图4所示。 图3. Inception模块 Table 1 Thestructure of GoogLeNe Type Patchsize/Stride Outputsize Depth #1 × 1 #3 × 3 reduce #3 × 3 #5 × 5 reduce #5 × 5 Poolproj Params Input 224 × 224 × 3 Convolution 7 × 7/2 112 × 112 × 64 1 2.7 K Max pool 3 × 3/2 56 × 56 × 64 0 Convolution 3 × 3/1 56 × 56 × 192 2 64 192 112 K Max pool 3 × 3/2 28 × 28 × 192 0 Inception (3a) 28 × 28 × 256 2 64 96 128 16 32 32 159 K Inception (3b) 28 × 28 × 480 2 128 128 192 32 96 64 380 K Max pool 3 × 3/2 14 × 14 × 480 0 Inception (4a) 14 × 14 × 512 2 192 96 208 16 48 64 364 K Inception (4b) 14 × 14 × 512 2 160 112 224 24 64 64 437 K Inception (4c) 14 × 14 × 512 2 128 128 256 24 64 64 463 K Inception (4d) 14 × 14 × 528 2 112 114 288 32 64 64 580 K Inception (4e) 14 × 14 × 832 2 256 160 320 32 128 128 840 K Max pool 3 × 3/2 7 × 7 × 832 0 Inception (5a) 7 × 7 × 832 2 256 160 320 32 128 128 1072 K Inception (5a) 7 × 7 × 1024 2 384 192 384 48 128 128 1388 K Avg pool 7 × 7/1 1 × 1 × 1024 0 Dropout (40%) 1 × 1 × 1024 0 Linear 1 × 1 × 1000 1 1000 K Softmax 1 × 1 × 1000 0 表1. GoogLeNet网络结构 图4. 残差模块 一个残差模块可以表示为 y i = F ( x i ， W i ) + h ( x i ) x i + 1 = f ( y i ) (11) 其中 x i 和 x i + 1 分别表示第i个残差块的输入和输出， F ( x ， W i ) 表示学习到的残差， h ( x i ) = x i 表示恒等映射，f为ReLU激活函数。采用残差模块的ResNet网络共有5种不同的深度，其网络结构如表2所示。 Table 2 The structure of ResNe 类型 输出维度 18-层 34-层 50-层 101-层 152-层 conv1 112 × 112 7 × 7 ， 64， stride 2 Conv2_x 56 × 56 3 × 3 ， max pool， stride 2 [ 3 × 3 ， 64 3 × 3 ， 64 ] × 2 [ 3 × 3 ， 64 3 × 3 ， 64 ] × 3 [ 1 × 1 ， 64 3 × 3 ， 64 1 × 1 ， 256 ] × 3 [ 1 × 1 ， 64 3 × 3 ， 64 1 × 1 ， 256 ] × 3 [ 1 × 1 ， 64 3 × 3 ， 64 1 × 1 ， 256 ] × 3 Conv3_x 28 × 28 [ 3 × 3 ， 128 3 × 3 ， 128 ] × 2 [ 3 × 3 ， 128 3 × 3 ， 128 ] × 4 [ 1 × 1 ， 128 3 × 3 ， 128 1 × 1 ， 512 ] × 4 [ 1 × 1 ， 128 3 × 3 ， 128 1 × 1 ， 512 ] × 4 [ 1 × 1 ， 128 3 × 3 ， 128 1 × 1 ， 512 ] × 8 Conv4_x 14 × 14 [ 3 × 3 ， 256 3 × 3 ， 256 ] × 2 [ 3 × 3 ， 256 3 × 3 ， 256 ] × 6 [ 1 × 1 ， 256 3 × 3 ， 256 1 × 1 ， 1024 ] × 6 [ 1 × 1 ， 256 3 × 3 ， 256 1 × 1 ， 1024 ] × 23 [ 1 × 1 ， 256 3 × 3 ， 256 1 × 1 ， 1024 ] × 36 Conv5_x 7 × 7 [ 3 × 3 ， 512 3 × 3 ， 512 ] × 2 [ 3 × 3 ， 512 3 × 3 ， 512 ] × 3 [ 1 × 1 ， 512 3 × 3 ， 512 1 × 1 ， 2048 ] × 3 [ 1 × 1 ， 512 3 × 3 ， 512 1 × 1 ， 2048 ] × 3 [ 1 × 1 ， 512 3 × 3 ， 512 1 × 1 ， 2048 ] × 3 1 × 1 average pool， 1000-d fc， softmax FLOPs 1.8 × 10 9 3.6 × 10 9 3.8 × 10 9 7.6 × 10 9 11.3 × 10 9 表2. ResNet网络结构 其中网络的深度分别为18，34，50，101，152，它们都是先经过一个7 × 7的卷积层，再连接一个最大池化操作，然后进行堆叠残差块，各网络中残差模块的数量依次为8，16，33，50。最后通常在网络的后端连接一个全局平均池化，从而有效防止过拟合，使输入输出的空间变换更具有鲁棒性。 3.2. 迁移深度学习 2005年，美国国防高级研究计划局(DARPA)信息处理技术办公室(IPTO)给迁移学习确定了一个新的定义：一个系统能够将从先前的任务中学到的知识和能力应用到新任务中解决问题。在这个定义中，迁移学习旨在从一个或多个源任务中提取知识，从而运用到目标任务 [ 19 ] 。 具体的讲：给定源域 D S 和学习任务 T S ，一个目标域 D T 和学习任务 T T 。迁移学习旨在将从 D S 和 T S 中学习到的知识帮助提升 D T 中目标预测函数 f T ( . ) 的学习，其中 D S ≠ D T 或 T S ≠ T T ，多数情况下 D S 要大于 D T 的尺寸， N S ≫ N T 。 GoogLeNet和ResNet作为成熟的预训练网络，已经对超过一百万个图像进行了训练，学习到了丰富的特征，借助于迁移学习，将预训练好的成熟网络作为训练的初始值，基于它学习新的任务，通过网络微调(Fine-Tune)的方式就可以较少的训练样本快速地将已学习的特征迁移到新的任务中，从而有效解决了雷达信号样本构建难和训练耗时长的问题。 3.3. 基于迁移深度学习的雷达信号分选识别算法流程 本文构建的基于迁移深度学习的雷达信号分选识别算法的系统结构框图如图5所示。 图5. 迁移深度学习系统结构框图 具体步骤如下： Step1：利用MATLAB软件产生雷达信号数据集； Step2：基于MSST得到雷达信号的时频图像矩阵，并对时频图像进行灰度化、自适应维纳滤波、双三次插值缩放、归一化等预处理操作，生成尺寸为224 × 224的图像数据集； Step3：加载预训练网络(GoogLeNet或ResNet)，利用迁移学习的方法，保持预训练网络的参数不变，替换掉最后一个可学习层和分类层，构建特征迁移模块； Step4：通过图层复制将图像数据集转换为224 × 224 × 3的RGB图像，经过数据增强处理后构建样本集，其中80%用于训练，10%用于测试，10%用于验证； Step5：将训练集和验证集送入网络进行迁移学习训练，迭代6次，得到最终训练模型TraindedNet； Step6：利用训练后的模型TrainedNet对测试集进行识别，得到识别结果。