pytorch - 在 PyTorch 中扩展张量的一部分
问题描述
我在 GPU 内存上分配了一个形状为 NxCxHxW 的 4D 张量。我想获取一些元素(沿 N 维),并在不分配新内存的情况下扩展它们(即,将每个元素重复 n 次)。我可以对所有元素执行以下操作:
batch.unsqueeze(0).expand(n, -1, -1, -1, -1)
有没有办法做到这一点,但只能从批次中选择元素?(例如,仅针对批次的第一个元素,并且仍然没有分配新内存)。
如何使用内存分配执行此操作的示例:
torch.cat((batch.unsqueeze(0), batch[:num_elems_to_expand].unsqueeze(0).expand(n, -1, -1, -1, -1)), dim=0)
谢谢
解决方案
推荐阅读
- sql - 根据多个条件过滤某些字段中具有重复值的行
- javascript - 有字母时,parseInt 不返回 NaN
- clion - CLion:运行目标后运行脚本
- excel - 使用单元格值通过 vba 生成文件名和扩展名
- javascript - 计算值更改时组件不重新渲染
- python-3.x - 在冬季变化期间将本地转换为 UTC 的问题
- c# - 如何将文件移动到多个文件夹?
- python - 传递一个被分割成碎片的句子 - 越界?
- postgresql - Postgres:物化视图查询执行时间更长
- ios - 在使用 Amazon iOS SDK 的 swift iOS 应用程序中,如何为 AWSS3TransferUtility 下载操作设置自定义超时?