Pytorch之卷積層的使用詳解
1.簡介(torch.nn下的)
卷積層主要使用的有3類,用于處理不同維度的數(shù)據(jù)
參數(shù) Parameters:
in_channels(int) – 輸入信號的通道
out_channels(int) – 卷積產(chǎn)生的通道
kerner_size(int or tuple) - 卷積核的尺寸
stride(int or tuple, optional) - 卷積步長
padding (int or tuple, optional)- 輸入的每一條邊補(bǔ)充0的層數(shù)
dilation(int or tuple, `optional``) – 卷積核元素之間的間距
groups(int, optional) – 從輸入通道到輸出通道的阻塞連接數(shù)
bias(bool, optional) - 如果bias=True,添加偏置
class torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True)
一維卷積層。用于計(jì)算ECG等一維數(shù)據(jù)。
input: (N,C_in,L_in) N為批次,C_in即為in_channels,即一批內(nèi)輸入一維數(shù)據(jù)個(gè)數(shù),L_in是是一維數(shù)據(jù)基數(shù)
output: (N,C_out,L_out) N為批次,C_in即為out_channels,即一批內(nèi)輸出一維數(shù)據(jù)個(gè)數(shù),L_out是一維數(shù)據(jù)基數(shù)
class torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True)
二維卷積層。用于計(jì)算CT斷層或MR斷層,或二維超聲圖像,自然圖像等二維數(shù)據(jù)。
self.conv1 = nn.Conv2d( # 1*28*28 -> 32*28*28
in_channels=1,
out_channels=32,
kernel_size=5,
stride=1,
padding=2 #padding是需要計(jì)算的,padding=(stride-1)/2
)
input: (N,C_in,H_in,W_in) N為批次,C_in即為in_channels,即一批內(nèi)輸入二維數(shù)據(jù)個(gè)數(shù),H_in是二維數(shù)據(jù)行數(shù),W_in是二維數(shù)據(jù)的列數(shù)
output: (N,C_out,H_out,W_out) N為批次,C_out即為out_channels,即一批內(nèi)輸出二維數(shù)據(jù)個(gè)數(shù),H_out是二維數(shù)據(jù)行數(shù),W_out是二維數(shù)據(jù)的列數(shù)
con2 = nn.Conv2d(1,16,5,1,2) # con2(np.empty([1,1,28,28])) 只能接受tensor/variable con2(torch.Tensor(1,1,28,28)) con2(Variable(torch.Tensor(1,1,28,28)))
class torch.nn.Conv3d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True)
三維卷積層。用于計(jì)算CT或MR等容積數(shù)據(jù),視頻數(shù)據(jù)等三維數(shù)據(jù)。
input: (N,C_in,D_in,H_in,W_in)
output: (N,C_out,D_out,H_out,W_out)
2.簡介(torch.nn.functional下的)
在torch.nn.functional下也有卷積層,但是和torch.nn下的卷積層的區(qū)別在于,functional下的是函數(shù),不是實(shí)際的卷積層,而是有卷積層功能的卷積層函數(shù),所以它并不會出現(xiàn)在網(wǎng)絡(luò)的圖結(jié)構(gòu)中。
torch.nn.functional.conv1d(input, weight, bias=None, stride=1, padding=0, dilation=1, groups=1)
參數(shù):
- input – 輸入張量的形狀 (minibatch x in_channels x iW)
- weight – 過濾器的形狀 (out_channels, in_channels, kW)
- bias – 可選偏置的形狀 (out_channels)
- stride – 卷積核的步長,默認(rèn)為1
>>> filters = autograd.Variable(torch.randn(33, 16, 3)) >>> inputs = autograd.Variable(torch.randn(20, 16, 50)) >>> F.conv1d(inputs, filters)
torch.nn.functional.conv2d(input, weight, bias=None, stride=1, padding=0, dilation=1, groups=1)
>>> # With square kernels and equal stride >>> filters = autograd.Variable(torch.randn(8,4,3,3)) >>> inputs = autograd.Variable(torch.randn(1,4,5,5)) >>> F.conv2d(inputs, filters, padding=1)
torch.nn.functional.conv3d(input, weight, bias=None, stride=1, padding=0, dilation=1, groups=1)
>>> filters = autograd.Variable(torch.randn(33, 16, 3, 3, 3)) >>> inputs = autograd.Variable(torch.randn(20, 16, 50, 10, 20)) >>> F.conv3d(inputs, filters)
以上這篇Pytorch之卷積層的使用詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺析Python中g(shù)lobal和nonlocal關(guān)鍵字的妙用
這篇文章主要來和大家一起深入探討Python中關(guān)鍵詞global和nonlocal的用法,包括詳細(xì)的示例代碼和實(shí)際應(yīng)用場景,感興趣的可以了解下2024-04-04
淺談Python 多進(jìn)程默認(rèn)不能共享全局變量的問題
今天小編就為大家分享一篇淺談Python 多進(jìn)程默認(rèn)不能共享全局變量的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python利用jmespath模塊進(jìn)行json數(shù)據(jù)處理
jmespath是python的第三方模塊,是需要額外安裝的。它在python原有的json數(shù)據(jù)處理上做出了很大的貢獻(xiàn)。本文將詳細(xì)介紹如何利用jmespath實(shí)現(xiàn)json數(shù)據(jù)處理,需要的可以參考一下2022-03-03
基于Python實(shí)現(xiàn)面向?qū)ο蟀鎸W(xué)生管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何利用python實(shí)現(xiàn)學(xué)生管理系統(tǒng)(面向?qū)ο蟀妫?,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
Django用戶登錄與注冊系統(tǒng)的實(shí)現(xiàn)示例
這篇文章主要介紹了Django用戶登錄與注冊系統(tǒng)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
Python數(shù)據(jù)可視化:冪律分布實(shí)例詳解
今天小編就為大家分享一篇Python數(shù)據(jù)可視化:冪律分布實(shí)例詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
PyCharm使用matplotlib報(bào)MatplotlibDeprecationWarning問題解決辦法
這篇文章主要給大家介紹了關(guān)于PyCharm使用matplotlib報(bào)MatplotlibDeprecationWarning問題解決的相關(guān)資料,主要是 matplotlib版本過高導(dǎo)致的,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06
Python編程實(shí)現(xiàn)從字典中提取子集的方法分析
這篇文章主要介紹了Python編程實(shí)現(xiàn)從字典中提取子集的方法,結(jié)合實(shí)例形式對比分析了Python采用字典推導(dǎo)式與序列轉(zhuǎn)換實(shí)現(xiàn)字典提取子集的相關(guān)操作技巧與優(yōu)缺點(diǎn),需要的朋友可以參考下2018-02-02
關(guān)于pycharm?python3.7成功安裝dlib庫的問題
這篇文章主要介紹了pycharm?python3.7成功安裝dlib庫的解決方法,本文分步驟給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12

