我有两个张量如下:
标准化张量: 1 10 94 尺寸3的torch.LongStorage
和
批次: 1 10 尺寸为2的torch.LongStorage
我想使用“批处理”来选择“标准化张量”的三维索引。到目前为止,我使用的集合如下:
标准化:long():聚集(1,批:long())
不幸的是,它正在返回此错误。“错误的参数#1要‘集合’(输入张量必须具有与输出相同的尺寸”
任何帮助都将不胜感激!谢谢
发布于 2017-08-16 10:56:24
答案基于以下假设:你有一个大小为x,y,z的三维张量,你想要一个大小为x,y的三维张量,其中x,y片是根据另一个尺寸为1,10的张量中列出的指数来选择的。
就我个人而言,我花了很多时间思考如何使用gather方法。我得出的唯一结论是:这不是上面描述的问题。
通过使用index函数可以解决所描述的问题:
local slice = normalised:gather(3, batch[1]:long())https://stackoverflow.com/questions/45710359
复制相似问题