卷积神经网络联合SVM的降水粒子分类
2023-09-13罗泽虎王旭东徐桂光高涌荇
罗泽虎,王旭东,徐桂光,高涌荇
(南京航空航天大学雷达成像与微波光子技术教育部重点实验室,江苏南京 211106)
0 引 言
气象雷达是气象监测的重要途径之一,在突发性灾害天气预警、降水估计、粒子识别等方面具有极为重要的作用。传统的多普勒气象雷达发送单个方向上的电磁波,仅获得反射率因子、多普勒速度、谱宽等参数,无法获取更多的云团内部信息,对于相对细致的降水粒子分类能力有限。而双偏振雷达在多普勒雷达的基础上增加了双极化功能,通过发射水平和垂直方向上电磁波,来获取差分反射率、差分相移率、水平垂直互相关系数等多个极化参数,能够更加精确地判断云团中降水粒子的形状、大小、取向等信息,提高了气象雷达在降水粒子识别方面的能力[1-6]。
模糊逻辑降水粒子分类算法(Fuzzy Logic Hydrometeor Classification, FHC)最早由Straka 等提出[7],逐渐成为降水粒子分类的主流算法。由于不同降水粒子集合存在一定的交集,模糊逻辑通过简单规则而不是公式来描述分类系统,这一点对于降水粒子分类有优势。但隶属函数选取及其参数的取值存在着不确定性,需要依赖专家经验进行人为设置,极大地影响了算法的通用性和客观性[8-10]。
由于FHC 算法存在一定的不足,研究者期望引入其他智能算法,提出了诸多新的降水粒子识别算法。神经网络算法在目标检测和图像识别领域已被证实是一种稳健而有效的方法。2017 年,王海江等提出了基于深度学习的模糊聚类降水粒子识别算法[11],用卷积神经网络(CNN)进行初次聚类,消除了偏振参数测量误差造成的影响;2018年,李海等提出基于模糊神经网络-模糊C 均值(FNN-FCM)算法[12],该算法能够通过晴空数据的训练确定隶属函数参数,其分类结果与参考结果一致;2019 年,Lu 等提出基于残差卷积神经网络(Residual Network,ResNet)的四分类模型[13],通过数据通道的方式对极化参数进行堆叠并分块处理,制作算法的数据集,提高了部分降水粒子的识别精度;2021年,Ran等根据雷达数据的分布形态,提出了一种基于Faster-RCNN 的降水粒子云识别新方法[14],得到了可靠的识别结果。这些算法虽然克服了传统模糊逻辑方法对经验参数设置的依赖,但是对降水粒子的分类还不够细致,准确度也有待进一步提升。本文所建模型,先利用卷积神经网络对极化参数矩阵块进行判断,然后结合SVM 分类器对块中的降水粒子进行了更加详细的分类。
本文所用实验数据来源于美国国家海洋和大气管理局(National Oceanic and Atmospheric Administration,NOAA)提供的S 波段KOHX 雷达的观测资料。为使双偏振雷达的平面位置指示(Plan Position Indicator,PPI)扫描数据适用于卷积神经网络的传播结构,在LeNet[15]、AlexNet[16]、VGGNet[17]、ResNeXt[18]四种经典卷积神经网络的基础上构建了各类网络的CNN-HC 模型。根据各网络对目标块的分类特点,结合SVM 分类器,搭建了一种能够有效识别干雪(Dry Snow, DS)、霰(Graupel,GR)、中雨(Rain,RA)、湿雪(Wet Snow,WS)四类降水粒子和一类生物回波(Biological,BI)的联合结构模型。利用该模型对KOHX 雷达实测扫描数据进行验证,结果表明,对上述五类目标粒子的识别准确率为94.92%。并且,对于不同仰角、不同雷达的扫描数据均能保持较高的分类准确率,表现出良好的鲁棒性。
1 数据集制作
卷积神经网络作为一种前馈的多层网络,它通过网络中卷积层和池化层的自学习来提取特征。其以数据驱动模型,不需要人为设置模型参数,相对于模糊聚类算法更具客观性和可移植性[19-22]。
双极化气象雷达观测资料虽然不是图像数据,但是在不失通用性的情况下可以将多个极化参数类比为图像的RGB 通道。每个通道存储一个极化参数的二维数据矩阵,通过对多个极化参数的堆叠操作构成一个三维的数据阵列,以此方式制作基于卷积神经网络降水粒子分类模型的数据集。图1 所示为利用卷积神经网络模型进行彩色图像识别和双极化雷达数据样本识别的类比示意。
图1 降水粒子与图像的卷积神经网络模型类比
本文首选遍历收集KOHX 雷达2019 年间,天气回波较为丰富的0.5°仰角PPI 扫描数据,包括水平反射率因子ZH、差分反射率ZDR、差分相移率KDP和水平垂直互相系数ρHV。根据NOAA 提供的双偏振雷达level Ⅲ数据特点可知,单次扫描数据矩阵的大小为360 × 1 200,其中包含了多种类别粒子。同时,由于回波数据中存在部分缺失数据以及一些无效值,这也会影响所产生数据集的质量。因此,为了保证单个降水粒子矩阵样本中尽可能少的引入其他噪声粒子,还需要对原始的极化参数矩阵进行切块操作,将原360 × 1 200 的矩阵分割成1 080 个20 × 20 的矩阵块,这有利于样本块标签的判断。并且,对于每个样本块中缺失数据和无效值,采用各数据通道有效值的均值进行了填充。图2所示为卷积神经网络数据集的制作流程。
图2 数据集制作流程
本文使用Python ARM Radar Toolkit(Py -ART)[23]工具对KOHX 雷达扫描的原始数据进行读取。选取level Ⅲ分类数据中容量大于13 KB的扫描时刻,低于该值则被认为是没有气象信息的晴空数据,不参与数据集的制作。对于BI、DS、GR、RA 和WS 五类目标粒子,选取每类20 000 个样本作为训练集,5 000 个样本作为验证集,2 500个样本作为测试集,来进行各卷积网络模型的训练和测试。
2 模型搭建与训练
2.1 CNN-HC模型
卷积神经网络最早由LeCun等提出,随着GPU强大的并行计算能力,以及PyTorch 和TensorFlow等神经网络框架的发展,CNN 在学术界和工业界越来越受欢迎。最初的LeNet 网络只有5 层,常被应用于手写数字的识别。2012 年Hinton 等提出了AlexNet网络,作为卷积神经网络的突破模型,该网络被证明通过增加网络的深度可以提升网络的性能,并以很大的优势赢得了ImageNet 2012 图像识别挑战赛的冠军。后续VGGNet 网络也是沿着这一思路对卷积网络的结构逐步加深而建立起来的。但伴随着网络层数的进一步增加,学习效果并没有更好。实验中发现,随着卷积层和池化层的不断叠加会出现梯度消失、梯度爆炸以及退化等问题。而ResNet 网络[24]为这些问题提供了很好的解决方案。该网络利用残差卷积结构代替传统卷积结构,解决了因网络过深时造成的退化问题。并且通过对数据进行预处理以及在网络中使用批标准化(Batch Normalization,BN)层[25],减小梯度消失和梯度爆炸出现的可能。其作用原理如式(1)所示,其中x为某神经元原始激活值,xB是一个批次内包含的多个训练实例,E为均值计算,Var为方差计算,γ和β是训练参数,用于增强网络表达能力。
ResNeXt网络是ResNet网络的改进模型,采用了组卷积策略,在不增加参数复杂度的前提下提高准确率,同时还减少了超参数的数量。图3(a)~(c)所示,当输入通道数为64,输出通道数为256时,普通卷积结构、残差卷积结构、分组残差卷积结构的对比。
图3 不同卷积结构对比
本文为获得双偏振雷达4 个极化参数与降水粒子类型之间的非线性关系,同时,为使得双偏振雷达的PPI 扫描数据能够适用于卷积神经网络的传播结构,搭建了适用于双偏振雷达数据矩阵传播结构的4 种卷积神经网络模型,分别为LeNet-HC、AlexNet-HC、VGGNet-HC 和ResNeXt-HC,对应的网络结构如图4所示。
图4 用于极化参数矩阵块分类的各卷积神经网络结构
双偏振雷达极化参数进行堆叠切块后的三维阵列,其大小为4 × 20 × 20。与原始网络模型相比,本文所建各卷积神经网络模型其输入矩阵块的尺寸要小得多。因此,对于原始网络模型中的卷积核尺寸(Kernel size, K)、填充尺寸(Padding,P)、步长(Stride,S)等参数均进行了调整。由式(2)可得,每经过一次卷积或池化操作后,输出特征图的尺寸Mout与各参数的关系如下:
同时,由于VGGNet 和ResNeXt 的卷积层数过深,本文还对其进行了适当的缩减,使得极化参数矩阵块能够适应于该网络的传播结构。如式(3)所示,为使网络具有非线性的表征能力,引入ReLu函数作为激活函数[26]。最后,利用Softmax 函数为每个类别判定分数,得分最高的分类为最终输出结果,如式(4)所示,其中为第i个分类对应的全连接层输出结果,c= 1,2,…,C为所有分类。
输入样本经过卷积神经网络的前向传播后,通过损失函数来计算输出结果与真实标签之间的差距。在反向传播过程中,以优化神经网络参数获取最小化损失为目标,不断迭代更新,使得输出结果与真实标签之间的差距逐渐减小。本文选取交叉熵损失(Cross Entropy Loss, CELoss)函数,如式(5)所示,用于计算每次迭代过程中各网络模型对于极化参数矩阵块输出结果与真实值之间的差距。其中,N为样本数,为指示变量,当该类别和c值对应类别相同时取值为1,否则取值为0。
2.2 模型训练
本文模型训练的硬件平台配置信息为,CPU型号Intel Core i7-10700K,GPU 型号NVIDIA Ge-Force 2080Ti。使用PyTorch 深度学习框架实现上述卷积神经网络降水粒子分类模型的搭建。训练过程中,选取随机梯度下降(Stochastic Gradient Descent,SGD)优化器进行权重的优化更新,训练批次参数设置为128,迭代轮数为300 轮。采用动量GDM 来训练模型,其中动量因子为0.9。动态学习率的初始值为0.01,当验证集损失连续10 轮不发生变动时,将学习率降低为原来的一半。随着训练轮数的增加,验证集损失不再下降且准确率不再上升时,则认为模型处于收敛状态,保存模型最佳权重参数。图5 所示为各模型在训练过程中准确率和损失随训练轮数的变化情况。
图5 模型训练过程中准确率和损失随训练轮数的变化
可以看出,模型随着训练轮数的增加,准确率和损失逐渐收敛,并没有出现过拟合现象。通过模型在验证集上的表现可得,LeNet-HC、AlexNet-HC、VGGNet-HC、ResNeXt-HC 的最高准确依次为92.87%、95.66%、95.84%、96.2%。与原始网络模型在图像识别方面的表现一致,表明裁剪优化后的卷积神经网络模型能够适用于极化参数矩阵块的分类识别。
利用训练获得的最佳模型,对测试集每类2 500 个样本进行预测,并以相同的方式进行了5组测试,得到各网络预测结果平均值的混淆矩阵,如图6所示。
图6 各模型的测试集结果混淆矩阵
根据测试集的表现结果可知,不同模型对于每类样本的识别能力存在差异。根据这一特点,可以综合上述模型来对未知样本块进行判断。图7所示为多个卷积神经网络的综合模型,以网络级联的方式旨在让每一级网络获得分类准确率最高的降水粒子样本块。通过图6 所示的测试结果可知,LeNet-HC 网络对于BI 样本块的分类准确率较其他三类网络最高;同理,AlexNet-HC 网络对于GR 样本块的分类准确率最高;VGGNet-HC 网络对于WS 样本块的分类准确率最高;ResNeXt-HC 网络对于DS 和RA 两类样本块的综合分类准确率最高。利用该模型对测试集数据进行测试,结果得到综合模型对于目标样本块识别准确率为96.48%,相较于上述单一卷积神经网络,该综合模型在测试集上的准确率更高。
图7 卷积神经网络综合模型
2.3 降水粒子分类
由于受到CNN 图像模型的限制,利用综合模型仅能得到极化参数样本块的标签。而并不能预测出块中粒子的详细类别,分类结果较为粗糙。图8(a)所示为NOAA 参考降水粒子分类结果,图8(b)为目标块分类结果。为进一步获得样本块内目标粒子的具体类别,本文提取每个粒子对应的4个极化参数数据作为超平面的位置信息,通过SVM分类器对块中粒子进一步分类。
图8 参考结果与卷积网络模型分类结果对比
SVM 分类器能够实现超平面分类的二分类问题。以样本的多维数据作为超平面的位置变量,模型中元素便可转化为超平面内的若干个点,通过寻找一个最优化的超平面使得以上点达成最佳划分即实现了模型的二分类[27-30]。由于本文涉及的降水粒子分类是一个多分类问题,针对二分类的SVM 分类器,需通过采取一对一(One Versus One, OVO)的策略实现多分类。在任意两类样本之间设置一个SVM,由此获得多分类的模型池。以极化参数数据作为每类粒子的特征向量,其中,BI、DS、RA、WS、GR 五类目标粒子的两两SVM 分类器的模型参数,如表1 所示。核函数Kernel 选取为非线性的径向基核函数(Radial Basis Function,RBF),Gamma 参数主要决定核函数的映射维度,C参数决定错误项的惩罚系数。
当对一个未知样本进行预测时,根据每个SVM 的输出结果,统计各类别获得的票数,最高得票数T 对应的分类即为最终输出结果。图9 所示为利用卷积神经网络综合模型联合SVM 分类器,实现对5类目标粒子分类的流程。
3 验证与评估
3.1 0.5°仰角数据
为验证不同模型在实测数据上的性能,本文选 取KOHX 雷 达2020 年3 月31 日7 时20 分 一 次0.5°仰角扫描数据进行测试。图10(a)~(d)分别对应水平反射率图、差分反射率图、差分相移率图、互相关系数图。
图10 KOHX雷达的极化参数图
图11(a)~(f)分别是利用传统模糊逻辑方法、LeNet-HC、AlexNet-HC、VGGNet-HC、ResNeXt-HC以及联合模型获得的分类结果。图11(a)标注的红圈中可以看出,NOAA 中有较为丰富的BI 回波,而使用模糊逻辑方法识别的BI 回波较少,且由红色方框所示,存在将部分DS 粒子误识别成RA 粒子等情况,5 类目标粒子的整体识别准确率为91.57%。图11(b)~(f)所示,CNN 模型的误识别主要集中于DS 和RA 类之间不同程度地相互误判,这与测试集混淆矩阵的表现结果相一致。测得各单一网络对于目标粒子的整体准确率依次为90.24%、93.75%、93.12%、94.25%,而联合模型的分类准确率最高,为94.92%。
图11 不同模型实测数据分类结果
3.2 其他数据
由于上述模型的训练、测试及验证数据均来源于KOHX 雷达0.5°仰角。为验证本文所搭建模型的鲁棒性,分别进行了以下两个实验。
实验1:利用KOHX 雷达其他仰角的扫描数据对模型进行测试。
如图12 所示,分别是0.9°、1.3°、1.8°、2.4°仰角的分类结果。可以得到,随着扫描仰角的提高,中心降雨区域减小,生物回波减少,与实际情况相符。分类结果与NOAA提供的参考结果基本一致。
图12 KOHX雷达不同仰角分类结果
实验2:分别选取KLGX、KMUX、KOTX、KSHV和KPOE 五部雷达的0.5°仰角扫描数据对模型进行测试。
图13 所示为5 部雷达扫描数据的整体分类准确率、各类最高准确率以及各类最低准确率。可以得到,不同雷达的整体准确率均能达到90%以上,平均各类最高准确率达97.42%,平均各类最低准确率为89.08%。
图13 不同雷达仰角数据的分类准确率
4 结束语
本文首先对4 种经典卷积神经网络模型进行参数调整,使得双偏振雷达极化参数数据矩阵能够适应各网络的传播结构。然后利用不同网络对不同降水粒子分类时的互补特性,构造出多个卷积网络的综合模型。最后利用SVM 分类器对上述综合网络的降水块分类结果进行细分,提出一种卷积神经网络联合SVM 的降水粒子分类方法。实验结果表明,与传统模糊逻辑分类模型、LeNet-HC等单一CNN 模型相比,联合模型对于目标粒子拥有更高的分类准确率。相较于模糊逻辑方法通过专家经验确定参数的特点,该方法通过数据驱动模型以自学习的方式习得参数,因此更客观且移植性好。并且,不同仰角、不同雷达扫描数据的测试结果表明,该模型对于目标粒子都能够进行有效分类。结果与NOAA 提供的参考结果基本一致,表现出较好的鲁棒性。