一种星系形态分类的新方法
2022-07-18王林倩罗阿理逯亚坤郭小雨
王林倩,邱 波*,罗阿理,孔 啸,逯亚坤,郭小雨
(1. 河北工业大学,天津 300401;2. 中国科学院国家天文台,北京 100101)
随着天文观测仪器的发展和观测技术的进步,大型数字巡天计划如斯隆数字巡天(Sloan Digital Sky Survey, SDSS)[1],COSMOS巡天(Cosmic Evolution Survey, COSMOS)[2],大口径全天巡视望远镜(Large Synoptic Survey Telescope, LSST)[3]等逐步实施,星系观测数据呈现爆炸式增长的趋势。
星系是众多天体中的一类,主要由恒星、恒星遗骸、星际气体、尘埃和暗物质等组成,并受引力绑定。星系的形态与星系的形成、演化有着密切的联系,是探究星系物理的重要参数。随着机器学习和深度学习在各个领域的应用,星系形态的自动分类方法也迅速发展。文[4]用多个支持向量机(Support Vector Machine, SVM)对星系形态进行螺旋星系、椭圆星系和不规则星系的分类,最高分类准确率为96.8%。文[5]以5万多幅星系图片为训练集,经过100多次的尝试,首次提出用卷积神经网络进行模型训练,最终以均方根为0.074 92获得了 “银河动物园挑战赛” 的冠军。文[6]利用SDSS DR12中17 344幅恒星和47 656幅星系图像,提出一个类似视觉几何组(Visual Geometry Group, VGG)的11层深度卷积神经网络,实现了对恒星、星系的分类,测试集的准确率分别达到99.52%和99.48%。文[7]对来自EFIGI目录的旋涡星系、椭圆星系、透镜星系和不规则星系进行分类,提取星系图像的颜色特征、纹理特征和形状特征,并用二进制正弦余弦算法选择最相关的特征,最后用K最邻近(K-Nearest Neighbor, KNN)方法对4类星系分类的准确率分别为97.43%,100%,79.48%和100%,平均分类准确率为94.2%。文[8]提出了一种星系形态的分类网络daMCOGCNN,该方法对不规则星系进行了数据增强,使用不同的激活函数构建卷积神经网络,椭圆星系、旋涡星系和不规则星系分类准确率达到97%。文[9]结合数据增强技术和深度学习方法实现了对透镜星系、椭圆星系和旋涡星系的分类,此模型的分类准确率达到90.2%,验证准确率达到88.3%。文[10]提取星系图像的非冗余色彩特征,并提出一种寻找最优特征子集的方法,最后利用极端机器学习(Extreme Machine Learning, EML)对椭圆星系、旋涡星系、透镜星系和不规则星系进行分类,总体分类准确率达到98%。
然而,目前对于星系形态分类研究领域还存在分类类别少、分类样本类间比例失衡等问题,此前研究多是对椭圆星系、涡旋星系、透镜星系进行二分类或三分类。面对更多类型的星系形态数据,当前的分类方法准确率比较低,因此迫切需要一种能准确区分更多星系形态的方法。我们的目标是找到一种方法能够实现旋涡星系、椭圆星系、透镜星系以及不规则星系自动分类,甚至可以实现不同数据库中4类不同形态星系的自动分类。如图1,本文对来自不同数据库中的星系图像进行裁剪和下采样,从而剔除质量差的数据,同时对数据进行去噪和增强,减小图像噪声和样本类间比例失衡对分类模型的影响。之后我们提出了一种更高效的星系形态自动分类网络GMC-net,回避了图像特征提取和选择、分类器选择这些难题,从而实现了4类不同形态星系的高效分类。
图1 星系形态分类整体流程图
1 数 据
本文主要使用SDSS DR16,Galaxy Zoo2和EFIGI目录的数据。3个数据库的测光数据都来源于斯隆数字巡天[11]。斯隆数字巡天得到的原始数据为u,g,r,i和z波段数据,但u和z波段多是近紫外和近红外波段,且包含的有用信息非常少。g,r和i波段数据已经足够还原比较真实的星系图像,所以当前相关研究一般采用g,r和i波段数据合成的图像[12-13]。
1.1 数据获取
EFIGI目录[14]中的测光和光谱数据是从SDSS DR5目录获得的,目录中星系按形态主要分为椭圆形、透镜状、旋涡形、不规则形和矮形(Dwarf),这5类又分为不同的子类。利用星系形态参数T(T∈[-6, 11],T为整数,分别代表不同形态星系的类型)可以筛选不同形态的星系,表1展示了各类星系的选择标准,最终从EFIGI目录获得920幅旋涡星系、289幅椭圆星系、531幅透镜星系和248幅不规则星系的图像。
星系动物园(Galaxy Zoo2)[15]包括11个任务和37个响应,同一个样本超过20人对其分类才会统计,文[15]给出每个分类任务干净样本阈值范围以及11个具体分类任务,为保证所选样本更准确,此次设置的阈值均大于建议阈值,表1注释部分对各个参数阈值设置进行了详细解释,最终在Galaxy Zoo2获得3 095幅旋涡星系、4 208幅椭圆星系、1 805幅透镜星系以及235幅不规则星系。
本文采用最新发布的SDSS DR16[16]测光数据,该数据星表可以在CasJobs[17]中通过星系specObjID与Galaxy星表交叉得到相应星系的赤经和赤纬。除了表1所述的主要查询标准限制,还有如下设置:所有图像设置红移下限为0.001、红移上限为0.025,通量下限为50、通量上限为500及0.01的图像缩放因子,设置提取前2 000个数据。目前不规则星系物理条件的限制未知,因此未得到不规则星系。DR16中各类星系数量分布不均,在此人工筛选去除了双重的、合并的以及包含许多未知对象的图像,最终得到913幅旋涡星系、1 956幅椭圆星系和805幅透镜星系的图像。
表1 星系数据选择标准
1.2 星系图像预处理
卷积神经网络对尺寸小的数据学习能力更强,且训练速度快[18]。为了减小图像中存在的不必要相邻信息对实验结果的影响,我们首先对星系数据进行剪裁并下采样[19]。以透镜星系为例,如图2,424 × 424 pixel的图像剪裁成164 × 164 pixel,之后将图像下采样到80 × 80 pixel。
图2 星系剪裁及下采样
图像在相机捕捉、信息传输、数字图像转化等过程中存在噪声干扰,噪声的叠加严重影响图像质量,进而导致图像的本质特征发生改变。对星系形态进行分类时,保存图像中星系的外形轮廓和纹理信息至关重要,所以本文对图像采用边缘导向的非局部均值去噪方法[20]。首先,对图像采用二阶差分索贝尔(Sobel)算子抽取边缘;其次,将边缘信息与原有的噪声图像共同构建一个非局部协同滤波框架;最后,将边缘信息参与噪声图像的修复。去噪效果如图3,由图3可以看出,去噪之后星系周围的噪声点消失,且图像有了更多、更明显的边缘纹理信息。
图3 图像去噪效果
数据集中不规则星系和透镜星系的数量相对较少,数据集的类间比例失衡会影响模型的可靠性。所以本文采用数据增强的方法增加不规则星系和透镜星系的个数。数据增强效果如图4,数据增强方式为[21]
图4 数据增强效果
旋转:星系图像具有旋转不变性,利用图像的这一性质对图像进行随机旋转,旋转范围设置为30°;
缩放:缩放范围为0.7~1.3倍;
翻转:沿着垂直轴和水平轴随机翻转每幅图像;
平移:图像中的对象可能不在帧中心,并且在不同方向有偏移,我们对每幅图像进行水平和垂直随机平移,平移范围为0~10像素。
2 分类网络介绍
2.1 GMC-net网络构架
如图5,典型的ConvNet[22]由输入层、卷积层、池化层、全连接层和输出层构成。输入层主要预处理初始化数据,卷积层主要进行特征提取,池化层主要进行特征压缩来减小过拟合,全连接层主要起到分类器的作用。
图5 卷积神经网络通用结构
本文受Lenet5网络参数量少易训练的启发,结合不同激活函数和批量标准化(Batch Normalization, BN)层的特点,搭建了GMC-net网络。该网络不仅训练的参数量少,还因批量标准化层的加入大大提高了网络的收敛速度,获得了很高的分类准确率。
图6是GMC-net整体构架图,该网络有1个输入层、5个卷积层、1个全连接层和1个输出层。表2是对GMC-net构架中各层的参数设置。GMC-net网络的卷积层后都有1个批量标准化层和最大池化层。批量标准化层可以加快收敛速度和训练速度,池化层对卷积得到的特征进行特征压缩来减小过拟合。此外,GMC-net网络采用不同的激活函数相互协调:为更好输入到下一层,前两层使用双曲正切激活函数(Tanh)[23];为使模型的收敛速度稳定、计算速度更快,中间第3和第4卷积层使用修正线性单元ReLU(Rectified linear unit)激活函数[24];为抑制神经元死亡,第5卷积层采用Leaky ReLU激活函数[25]。经过第5卷积层之后的特征由Flatten()函数展开为一维数组,并输入第1全连接层,此处使用的激活函数为ReLU,输出为1 600。由于该网络是四分类模型,所以输出层的神经元设置为4,激活函数为softmax。
表2 GMC-net体系结构概述
图6 GMC-net整体构架
2.2 其他分类网络介绍
本文还用了文[5]提出的卷积神经网络、文[22]提出的AlexNet网络、文[12]提出的ResNet-26网络以及文[13]针对星系形态分类提出的C2分类网络。
表3分别对Dieleman网络、AlexNet网络、ResNet-26网络以及C2网络的整体结构进行了简单介绍,构架图中可以清楚地看到整体网络的层数、每层所在的位置、每层滤波器数量及大小的设置参数、所用池化层的池化方式以及Dropout层的丢弃率等。此外4个分类网络所有的卷积层采用ReLU激活函数。
表3 其他分类网络简介
3 实验结果分析及讨论
在本节中,我们首先介绍评估模型的性能指标,之后用不同网络对星系数据进行分类并与类似的研究进行对比。
3.1 评价指标参数
我们通过混淆矩阵(如表4)可以求得衡量分类模型的性能指标:准确率、精确率、召回率以及F1分数调和值。
表4 混淆矩阵
准确率(Accuracy)反映分类模型所有判断正确的结果占总观测值的比重;精确率(Precision)是模型预测为阳性的所有结果中,预测正确的比重;召回率(Recall)是在真实值为阳性的所有结果中,预测正确的比重;F1分数是精确率和召回率的调和平均数。准确率、精确率、召回率及F1分数的计算公式分别为
(1)
(2)
(3)
(4)
3.2 训练和验证
本文的程序采用Python编写,运行在2.80 GHz Intel(R)Core(TM)i9-10900F CPU,16 GB内存和64位Windows系统的桌面上,并使用RTX 2070 super GPU加速计算。在模型训练过程中,由于批量大小取决于数据集大小以及图形处理器的能力,综合考虑我们将批量大小设置为64。
本文首先对综合数据集中(Galaxy Zoo2, SDSS DR16和EFIGI目录)的4种不同形态星系进行分类测试。在模型训练开始前,首先将数据集按7.5∶2.5分为训练集和验证集,并对两者分别进行数据增强,最终数据集构成如表5。
表5中的数据集1(Data set 1)是来自SDSS DR16,Galaxy Zoo2和EFIGI目录的综合数据集。由于表1中透镜星系和不规则星系数量相对其他两类较少,为减少类间比例失衡问题对分类模型的影响,对透镜星系和不规则星系进行数据增强。数据集2(Data set 2)是EFIGI目录单独构成的数据集,原始数据为920幅旋涡星系、289幅椭圆星系、531幅透镜星系和248幅不规则星系,为保持各类形态星系类间比例均衡,对每类星系也进行了不同程度的数据增强。最终数据集1中16 572幅图像作为训练集,5 522幅图像作为测试集;数据集2中4 037幅图像作为训练集,1 226幅图像作为测试集。
表5 数据集信息
在训练及验证过程中,我们对GMC_net网络、C2网络、AlexNet网络和Dieleman网络以及ResNet-26网络的可训练参数量进行了统计,如图7。
网络可训练参数量反映该网络计算过程中的复杂程度,是决定模型训练速度的重要因素。参数越多说明网络越复杂,同一设备下训练该网络所消耗的时间越长,且越复杂的网络对计算机性能的要求越高。从图7可以看出,AlexNet网络和ResNet-26网络的可训练参数远远大于其他3个网络。其中Dieleman网络的可训练参数约362万,C2网络的约357万,GMC_net网络的约293万。从可训练参数量来看,GMC_net网络的可训练参数最少,在训练速度上占了很大优势。
图7 各个网络可训练参数量统计
图8显示了5种卷积神经网络架构在训练时,训练集的准确率、验证集的准确率随训练次数的变化趋势(所有的权重和偏差在训练开始时都是随机的),我们展示了20个epochs与准确率的关系图。从图8可以看出,5个分类网络的准确率都呈现迅速上升之后趋于稳定的趋势,其中,AlexNet网络在训练10次左右开始收敛,训练集的准确率最高为92.3%,验证集的准确率最高为90.0%;Dieleman网络在训练7次左右趋于稳定,训练集的准确率最高为96.3%,验证集的准确率最高为95.2%;ResNet-26网络在训练16次左右趋于稳定,收敛速度相对较慢,训练集的准确率最高为98.2%,验证集的准确率最高为97.8%;C2网络在训练6次左右趋于稳定,训练集的准确率最高为98.5%,验证集的准确率最高为97.9%;GMC_net网络在训练4次左右趋于稳定,训练集的准确率最高为99.53%,验证集的准确率最高为99.18%。从图8可以看出,GMC_net网络在训练过程中准确率最高,在各个网络训练最佳的情况下,AlexNet网络和ResNet-26网络耗时最多,GMC_net网络耗时最少。
图8 准确率与训练次数关系曲线图
综上,GMC_net网络的可训练参数最少,且训练过程中训练集和验证集的准确率均能保持稳定且高于其他网络,在收敛速度上超过了其他网络,总体来看,GMC_net表现最好。
3.3 不同方法的分类结果对比
表6是GMC_net对数据集1中验证集测试得到的混淆矩阵,通过混淆矩阵可以计算得到相应的准确率、精确率、召回率和F1分数。
由表6可以得出,本次实验最终对旋涡星系的分类精确率为98.29%,召回率为98.44%,F1分数为98.36%;椭圆星系的分类精确率为98.49%,召回率为99.03%,F1分数为98.75%;透镜星系的分类精确率为99.18%,召回率为98.89%,F1分数为99.03%;不规则星系的分类精确率为99.91%,召回率为99.34%,F1分数为98.36%;总体分类准确率为98.93%。
表6 数据集1验证集分类测试的混淆矩阵
表7展示了数据集1中5 522幅验证集在5个分类网络的最终分类结果对比,表中的准确率、精确率以及召回率都是各个网络多次重复验证后的最佳结果。
从表7可以看到,AlexNet和Dieleman的准确率、精确率和召回率均小于其他网络,两者的F1分数相比其他网络也偏低;ResNet-26虽然精确率比C2网络高,但是准确率、召回率和F1分数略低于C2网络;GMC_net在5个网络中获得了最高的准确率,其精确率、召回率和F1分数也高。从最终分类效果来看,GMC_net的分类性能优于其他网络。
表7 不同网络验证结果对比
为进一步证明本文方法的可行性,我们针对表1中来自EFIGI目录的星系重新利用GMC_net进行单独训练分类并与其他方法进行对比。为保持类间比例均衡,我们将来自EFIGI目录的星系扩展为表5中的数据集2。根据文[7, 10]的数据描述,我们所选的数据集包含两者所用的样本(涉及的样本类型均选取所有子类)。其中文[7]提取了星系图像的颜色特征、纹理特征(灰度共生矩阵,其中包含熵、对比度、相关性、能量等信息)以及形状特征,并用二进制正弦余弦算法选择最相关的特征,之后用K最邻近算法进行分类测试。文[10]是利用四元数极坐标复指数变换矩阵从星系彩色图像中提取色彩特征并进行特征筛选,最终利用极限学习机进行分类。
从表8可以看出,在都使用EFIGI目录做数据集的前提下,文[7]对EFIGI目录中的椭圆星系、旋涡星系、透镜星系和不规则星系进行分类,效果最好的分类精确率为92.7%,F1分数为88.68%;文[10]对4类星系进行分类的最佳结果总体召回率为98.78%,F1分数为98.74%;未进行去噪处理时,GMC_no的召回率低于文[10]的召回率,去噪之后,GMC对EFIGI目录中椭圆星系、旋涡星系、透镜星系和不规则星系分类的总体分类准确率、精确率、召回率以及F1分数均有提高,且比文[7, 10]得到的准确率、精确率、召回率和F1分数都高。
表8 与其他研究方法的对比结果
其次,文[7, 10]中的方法一方面在特征选择、分类器选择上有很大困难,且处理、运算过程比较复杂;另一方面文[7, 10]存在星系分类样本类间比例严重失衡的问题,导致模型更容易关注样本数量多的类别,从而影响模型的鲁棒性。而本文方法对图像进行了预处理,一是用非局部均值去噪,减小噪声对图像的影响,二是我们对不同形态的星系分别进行了数据增强,减小了由于样本量小、样本类间比例分布不均对实验结果的影响,最后采用GMC_net分类网络完美避开了图像特征提取和选择、分类器的选择难题,所以综合来看本文的分类方法是非常可行的。
3.4 GMC_net网络卷积特征可视化
本文最后利用Grad-CAM[26]技术对GMC_net卷积特征进行了可视化解释,Gard-CAM以热力图与原图结合的方式展示各类形态星系经过卷积之后的特征,Gard-CAM图可以反映卷积神经网络对预测输出的贡献分布,分数越高表示原始图像对应区域对网络的响应越高、贡献越大。
GMC_net不同卷积层所提取特征不同,最开始提取星系边缘、角落等,之后边缘检测提取简单形状。在高层中,特征图利用高级特征的组合识别抽象斑点。以旋涡星系为例,在第4卷积层中,图9特征图的合并图中每个要素图的可区分性更强,这正是分类模型所期望的。利用Gard-CAM对经过4层卷积的特征进行可视化,图中清楚地展现了其核心中间的突起及涡旋星系旋的臂状结构,特征贡献度由内向外螺旋递减,进一步清楚地展现了GMC_net在星系形态的星系轮廓特征、纹理特征提取及处理方面的高性能。
图9 旋涡星系经GMC_net卷积后特征可视化
4 总结与展望
星系的形态与星系的形成、演化有着密切的联系,是探究星系物理的重要参数。目前对于星系形态分类研究领域依然存在分类类别少、图像特征选择困难、各类形态星系样本分布不均、分类的准确率较低等问题。针对以上问题,本文提出了一种基于卷积神经网络的星系形态分类方法,实现了对旋涡星系、椭圆星系、透镜星系和不规则星系的高效分类。本文首先对星系图像进行剪切、下采样、去噪、数据增强等一系列处理,保证样本的多样性、均衡性,减小图像噪声和样本类间比例失衡对分类模型的影响;其次,我们构建了一个针对星系形态分类卷积神经网GMC-net,此网络可以自动提取星系图像的特征,并根据形态进行自动分类,避开了特征提取和选择、分类器选择的难题。我们利用形态分类方法对综合数据集(SDSS DR16,Galaxy Zoo2和EFIGI目录组合)不同形态的星系进行了分类。从实验分类结果来看,旋涡星系、椭圆星系、透镜星系和不规则外形星系分类精确率分别为98.29%,98.49%,99.18%和99.91%,召回率分别为98.44%,99.03%,98.89%和99.34%;对来自EFIGI目录中4种形态星系的分类平均准确率也达到了99.34%。实验结果表明,形态分类方法比其他方法表现更好,可以更有效地用于星系的形态分类。
本文虽然在一定程度上解决了星系形态分类的问题,取得了相应的进展,仍然存在一些不足之处有待进一步探索:(1)为保证所选数据样本更准确,本文在Galaxy Zoo2中选择的阈值偏大,对该数据集应用不够充分。(2)在SDSS DR16中由于对不规则星系的物理参数还未有统计研究,本文未直接从DR16中得到不规则星系。星系形态分类需要大量的样本,获取数据的方式也很多,未来在数据方面可以从数据库利用率以及五波段测光数据应用等方面进行研究。(3)本文构建的GMC_net网络可以自动提取星系形态特征,并自动对星系形态分类。从分类结果来看,分类准确率很高,但其中透镜星系、椭圆星系及涡旋星系错分的图像相对多一点,且对错分的样本难以区分。所以在未来分类系统研究中可以尝试构建专家系统与神经网络相结合的混合模型,即神经网络专家系统,以提升模型的分类性能。