pytorch笔记:ReplicationPad1d

python 复制代码
torch.nn.ReplicationPad1d(padding)
  • 在 PyTorch 中,ReplicationPad1d 是一种用于一维数据的填充层
  • 该层通过复制序列的边缘值来增加数据的长度,这在卷积神经网络中常用于保持数据尺寸
  • 主要参数

|---------|-----------------------------------------------------------------------------------------------------|
| padding | 可以是一个整数或一个元组。 * 如果是一个整数,它表示在序列的每一端都填充相同数量的值。 * 如果是一个元组 (pad_left, pad_right),则分别在序列的左边和右边填充指定数量的值 |

  • 工作原理:

    • 假设有一个序列 [a, b, c, d],并且设置 padding=(2, 3),那么填充后的序列将是 [a, a, a, b, c, d, d, d, d]

    • 这里,左边的 a 被复制了两次,右边的 d 被复制了三次。

  • 举例:

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

# 创建一维数据
data = torch.tensor([1, 2, 3, 4], dtype=torch.float32).unsqueeze(0).unsqueeze(0)  # shape: [1, 1, 4]

data,data.shape
#(tensor([[[1., 2., 3., 4.]]]), torch.Size([1, 1, 4]))




pad = nn.ReplicationPad1d((2, 3))

# 应用填充
padded_data = pad(data)

print(padded_data) 
#tensor([[[1., 1., 1., 2., 3., 4., 4., 4., 4.]]])
相关推荐
OpenCSG27 分钟前
对比分析:CSGHub vs. Hugging Face:模型管理平台选型对
人工智能·架构·开源
云上凯歌28 分钟前
传统老旧系统的“AI 涅槃”:从零构建企业级 Agent 集群实战指南
人工智能
cskywit37 分钟前
破解红外“魅影”难题:WMRNet 如何以频率分析与二阶差分重塑小目标检测?
人工智能·深度学习
小乔的编程内容分享站1 小时前
记录使用VSCode调试含scanf()的C语言程序出现的两个问题
c语言·开发语言·笔记·vscode
无名修道院1 小时前
AI大模型应用开发-RAG 基础:向量数据库(FAISS/Milvus)、文本拆分、相似性搜索(“让模型查资料再回答”)
人工智能·向量数据库·rag·ai大模型应用开发
自可乐1 小时前
Milvus向量数据库/RAG基础设施学习教程
数据库·人工智能·python·milvus
Loo国昌1 小时前
【大模型应用开发】第二阶段:语义理解应用:文本分类与聚类 (Text Classification & Clustering)
人工智能·分类·聚类
XX風1 小时前
3.2K-means
人工智能·算法·kmeans
feasibility.1 小时前
在OpenCode使用skills搭建基于LLM的dify工作流
人工智能·低代码·docker·ollama·skills·opencode·智能体/工作流
进击monkey1 小时前
PandaWiki:开源企业级AI知识库工具,基于RAG架构的私有化部署方案
人工智能·开源