Как я могу получить среднее значение 5 тензоров вдоль оси? - PullRequest
0 голосов
/ 27 марта 2020

У меня есть 5 тензоров формы torch.Size([7, 20, 180])

Я хочу получить среднее значение каждого по dim=1, чтобы моя окончательная форма была torch.Size([7, 20, 180]).

По сути, я хотите, чтобы первый элемент из первого тензора, затем первый элемент из второго тензора и т. д. были усреднены.

1 Ответ

1 голос
/ 27 марта 2020

Вы не упомянули, как хранятся эти 5 тензоров, но давайте предположим, что они есть в списке. Вот способ сделать это:

import torch

x = [torch.rand((7, 20, 180)) for _ in range(5)]
y = torch.stack(x).mean(dim=0)

print(y.shape)
# >>> torch.Size([7, 20, 180])

Я также предполагаю, что вы сказали dim=1, как будто PyTorch был индексированием на основе 1, а это не так.


Я вижу, вы в последнее время задаете много вопросов, и это не проблема. Я говорил это один раз, но снова: всегда старайтесь предоставить минимальный воспроизводимый пример . Всегда хорошо проявить некоторые усилия. Вы пробовали что-нибудь, прежде чем спрашивать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...