何遠(yuǎn)柏,徐 曉,徐 麗
(昆明理工大學(xué) 信息工程與自動化學(xué)院,云南 昆明 650500)
太陽黑子與太陽活動聯(lián)系緊密,是太陽表面強磁場的典型表現(xiàn),如日冕物質(zhì)拋射和耀斑爆發(fā)[1-4]。這些太陽活動會給地球帶來不利影響,如造成地面無線電短波通信中斷,導(dǎo)致衛(wèi)星發(fā)射失敗等。研究表明,太陽黑子群的形態(tài)和磁場極性越復(fù)雜,在該區(qū)域發(fā)生耀斑的概率越高[5-6]。絕大多數(shù)的M 級和X 級耀斑發(fā)生在威爾遜山磁分類中的βγ、βδ和βγδ等復(fù)雜黑子群上方,尤其βγδ類黑子群發(fā)生耀斑的概率很高[7-8]。因此,研究太陽黑子群磁分類對預(yù)測太陽耀斑具有重要意義。
2016 年,Padinhatteeri 等人[9]根據(jù)太陽黑子群的形態(tài)和磁性特征,提出了一種名為SMART-DF 的算法。該算法對威爾遜山磁分類中的δ類進(jìn)行了檢測。2019 年,F(xiàn)ang 等人[10]提出了一種基于深度學(xué)習(xí)[11-12]的太陽黑子群磁分類方法,采用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)將黑子群分成了α、β和β-x這3 個類別,并將裁減下來的黑子群局部區(qū)域圖像送入網(wǎng)絡(luò)測試,總accuracy達(dá)到了95%,其中α類的accuracy達(dá)到了98%,β類的accuracy達(dá)到了88%,β-x類的accuracy達(dá)到了95%。但是,該方法沒有對全日面圖像中的黑子群進(jìn)行檢測,而且僅將黑子群分成3 個大的類別,沒有進(jìn)一步細(xì)分到小類別,尤其是對耀斑預(yù)測比較重要的βγ、βδ和βγδ等類文中沒有單獨區(qū)分。
近年來,深度學(xué)習(xí)被廣泛應(yīng)用于各個領(lǐng)域,如被用于解決圖像檢測和分類等問題[13-15]。它的核心是深度特征學(xué)習(xí),通過分層網(wǎng)絡(luò)獲取分層次的各類特征信息,較好地解決了以往需要人為選擇提取某種特征的難題。其中,CornerNet-Saccade[16]是深度學(xué)習(xí)領(lǐng)域一種較新的目標(biāo)檢測算法,基于關(guān)鍵點的檢測方案和注意力視圖機(jī)制使其在目標(biāo)檢測領(lǐng)域具有先進(jìn)性。本文基于CornerNet-Saccade 設(shè)計的CNSF 網(wǎng)絡(luò)較好地解決了太陽黑子群磁分類問題。
威爾遜山天文臺根據(jù)磁場的極性將雙極黑子群作為基本類型,其他類型則視為雙極黑子群的變形[4,17]。按照此分類方法,極性單一的黑子群是α型,極性相反且比較明顯的雙極黑子群是β型,極性混雜的復(fù)雜黑子群是γ型,具有超過一條連續(xù)極性反轉(zhuǎn)線的雙極黑子群稱為βγ型,同一個半影內(nèi)具有相反極性且分離不超過2 的本影稱為δ型。此外,太陽黑子群中如果包含一個或多個δ黑子,則在對應(yīng)分類中加上δ,如βδ、γδ、βγδ型。它的具體分類如表1 所示。

表1 具體分類
本文使用的數(shù)據(jù)來自于太陽動力學(xué)天文臺(Solar Dynamics Observatory,SDO)衛(wèi)星的日震及磁場成像 儀(Helioseismic and Magnetic Imager,HMI)[18],包括連續(xù)譜圖(Continuum Images)和縱向磁圖(Magnetograms)。
威爾遜山磁分類需要結(jié)合黑子群的形態(tài)和極性信息,因此把連續(xù)譜圖的黑子群形態(tài)信息和縱向磁圖的極性信息合成在一張圖上,便于輸入神經(jīng)網(wǎng)絡(luò)。
具體步驟如下:
(1)讀取同一時間的連續(xù)譜圖和縱向磁圖,進(jìn)行平滑、歸一化等操作;
(2)采用閾值法[9]提取連續(xù)譜圖的半影邊界和本影區(qū)域并分別存儲在集合A 和集合B 中,提取磁圖的正負(fù)極性區(qū)域并分別存儲在集合C 和集合D 中;
(3)E=B ∩C,F(xiàn)=B ∩D,其中E 為黑子本影的正極區(qū)域,F(xiàn) 為黑子本影的負(fù)極區(qū)域,∩為交集運算;
(4)將連續(xù)譜圖中集合A 對應(yīng)區(qū)域填充成綠色,集合E 對應(yīng)區(qū)域填充成紅色,集合F 對應(yīng)區(qū)域填充成藍(lán)色。
預(yù)處理示例如圖1 所示,這里選取2014 年5月2 日的全日面圖像。
共使用2 440 張預(yù)處理后的圖用于制作太陽黑子群磁分類數(shù)據(jù)集,并分為訓(xùn)練集D1和測試集D2。表2 列出了所有的數(shù)據(jù)集,其中訓(xùn)練集用于訓(xùn)練深度學(xué)習(xí)網(wǎng)絡(luò)模型,有1 940 張;測試集用于檢驗?zāi)P偷男阅埽?00 張。D1和D2的數(shù)據(jù)都來自HMI,采用每日08:00:00 和20:00:00 的數(shù)據(jù)。本文采用labelme[19]軟件標(biāo)注了數(shù)據(jù)集。D1HMI/2010.06.01—

圖1 圖像預(yù)處理示例

圖2 CNSF 概述

表2 太陽黑子群分類數(shù)據(jù)集
表3 列出了數(shù)據(jù)集中各類型黑子群的樣本數(shù)量和比例。可以看到,樣本間的數(shù)量差異較大,這是因為不同類型黑子群出現(xiàn)的次數(shù)存在較大差異。比如,β類黑子群在太陽活動過程中出現(xiàn)的次數(shù)較多,而βδ類黑子群出現(xiàn)的次數(shù)較少。需要注意的是,從2010 年到目前,太陽活動區(qū)報告(Solar Region Summary,SRS)(https://www.swpc.noaa.gov/)文 件并未報告γ、δ和γδ類黑子群,因此本文后續(xù)內(nèi)容不再涉及這些類型的黑子群。此外,太陽黑子活動具有11 年周期,一個周期中包括峰年和谷年,其中峰年的太陽黑子較多,谷年的太陽黑子較少。由于從2017 年開始到當(dāng)前,太陽黑子活動處于谷年,太陽全日面圖像上的黑子很少,因此本文并未采用2017 年及以后的數(shù)據(jù)。

表3 各類別樣本數(shù)量及比例
本文通過CNSF 模型實現(xiàn)太陽黑子群磁分類,模型的工作流程如圖2 所示,主要由目標(biāo)定位、目標(biāo)檢測和目標(biāo)融合3 部分組成。
方法的具體步驟如下。
(1)下采樣(Downsizing)預(yù)處理后的圖像。
(2)將下采樣后的圖像輸入到骨干網(wǎng)Hourglass-54。Hourglass-54 網(wǎng)絡(luò)由3 個沙漏(Hourglass)[20]模塊組成,總深度為54 層。每個沙漏都是具有對稱結(jié)構(gòu)的模塊化網(wǎng)絡(luò)(見圖3)。沙漏網(wǎng)絡(luò)首先應(yīng)用3 個階段的卷積層和下采樣層以減小輸入特征圖的大小,然后通過3 個階段的卷積層和上采樣層將特征上采樣回到原始分辨率,并跨尺度組合特征。下采樣通過步長為2 的卷積操作實現(xiàn),上采樣通過最近鄰插值(Nearest Neighbour Interpolate)[21]實現(xiàn)。在每個下采樣層和上采樣層之后應(yīng)用一個殘差(Residual)[22]單元,每個殘差單元由兩部分組成,分別是3 個權(quán)重層(Weight Layer)和1 個映射層(Identity Mapping)。權(quán)重層由Conv-Relu 組成,主要用于獲取深層信息。映射層主要用于保留原始信息,被設(shè)計為1×1 的卷積,用于將尺寸與權(quán)重層的輸出進(jìn)行匹配。沙漏模塊中有10 個殘差單元,可以更好地解決深度神經(jīng)網(wǎng)絡(luò)中的網(wǎng)絡(luò)退化問題,提高網(wǎng)絡(luò)性能。Hourglass-54 可以跨尺度重復(fù)進(jìn)行自下而上、自上而下的推理,從而捕獲和合并圖像所有尺度上的信息,最終輸出一組特征圖。

圖3 沙漏網(wǎng)絡(luò)
(3)在每個特征圖上應(yīng)用一個3×3 Conv-Relu模塊和一個1×1 Conv-Sigmoid 模塊,以通過注意力機(jī)制預(yù)測注意力視圖(Attention Maps)。總共預(yù)測了3 種大小的注意力圖,分別對應(yīng)于小物體、中物體和大物體。注意力視圖指示目標(biāo)的大概位置和粗略大小。同時,Hourglass-54 還從縮小圖像中檢測到的目標(biāo)生成邊界框(Bounding Box)。通過角池層(Corner Pooling Layer)[23]檢測兩個關(guān)鍵點即目標(biāo)的左上角和右下角來確定邊界框。
(4)從注意力視圖和下采樣后的圖像上分別獲得的位置,可能存在重合的情況。為了減少計算量,提高網(wǎng)絡(luò)效率,在該部分加入過濾操作。一方面,對從注意力視圖和下采樣后的圖像上獲得的位置進(jìn)行IoU(Intersection over Union)[24]計算,即兩者的IoU 超過設(shè)定的閾值(本文此處設(shè)定的閾值為0.5),只保留得分高的檢測框。另一方面,根據(jù)各類型黑子群的面積特征設(shè)定面積閾值,即根據(jù)邊界框的面積確定是否保留該檢測結(jié)果。通過過濾操作可以提前去掉一些存在偏差的檢測結(jié)果,提高模型效率。
(5)對過濾后的位置進(jìn)行縮放操作。對于從注意力視圖獲得的位置,將小目標(biāo)、中目標(biāo)和大目標(biāo)的縮放比例分別設(shè)置為6、3 和1.5。對于從邊界框獲得的位置,縮小的圖像根據(jù)邊界框的大小進(jìn)行放大。
(6)將經(jīng)過放大后的圖像映射回原圖,以(xi,yi)為中心點裁剪區(qū)域(Cropping Regions)來提升訓(xùn)練效率。
(7)根據(jù)得分將這些位置進(jìn)行排序,并優(yōu)先考慮從邊界框獲得的位置。選擇得分最高的k個位置,在這些位置上進(jìn)行目標(biāo)檢測。為了提高該階段的檢測效率,設(shè)計了一個骨干網(wǎng)絡(luò)Hourglass-36。該網(wǎng)絡(luò)由兩個Hourglass模塊組成,呈對稱結(jié)構(gòu),共36層。相比較于Hourglass-54,Hourglass-36 的層數(shù)只有前者的2/3,更加輕便。實驗結(jié)果表明,這種精簡網(wǎng)絡(luò)結(jié)構(gòu)的操作并沒有造成模型的精度損失,且模型效率提升明顯。
(8)檢測完畢后,通過非極大值抑制(Non-Maximum Suppression,NMS)[25]算法融合檢測框(Merging Detections),消除所有目標(biāo)的冗余框。需要說明的是,CornerNet-Saccadec 采用的NMS 算法有效解決了太陽黑子群中同類之間的冗余框問題,但對于不同類之間的冗余框無能為力。因此,本文修改了傳統(tǒng)的NMS 算法,使其在太陽黑子群磁分類上具有更好的性能。修改后的NMS 算法只根據(jù)檢測框做非極大值抑制,脫離了類別的限制,從而同時有效解決了同類和不同類之間的冗余框問題。
本文實驗在一臺裝有GeForce RTXTM2080 顯卡的個人計算機(jī)上進(jìn)行。實驗使用的軟件環(huán)境為python3.7、pytorch1.2、cuda10.1 和gcc7.4。網(wǎng)絡(luò)模型的learning_rate、decay_rate 和batch_size 分別設(shè)置為0.000 025、10 和8。訓(xùn)練迭代了275 000 次后,模型的損失值穩(wěn)定收斂,訓(xùn)練過程花費了大約90 h。
圖4 展示了CornerNet-Saccade 和CNSF 的在全日面圖像上的分類結(jié)果。


圖4 太陽黑子群磁分類案例
圖4(a)和圖4(b)是CornerNet-Saccade 得到的分類結(jié)果,圖4(c)和圖4(d)是CNSF 得到的分類結(jié)果。由圖4(a)和圖4(c)可知,CornerNet-Saccade 和CNSF 都檢測出了全日面圖像上的4 個黑子群,其中3 個結(jié)果一致,但是對于標(biāo)注的1 號區(qū)域,兩者給出的結(jié)果存在差異。CNSF 將該黑子群分為βγ類,而CornerNet-Saccade 同時給出了兩個分類結(jié)果,分別是β和βγ類。在太陽黑子群磁分類中,同一個黑子群只可能屬于一個分類,顯然CornerNet-Saccade分類錯誤。根據(jù)黑子群分類的定義不難得出,該太陽黑子群應(yīng)該為βγ類,CNSF 分類正確。
由圖4(b)和圖4(d)可知,CornerNet-Saccade和CNSF 都檢測出了全日面圖像上所有的黑子群,但是CornerNet-Saccade 在2 號區(qū)域和3 號區(qū)域存在重復(fù)分類的情況。對于2 號區(qū)域,根據(jù)黑子群的定義,結(jié)合連續(xù)譜圖和縱向磁圖不難發(fā)現(xiàn),這是兩個距離比較接近但又彼此獨立的黑子群,正確的分類結(jié)果應(yīng)該分別是α類和β類。同理,3 號區(qū)域的黑子群分類結(jié)果應(yīng)該為β類。
采用查準(zhǔn)率(Precision)、查全率(Recall)、平均精度(Average Precision,AP)和平均精度均值(mean Average Precision,mAP)[26]指標(biāo)來評估CNSF 的整體性能,定義分別如下:

式中,N是樣本總數(shù);TP表示該樣本為正樣本且分類正確的個數(shù);FN表示該樣本為負(fù)樣本且分類錯誤的個數(shù);Precision表示分類正確的樣本數(shù)量與總分類數(shù)量的比值;Recall表示分類正確的樣本數(shù)量占總樣本量的比值;AP是將Precision與Recall相結(jié)合的綜合性指標(biāo),由P(r)函數(shù)曲線(該曲線由多對Precision與Recall組成的點繪制而成)與坐標(biāo)軸圍成的面積得到,表示的是Recall從0 變化到1 的所有Precision的平均值;mAP是所有類的AP平均值。
表4列出了測試集中各類型黑子群的分類結(jié)果。可知,Precision、Recall和mAP(mean AP)均達(dá)到0.9以上。AP達(dá)到0.9 以上的類別有3 個,分別是β、βγ和βγδ。這幾類黑子群的特征相對比較明顯,因此較容易分類。此外,α和βδ的AP低于0.9。其中,α類中有一些小黑子與噪點難以區(qū)分,因此存在一定的誤檢測和漏檢測;βδ類黑子群與β、βγ和βγδ類的部分特征有相似之處,存在誤檢測的情況。

表4 各類型黑子群在測試集上的結(jié)果
表5 是不同模型在太陽黑子群磁分類上的性能對比。可知,無論是檢測精度還是檢測效率,CNSF 都 比CornerNet-Saccade 有 優(yōu) 勢。CNSF 和CornerNet-Saccade 在太陽黑子群磁分類數(shù)據(jù)集上的mAP分別是0.91 和0.87,CNSF 的檢測精度在CornerNet-Saccade 的基礎(chǔ)上提升了約4%,CNSF的檢測效率比CornerNet-Saccade 提升了約13%。

表5 模型性能對比
本文使用來自HMI 的連續(xù)譜圖和縱向磁圖進(jìn)行太陽黑子群的磁分類,數(shù)據(jù)為2010 年6 月至2016 年12 月的HMI 數(shù)據(jù)。先將連續(xù)譜圖的黑子形態(tài)和縱向磁圖的極性信息合成在一張圖上,然后制作太陽黑子群磁分類數(shù)據(jù)集,并分成訓(xùn)練集和測試集分別用于訓(xùn)練模型和檢驗?zāi)P汀DP驮谝慌_裝有GeForce RTXTM2080 顯卡的個人計算機(jī)上訓(xùn)練網(wǎng)絡(luò),在迭代275 000 次后,模型的損失值穩(wěn)定收斂。基于CornerNet-Saccade 的CNSF 在太陽黑子群的磁分類上取得了良好效果,在測試集上的Precision和Recall均達(dá)到了0.93,mAP達(dá)到了0.91。CNSF 從檢測精度和檢測效率兩個維度在CornerNet-Saccade的基礎(chǔ)上分別提升了約4%和13%。下一步的工作計劃是進(jìn)一步優(yōu)化算法,并建立耀斑預(yù)報機(jī)制。