<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          神經(jīng)網(wǎng)絡(luò)加上注意力機(jī)制,精度反而下降,為什么會(huì)這樣呢?

          共 1855字,需瀏覽 4分鐘

           ·

          2021-12-25 10:22



          【GiantPandaCV導(dǎo)語】?

          問題來自于知乎:"神經(jīng)網(wǎng)絡(luò)加上注意力機(jī)制,精度反而下降,為什么會(huì)這樣呢?"



          因?yàn)橹皩戇^Attention+YOLOv3的文章,做過相關(guān)實(shí)驗(yàn),所以被問過很多問題,舉幾個(gè)典型的問題:

          • 我應(yīng)該在哪里添加注意力模塊?
          • 我應(yīng)該使用那種注意力模塊?
          • 為什么我添加了注意力模塊以后精度反而下降了?
          • 你添加注意力模塊以后有提升嗎?
          • 注意力模塊的參數(shù)如何設(shè)置?
          • 添加注意力模塊以后如何使用預(yù)訓(xùn)練模型?

          周末的時(shí)候看到了這個(gè)問題,也看到了各位的解答,感覺也非常有道理,萌生出用實(shí)驗(yàn)來證明的想法,于是花了一點(diǎn)時(shí)間測(cè)試了題目中提到的CBAM模塊。

          一個(gè)模型精度是否提高會(huì)受到非常多因素影響,需要考慮的因素包括模型的參數(shù)量、訓(xùn)練策略、用到的超參數(shù)、網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)、硬件以及軟件使用(甚至pytorch版本都會(huì)有影響,之前在某個(gè)版本卡了半天,換了版本問題就解決了)等等。

          注意力機(jī)制到底work不work,我覺得可以從兩個(gè)角度來解釋。

          第一個(gè)角度是模型的欠擬合與過擬合

          大部分注意力模塊是有參數(shù)的,添加注意力模塊會(huì)導(dǎo)致模型的復(fù)雜度增加。

          • 如果添加attention前模型處于欠擬合狀態(tài),那么增加參數(shù)是有利于模型學(xué)習(xí)的,性能會(huì)提高。
          • 如果添加attention前模型處于過擬合狀態(tài),那么增加參數(shù)可能加劇過擬合問題,性能可能保持不變或者下降。

          為了驗(yàn)證以上猜想,使用cifar10數(shù)據(jù)集中10%的數(shù)據(jù)進(jìn)行驗(yàn)證,模型方面選擇的是wideresnet,該模型可以通過調(diào)整模型的寬度來靈活調(diào)整模型的容量。

          構(gòu)建了模型族:

          Norm系列表示沒有使用注意力,nd代表寬度CBAM系列表示在ResBlock中使用了注意力
          norm_8dcbam_8d
          norm_32dcbam_32d
          norm_64dcbam_64d

          具體來說,從上到下模型容量越來越高,下圖展示了各個(gè)模型在訓(xùn)練集和驗(yàn)證集上的收斂結(jié)果。

          可以發(fā)現(xiàn)一下幾個(gè)現(xiàn)象:

          • 隨著寬度增加,模型過擬合現(xiàn)象會(huì)加劇,具體來說是驗(yàn)證集準(zhǔn)確率變低。
          • cbam與norm進(jìn)行比較可以發(fā)現(xiàn),在8d(可能還處于欠擬合)基礎(chǔ)上使用cbam可以取得驗(yàn)證集目前最高的結(jié)果,而在64d(可能出現(xiàn)過擬合)基礎(chǔ)上使用cbam后準(zhǔn)確率幾乎持平。
          • 還有一個(gè)有趣的現(xiàn)象,就是收斂速度方面,大體符合越寬的模型,收斂速度越快的趨勢(shì)(和我們已知結(jié)論是相符的,寬的模型loss landscape更加平滑,更容易收斂)

          以上是第一個(gè)角度,另外一個(gè)角度可能沒那么準(zhǔn)確,僅提供一種直覺。

          第二個(gè)角度是從模型感受野來分析

          我們知道CNN是一個(gè)局部性很強(qiáng)的模型,通常使用的是3x3卷積進(jìn)行掃描整張圖片,一層層抽取信息。而感受野疊加也是通過多層疊加的方式構(gòu)建,比如兩個(gè)3x3卷積的理論感受野就是5x5, 但是其實(shí)際感受野并沒有那么大,可以看以下文章的分析。

          目標(biāo)檢測(cè)和感受野的總結(jié)和想法

          各種注意力模塊的作用是什么呢?他們能夠彌補(bǔ)cnn局部性過強(qiáng),全局性不足的問題,從而獲取全局的上下文信息,為什么上下文信息重要呢?可以看一張圖來自CoConv。

          單純看圖a可能完全不知道該目標(biāo)是什么,但是有了圖b的時(shí)候,知道這是廚房以后,就可以識(shí)別出該目標(biāo)是廚房用手套。

          因此注意力模塊具有讓模型看的更廣的能力,近期vision transformer的出現(xiàn)和注意力也有一定關(guān)聯(lián),比如Non Local Block模塊就與ViT中的self-attention非常類似。vision transformer在小數(shù)據(jù)集上性能不好的也可以從這個(gè)角度解釋,因?yàn)樘P(guān)注于全局性(并且參數(shù)量比較大),非常容易過擬合,其記憶數(shù)據(jù)集的能力也非常強(qiáng),所以只有大規(guī)模數(shù)據(jù)集預(yù)訓(xùn)練下才能取得更好的成績(jī)。(感謝李沐老師出的系列視頻?。?/p>

          再回到這個(gè)問題,注意力模塊對(duì)感受野的影響,直觀上來講是會(huì)增加模型的感受野大小。理論上最好的情況應(yīng)該是模型的實(shí)際感受野(不是理論感受野)和目標(biāo)的尺寸大小相符。

          • 如果添加注意力模塊之前,模型的感受野已經(jīng)足夠擬合數(shù)據(jù)集中目標(biāo),那么如果再添加注意力模塊有些畫蛇添足。但是由于實(shí)際感受野是會(huì)變化的,所以可能即便加了注意力模塊也可以自調(diào)節(jié)實(shí)際感受野在目標(biāo)大小附近,這樣模型可能保持性能不變。
          • 如果添加注意力模塊之前,模型的感受野是不足的,甚至理論感受野都達(dá)不到目標(biāo)的大小(實(shí)際感受野大小<理論感受野大?。?,那么這個(gè)時(shí)候添加注意力模塊就可以起到非常好的作用,性能可能會(huì)有一定幅度提升。

          從這個(gè)角度來分析,題主只用了兩個(gè)卷積層,然后就開始使用CBAM模塊,很有可能是感受野不足的情況。但是為什么性能會(huì)下降呢,可能有其他方面因素影響,可以考慮先構(gòu)建一個(gè)差不多的baseline,比如帶殘差的ResNet20,或者更小的網(wǎng)絡(luò),然后再在其基礎(chǔ)上進(jìn)行添加注意力模塊。

          以上結(jié)論并不嚴(yán)謹(jǐn),歡迎評(píng)論探討。

          筆者開源了注意力模塊庫,歡迎提issue貢獻(xiàn)!

          https://github.com/pprp/awesome-attention-mechanism-in-cv

          對(duì)文中實(shí)驗(yàn)源碼感興趣可以訪問這個(gè)鏈接:

          https://github.com/pprp/pytorch-cifar-model-zoo


          END


          瀏覽 73
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产三级片视频网站 | 日韩黄色在线播放 | 小姐操逼视频 | 色婷婷综合av | 综合操逼|