注意力机制和两步走策略的测光图像红移回归模型
伍况, 孙春, 曹冠龙*, 邱波*, 姚麟, 张明儒, 张立文
河北工业大学, 天津 300400
*通讯作者 e-mail: caoguanlong@hebut.edu.cn; qiubo@hebut.edu.cn

作者简介: 伍 况, 1996年生, 河北工业大学硕士研究生 e-mail: 865051743@qq.com

摘要

红移是星系的基本参数之一。 大量已知星系只有测光图像而并没有光谱, 因此通过测光图像而非光谱来求取红移值具有重要的研究意义。 首先构建了一种基于测光图像估计星系红移的回归网络(GRRnet)。 它和以往的类似方法相比网络层数更深, 而且增加了注意力机制, 使模型能聚焦更为有用的信息。 在GRRnet的基础上, 进一步提出了一种两步走的策略, GRRnet-C-R: 第一步把星系按照红移进行粗分类; 第二步按照分好的类分别进行回归估计, 最后再合并到一起。 这种策略可明显减小测光红移估计的误差。 该工作的数据全部来源于斯隆数字巡天(SDSS)的第十六次数据发布SDSS DR16, 从中选取了96 024个红移小于0.6的星系, 每个星系的相关数据包含g, r, z三个波段的合成图像、 u, g, r, i, z五波段的测光值、 以及被视作标签的光谱红移。 在预处理过程中, 将测光图像剪切成50×50的尺寸, 目的是在保障减少计算量的同时能框选住大部分星系。 由于对比算法NetZ的输入尺寸为64×64, 为了保持输入尺寸一致, 使用cv2.resize函数将图像尺寸更改为64×64。 实验采用了七种评价指标与多种方法进行对比, 结果表明GRRnet-C-R的均方误差(MSE)低至0.001 46, 与随机森林(RF)、 极限梯度提升(XGBoost)和NetZ相比误差分别降低了22.3%、 21.9%和18.0%。 GRRnet-C-R的线性回归决定系数R2达到了0.948, 取得了一个很好的模型拟合效果。 实验结果证明了这种两步走的策略能有效降低测光红移估计的误差, 这为之后的测光红移估计提供了一种新的思路和方法。

关键词: 红移估计; 星系红移回归网络; 通道注意力机制; 测光图像; 两步走策略
中图分类号:P157.2 文献标志码:A
An Algorithm for Redshift Estimation of Photometric Images Using Convolutional Neural Networks
WU Kuang, SUN Chun, CAO Guan-long*, QIU Bo*, YAO Lin, ZHANG Ming-ru, ZHANG Li-wen
Hebei University of Technology, Tianjin 300400, China
*Corresponding authors
Abstract

Redshift is one of the basic parameters of galaxies. The number of photometric images is enormous relative to the spectrum. A large number of known galaxies have only photometric images and no spectra. It is, therefore, common to obtain redshift values from photometric images rather than spectra. This paper constructs the Galactic Redshift Regression Network (GRRnet), a convolutional neural network for estimating photometric redshift from galaxy images. It has a deeper network layer than previous similar methods and adds an attention mechanism to help it focus on more useful information. Based on GRRnet, this paper further proposes a two-step strategy, GRRnet-C-R: the first step is to classify the galaxies according to the redshift roughly; the second step is to perform regression estimation according to the classified categories, and finally merge them. This strategy can significantly reduce the error of photometric redshift estimation. The data in this paper are all from the Sloan Digital Sky SurveyDR16. The relevant data of each galaxy includes the composite images of the three bands of g, r, and z, the photometric values of the five bands of u, g, r, i, and z, and the observed Spectral redshift for labeling. In the pre-processing process, the photometric image is cut to the size of 50×50, to ensure that most of the galaxies can be framed while the computation is reduced. Since the input size of the comparison algorithm NetZ is 64×64, to keep the input size consistent, use the function cv2. resize to change the image size to 64×64. The experimental results show that the mean squared error (MSE) of GRRnet-C-R reaches 0.001 46, which is 22.3%, 21.9% and 18.0% lower than that of random forest (RF), eXtreme Gradient Boosting (XGBoost) and NetZ, respectively. The linear regression coefficient of determination of GRRnet-C-R reached 0.948, which achieved a good model fitting effect. Experimental results show that this two-part strategy can effectively reduce the error of metering redshift estimation, which provides a new idea and method for subsequent metering redshift estimation.

Keyword: Redshift estimation; Galaxy redshift regression network; Channel attention mechanism; Photometric image; Two-step strategy
引言

在过去十年的测光巡天计划里, 已经发现了数十亿的星系。 薇拉· 鲁宾天文台的时空遗迹巡天(legacy survey of space and time, LSST)计划[1]、 罗曼空间望远镜(Roman space telescope)、 中国的巡天空间望远镜(Chinese space station telescope, CSST)等巡天计划的到来将会提供更多星系的信息。 众所周知, 研究宇宙空间的大尺度结构需要精确可靠的红移值, 红移的光谱测量要由高分辨率的光谱望远镜才能完成, 相应的获取光谱红移值的工作是极其耗时耗力的, 这导致只有少量的星系具有光谱红移。 因此测光红移估计是很有必要的工作。

测光红移的估计方法主要分为两种, 模板匹配法和机器学习法, 它们各有优势[2]。 模板匹配法通过拟合星体的光谱能量分布模板和类似查表的方式来估测其红移值。 机器学习法需要一个包含标签(光谱红移)的训练样本来学习星系数据的特征与红移之间的映射关系。 迄今为止, 大部分的机器学习算法都是基于测光参数如颜色-星等的测量值来估计星体的红移。 最早应用到测光红移估计的机器学习的算法有K近邻(K-nearest neighbor, KNN)[3]、 随机森林(random forest, RF); 接着出现了一些集成学习算法如LightGBM(light gradient boosting machine)、 极限梯度提升(EXtreme gradient boosting, XGBoost)等[4]; 之后出现了一些组合算法如粒子群算法优化反向传播神经网络(particle swarm optimization-back propagation, PSO-BP)[5]和FOABP-RF(fruit fly optimization back propagation-random forest)[6]; 再后来由于卷积神经网络(convolutional neural network, CNN)在图像处理方面取得的成功; 开始出现了使用测光图像来估计测光红移的方法。 Pasquet等[7]将光谱红移划分为180个区间, 从每个星系的u, g, r, i, z五个波段的图像提取特征并预测其最可能属于哪个红移区间; Schuldt等[8]只用测光图像预测具体的测光红移值, 他们提出了一个基于CNN的简单模型NetZ, 该模型主要由两个卷积模块和一个回归器构成; Ben Henghes等[9]将图像和星等数据混合输入一个CNN模型估计测光红移。 上述基于测光图像的红移估计算法证明使用测光图像能提取到红移相关信息。 从图像的角度而言, 测光图像中包含了星系的一些光度特征、 颜色特征、 形态特征以及纹理特征, 它们与红移之间存在一定的相关性。

在前人CNN方法的基础上, 提出一种更深的回归模型星系红移的回归网络(galaxy redshift regression network, GRRnet), 可以有效地提升测光红移估测精度, 其增加的通道注意力机制能有效地自动关注测光图像中有用的信息。 此外, 本文提出了一种先分类再回归的两步走策略, 进一步降低了估计误差。

1 数据介绍

本工作使用的数据全部来源于SDSS DR16。 数据集的主体是96 024个由g, r, z三个波段合成的星系图像(使用make_lupton_rgb函数[10]将g, r, z三个波段的数据分别送入R, G, B通道进行合成), 此外还包括其对应的测光数据和光谱数据。 在本文的后续对比算法里, RF和XGBoost使用的是这里的测光数据, 而其余算法则使用测光图像。 因为斯隆数字巡天(sloan digital sky survey, SDSS)里Z> 0.6的星系数量相对较少, 相应的预测结果统计意义不明显, 所以只考虑了红移值Z< 0.6的星系。 星系数量-红移分布如图1所示。 在预处理过程中, 从测光图像里自动识别每个星系, 并把它们用50× 50的方框裁剪出来。 这是因为虽然星系的大小不一, 但50× 50的尺寸能选中大部分的星系。 此后, 为了与主要的对比算法NetZ模型的图像输入尺寸保持一致, 使用了cv.resize函数将图像尺寸统一变为64× 64, 其中采用了该函数默认的线性插值的方法。

图1 本文中数据集96 024个星系的红移分布Fig.1 Redshift distribution of 96 024 galaxies in the data analyzed in this work

2 网络结构
2.1 GRRnet

为了有效实现星系测光红移的估计, 本文设计了一个新的基于注意力机制的红移回归网络GRRnet, 整体结构如图2所示。 输入64× 64× 3的g, r, z三波段的合成图像, 图像经过多个卷积, 卷积核采用感受野较小的3× 3的尺寸, 卷积步长固定为1个像素。 每层卷积后接一个Relu激活函数, 解决了梯度耗散的问题。 网络结构中包含五个2× 2的最大池化, 连接在部分卷积层之后, 对提取到的特征进行压缩, 降低计算量。 通道注意力模块(channel attention module, CAM), 可以帮助模型对输入向量的每个部分赋予不同的权重, 以抽取出更加关键及重要的信息, 使模型作出更加准确的判断, 同时不会对模型的计算和存储带来更大的开销, 它的结构图如图3所示。 最后一个最大池化层的输出会经过通道注意力模块, 实现特征权重的再分配。 通道注意力模块的输出会经过三个通道数依次降低的全连接层实现降维, 最终输出一个具体的红移值。

图2 GRRnet的整体架构Fig.2 Overall architecture of GRRnet

图3 通道注意力模块的结构图[11]Fig.3 The architecture of channel attention module

2.2 通道注意力模块(CAM)

通道注意力模块(CAM)通过计算出各个通道所对应的权重值, 并利用权重值与相应通道的特征图相乘, 使得网络突出对重要特征的表示。 其结构如图3所示。 首先, 将输入的特征图F(H× W× C)分别经过基于HW两个维度的MaxPool和AvgPool, 得到两个1× 1× C的特征图; 然后, 将两个特征图送入一个共享权值的多层感知机(multilayer perceptron, MLP)进行通道间依赖关系的学习, 两层神经层之间通过压缩比r实现降维。 最后, 将MLP输出的特征进行了一次基于一个element-wise函数的加法运算和操作, 再经过一个基于sigmoid函数的激活计算操作, 生成了最终输出的通道加权[11]

3 两步走策略和其他方法
3.1 两步走策略

先进行一个粗分类将星系的红移划到一个大致的区间内, 然后再用回归模型估计其具体的红移。 具体流程图如图4所示, 以数据库红移区间的中间点为界划分为两类。 本工作选取的星系数据中红移范围为0~0.6, 即红移0~0.3为一类, 0.3~0.6为一类。 分类模型和回归模型采用相同的骨干网络, 只是最后一个全连接层稍有不同, 分类模型输出两个类别的概率, 回归模型输出具体的估计数值。 有两个结构相同但参数不同的回归模型, 分别对应于两个类别。

图4 两步走策略的流程图Fig.4 The flow chart of the two-step strategy

3.2 对比算法——随机森林

随机森林(Random Forest)是bagging集成模型的又一种扩展模型或变体, 它在以决策树为基学习器构建bagging集成的基础上, 进一步在决策树的训练过程中引入了随机特征选择, 因此RF包括了下列四个基本部分: (1) 随机选择样本(放回抽样); (2) 随机选择特征; (3) 构建决策树; (4) 随机森林投票(平均)[12]

3.3 对比算法——XGBoost

XGBoost(extreme gradient boosting)是一种集成学习算法, 属于3类常用的集成方法(bagging, boosting, stacking)中的boosting算法类别。 它是一个加法模型, 基模型一般选择树模型, 但也可以选择其他类型的模型如逻辑回归等。 XGBoost属于梯度提升树(gradient boosting decision tree, GBDT)模型这个范畴, GBDT的基本想法是让新的基模型(GBDT以分类树算法为基模型)去拟合前面模型出现的偏差, 从而不断将加法模型的偏差降低。 与经典的GBDT比较, XGBoost做了一些技术改进, 使得其在监督学习的应用上有一个较为明显的性能提升[13]

3.4 对比算法——NetZ

NetZ是Schuldt等于2021年提出的第一个使用测光图像进行红移估测的CNN算法[8]。 该模型主要由两个卷积模块和一个回归器构成。 其中每个卷积模块由一个卷积核尺寸为5× 5的卷积层和一个尺寸为2× 2的最大池化层构成; 回归器主要包含三个维度依次递减的全连接层。 五波段的输入图像首先经过两个卷积模块进行特征提取及特征图尺寸的压缩, 提取到的特征经过展平操作变为一维向量后送入回归器, 最终输出预测的红移值。

4 评价指标和实验结果
4.1 评价指标

机器学习任务中很重要的一个步骤就是定义合适的评价指标来评判模型的好坏, 回归任务关注预测值和真实值之间的差别, 以下列举了回归模型的常用评价指标[14]

(1)均方误差(mean squared error, MSE), 反映估计量与被估计量之间差异程度的一种度量。

MSE=1Ni=1N(Zphot(i)-Zspec(i))2(1)

式(1)中, Zphot是预测值, Zspec光谱红移值, N是样本数目。

(2)平均绝对误差(mean absolute error, MAE), 表示预测值和观测值之间绝对误差的平均值。

MAE=1Ni=1N|Zphot(i)-Zspec(i)|(2)

(3)均方根误差(root mean square error, RMSE), 表示预测值和观测值之间差异的样本标准差。

RMSE=1Ni=1N(Zphoto(i)-Zspec(i))2(3)

(4)R2分数, 用以反映自变量和因变量之间相关关系密切程度的统计指标, 取值为0~1, 数值越大, 拟合效果越好。

R2=1-i=1N(Zphot(i)-Zspec(i))2i=1N(Zspec(i)-Zspec¯)2(4)

(5)Δ Z的标准偏差σ Z)

ΔZ=(Zphot-Zspec)/(1+Zspec)(5)

Bias=1NΔZ(6)

σ(ΔZ)=1Ni=1N(ΔZ(i)-Bias)2(7)

(6)Δ Z的标准化中值绝对偏差(normalized median absolute deviation, NAMD)。

NMAD(ΔZ)=1.48×Median(|ΔZ|)(8)

(7)异常率Outliers: Δ Z> 3σ 的异常点。

4.2 实验结果

为了客观地评判GRRnet算法的性能, 采用了4.1节给出的多项评价指标在各种算法之间进行了实验比较。 表1详细列出了不同机器学习算法在七种误差指标下的结果。

表1 不同机器学习算法的预测结果 Table 1 Prediction results of different machine learning algorithms

RF和XGBoost使用的是测光数据, 其余算法采用测光图像。

NetZ-Classification-Regression(NetZ-C-R)和GRRnet-Classification-Regression (GRRnet-C-R)表示采用NetZ和GRRnet为骨干网络经过图4两步走策略处理后的结果。 在表1中, 加粗的数字表示在对比算法中该项评价指标中表现最好的, 次优结果由下划线标出。 GRRnet、 NetZ、 XGBoost、 RF的MSE分别为0.001 52、 0.001 78、 0.001 87、 0.001 88, 实验结果表明使用测光图像估计星系红移的NetZ和GRRnet比使用测光数据估计星系红移的RF和XGBoost表现更好, 且本文提出的网络GRRnet又比网络NetZ在估计星系红移上更具有优越性。 NetZ-C-R的MSE比NetZ降低了9.9%, GRRnet-C-R的MSE比GRRnet降低了4.1%, 实验结果表明先分类再回归的两步走策略进一步提升了NetZ和GRRnet的性能。 从表1中不难看出GRRnet-C-R除了异常率Outliers这一项指标不是最好, 其他都是最优。 其中GRRnet-C-R的R2高达了0.947 77, 模型拟合效果很好。 两步走策略也有不足之处, NetZ和GRRnet经过两步走策略处理后的NetZ-C-R和GRRnet-C-R的异常率Outliers反而升高了, 其中的原因是在进行分类时的准确率并不是百分百正确, 分类准确率在95%左右, 这些在第一步分类错误的点在第二步估计的误差会更大, 很容易成为异常点。

预测红移与真实红移的密度散点图是描述实验结果的一种更为直观的手段(见图5)。 横轴Zspec代表星系红移的真实值, 纵轴Zphot代表红移的估计值, 每个小图右侧的颜色栏代表了星系的密度, 由蓝色渐变到橙色, 星系数量逐渐增多。 图中Zspec为0.1附近的散点十分密集, 而Zspec为0.2和0.5附近的散点较为稀疏, 这也与图1的星系红移分布图相对应。 从图中可以看出, 与RF、 XGBoost以及NetZ相比, 使用GRRnet的预测结果图中的散点更加集中密集, 异常点更少, 表明GRRnet在四种算法中估测最准确。 当0.5< Zspec< 0.6时, GRRnet的Zphot大部分小于Zspec, 在Zphot=0.57附近有明显的边界, 即在给定区间的高红移部分ZphotZspec偏小, 同样的现象也出现在XGBoost算法和RF算法之中; 而NetZ的Zphot相对分散, 接近一个正态分布, 高红移的“ 边界现象” 不明显。 所以将红移区间分为0~0.3和0.3~0.6之后进行回归出现了两个断层, Zphot=0.3和Zphot=0.6附近, GRRnet-G-R比NetZ-C-R更加明显。 但是如果在坐标轴上画一条45° 的对角线, 在0< Zspec< 0.6的区间内, GRRnet-C-R的密度散点图中的散点要比NetZ-C-R的更加集中, 也更加靠近对角线, 表明GRRnet-C-R的估计误差更小。 总的来说, GRRnet在红移区间的高红移部分估测效果不太理想, 解决方案有待进一步研究。

图5 GRRnet和其他算法的预测密度图Fig.5 Predicted density maps of GRRnet and other algorithms

模型参数量大小和训练时间是衡量CNN类方法的常用的指标。 由表2可知GRRnet比NetZ的模型参数量大约多40%, GRRnet的训练时长比NetZ高出4倍多。 这与GRRnet的网络更深, 模型更加复杂有关, 是我们预想中的。 使用了96 024张图片, 两个模型均只需训练约30个epoch就能收敛, 且训练一个epoch的时间都不超过100 s, 所以两个模型的时间成本并不大。 在星系红移估测领域中, 在可接受的时间成本下, 估测精度的提升十分重要。 虽然说NetZ在训练时长和内存消耗上比GRRnet更具优势, 但在估测精度上远不如GRRnet, 因此总体来说, GRRnet比NetZ更具优越性。

表2 GRRnet和NetZ的模型参数量和训练时长 Table 2 Parameters and training duration of GRRnet and NetZ
4.3 粗分类结果讨论和粗分类对红移估计的影响

表3中列出了NetZ和GRRnet的分类结果, 采用了Accuracy、 Precision、 Recall、 F1-score等常用的分类指标[15]。 将星系按照红移范围划分为两类, 一类星系的红移为0~0.3, 另一类星系的红移为0.3~0.6, 大部分的分类指标的数值都超过了95%, 是一个比较好的分类结果, NetZ和GRRnet的分类结果十分接近。 可以把分类看作一个粗略的预测, 这说明了两种网络在进行粗略的预测时的效果区别不大。 在图6中, 绘制了采用NetZ和GRRnet的分类混淆矩阵图, 训练集和测试集的划分比例为7:3, 该图是测试集的分类结果图, 横轴为星系的光谱红移, 左纵轴为星系预测红移, 右纵轴为星系数量的颜色栏, 颜色从白色到深蓝色代表星系数量逐渐增多。 从图中可以看出两种网络的整体分类效果较好, 但仍有部分样本分类错误, 这也导致分类后再进行回归时出现了更多的异常点, 所以表1中的GRRnet并没有在outliers这项指标中胜出。

表3 GRRnet和NetZ的分类结果 Table 3 Classification results of GRRnet and NetZ

图6 NetZ和GRRnet的分类混淆矩阵Fig.6 Classification confusion matrix of NetZ and GRRnet

为了探究分类类别对预测结果的影响, 尝试了分为更多的类别。 在表4中列出了NetZ和GRRnet根据星系红移分为两类, 三类以及六类的平均准确率, 可见分类准确率会随着类别增多明显降低, 由于分类准确率过低导致之后的回归会出现较多的异常点, 预测效果反而更差。

表4 NetZ和GRRnet根据星系红移分为两类、 三类、 六类的平均准确率 Table 4 Average accuracy rates of NetZ and GRRnet divided into two categories, three categories and six categories according to galaxy redshifts
5 结论和展望

提出了一种新的使用图像进行星系红移预测的卷积神经网络GRRnet, 它比已有的使用测光图像进行星系红移预测的NetZ更加先进。 由于引入了注意力机制, 使GRRnet模型聚焦于有用的信息, 更高效地提取图像特征, 所以与NetZ相比, MSE降低了14.6%。 此外, 还提出了一种两步走策略, 第一步先按照红移进行粗分类, 第二步根据划分好的类别分别进行针对性回归预测, 该策略使得预测误差进一步的降低, NetZ-C-R的MSE比NetZ降低了9.0%, GRRnet-C-R的MSE比GRRnet降低了3.9%。 两步走策略中, 分类准确率并不是百分百正确, 分类错误的点估计误差会更大, 容易成为异常点, 导致NetZ-C-R的异常率(Outlier)比NetZ升高了14.85%, GRRnet-C-R的异常率(Outlier)比GRRnet升高了2.2%。 最优模型GRRnet-C-R的MSE达到了0.001 46, 与RF、 XGBoost和NetZ相比误差分别降低了22.3%、 21.9%和18.0%。 此外, GRRnet-C-R的线性回归决定系数R2达到了0.948, 取得了一个很好的模型拟合效果。 未来我们计划加入近紫外和近红外的数据, 期望得到更加精确的预测结果。

参考文献
[1] Vera C. Rubin Observatory LSST Solar System Science Collaboration, Jones L, Bannister M T, et al. The Scientific Impact of the Vera C. Rubin Observatory's Legacy Survey of Space and Time (LSST) for Solar System Science. 2020, arXiv. 2009. 07653[astro-ph. IM]. [本文引用:1]
[2] Salvato M, Ilbert O, Hoyle B. Nature Astronomy, 2019, 3(3): 212. [本文引用:1]
[3] Zhang Y, Ma H, Peng N, et al. The Astronomical Journal, 2013, 146(2): 22. [本文引用:1]
[4] Li C, Zhang Y, Cui C, et al. Monthly Notices of the Royal Astronomical Society, 2022, 509(2): 2289. [本文引用:1]
[5] MU Yong-huan, QIU Bo, WEI Shi-ya, et al(穆永欢, 邱波, 魏诗雅, ). Spectroscopy and Spectral Analysis(光谱学与光谱分析), 2019, 39(9): 2693. [本文引用:1]
[6] Li M, Gao Z, Qiu B, et al. Monthly Notices of the Royal Astronomical Society, 2021, 506(4): 5923. [本文引用:1]
[7] Pasquet J, Bertin E, Treyer M, et al. Astronomy & Astrophysics, 2019, 621: A26. [本文引用:1]
[8] Schuldt S, Suyu S H, Canameras R, et al. Astronomy & Astrophysics, 2021, 651: A55. [本文引用:2]
[9] Henghes B, Thiyagalingam J, Pettitt C, et al. Monthly Notices of the Royal Astronomical Society, 2022, 512(2): 1696. [本文引用:1]
[10] Lupton R, Blanton M R, Fekete G, et al. Publications of the Astronomical Society of the Pacific, 2004, 116(816): 133. [本文引用:1]
[11] Woo S, Park J, Lee J Y, et al. CBAM: Convolutional Block Attention Module. Computer Vision—ECCV 2018. Springer, 2018, 3. [本文引用:1]
[12] Breiman L. Machine learning, 2001, 45(1): 5. [本文引用:1]
[13] Chen T, Guestrin C. XGBoost: A Scalable Tree Bossting System, 2016, arXiv. 1603. 02754[cs LG]. [本文引用:1]
[14] Henghes B, Pettitt C, Thiyagalingam J, et al. Monthly Notices of the Royal Astronomical Society, 2021, 505(4): 4847. [本文引用:1]
[15] Kosten J. Scientometrics, 2016, 108(1): 457. [本文引用:1]