Pytorch:torch.nn.functional.pad()

torch.nn.functional.pad 是PyTorch函数,用于在张量的各个轴上添加填充 。这个函数是 torch.nn.functional 模块下的一个实用函数,它可以自由地添加不同数量的填充到输入张量的任意边界

用法

使用 torch.nn.functional.pad 需要提供输入张量一个填充值 列表,该列表指明了每个维度两侧的填充量 。此外,还可以指定填充类型,例如 'constant'(使用固定值进行填充)、'reflect'(使用反射填充方式)、'replicate'(使用重复模式填充)等。

以下是几个 pad 函数的例子:

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

# 创建一个二维矩阵
tensor = torch.arange(9).view(3, 3)

# 将 tensor 周围填充一层零
# 填充格式为:(左, 右, 上, 下)
padded_tensor = F.pad(tensor, (1, 1, 1, 1), 'constant', 0)

# 使用反射方式填充
# 反射填充不需要额外的填充值,会将tensor边缘的值反射至填充部分
padded_tensor_reflect = F.pad(tensor, (1, 1, 1, 1), 'reflect')

# 使用重复模式填充
# 重复模式会取边缘的值并在填充区域重复它
padded_tensor_replicate = F.pad(tensor, (1, 1, 1, 1), 'replicate')

在实际应用中,填充操作通常用于确保某些卷积层或池化层后的尺寸满足要求,或者处理边界情况,比如图像处理中边界的处理等。

pad 函数的灵活性在于,它可以处理不同数量不同类型的填充需求,提供了实现各种填充策略的基础。

相关推荐
Hui_AI7201 分钟前
基于RAG的农产品GEO溯源智能问答系统实现
开发语言·网络·人工智能·python·算法·创业创新
Java后端的Ai之路6 分钟前
什么是“多模态微调”?
人工智能·lora·微调
沫儿笙7 分钟前
机器人焊接混合气智能节气装置
人工智能·机器人
不知名的老吴10 分钟前
后端知识点:Python处理加权点赞
开发语言·python
imbackneverdie11 分钟前
AI生成论文插图速度快不用手搓,但是怎么变成矢量图?
图像处理·人工智能·ai作画·aigc·科研绘图·ai工具·ai生图
甲维斯12 分钟前
GLM5.1 降智了?国模思考强度研究!
人工智能·ai编程
忡黑梨14 分钟前
eNSP_从直连到BGP全网互通
c语言·网络·数据结构·python·算法·网络安全
中微子15 分钟前
突然爆火的Warp 终端,开源1天破 4w Stars
linux·人工智能·开源
Restart-AHTCM18 分钟前
AI 时代的大前端崛起,TypeScript 重塑前端开发
前端·人工智能·typescript·ai编程·a
无心水23 分钟前
【Hermes:多平台接入】15、Telegram Bot 接入:手机随时叫 AI 助手(最推荐) —— 把 Honcho 智能体装进口袋
人工智能·openclaw·养龙虾·hermes agent·hermes·养马