import numpy as np
import torch
a = torch.zeros(5)
b = torch.tensor(tuple((0,1,0,1,0)),dtype=torch.uint8)
c= torch.tensor([7.,9.])
print(a[b].size())
a[b]=c
print(a)
факел. Размер ([2])
тензор ([0, 7, 0., 9., 0.])
Я естьпытается понять, как это работает.Сначала я думал, что в приведенном выше коде используется индексирование Fancy, но я понял, что копируются значения из тензоров c , соответствующие индексам, помеченным 1. Кроме того, если я не укажу dtype для b as uint8 , тогда приведенный выше код не работает.Может кто-нибудь, пожалуйста, объясните мне механизм вышеуказанного кода.