pytorch学习笔记-自定义卷积

未完结的草稿---------!大概是准备整合一下常见的层,整合完感觉就可以进行搭建了(还没进行到这一步所以不太确定版)

(ps我将在完结这一篇的时候删除上面的小字and二编一下整篇文章的结构,如果看到了这部分文字也是很有缘分了/doge

这一部分感觉也没啥好说的= =

也就是reshape部分值得注意一下?剩下的感觉就是了解一下用法就可以

python 复制代码
import torch
import torch.nn as nn
import torch.nn.functional as F


# 输入数据(图片之类的是二维的),这里采用二维的数据
input = 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]])

reshape操作

python 复制代码
# input -- input tensor of shape (minibatch,in_channels,iH,iW)
# 官网上对input的输入格式要求是上面这样的,显然我们输入的不满足要求,进行修正
input = torch.reshape(input, (1, 1, 5, 5))
kernel = torch.reshape(kernel, (1, 1, 3, 3))

对输入数据进行卷积

python 复制代码
# 使用自定义的卷积核对输入数据进行卷积操作
# stride为步长,默认不进行padding
# 更多参数可以参见官方文档
output = F.conv2d(input, kernel, stride=1)

print(output)
print(output.shape)

# tensor([[[[10, 12, 12],
#           [18, 16, 16],
#           [13,  9,  3]]]])
# torch.Size([1, 1, 3, 3])
相关推荐
All The Way North-26 分钟前
PyTorch从零实现CIFAR-10图像分类:保姆级教程,涵盖数据加载、模型搭建、训练与预测全流程
pytorch·深度学习·cnn·图像分类·实战项目·cifar-10·gpu加速
如果你想拥有什么先让自己配得上拥有1 小时前
近似数的思考学习
学习
崎岖Qiu1 小时前
【OS笔记35】:文件系统的使用、实现与管理
笔记·操作系统·存储管理·文件系统·os
ha20428941942 小时前
Linux操作系统学习记录之----自定义协议(网络计算器)
linux·网络·学习
振华说技能2 小时前
SolidWorks学习大纲-从基础到全面精通,请看详情
学习
曦月逸霜2 小时前
离散数学-学习笔记(持续更新中~)
笔记·学习·离散数学
hunter14502 小时前
windows server AD域与CA部署证书
笔记
im_AMBER2 小时前
Leetcode 101 对链表进行插入排序
数据结构·笔记·学习·算法·leetcode·排序算法
Mr -老鬼2 小时前
Rust与Go:从学习到实战的全方位对比
学习·golang·rust
laplace01232 小时前
# 第四章|智能体经典范式构建 —— 学习笔记(详细版)
笔记·学习