中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于pytorch padding=SAME的解決方式

發布時間:2020-09-03 20:16:02 來源:腳本之家 閱讀:848 作者:BenjaminYoung29 欄目:開發技術

tensorflow中的conv2有padding=‘SAME'這個參數。吳恩達講課中說到當padding=(f-1)/2(f為卷積核大小)時則是SAME策略。但是這個沒有考慮到空洞卷積的情況,也沒有考慮到strides的情況。

查閱資料后發現網上方法比較麻煩。

手算,實驗了一個早上,終于初步解決了問題。

分為兩步:

填充多少

中文文檔中有計算公式:

輸入:

基于pytorch padding=SAME的解決方式

輸出:

基于pytorch padding=SAME的解決方式

因為卷積后圖片大小同卷積前,所以這里W_out=W_in, H_out=H_in。解一元一次方程即可。結果取ceil。

怎么填充

torch是先填充再卷積。conv2d的策略如此。所以我先在forward中獲取上述方程需要的參數。然后使用torch.nn.functional.pad填充就好了。

然后

t2=torch.randn([1,1,4,4])
print(t2.size())
m1 = torch.nn.Conv2d(1, 1, 1, padding=(1,0))
print(m1(t2).size())
t2=F.pad(t2,(0,0,1,1))
print(t2.size())

有兩個發現

pad是對稱的兩邊都填充的,所以上述總共填充2行/列

參數中padding=(1,0)的效果,與F.pad(t2, (0,0,1,1)的效果一樣。而不是與F.pad(t2,1,1,0,0)效果一樣。很神奇。本來(1,0)按照解視是1是H邊(左右)。0是W邊(上下)。(0,0,1,1)按解釋是左右不填充,上下填充。結果剛好相反。

這樣應該就沒什么問題了。

之后還需要看反卷積跟池化的pooling='SAME'是怎么實現的。

以上這篇基于pytorch padding=SAME的解決方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蒙自县| 湟源县| 河津市| 林州市| 五寨县| 丁青县| 中卫市| 化州市| 娄烦县| 乳源| 江永县| 遂昌县| 拉萨市| 奉贤区| 黑山县| 遵义市| 额济纳旗| 合山市| 泽普县| 全椒县| 潼关县| 桦川县| 彭州市| 柞水县| 马公市| 襄汾县| 洞头县| 姜堰市| 瑞昌市| 驻马店市| 东源县| 卢氏县| 夏津县| 怀远县| 兴和县| 南江县| 宿州市| 府谷县| 青田县| 荃湾区| 虞城县|