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])
相关推荐
玄斎19 小时前
MySQL 单表操作通关指南:建库 / 建表 / 插入 / 增删改查
运维·服务器·数据库·学习·程序人生·mysql·oracle
清风一徐20 小时前
禅道从18.3升级到21.7.6版本
笔记
Jack___Xue20 小时前
LangChain实战快速入门笔记(六)--LangChain使用之Agent
笔记·langchain·unix
零度@20 小时前
SQL 调优全解:从 20 秒到 200 ms 的 6 步实战笔记(附脚本)
数据库·笔记·sql
im_AMBER21 小时前
Leetcode 78 识别数组中的最大异常值 | 镜像对之间最小绝对距离
笔记·学习·算法·leetcode
其美杰布-富贵-李21 小时前
HDF5文件学习笔记
数据结构·笔记·学习
d111111111d1 天前
在STM32函数指针是什么,怎么使用还有典型应用场景。
笔记·stm32·单片机·嵌入式硬件·学习·算法
静小谢1 天前
前后台一起部署,vite配置笔记base\build
前端·javascript·笔记
ask_baidu1 天前
Doris笔记
android·笔记
嗷嗷哦润橘_1 天前
AI Agent学习:MetaGPT之我的工作
人工智能·学习·flask