#pytorch #tensor #matrix-indexing
#pytorch #тензор #матрица-индексирование
Вопрос:
Рассмотрим следующее:
a = torch.rand(2, 3, 4)
tensor([[[0.2410, 0.3700, 0.9221, 0.5289],
[0.8820, 0.2856, 0.4072, 0.6177],
[0.4279, 0.9396, 0.7483, 0.0087]],
[[0.7295, 0.4965, 0.9559, 0.0419],
[0.7379, 0.5761, 0.3439, 0.8682],
[0.3886, 0.2435, 0.4024, 0.2007]]])
a[[0], [0,2]][..., [0,3]]
tensor([[0.2410, 0.5289],
[0.4279, 0.0087]])
Пока все хорошо, но когда я пытаюсь выбрать одно и то же подмножество напрямую a
, я получаю (для меня) неожиданные результаты.
a[[0], [0,2], [0,3]]
tensor([0.2410, 0.0087])
Я попытался найти объяснение тому, что именно происходит в последнем случае, но не нашел ни одного. Я буду рад понять, какова семантика этой последней формы индексации.
Спасибо!