?

融合注意力機制的海洋渦旋特征檢測與分類模型構建*

2022-11-07 08:27魯大營
關鍵詞:渦旋編碼器殘差

葛 瑤, 高 鵬, 魯大營

(曲阜師范大學網絡空間安全學院,273165,山東省曲阜市)

0 引 言

海洋渦旋特征是海水運動的常見現象,海洋渦旋特征且具有十分重要的研究價值,其中對于海洋渦旋特征的檢測與分類已經成為海洋動力學[11]中最活躍的研究領域之一.

通過衛星測量的海洋表面高度(SSH)數據對揭示海洋渦旋特征的性質和分布具有重要貢獻,可用于獲取海洋渦旋特征的信息,并對其進行檢測和分類. 過去幾年里,基于衛星測量的海洋表面高度數據開發的檢測渦流特征的方法得到廣泛關注. 傳統的海洋渦旋檢測方法大致可分為3種,分別為利用物理參數來檢測渦旋特征[2-6]、利用幾何輪廓來檢測渦旋特征[7-9]以及共同使用物理參數和幾何輪廓的方法[10-12]來檢測渦旋特征. 基于特定的物理特性來研究渦旋結構,大多依賴于Okubo-Weiss參數[12,13],但Okubo-Weiss參數對噪聲敏感,并且依賴于人類專家設定的閾值[3],這些問題可以通過使用基于流場幾何特征的方法來避免. 該方法檢測海洋流動圖像中的局部最小值/最大值以及它們周圍的輪廓來識別渦流,例如Mason E等人[4,5]提出的py-eddy-tracker算法利用幾何輪廓來識別渦旋特征并對渦旋特征進行分類. 此類方法如果沒有清晰可見的流場幾何特征,則無法識別出海洋渦旋特征,物理參數與幾何輪廓的混合方法在一定程度上綜合了兩者的優點,但仍存在一定缺陷.

近幾年,深度學習成為人工智能領域最新的發展趨勢之一[6-7],廣泛應用于計算機視覺領域[8]. 利用基于深度學習的語義分割模型來檢測和分類海洋渦旋特征已成為最新的發展趨勢. Lguensat等人[9]首次提出利用經典的語義分割框架的編碼器-解碼器網絡U-Net來檢測渦旋,該方法稱為EddyNet,利用py-eddy-tracker算法[4,5]標記的SSH訓練數據集中檢測氣旋和反氣旋渦旋,但是使用的網絡結構比較簡單,對于測試集SSH數據分割的準確性達到88.60%,有待進一步提高. 隨后,Franz等人[20]也使用編碼器-解碼器網絡U-Net[21]來探測和跟蹤海洋渦旋,但無法對渦旋特征進行分類. 在EddyNet方法的基礎上,Lguensat等人[22]又提出結合殘差神經網絡(ResNet)[23]與U-Net[21]結合的新方法——EddyResNet;同時,受到V-Net[24]的啟發,提出分割海洋渦旋特征的三維模型——EddyVNet,分割與檢測海洋渦旋的模型的性能在一定程度上得到提升,但仍需進一步優化. Fan等人[25]提出多元融合數據的海洋渦旋檢測方法,不僅使用SSH數據,還添加了海洋表面溫度(SST)數據,實現了多元信息融合輸入,并提出一種新穎的對稱網絡,將擴張卷積層引入到模型中,能獲得更多尺度的上下文信息 . Xu等人[26]為解決多尺度海洋渦旋的分割問題,將復雜的金字塔場景解析網絡(PSPNet)[27]作為海洋渦旋特征數量的檢測方法,能識別出復雜場景中更多的元素. Sun X等人[28]提出一個新的數據集SCSE-Eddy,作為新的卷積神經網絡模型檢測多渦的輸入,并結合語義分割模型DeepLab v3+[29]來檢測海洋渦旋特征數量,能夠提取較為準確的渦旋邊界信息.

海洋渦旋特征檢測與分類可被視為分割或像素級分類問題,本文提出了一種將語義分割的深度神經網絡應用于海洋渦旋特征檢測與分類任務的新模型——EddyRCunet,將U-Net結構作為基礎分割框架. 為處理海洋遙感圖像中的復雜場景,采用ResNet中的殘差塊組成U-Net架構,能夠有效的解決梯度消失、網絡性能下降的問題,在改進的U-Net架構的編碼器部分引入卷積塊注意力機制模塊(CBAM,Convolutional Block Attention Module)[30],對SSH圖像中的渦旋特征區域進行重點研究,弱化背景部分. EddyRCunet模型對提高渦旋檢測與分類方面具有重要作用.

1 相關技術

1.1 U-Net

圖像語義分割模型中最常用的網絡架構為U-Net[21],最先應用于醫學圖像領域的分割,后擴展到遙感圖像領域. U-Net架構是一個對稱的端對端的全卷積神經網絡[31],該網絡由編碼器部分、解碼器部分以及鏈接兩個部分的跳躍連接[32]組成,這使得U-Net具有優異的性能,模型整體結構見文獻[21].編碼器部分執行卷積操作,后跟相同步長的池化操作,進行下采樣操作,抓取圖像簡單特征,解決像素定位問題;解碼器通過轉置卷積、雙線性插值等方法進行上采樣,獲得復雜的高級特征,解決像素分類問題;跳躍連接對上采樣得到的低級細節特征與下采樣得到的高級語義特征進行融合,促進信息傳播.

圖1 殘差塊結構

1.2 殘差塊

近年來,隨著深度學習方法在計算機視覺領域的發展,卷積神經網絡(CNN)[32]正被廣泛用于圖像的檢測、分割、分類等方向. 殘差神經網絡ResNet[23]將恒等映射作為跳躍連接結構,在很大程度上消除了深度架構中存在的梯度消失和爆炸問題,同時也不會引入多余的參數,降低計算的復雜度. ResNet由多個殘差塊堆疊構成,本文采用的基礎殘差塊結構如圖1所示.

每個殘差塊由殘差路徑和恒等映射路徑構成,其中殘差路徑由卷積層、批量歸一化和Relu激活函數構成,最后將兩個路徑的輸出在殘差塊的末尾求和,得到殘差塊的最終輸出. 公式為

yl=h(xl)+F(xl,Wl),

xl+1=f(yl),

其中xl,xl+1代表第l個殘差塊的輸入與輸出,f代表Relu激活函數,F是殘差函數,h(xl)的選擇會影響網絡性能,在ResNet中采用h(xl)=xl進行恒等映射,則上述公式可以簡化為

xl+1=xl+F(xl,Wl).

2 EddyRCunet模型

為更好地對SSH圖像中的渦旋特征進行檢測,本文基于U-Net融合殘差塊與CBAM注意力機制模塊,提出一種新的神經網絡模型——EddyRCunet(圖2),該模型專注關鍵特征信息,從而提高檢測與分類的準確度.

2.1 CBAM注意力模塊

如今,注意力模型已經成為神經網絡的一個重要領域,他關注關鍵位置信息,可以減少能耗和提高模型的性能. 其中CBAM結合了特征通道和特征空間兩個維度,由兩個注意力模塊構成,分別為空間注意力模塊(Channel Attention Module,CAM)和通道注意力模塊(Spatial Attention Module,SAM). 采用CBAM能夠關注網絡中的重要特征,抑制網絡中的不重要特征,從而提高網絡性能. 在模型中將編碼器部分每次卷積操作完成后每層添加CBAM.

圖2 EddyRCunet模型

CBAM注意力模塊由通道注意力模塊與空間注意力模塊順序執行,如圖3所示. 首先,進行通道注意力模塊,經過最大池化操作與平均池化操作,聚合空間信息并到達共享網絡,對輸入特征圖空間維度進行壓縮,之后進行元素求和合并,生成通道注意力圖;其次,將得到的通道注意力圖與輸入特征圖加權得到空間注意力模塊的輸入特征圖,將特征圖通道維度進行壓縮,既考慮最大池化操作,又考慮平均池化操作,將提取到的特征圖拼接為一個特征描述符,經過一個卷積層和Sigmoid函數,得到空間注意力圖,凸顯重點區域;最后,將得到的空間注意力圖與輸入的特征圖按位相乘,得到最終輸出.

圖3 CBAM結構圖

2.1.1 通道注意力機制模塊

CAM是CBAM的一個子模塊,對輸入的特征進行最大池化和平均池化操作,池化后的特征轉發到一個共享網絡中,該共享網絡由一個多層感知器(MLP)組成,將輸出的特征相加,利用Sigmoid進行激活,得到最終通道注意力特征圖. CAM的具體計算公式為

Mc(F)=σ(MLP(AvePool(F))+MLP(MaxPool(F)))=

輸入特征為F∈H×W×C,其中H、W、C分別代表特征圖的高、寬、通道數;AvePool,MaxPool分別代表平均池化操作和最大池化操作,表示通道注意力模塊中的平均池化特征和最大池化特征;MLP為多層感知器,共享網絡的權重為W0,W1,其中為壓縮率,使用Relu激活函數;σ代表Sigmoid激活函數.

將通道注意力特征圖與原始特征進行相乘操作,得到空間注意力模塊的輸入,計算公式為

F′=Mc(F)?F.

2.1.2 空間注意力機制模塊

SAM關注研究目標在圖像中的位置. 對輸入的特征F′應用平均池化和最大池化操作,將它們拼接在一起,之后通過卷積操作和Sigmoid激活函數得到最終的空間注意力特征圖. SAM的具體計算公式為

最后,將空間注意力特征圖與輸入特征相乘得到最終生成的新特征,計算公式為

F″=Ms(F′)?F′.

圖4 模型中殘差塊構成

2.2 EddyRCunet模型結構

本文以U-Net架構為基礎,分為提取底層細節信息的編碼器與高層語義信息的解碼器兩部分,實現對SSH圖像中渦旋特征的分割與檢測,獲得良好的性能. 圖2展示了本文的模型結構. 對原始的U-net網絡進行修改,在整個EddyRCunet模型中編碼器-解碼器部分的卷積塊部分均由殘差塊組成. 圖4顯示了本文采用的殘差塊結構,每個殘差塊由2個3×3卷積層、批量歸一化層(BN層)、Relu激活函數和恒等映射構成,其中卷積層在進行卷積操作后得到特征圖采用padding策略,在特征圖的周圍填充像素值為0的像素,保持特征圖尺寸大小不變;BN層位于每個卷積層的后面,可以加快訓練過程,減少過擬合的出現;采用的激活函數為Relu,可減少過多的計算量,提高效率. 計算公式為

f(x)=max(0,x),

其中f(x)代表激活函數的輸出,x為卷積層經過批量歸一化后的輸出.

在編碼器部分,將代替卷積層的每個殘差塊后添加CBAM,如EddyRCunet模型圖所示,對特征區域進行重點提取,弱化不重要特征. 在CBAM順序執行通道注意力模塊和空間注意力模塊,將通道注意力模塊中的參數r設為8,空間注意力模塊中的卷積操作的卷積核大小設置為7×7. 為降低過擬合,在CBAM后面使用Dropout層,然后進行2×2最大池化操作. 在編碼器部分總共進行了4次下采樣.

在解碼器部分,對高層語義信息進行提取,進行上采樣,并恢復原始圖像的信息. 解碼器部分進行上采樣的步長均為2×2,每經歷一次上采樣操作,特征圖的大小變為原來的2倍,共進行4次上采樣恢復成原始圖像的大小. 在編碼器部分進行下采樣時,會丟失部分特征信息,為解決此問題,在編碼器與解碼器之間使用跳躍連接,對上采樣與下采樣分別得到的特征圖進行融合,更好地恢復圖像信息. 在特征圖融合完成后,繼續利用殘差塊依次進行操作,并用Dropout來減少過擬合,之后再次進行步長為2×2的上采樣. 在完成上述所有操作后經過一個1×1的卷積層和Softmax激活后,得到高分辨率的SSH圖像中渦旋特征的分割與分類結果,完成對渦旋特征的檢測.

2.3 損失函數

在深度學習中常采用的損失函數為交叉熵損失函數,但針對本文中海洋渦旋與非渦旋的分類不平衡的問題,更傾向于采用Dice Loss損失函數. 其中Dice系數是衡量預測區域與真實區域之間相似性的度量函數,取值范圍為[0,1],當Dice系數為1時獲得最優化分割效果,反之,獲得最差分割效果. Dice系數計算公式為

其中Ppred代表預測區域,Gtrue代表真實區域.|Ppred|,|Gtrue|分別代表預測區域與真實區域中所含的元素和. 在本實驗中計算損失函數時,直接使用每個分類結果的最終預測概率,對每個類別分別計算Dice損失,Dice系數計算為

其中N代表像素點的總數,ppred表示預測概率,gtrue表示真實概率,0 或 1 取決于地面真實區域中每個像素的標簽. 為防止被零除,在上式中引入拉普拉斯平滑,用ε表示,取值通常設置為1,可減少訓練過程中的不穩定性和過擬合現象.

Dice損失函數的計算公式為

為減少樣本不均勻而造成估計誤差,本文為氣旋、反氣旋、非渦旋3個像素級類別都賦予一個與其出現頻率成反比的樣本權重. 通過最大化每個類別的Dice系數和對應的樣本權重的乘積來最小化損失函數,同時最大化網絡的性能. 最終Dice Loss損失函數為DiceLoss=1-WeightSoftMeanDiceLoss,其中WeightSoftMeanDiceLoss為氣旋、反氣旋和非渦旋特征3個像素級類別與對應的樣本權重的乘積之和.

3 實驗對比分析

3.1 數據集

本文研究的SSH數據由哥白尼海洋環境監管服務(Copernicus Marine Environment Monitoring Service,CMEMS)提供. 實驗采用的基于SSH的數據集,由Lguensat等人[19]利用py-eddy-tracker算法[14,15]生成,選取部分南大西洋區域作為研究區域,得到SSH圖像以及真實海洋渦旋特征分布如圖5所示.

圖5 原始SSH圖像與真值圖

圖5(a)代表南大西洋區域的SHH圖像,圖5(b)代表真實渦選特征的像素級分割圖像,每個像素都標記旋渦特征的類別,{“0”:非旋渦,”1”:反氣旋型旋渦特征,”2”:氣旋型旋渦特征}.

訓練數據集包含4018張SSH圖像,SSH圖像的尺寸為240×280像素,水平分辨率為0.25°. 4018張圖像代表2000年到2010年11年間每一天得到的SSH圖像,選取其中的80%(3214張)用于訓練,剩余20%(804張)用于驗證. 測試集的SSH圖像為365張,對應于2011年的每一天. 本文主要研究的是海洋渦旋特征,忽略陸地與不含海洋渦旋的區域,因此對原始SSH圖像進行裁剪,獲取160×192像素的SSH圖像構成模型訓練所需要的數據集. 原始SHH圖像和海洋渦旋真實分割結果與裁剪后的SSH圖像和海洋渦旋真實分割結果的對比如圖6所示.

圖6 裁剪后SSH圖像與渦旋分布

從圖6所示的圖像可以看出,渦旋特征在海洋中只占小部分區域,存在強烈的類別分配不平衡. 原始圖像與裁剪后的圖像中氣旋型渦旋特征、反氣旋型渦旋特征以及非渦旋特征3種類別的像素占比如表1所示.

表1 不同類別的像素占比

3.2 實驗環境及參數設置

本文實驗所用的操作系統為Ubuntu 16.04.6,采用Python3.8.0和TensorFlow實現EddyRCunet模型,深度學習庫為Python編寫的keras. 實驗使用的顯卡為NVIDIA Tesla V10-PCIe 32GB. 模型訓練階段采用的重要參數設置如下:學習率采用Adam算法,大小為1×10-3;采用He權重初始化來提升模型性能,加快收斂速度;Dropout設置為0.2;訓練次數為100次;樣本批次大小為16. 當迭代20次后,驗證集的損失函數不能得到有效改善時,此時的學習率已經不再適應模型,將學習率調整為原來的一半,進而繼續訓練模型,提升模型的性能. 若連續迭代50次模型在驗證集上的性能不再提升的時候,設定實驗效果達到最佳值,停止訓練,避免出現過擬合.

3.3 評估標準

海洋衛星遙感圖像中,渦旋特征與非渦旋特征的檢測與分類存在不平衡現象,因此選取Dice系數作為度量標準來訓練和比較不同模型的性能. Dice系數相當于F1分數,F1分數為精確度與召回率兩者的調和平均,是圖像語義分割中常用的評價指標.F1分數計算公式為

除了采用Dice系數作為評估標準外,還采用檢測渦旋特征的準確性作為另一個評估標準. 計算公式為

其中TP表示模型輸出的渦旋特征區域,實際上也是渦旋特征區域;TN表示模型輸出的非渦旋特征區域,實際上也是非渦旋特征區域;FP表示模型輸出的渦旋特征區域,但實際上是非渦旋特征區域;FN表示模型輸出的非渦旋特征區域,但實際上是渦旋特征區域.

3.4 實驗結果與對比

3.4.1 不同方法的對比

為了驗證本文提出的EddyRCunet模型的有效性,在測試集上采用不同模型對Dice系數和全局檢測與分類的準確性進行實驗對比分析. EddyRCunet模型與不同方法的實驗結果對比如表2所示.

表2 不同方法對性能的影響

由表2可以看出 ,文獻[26]提出的MCML模型魯棒性差,不適合本文數據集的訓練與測試,尤其是對氣旋渦旋的分割,性能需進一步提升. 文獻[21]提出的U-Net架構的卷積層后跟批量歸一化層來加快模型訓練速度,在各類別渦旋檢測和分類準確性都有提升. 文獻[19]中提出的EddyNet模型在氣旋特征、反氣旋特征的分割上能獲得更好效果,但檢測與分類的全局準確性提升不大. 而使用本文訓練的EddyRCunet模型得到的氣旋與反氣旋的Dice系數更高,并且產生一個更好的總體平均Dice系數,對比其它3種模型,分別提升了7.30%,4.02%,2.29%,使分割的效果更好,渦旋檢測與分類的總體準確性也有較大提升. 因此,使用本文提出的模型可以使渦旋檢特征的檢測更加準確,提供更好的分類性能.

3.4.2 消融實驗

總體實驗過程分為訓練與測試,利用4018張SSH圖像進行模型訓練,之后在365張SSH圖像上進行模型測試,得到最終的檢測與分類結果. EddyRunet模型是采用殘差網絡架構中的殘差塊來提升原始U-Net模型的性能,增加了網絡深度,但避免了訓練速度的下降和準確性的降低. 本文提出的EddyRCunet模型在EddyRunet模型的基礎上,同時在編碼器部分添加CBAM提高模型的性能. 表3為添加CBAM對于渦旋檢測與分類性能的影響.

表3 CBAM注意力機制模塊對性能的影響

在編碼器部分添加CBAM后,氣旋特征、反氣旋特征和非氣旋特征的Dice系數都有所提升,3類別的平均Dice系數提升了1.67%,添加CBAM有利于檢測與分類性能的提高.

在CBAM中存在超參數r,超參數大小的設置對性能產生影響. 本文采取超參數4、8、16在測試集上進行測試. 表4顯示了CBAM注意力機制模塊中不同超參數r對于性能的不同影響.

表4 CBAM注意力機制模塊中參數r對性能的影響

對CBAM中超參數的設置會影響模型的檢測與分類性能,當超參數r設置為8時,不同類別的渦旋特征的Dice系數均為最高. 但實驗表明,在CBAM注意力機制模塊中設置不同超參數r時,非渦旋特征的Dice系數的提升不大,但在氣旋與非氣旋的Dice系數上都有明顯提升. 在超參數r設置為8時,渦旋特征的檢測與分類的效果最好.

CBAM由通道注意力模塊(CAM)和空間注意力模塊(SAM)構成,在編碼器部分分別添加CAM、SAM以及CBAM對性能的影響是不同的,對比結果如表5.

表5 不同注意力機制模塊對性能的影響

在編碼器部分添加不同注意力機制模塊對于實驗的性能有所影響,在氣旋特征類別的Dice系數對比上,添加CBAM比分別添加CAM,SAM提升了1.71%和1.62%;在反氣旋特征類別的 Dice系數上分別提升了1.23%和0.82%;在3類別的平均Dice系數上分別提升了1.11%和0.89%,添加CBAM注意力機制模塊可以有效的提升性能. 因此,在編碼器部分添加CBAM是正確的選擇. 測試集上SSH圖像渦旋檢測的可視化結果如圖7所示. 本文提出的添加CBAM的EddyRCunet模型得到的渦旋特征分割結果在大小、形狀、數量上與真實分割最接近.

圖7 測試集上SSH圖像可視化結果的對比

4 總 結

為更有效地對SSH圖像中渦旋特征進行檢測與分類,本文基于U-Net架構的基礎上,將構成殘差網絡的基本殘差塊引入到U-Net架構的編碼器與解碼器部分,同時在編碼器部分添加卷積塊注意力機制模塊,不僅實現了SSH圖像端對端的渦旋特征分類,而且提高了模型的性能. 為驗證本文提出的EddyRCunet模型的有效性,在SSH圖像數據集上,與深度學習的其他模型進行對比,SSH圖像中渦旋特征檢測結果準確性有一定提升,但仍存在渦旋檢測丟失的問題,下一步將繼續優化模型,不斷提高渦旋檢測與分類的準確性.

猜你喜歡
渦旋編碼器殘差
融合CNN和Transformer編碼器的變聲語音鑒別與還原
基于PM算法的渦旋電磁波引信超分辨測向方法
基于雙向GRU與殘差擬合的車輛跟馳建模
渦旋壓縮機非對稱變壁厚渦旋齒的設計與受力特性分析
基于殘差學習的自適應無人機目標跟蹤算法
基于遞歸殘差網絡的圖像超分辨率重建
光渦旋方程解的存在性研究
基于雙增量碼道的絕對式編碼器設計
綜合電離層殘差和超寬巷探測和修復北斗周跳
基于數字信號處理的脈沖編碼器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合