PyTorch 普通卷積和空洞卷積實例
時間:2020-01-07來源:系統城作者:電腦系統城
- import numpy as np
- from torchvision.transforms import Compose, ToTensor
- from torch import nn
- import torch.nn.init as init
- def transform():
- return Compose([
- ToTensor(),
- # Normalize((12,12,12),std = (1,1,1)),
- ])
-
- arr = range(1,26)
- arr = np.reshape(arr,[5,5])
- arr = np.expand_dims(arr,2)
- arr = arr.astype(np.float32)
- # arr = arr.repeat(3,2)
- print(arr.shape)
- arr = transform()(arr)
- arr = arr.unsqueeze(0)
- print(arr)
-
- conv1 = nn.Conv2d(1, 1, 3, stride=1, bias=False, dilation=1) # 普通卷積
- conv2 = nn.Conv2d(1, 1, 3, stride=1, bias=False, dilation=2) # dilation就是空洞率,即間隔
- init.constant_(conv1.weight, 1)
- init.constant_(conv2.weight, 1)
- out1 = conv1(arr)
- out2 = conv2(arr)
- print('standare conv:\n', out1.detach().numpy())
- print('dilated conv:\n', out2.detach().numpy())
輸出:
- (5, 5, 1)
- tensor([[[[ 1., 2., 3., 4., 5.],
- [ 6., 7., 8., 9., 10.],
- [11., 12., 13., 14., 15.],
- [16., 17., 18., 19., 20.],
- [21., 22., 23., 24., 25.]]]])
- standare conv:
- [[[[ 63. 72. 81.]
- [108. 117. 126.]
- [153. 162. 171.]]]]
- dilated conv:
- [[[[117.]]]]

以上這篇PyTorch 普通卷積和空洞卷積實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持我們。
相關信息
-
PyTorch兩種安裝方法
PyTorch兩種安裝方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值...
2021-03-29
-