卷积是如何计算的?
- 卷积操作简图:(类似于矩阵运算)

- 示例代码
import torchimport torch.nn.functional as Finput = torch.tensor([[1,2,0,3,1], [0,1,2,3,1], [1,2,1,0,0], [5,2,3,1,1], [2,1,0,1,1]])kernel = torch.tensor([[1,2,1], [0,1,0], [2,1,0]])print(input.shape)print(kernel.shape)# 需要更改数据类型适应conv2d()函数input = torch.reshape(input,(1,1,5,5))kernel = torch.reshape(kernel,(1,1,3,3))print(input.shape)print(kernel.shape)# stride参数output = F.conv2d(input,kernel,stride=1)# stride = 1 步长为1,移动矩阵kernel(卷积核)的步长为1print(output)output = F.conv2d(input,kernel,stride=2)# stride = 2 步长为1,移动矩阵kernel(卷积核)的步长为2print(output)# padding参数:填充input周围,padding为几就填充几维output = F.conv2d(input,kernel,stride=1,padding=1)print(output)