Вы можете использовать torch.expand
t = torch.ones((1, 1000, 1000))
t10 = t.expand(10, 1000, 1000)
Имейте в виду, что t10
является просто ссылкой на t
. Так, например, изменение t10[0,0,0]
приведет к тому же изменению в t[0,0,0]
, и каждый член t10[:,0,0]
.
За исключением прямого доступа, большинство операций, выполняемых на t10
, приведут к тому, что память быть скопирован, что нарушит ссылку и приведет к увеличению памяти. Например: изменение устройства (.cpu()
, .to(device=...)
, .cuda()
), изменение типа данных (.float()
, .long()
, .to(dtype=...)
) или использование .contiguous()
.