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

tensor向量按任意维度进行切片、拆分、组合

torch.index_select(input_tensor, 切片维度, 切片索引)

注意:切完之后,转onnx时会生成Gather节点;

torch自带切片操作

start : end : step:

范围前闭后开,将其放在哪个维度上,就对那个维度起作用

torch.cat((a, b) , dim)

已有的轴上拼接矩阵,默认轴为0,给定轴的维度可以不同,其余轴的维度必须相同
 

三个操作的组合使用例子如下:


import torchx = torch.randn(1, 18, 4, 4)# print("x:",x)
print("x.shape:",x.shape)indices_cls = torch.tensor([2, 5, 8, 11, 14, 17])
indices_point = torch.tensor([0,1, 3,4, 6,7, 9,10, 12,13, 15,16])kpt_point = torch.index_select(x, 1, indices_point)
kpt_cls = torch.index_select(x, 1, indices_cls)print("kpt_point.shape:",kpt_point.shape)
print("kpt_cls.shape:",kpt_cls.shape)x_2 = torch.cat([kpt_point[:,0:2:1,],kpt_cls[:,0:1:1,],kpt_point[:,2:4:1,],kpt_cls[:,1:2:1,],kpt_point[:,4:6:1,],kpt_cls[:,2:3:1,],kpt_point[:,6:8:1,],kpt_cls[:,3:4:1,],kpt_point[:,8:10:1,],kpt_cls[:,4:5:1,],kpt_point[:,10:12:1,],kpt_cls[:,5:6:1,]],1)# print("x_2:",x_2)
print("x_2.shape:",x_2.shape)

打印组合前后tensor的输出形状和内容发现,前后一致:

x.shape: torch.Size([1, 18, 4, 4])
kpt_point.shape: torch.Size([1, 12, 4, 4])
kpt_cls.shape: torch.Size([1, 6, 4, 4])   
x_2.shape: torch.Size([1, 18, 4, 4])   

http://www.lryc.cn/news/572268.html

相关文章:

  • 如何将缓存存到客户端浏览器上呢
  • 计算机视觉(Computer Vision, CV)
  • 前端实现即时通讯:短轮询、长轮询、SSE 与 WebSocket 全面解析
  • MySQL层级查询实战:无函数实现部门父路径
  • MyBatis 简介
  • 《超级处理器》怎么安装到WPS/excel(最后有下载地址)
  • 基于Spring Boot+Vue的“暖寓”宿舍管理系统设计与实现(源码及文档)
  • 解锁身心密码:从“心”拥抱健康生活
  • 20250619在Ubuntu20.04.6下编译Rockchip瑞芯微原厂的RK3576的Buildroot系统
  • Zephyr boot
  • Three.js WebGL2.0深度应用:解锁图形渲染新极限
  • 母线槽接头过热隐患难防?在线测温方案实时守护电力安全
  • 408第二季 - 组成原理 - 指令的寻址方式
  • 攻防演练:1.木马后门文件演练
  • 线程之并发限制
  • C语言项目实践——贪吃蛇
  • Python Redis 简介
  • Day05_数据结构总结Z(手写)
  • 设计模式精讲 Day 7:桥接模式(Bridge Pattern)
  • 68、数据访问-crud实验-删除用户完成
  • 优化TCP/IP协议栈与网络层
  • 十年年化50%+的策略如何进化?兼容机器学习流程的量化策略开发,附python代码
  • WOOT BD活动背后的策略与操作
  • openKylin适配RISC-V高性能服务器芯片,携手睿思芯科共拓智算新蓝海
  • Linux head 命令
  • 软件项目管理(第4版)部分课后题答案
  • 腾讯云TCCP认证考试报名 - TDSQL数据库交付运维高级工程师(MySQL版)
  • 【设计模式】用观察者模式对比事件订阅(相机举例)
  • 智能混合检索DeepSearch
  • 《二叉搜索树》