Создание 4-мерной тензорной маски в numpy - PullRequest
0 голосов
/ 12 апреля 2020

При работе над исследовательской задачей я столкнулся со следующей тензорной маской ранга 4:

M [i, j, k, l] = дельта (i + j, k + l)

Где delta (x, y) = 1 тогда и только тогда, когда x == y, иначе 0 (дельта Кронекера)

Например, M (2,3,1,4) = 1, поскольку (2 + 3 = 1 + 4) но M (1,3,2,4) = 0, поскольку (1 + 3 - это не 2 + 4)

Есть ли векторизованный способ создания этого с использованием numpy? Если бы я использовал для циклов, я должен go через N ^ 4 итераций, что для моего текущего значения N уже слишком много. Также есть проблема с памятью.

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