目前,我正在尝试删除与 pytorch 中的索引相对应的向量中的元素,但是,它不断使用我当前使用的方法创建额外的副本。
这在幕后是有道理的;我认为内存地址可以保持不变的唯一方法是张量像链表一样实现。
话虽如此,是否可以从 PyTorch 张量中引用删除元素。即是否可以从张量中删除一个元素,使得具有删除索引的张量和旧张量具有相同的内存地址。
我已经尝试过的方法(但涉及创建副本/新内存地址)涉及(伪代码)...
据我了解,您不需要特殊的函数来实现这种行为。如果将现有张量分配给新变量,则该范围内的两个变量名称将指向相同的张量。
x = torch.arange(5)
> tensor([0, 1, 2, 3, 4])
y = x # assign to y
# change y[0] which is x[0]
y[0] = -1
x
> tensor([-1, 1, 2, 3, 4])