計算機視覺中的注意力機制
attention
機制在近幾年來在影象,自然語言處理等領域中都取得了重要的突破,被證明有益於提高模型的效能。attention機制本身也是符合人腦和人眼的感知機制。
attention
機制,便是聚焦於區域性資訊的機制,比如影象中的某乙個影象區域。隨著任務的變化,注意力區域往往會發生變化。
如上圖所示,如果從整體上來看,只看到很多頭,但近距離看就會識別出很多科學家,在識別人物屬性的時候(比如他是誰),除了人臉以外,其他部分都是無用的,attention機制就是為了找到這些最有用的資訊,最簡單的方法就是識別**的人臉。
目標檢測輸入一張,輸出一張概率圖,概率越大的敵方,代表使影象中重要目標的概率越大,即人眼關注的重點:
右圖就是左圖的概率圖,在頭部位置概率最大,同時,腿部和尾巴概率也比較大(相對有用的資訊)
注意力機制本質就是定位感興趣的資訊,抑制無用資訊,結果通常都是以概率圖或者概率特徵向量的形式展示,主要包括空間注意力模型,通道注意力模型,兩者混合的注意力模型三種。
4.1空間注意力模型
不是影象中所有的區域對任務的貢獻都是同樣重要的,只有任務相關的區域才是需要關心的,比如分類任務的主體,空間注意力模型就是尋找網路中最重要的部位進行處理。
介紹兩個具有代表性的模型:
google deepmind提出的stn網路(spatial transformer network)。它通過學習輸入的形變,從而完成適合任務的預處理操作,是一種基於空間的attention模型,網路結構如下:
這裡的localization net用於生成仿射變換係數,輸入是c×h×w維的影象,輸出是乙個空間變換係數,它的大小根據要學習的變換型別而定,如果是仿射變換,則是乙個6維向量。
這樣的乙個網路要完成的效果如下圖:
即定位到目標的位置,然後進行旋轉等操作,使得輸入樣本更加容易學習。
dynamic capacity networks
則採用了兩個子網路,分別是低效能的子網路(coarse model)和高效能的子網路(fine model)。低效能的子網路(coarse model)用於對全圖進行處理,定位感興趣區域,如下圖中的操作fc。高效能的子網路(fine model)則對感興趣區域進行精細化處理,如下圖的操作ff。兩者共同使用,可以獲得更低的計算代價和更高的精度。
由於在大部分情況下我們感興趣的區域只是影象中的一小部分,因此空間注意力的本質就是定位目標並進行一些變換或者獲取權重。
4.2)通道注意力機制
對於輸入2維影象的cnn來說,乙個維度是影象的尺度空間,即長寬,另乙個維度就是通道,因此基於通道的attention也是很常用的機制。
senet(sequeeze and excitation net)
是2017屆imagenet分模擬賽的冠軍網路,本質上是乙個基於通道的attention模型,它通過建模各個特徵通道的重要程度,然後針對不同的任務增強或者抑制不同的通道,原理圖如下。
在正常的卷積操作後分出了乙個旁路分支,首先進行squeeze操作(即圖中fsq(·)),它將空間維度進行特徵壓縮,即每個二維的特徵圖變成乙個實數,相當於具有全域性感受野的池化操作,特徵通道數不變。
然後是excitation操作(即圖中的fex(·)),它通過引數w為每個特徵通道生成權重,w被學習用來顯式地建模特徵通道間的相關性。在文章中,使用了乙個2層bottleneck結構(先降維再公升維)的全連線層+sigmoid函式來實現。
得到了每乙個特徵通道的權重之後,就將該權重應用於原來的每個特徵通道,基於特定的任務,就可以學習到不同通道的重要性。
將其機制應用於若干基準模型,在增加少量計算量的情況下,獲得了更明顯的效能提公升。作為一種通用的設計思想,它可以被用於任何現有網路,具有較強的實踐意義。而後sknet等方法將這樣的通道加權的思想和inception中的多分支網路結構進行結合,也實現了效能的提公升。
通道注意力機制的本質,在於建模了各個特徵之間的重要性,對於不同的任務可以根據輸入進行特徵分配,簡單而有效。
未完待續。。。。。。。
計算機視覺中的注意力機制
外部世界的資訊是豐富多樣的,但是我們大腦的計算能力是有限的。所以人類會有選擇的分析我們認為重要的那部分資訊,忽略其他不重要的資訊。這種能力就叫做注意力。注意力可分為兩種 自上而下的有意識的注意力,稱為聚焦式注意力。主要討論 自下而上的無意識的注意力,稱為基於顯著性的注意力。在計算機視覺領域,注意力機...
計算機視覺注意力機制 Attention
注意力機制本質上與人類對外界事物的觀察機制相似。通常來說,人們在觀察外界事物的時候,首先會比較關注比較傾向於觀察事物某些重要的區域性資訊,然後再把不同區域的資訊組合起來,從而形成乙個對被觀察事物的整體印象。注意力機制能夠使得深度學習在觀察目標時更加具有針對性,使得目標識別與分類的精度都有所提公升 a...
計算機視覺 self attention機制
先來看乙個翻譯的例子 i arrived at the bank after crossing the river 這裡面的bank指的是銀行還是河岸呢,這就需要我們聯絡上下文,當我們看到river之後就應該知道這裡bank很大概率指的是河岸。在rnn中我們就需要一步步的順序處理從bank到rive...