当前位置: 首页 > news >正文

tensor.repeat和tensor.repeat_interleave

tensor.repeat

在指定维度上整体复制张量内容

x = torch.arange(6).reshape(2,3)
print(x)
print(x.repeat(2,1))

上述代码的执行结果为:

tensor([[0, 1, 2],[3, 4, 5]])
tensor([[0, 1, 2],[3, 4, 5],[0, 1, 2],[3, 4, 5]])

可以看到,x.repeat(2, 1) 表示沿着第一个维度(行)复制 2 次,而第二个维度(列)不变,相当于将原始矩阵整体复制一份后在行方向上拼接。

tensor.repeat_interleave

这里只讲解dim不为None时的用法:

x = torch.arange(6).reshape(2,3)
print(x)
print(x.repeat_interleave(repeats=2,dim=0))

结果为:

tensor([[0, 1, 2],[3, 4, 5]])
tensor([[0, 1, 2],[0, 1, 2],[3, 4, 5],[3, 4, 5]])

可以看出,repeat_interleave(repeats=2, dim=0) 会将原张量在第 0 维上逐行重复每一行 2 次。

总结

repeatrepeat_interleave 都可以用于在张量的某个维度上进行扩展,但适用的场景略有不同。选择哪个函数取决于你想要的复制粒度:块级 还是 行/元素级。

http://www.dtcms.com/a/143290.html

相关文章:

  • Invicti-Professional-V25.4
  • 【Python标准库】数学相关的9个标准库
  • 八大排序之直接插入排序
  • ELK日志系统
  • Kubernetes控制平面组件:高可用 APIServer
  • 详解反射型 XSS 的后续利用方式:从基础窃取到高级组合拳攻击链
  • 定制一款国密浏览器(10):移植SM2算法前,解决错误码的定义问题
  • 【Linux】软件管理机制和软件安装
  • 软件测试--自动化测试1
  • 【操作系统原理02】进程的描述与控制
  • 基于机器学习 LSTM 算法的豆瓣评论情感分析系统
  • matlab论文图一的地形区域图的球形展示Version_1
  • 【Matlab】中国东海阴影立体感地图
  • 梅施CPQ + AI:开启智能AI与报价软件的新潮流
  • 大模型Rag - 文本分块
  • libevent的bufferevent测试用例和使用方法(附带源码)
  • 腾讯wxg企业微信 后端开发一面
  • 基于Ubuntu2504部署OpenStack E版
  • uv:重新定义Python开发效率的下一代工具链
  • GNU,GDB,GCC,G++是什么?与其他编译器又有什么关系?
  • Android TTY设备调用流程和简单分析
  • Vue3 本地打包启动白屏解决思路!! !
  • Springboot+vue3开发项目——热点事件
  • YOLO拓展-NMS算法
  • Dijkstra 算法
  • 用usb网卡 虚拟机无法开到全双工的解决办法
  • 时态--06--现在完成時
  • jmeter中文乱码问题解决
  • k8s安装kubeadm
  • 自由学习记录(56)