當前位置:編程學習大全網 - 編程語言 - 圖像分割之Dense Prediction with Attentive Feature Aggregation

圖像分割之Dense Prediction with Attentive Feature Aggregation

原始文檔: /lart/papers/xnqoi0

偶然間從 arxiv 上翻到的論文, 可以看做是對之前工作 Hierarchical multi-scale attention for semantic segmentation 的壹個擴展.

Aggregating information from features across different layers is an essential operation for dense prediction models.

Despite its limited expressiveness, feature concatenation dominates the choice of aggregation operations .

In this paper, we introduce Attentive Feature Aggregation (AFA) to fuse different network layers with more expressive non-linear operations. AFA exploits both spatial and channel attention to compute weighted average of the layer activations .

Inspired by neural volume rendering, we extend AFA with Scale-Space Rendering (SSR) to perform late fusion of multi-scale predictions .

AFA is applicable to a wide range of existing network designs.

Our experiments show consistent and significant improvements on challenging semantic segmentation benchmarks, including Cityscapes, BDD100K, and Mapillary Vistas, at negligible computational and parameter overhead. In particular, AFA im-proves the performance of the Deep Layer Aggregation (DLA) model by nearly 6% mIoU on Cityscapes. Our experimental analyses show that AFA learns to progressively refine segmentation maps and to improve boundary details, leading to new state-of-the-art results on boundary detection benchmarks on BSDS500 and NYUDv2.

這裏設計了兩種整合形式, 壹種適用於雙輸入, 另壹種適合用於多輸入遞進式集成. 核心都是基於空間註意力和通道註意力. 註意, 這裏的計算都是兩兩集成的形式, 所以都是算出壹個註意力後, 使用 sigmoid 來構造相對權重.

對於雙輸入形式, 空間註意力由較淺層特征計算, 因為其包含著豐富的空間信息. 而通道註意力由較深層特征計算, 因為其包含著更復雜的通道特征. 對於多輸入形式(圖中僅僅展示了三層, 實際上可以引入更多層的輸入), 通道和空間註意力完全由當前層輸入計算, 並且如果有靠前計算的壹級的化, 該註意力會用來對當前和之前的輸出作加權. 另外集成的順序原文中如此描述"a feature with higher priority will have gone through a higher number of aggregations", 我的理解是, 應該就是從深到淺層的壹個過程.

提出的集成模塊可以用於許多結構中, 例如 DLA、UNet、HRNet 和 FCN 中.

這裏提出的 SSR 是壹個更加類似於模型集成的策略.

其通過計算針對不同尺度下預測的輸出的相對權重來對多尺度推理進行集成. 所以, 這裏涉及到兩個問題:

為了表達對多尺度預測的集成的問題, 作者首先將關註的重點放在單個像素上. 並且假設模型為目標像素在 個不同的尺度上提供了預測.

對於第 個尺度的預測可以表示為 . 由此, 在尺度空間中針對目標像素的特征表征可以定義為 . 進壹步, 這裏假設 表示尺度 比尺度 更加粗糙.

於是目標像素就可以想象成在尺度空間中移動的光線, 從尺度 朝向尺度 .

基於這樣的想法, 重新設計在提出的多特征融合機制中的原始的分層註意力, 並且模擬 volume-rendering equation, 這裏的 volume 由尺度空間隱式給出.

為此, 除了位於尺度 的特征表征 , 假設 模型還會針對目標像素預測壹個標量 . 在 volume rendering 的語境下, 粒子將 會穿過尺度 的概率 , 在給定壹些非負標量函數 時, 就可以表示為 .

於是可以將尺度註意力 表達為粒子到達尺度 並停留在這裏的概率(每壹次都滿足伯努利分布, 非留即走, 前面都走, 就當前次留了下來):

表示針對各個尺度的目標像素預測的標量參數.

最終, 按照 volume rendering equation, 針對目標像素多尺度預測融合得到的最終預測, 由不同尺度的註意力參數來加權求和獲得. 這也反映了對於目標像素獲得的最終特征, 是在 驅動下融合所有尺度的特征表達獲得的.

綜合上下文的分析, 這裏的設計中應該是最終是要將所有尺度集成到 1 上的.

提出的 SSR 可以看作是 Hierarchical Multi-Scale Attention (HMA) [ Hierarchical multi-scale attention for semantic segmentation , /NVIDIA/semantic-segmentation ]的壹種壹般化形式.

通過設置 , 並固定 , 就可以獲得後者的形式了. 此時有:

從這裏的形式來看, 這裏有兩處令人疑惑的地方:

輸入是被再次放縮後才送入模型的. 而這裏最終輸出的尺寸是對應於 1.0 倍 原始輸入尺寸 的. 所以, 假設 按照尺度編號從 k 到 1 集成特征, 並在 1 層輸出結果 .

由於本文中構造的註意力是基於不選擇當前層的概率(穿過當前層), 則對應上圖的形式, 總的形式為:

可以看到, 對於第壹層的註意力權重就是直接 sigmoid 的輸出結果. 而對於第 k 層的輸出, 則是對各層 sigmoid 輸出取補並類乘而獲得.

實驗中使用絕對值函數: . 這受啟發於更好的保留經過註意力機制的梯度流的分析, 因為作者們發現現存的註意力機制可能會遭受梯度消失的問題.

前面整理的註意力系數的形式:

考慮第 層系數 關於可學習參數 的導數:

當考慮兩個尺度的時候, 即 時:

左上角計算的是第 1 層的註意力系數關於第 1 層的參數的導數, 右上角則是第 1 層關於第 2 層的導數. 可以看到, 如果 的時候, 梯度會消失, 不管 是多少.

所以為了避免梯度消失的問題, 這裏需要對 進行仔細的設定. 當選擇絕對值函數的時候, 這裏的 Jacobian 矩陣將不會在 且 的情況出現消失的問題.

考慮 HMA 中的情況, 按照作者給出的形式, 此時有:

分支 2 不參與註意力計算. 當 時會出現梯度消失.

而按照我前面的形式, 則有:

同樣也會出現消失的問題.

  • 上一篇:如何把caxa數控車的自動編程代碼移到斯沃特仿真裏面
  • 下一篇:spark編程和ape編程哪個好?
  • copyright 2024編程學習大全網