Код: Выделить всё
[batch_size, seq_length, hidden_dim]
Код: Выделить всё
[batch_size, seq_length]
Я хочу использовать список для выбора этого тензора.
Например: форма 3D-тензора t [2, 5, 3] и форму двумерного списка l [2, 5].
Пусть t0 = t[0, :, :] и l0 = l[0]. Я хотел бы выбрать "
Код: Выделить всё
t0[l0]
То же самое для t1[l1] и т. д.
Я могу только думать о написании цикл for для достижения этой цели:
Код: Выделить всё
new_ts = []
for i in range(t.shape[0]):
new_t = t[i][l[i]]
new_ts.append(new_t)
new_t = torch.cat(new_ts, dim=2)
Ищу жду ваших предложений.
Подробнее здесь: https://stackoverflow.com/questions/651 ... in-pytorch