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 函数的灵活性在于,它可以处理不同数量不同类型的填充需求,提供了实现各种填充策略的基础。

相关推荐
乱世军军1 分钟前
最新的强化学习研究进展
人工智能
数字游民95271 分钟前
gpt image 2怎么用?附超全提示词案例库
人工智能·gpt·ai·opc·waytoopc·数字游民9527
云烟成雨TD3 分钟前
Spring AI Alibaba 1.x 系列【40】多智能体核心模式 - 智能体作为工具(Agent as Tool)
java·人工智能·spring
甄心爱学习3 分钟前
【项目实训(个人5)】
python·github
大龄程序员狗哥3 分钟前
第33篇:超参数调优实战——用网格搜索与随机搜索为模型“精调”(项目实战)
人工智能
卷Java10 分钟前
Agent架构设计:规划器、工具、记忆、评估器如何协同工作
人工智能
z44247532612 分钟前
新买的电脑装哪个HTML函数工具最匹配_开箱即用教程【教程】
jvm·数据库·python
Claw开发者13 分钟前
Hermes 接 LiteLLM 缓存不生效踩坑记录
人工智能·agent
测试员周周14 分钟前
【踩坑系列3】飞书机器人集体“失联“?3 个 Gateway 进程让我差点崩溃!一个测试老兵的排查实录
java·python
齿轮16 分钟前
Agent 管理范式演进:从管一句话到管整个系统
人工智能·后端