文章目錄
- 一、前置知識
- 什么是卷積操作
- 二、代碼
一、前置知識
什么是卷積操作
推薦幾個高贊博客:
卷積最容易理解的解釋
卷積神經網絡(CNN)詳細介紹及其原理詳解
還有pytorch官網的動態圖:
pytorch卷積
二、代碼
import torch
import 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]])input = torch.reshape(input, (1, 1, 5, 5))
kernel = torch.reshape(kernel, (1, 1, 3, 3))print(input.shape)
print(kernel.shape)output1 = F.conv2d(input, kernel, stride=1)
print(output1)output2 = F.conv2d(input, kernel, stride=2)
print(output2)output3 = F.conv2d(input, kernel, stride=1,padding=1)
print(output3)
運行結果: