Pytorch CNN的各類參數

class Model(torch.nn.Module): def __init__(self): super(Model, self).__init__() self.conv1 = torch.nn.Sequential(torch.nn.Conv2d(1, 4, kernel_size=5, stride=1,padding=0), torch.nn.MaxPool2d(stride=4, kernel_size=4)) self.dense = torch.nn.Sequential(torch.nn.Linear(6 * 6 * 4, 33), torch.nn.ReLU(), torch.nn.Linear(33, 10)) def forward(self, x): x = self.conv1(x) x = x.view(-1, 6 * 6 * 4)  #把卷積池化獲得的向量平鋪開
        x = self.dense(x) return x

conv :卷積層(2d就是二維平面的)ide

  kernel_size 卷積核大小函數

  stride 每次移動的步長spa

  padding 四周填充的大小,注意是四周因此在算下一層的向量維度時要將padding 乘以 2code

  maxpool2d 二維平面的池化層blog

dense:全連接層it

  Linear 一層神經元 輸入維數 輸出維數class

  激活函數移動

  輸出層,10分類di

 

forward 函數裏的view(-1,n)就是把卷積池化獲得的2維向量展開成1維的,便於傳入全鏈接層view

相關文章
相關標籤/搜索