APP下载

基于深度学习的太阳F10.7辐射通量的短期预报研究*

2022-02-14高扬吕建永王明李婧媛熊雅婷彭光帅

天文学报 2022年1期
关键词:太阳活动神经网络深度

高扬 吕建永 王明 李婧媛 熊雅婷 彭光帅

(南京信息工程大学空间天气研究所 南京 210044)

1 引言

空间天气的主要源头是太阳活动, 太阳活动的监测和预报对人类社会发展具有重要价值. 预报的时效性、准确性和规范性直接关系到能否有效避免恶劣空间天气对人类社会带来的巨大危害. 因此对源头太阳活动的长期监测和预报显得尤为重要, 太阳活动及其对近地空间的影响也一直是空间天气预报业务领域重要的研究课题. 其中F10.7和太阳黑子无疑是太阳活动的最重要的两个指标.F10.7指数(也称为渥太华指数或Covington指数)为10.7 cm的太阳辐射通量, 是日冕上所有源区的总射电辐射通量值, 为一个极好的太阳活动指示器, 反映了太阳活动性的强弱, 单位为sfu (1 sfu =10-22W·m-2·Hz-1).F10.7包含太阳活动区的变化信息, 通常被人们称为太阳F10.7指数, 它是记录太阳活动时间最长的3个指数之一. 事实证明,F10.7指数在确定和预测空间天气方面非常有价值.在许多高层大气模型和磁层模型中有广泛的科学应用, 其长期数据记录提供了6个太阳活动周期的气候信息. 而且, 由于F10.7可以在所有天气条件下从地面准确可靠地进行测量, 是一个非常可靠的数据集, 几乎没有间隔或校准问题.

F10.7是大气密度模型的输入参数, 对其准确预报尤为重要, 目前围绕F10.7指数的短、中、长期预报是世界各地空间天气预报机构的重要业务, 其中以未来几天的短期预报为必备内容. 目前对F10.7的预报主要类型有两种: 自回归分析方法和大数据结合机器深度学习.

1985年, Mordvinov[1]开发了一个乘法自回归模型来预测F10.7的月值. 2005年, Zhong等[2]采用奇异谱分析信号处理技术结合相似周期法预测太阳活动低年的未来27 dF10.7, 选取了2004年5月的31 d数据作测试, 其预测的平均相对误差为14%,中期预报结果优于美国空军(AAF). 2008年,Zhao等[3]通过研究太阳黑子数(SSN)和F10.7的关系, 根据前3 yr的线性回归斜率与F10.7最大值之间的关系, 构造了一种预测F10.7年最大值的F10.7长期预报方法. 2010年, Liu等[4]采用了54阶自回归模型, 利用前750 d历史数据拟合出的模型预测太阳活动峰年的27 dF10.7, 选取了2005-2007年间的612 d数据进行测试, 其中期预报的平均相对误差为19.6%, 预报结果和AAF相当. 2014年,Wang等[5]采用了自回归方法, 利用前135 d历史数据拟合模型后给出了后54 d的中期预报, 其27 d预测结果和54阶自回归模型相当, 但使用的参数和需要的历史资料都明显减少. 由于各个活动区域的随机出现和复杂演化,F10.7指数在震荡时间范围内的幅度及其周期都在不断发生变化, 因此目前采用了传统的数学统计以及信号频谱分析等手段来提高预报准确性的能力有限.

机器学习因其在数据处理中的出色性能日益受到重视, 也应用到太阳活动的研究中. 机器学习的产生和发展主要经历了两个阶段: 传统的机器学习阶段和深度学习阶段. 1998年, Zen等[6]首先提出了基于人工神经网络来预报未来1个月的月均F10.7指数, 模型中的输入量不仅使用了F10.7历史数据而且加入了前一个太阳活动周期的一些统计信息. 2001年, Chatterjee等[7]采用了双层隐藏层单元的神经网络, 通过对一个太阳活动周数据的拟合方式实现了一个可以利用11 d的历史数据来预报未来1 dF10.7指数的动态模型. 2009年, Huang等[8]提出使用支持向量回归(Support Vector Regression,SVR)对2002-2006年太阳活动低年进行预测, 一日预报最优平均绝对百分比误差(MAPE)为2.71%.以上传统的机器学习模型确实能在一定条件下解决部分问题, 但因为其本身是浅层(只有一层或两层), 因此不能更深入学习到数据隐藏的信息, 尤其是时间序列周期的复杂变化. 为了解决模型如何学习到大数据复杂性的问题, 深度学习出现了, 并开始应用到其他各个领域.

2018年, Wang等[9]提出使用长短时记忆神经网络(Long and Short-Term Memory, LSTM), 建立了一个包含90个神经元的隐藏层, 采用1959-2013年间55 yr共5个完整的太阳活动周作为训练集, 并将1957-1958年峰年数据作为测试集1,2014-2015年谷年数据作为测试集2. 测试集1和测试集2的7 d预报相对误差结果分别为12%和11%,27 d预报分别为14%和12%. 不同于以往的研究,在深度学习中, 预测的输入和输出值之间的关系不需要假设. 神经网络对复杂的太阳活动有很强的描述能力. LSTM模型可以一次训练、固定参数, 大大简化了日常预报, 同时有利于模型在其他相关的应用中推广, 首次实现自动化预报的工作. 在2020年, Okon等[10]利用反馈神经网络(BPNN)研究了SSN与F10.7的关系, 把太阳活动周期划分为4个阶段, 并在每阶段选取了70%数据作为训练集, 剩下的作为预测集. 结果表明利用SSN可以预测F10.7, 其预测集均方根误差最优约为13.68个太阳辐射通量单位.

F10.7指数的预报从传统机器学习到深度学习的演变, 也是从监督学习到无监督学习的进步, 让深度学习算法自动学习大数据的内在复杂关系,Bruevich等[11]、Lukianova等[12]和Tapping等[13]的研究显示了SSN、太阳黑子面积、极紫外辐射等太阳活动评价指标对F10.7的预报具有积极意义.Wang等[9]在总结和讨论中对模型的后续改进建议中也提到, 通过深度学习可以将这些数值指标直接整合到模型中, 而LSTM作为深度学习时间序列模型的典型代表, 能够直接从海量数据自动学习有效特征. 与传统方法相比, LSTM将这些信息融合要容易得多. SSN有更长的历史记录和更明显的太阳活动特征, 但当前对于F10.7预报, 还未有人尝试把SSN引入到LSTM模型中, 而这也是本工作的尝试.

本文的结构如下: 第2节介绍数据来源和LSTM模型; 第3节介绍时间序列统计分析F10.7指标和SSN两者的关系; 第4节介绍模型的构建和模型预报结果的对比研究; 最后为结语.

2 数据和方法

2.1 数据来源

本研究需要用到的数据包括F10.7和SSN.F10.7指数数据可以从美国国家海洋和大气管理局等机构的网站下载(ftp://ftp.ngdc.noaa.gov,www.celestrak.com). SSN来自于http://www.sidc.be/silso/datafiles. 这些数据公布的时间长短不一, 我们首先选取公共时间点1957年10月1日至2020年12月31日的2.3万个数据(包含19-24的5个太阳活动周时间). 其次为了和美国空间天气预报中心(SWPC)的结果进行对比, 我们选择1957年10月1日至1992年12月31日36 yr的数据作为训练集, 1993年1月1日至2020年12月31日28 yr的数据作为预测集.

2.2 LSTM

深度神经网络(DNN)是机器学习模型, 已经成功地解决了许多问题,如语音识别和图像目标识别.然而, 由于DNN是直接预测序列, 常用的DNN体系结构(如前馈神经网络)并不适合连续预测序列. 这种网络只根据当前的输入产生预测, 与任何先前的输入无关, 因此忽略了时间序列问题中存在的时间依赖性. 因此, 循环神经网络(RNN)提供了一种解决方案, 即使用内部状态以连续的时间步长来记忆信息.

传统的循环神经网络模型主要使用梯度反向传播算法进行训练, 这种方法会导致较长序列的梯度消失问题. 因此, 长短时的记忆神经网络是一种循环式记忆神经网络的形式, 专门为了克服这种梯度性能消失的问题产生, 是一个能够存储更长时间信息的模型. 这些长短时的记忆神经网络是由单元组成, 单元包含对信息流执行操作的内部机制门.这些门背后的一般思想是, 它们学习给定序列中的哪些数据是有意义应该保存的, 哪些数据是可以忘记的. 这样一来相关信息可以通过更长的序列传递, 因此, 模型可以做出更好的预测.

如图1, 这是一个包含了3个交互层的LSTM重复模块. 上方从左到右的黑线表示单元状态, 可以控制信息流并且把信息传输到下一个时刻状态. 圈中代表的是逐点算子(pointwise operation), 矩形框中表示的是学习到的神经网络层. 合并的线表示向量连接, 分开的线表示向量复制, 其中it、ft、ot分别是t时刻的输入门、遗忘门和输出门,Ct、~Ct分别是状态量和输入量,σ(x)和tanh(x)分别代表sigmoid和tanh激活函数,xt和ht分别表示t时刻的输入向量和隐藏层向量.

图1 LSTM的结构图Fig.1 Structure diagram of LSTM neural network

LSTM单元结构一般需要包含3个门, 即it、ft和ot, 通过这3个门来控制神经单元或者增加单元信息, 从而我们可以同时实现记忆和遗忘的功能. Yang等[14]对此进行了详细的描述, 这里予以简单介绍. 门作为信息选择性通过结构由sigmoid和tanh激活函数以及点乘操作组成. sigmoid激活函数表达式为

激活函数给神经元引入非线性元素, 使神经网络能够学习到非线性关系, 提高神经网络预测模型对F10.7指数预测的适用性. LSTM神经网络工作过程如下:

步骤1: 选择丢弃哪些我们从上一个状态中得到的信息. 遗忘门决定了哪些信息要保留, 哪些信息要忘记. 首先对xt和ht-1进行加权和偏置,Wf和bf分别为遗忘门的权重和偏置量, 它通过一个sigmoid激活函数σ(x)传递信息,该函数赋值于0到1之间, 一个值接近1表示保留该信息, 而接近0的值表示忘记, 表达式为

步骤2: 更新信息. 同样以上一个时刻ht-1及当前输入xt作为输入进行加权和偏置, 分别通过sigmoid和tanh激活函数信息, 产生[0, 1]之间的输入控制量it和[-1, 1]之间的输入量~Ct,it用于控制~Ct叠加到状态量中的程度, 其计算公式为

式中Wi和Wc分别代表输入门和控制单元权重,bi和bc分别是输入和控制单元偏置.

步骤3: 决定模型输出. 将ft与上一时刻状态量Ct-1及输入控制量it与输入量~Ct分别按元素相乘, 得到保存历史信息的当前时刻状态量Ct, 其计算公式为

式中⊙表示按元素相乘. 通过sigmoid激活函数控制ht-1及xt得到ot, 使用tanh激活函数将Ct压缩到[-1, 1]之间, 再与产生的ot按元素相乘得到ht, 计算公式为

其中Wo和bo分别为输出门权重和偏置. 最后对隐藏状态量ht进行加权和偏置得到预测值yt, 计算公式为

3 F10.7和SSN时间序列特征分析

本文在构建模型之前先要对F10.7和SSN的时间序列进行分析. 它们的时间序列是有序的观测值序列, 通常是按照时间观测的, 符合魏武雄[15]在《时间序列分析》一书中对时间序列的特征总结,即时间序列的本质特征为观测值是相互依赖或者相关的, 且观测值是有序的.F10.7和SSN序列满足以上特征: 观测值有约11 yr的周期, 观测值是相互依赖且有序的, 具体见图2.

图2 F10.7和SSN的时间序列图Fig.2 Time series of F10.7 and sunspot number

从图2可见, 数据包含了5-6个太阳活动周期的数据, 我们可以发现以下两点: (1)F10.7和SSN在整体的波动趋势上一致, 都准确地反映了太阳活动的周期性变化, 呈现出约11 yr周期的周期循环; (2)两者在局部上呈现细微的差异性, SSN的波动幅度比F10.7要大, 周期特征更加明显. 图3是F10.7和SSN的一元线性拟合图. 为了更具体地表示两者的关系, 我们根据Okon等[10]所言两者存在线性关系, 结合我们的数据对两者进行线性拟合并进行了显著性检验. 可以看到绝大多数的点散落在拟合直线周围, 此外通过观察可以看到在SSN约为60处有一个略偏离拟合曲线的点达到了250左右, 本着科学严谨的原则, 不对这个略微离群点进行处理.F10.7和SSN线性拟合相关性分析结果如下: (1)建立两者的经验公式,F10.7= 0.602× SSN + 66.765; (2)建立的线性模型拟合优度R-square为0.91并且p值检验小于0.01, 明显通过检验. 在数值上更进一步显示出两者存在紧密联系, 都是太阳活动的一种具体表现. 因此我们接下来尝试联合SSN建立多变量LSTM (M-LSTM)模型.

图3 F10.7和SSN的线性拟合公式和显著性检验Fig.3 Linear fitting formula and significance test for F10.7 and sunspot number

4 深度学习F10.7预报模型的构建和预报结果的对比

4.1 联合SSN的M-LSTM模型建模

本节基于建立的联合SSN的M-LSTM模型对F10.7进行7 d短期预测, 实现过程如图4所示, 具体实验步骤如下:

图4 联合SSN的M-LSTM神经网络模型训练及预测流程图Fig.4 The training and prediction flow chart of multivariable LSTM neural network combined with sunspot number

(1)获取F10.7和SSN的数据, 对数据进行缺值检查、描述性分析以及标准化等预处理措施; (2)对预处理过后的数据集按时间1993年前后划分成训练集和预测集; (3)针对训练集数据特点, 首先需要选取训练模型、确定模型结构, 通过训练数据确定LSTM的网络层数以及初始值等参数; (4)在迭代的过程中选取最佳训练模型并进行保存; (5)利用预测集作为模型的输入, 将获得的输出和实际值进行比对实验, 并统计实验结果, 按年分类和SWPC进行对比.

建模首先要进行模型参数确定和分析. 考虑到太阳活动表现出中短时间尺度平均27 d的周期性变化特征, 而模型的输入需要包含至少一个完整的太阳自转周期的信息, 为降低太阳一个自转周期27 d内可能出现异常值的影响, 本工作采用了两个太阳自转周期54 d作为模型的输入. 对未来7 d的F10.7预报. 本文所提出的联合SSN的深度神经网络模型是基于PyTorch深度学习框架实现的, 主要是通过Adam梯度下降优化算法对LSTM进行优化, 并自动学习记忆时间序列的特征生成最优模型, 最后通过全连接层后进行结果预测. 所以我们在预测时使用标准化后的均方误差(MSE)作为损失函数在模型中训练性能的评价标准(两者曲线一起下降最优). 用量变的形式呈现出随着不断迭代,模型通过Adam算法梯度下降不断优化减少Loss值的过程. 训练集和测试集的损失值见图5.

图5 训练集和测试集的损失值Fig.5 Loss values of training set and test set

训练集通过37次迭代Loss值从最初的0.0048迅速降低到17次迭代后的0.002564, 并稳定缓慢地不断下降直到迭代30次后达到最优值0.002418,随后缓慢波动趋于平稳. 而测试集通过36次迭代Loss值从最初的0.002617迅速降低到16次迭代后的0.001433,并稳定缓慢地不断下降,直到在27次迭代后达到最优的0.001374, 然后缓慢波动趋于平稳.因此综合考虑模型的鲁棒性和通用性, 我们选择测试集的第27次结果作为联合SSN的M-LSTM最优模型. 表1是最优模型的详细参数, 供今后建模参考.

表1 联合SSN的M-LSTM模型训练参数Table 1 Training parameters of the joint sunspot number multivariable LSTM model

4.2 预报结果

参考业务部门, 如SWPC和中科院空间环境预报中心官网上的评估方法, 我们选取了3个评估量来衡量模型的性能, 分别为平均绝对误差MAE、平均绝对百分比误差MAPE和均方根误差RMSE. 图6是建立的联合SSN的M-LSTM模型对1993-2019年F10.7指数第7 d预报的MAPE图.从图中我们可以看出, 预报误差与太阳活动水平呈正相关. 太阳活动处于峰年时, 整体较高, 波动较强, 这导致预报误差明显偏大, 太阳活动处于谷年时预报误差较小, 上升和下降年的预报误差和太阳活动年的上升和下降期的趋势基本吻合, 整体预报误差在峰年和谷年之间. 联合SSN建立的MLSTM模型预报的MAPE结果, 在太阳活动峰年可达12.9%以内, 谷年最优可达2.5%以内.

图6 1993—2019年联合SSN的M-LSTM模型预报F10.7指数第7 d的MAPE图Fig.6 The seventh day MAPE of F10.7 index forecast by the joint sunspot number multivariable LSTM model from 1993 to 2019

为了检验引入SSN对LSTM预报结果的影响,我们将建立的联合SSN的M-LSTM和建立的仅用F10.7作为模型输入的单变量LSTM(U-LSTM)的结果进行对比, 结果如图7所示. 可以看到我们建立的联合SSN的M-LSTM模型的整体MAPE要低于仅用F10.7作为模型输入的LSTM模型, 从局部来看, 联合了SSN的模型对太阳活动峰年预测的MAPE有明显的降低, 最高从14.29降低到12.13,降低了2.16; 对太阳活动谷年预测的MAPE也有一定的降低, 从预测结果的3.50减低到2.49, 降低了1.01, 整体提升了约5%的性能.

图7 1993—2019年U-LSTM和M-LSTM模型预报F10.7指数第7 d的MAPE对比图Fig.7 Comparison of the seventh day MAPE of F10.7 forecast by U-LSTM model and M-LSTM from 1993 to 2019

为了检验我们建立的联合SSN的M-LSTM模型短期预报的精度, 我们和SWPC制作发布的模型预测评估结果做了对比, 因为其公布的RMSE评估结果从1993-2013涵盖约两个太阳活动周的数据,我们也按照年统计了我们预测集的预测结果和其进行对比. 结果对比图如图8.

图8 1993—2013年M-LSTM模型和SWPC预报F10.7指数第7 d的RMSE对比图Fig.8 Comparison of the seventh day RMSE of F10.7 forecast by M-LSTM model and SWPC from 1993 to 2013

我们发现联合SSN的M-LSTM模型预报的RMSE低于SWPC, 约低了1.28, 相对下降11%.在2000年太阳活动峰年降低得最多, 可达3.07. 可以发现本研究建立的联合SSN的M-LSTM模型对太阳活动峰年的预测较好, 对太阳活动峰年复杂的太阳活动预报要优于SWPC的预报. 对谷年的预报整体上也有一定的提升. 本研究建立的联合SSN的M-LSTM模型, 仅用F10.7作为模型输入的LSTM模型和SWPC预报对比统计结果见表2,注意SWPC公布的数据目前只截止到2013年.

从表2可以看出本文建立的U-LSTM在RMSE上总体优于SWPC的预报结果, 具体来说, 仅用单变量建立的U-LSTM比SWPC要优5.1%的性能, 而本文联合SSN建立的M-LSTM模型还能继续提升5%-6%的性能, 因此可以得出以下结论: (1)本文建立的U-LSTM适合作为F10.7的预报模型, RMSE比SWPC的预报结果低约5%;(2)本文建立的F10.7联合SSN的M-LSTM模型, 优于F10.7的单变量预报, 并且在3个模型中结果最优, 其RMSE比SWPC的预报降低大约11%. 综上所述, 用深度学习的LSTM表达F10.7演化时序性的方法在F10.7的预报中是有效的.

表2 联合SSN的M-LSTM与SWPC及仅输入F10.7的U-LSTM的比较Table 2 Comparison of M-LSTM combined with sunspot number with SWPC and U-LSTM with F10.7 input only

5 结语

本研究在F10.7的短期7 d预报中首次考虑了SSN,建立了联合SSN的M-LSTM模型,并与业务中使用的SWPC预报结果进行了比较, 发现联合SSN的M-LSTM模型优于仅使用F10.7历史数据的模型,而且两者都比SWPC预报模型的性能好, 对太阳23、24周的预报结果显示相关系数CC = 0.96并且RMSE为11.62, 比SWPC的预报结果约低11%.在太阳活动峰年平均绝对百分比误差最优可达12.9%以内, 太阳活动谷年最优可达2.5%以内. 研究结果表明引入太阳黑子数在改进LSTM 预报性能方面是有效的, M-LSTM优于U-LSTM, SSN在其中起到了作用. M-LSTM优于U-LSTM的结果与深度学习模型的特点有关, 神经网络对复杂的太阳活动有很强的描述能力,数据量越大、种类越丰富,能学习到的有效信息越多、建立的模型越完善. 此外, SSN有更大的波动幅度, 可以更好地表征太阳活动特征. 当然,F10.7和SSN这两个太阳活动评价指标由不同的仪器测量得到, LSTM深度学习模型可能相较于传统模型更能学习到它们各自的优点加以融合.

猜你喜欢

太阳活动神经网络深度
基于递归模糊神经网络的风电平滑控制策略
四增四减 深度推进
第24太阳活动周中国地区电离层闪烁统计特性研究
第23和24太阳活动周高纬地磁感应电流分布特性
深度理解一元一次方程
神经网络抑制无线通信干扰探究
简约教学 深度学习
基于神经网络的中小学生情感分析
“120°E 子午链上空电离层响应和应用模式”一般性科技报告
基于支持向量机回归和RBF神经网络的PID整定