1 簡單介紹:
目前的SR方法解決的都是小尺寸的數據小於500px,本文提出的是針對大尺寸的數據比如大於2000px的商業數據。本文的創新之處:
- 提出一種新奇的使用注意力機制的SRGAN方法,叫做A-SRGAN,他是吸收了SAGAN的思想,然後哩由於處理的是大尺度的數據,所以作者針對此提出Flexible Self Attention layer(FSL)層。這個就是在SA基礎上在前端加了maxpooling,後端加了deconv。
- 驗證了SRGAN在大規模數據的有效性上
- 當處理大範圍數據的時候crop尺寸是很重要的,對其進行了討論,發現大的crop size可以處理object inconsitency以及long-term dependency等問題。
- 分佈式算法處理gans,也就是使用多塊gpu進行並行處理。(怎麼感覺和pytorch多gpu處理數據道理很類似)
2 和SRGAN不同之處
我們提出的A-SRGAN模型相對於SRGAN模型修改了2個地方:
- 提出了FSA(Flexible self attention)層,是考慮了長範圍的依靠以及大尺寸條件下的物體不一致性。這裏在之前的SAGAN的基礎上加上一個Flexible。原因就是因爲我們這裏處理的圖像的scale尺寸可能比較大,所以的話我們首先先maxpooling一下降低它的的尺寸,然後我們在經過SA layer,之後的話我們在經過一個deconv層讓其恢復之前的尺寸。
- 我們也對卷積層和全連接層引入了光譜正則化,作爲權重的正則化操作。spectral normalization(光譜正則化)相當於是權重初始化的擴展,這個已經證明了光譜正則化會幫助我們在gan的過程中收斂的更好和更快。 和SN原文不同的是,這裏我們在生成器和判別器都使用了SN層。
注意一下,我們在訓練階段因爲我們使用的crop進行訓練,因此可以直接使用SA進行計算就可以啦,但是在測試的時候因爲尺寸是比較大的話,那麼我們就使用FSA層就可以了。
3. 網絡結構
FSA結構,和SA很類似,參考上文。
A-SRGAN結構,和SRGAN相比加了SN, FSA。
分佈式多結構:
有關SAGAN可以參考一下: