Является ли вещательная ассоциация NumPy? - PullRequest
0 голосов
/ 02 июля 2018

Скажем, у меня есть три numpy.ndarray a,b,c, так что когда я их умножаю, происходит трансляция.

Зависит ли результат от порядка умножения?

Другими словами, существуют ли a, b, c такие, что:

(a * b) * c != a * (b * c)

1 Ответ

0 голосов
/ 03 июля 2018

Да, это ассоциативно. Правила вещания говорят, что

  • Ранг (количество измерений) результата - это max рангов входов (при необходимости используется левый отступ 1).
  • Измерение по каждой оси - это max измерений по этой оси (при условии, что max не содержит двух различных чисел, оба больше 1, и в этом случае выдается ошибка).

Функция max является ассоциативной: max(a, max(b, c)) = max(max(a, b), c). Таким образом, форма вывода одинакова независимо от скобок. Кроме того, условие, при котором выдается ошибка «операнды не могут быть переданы», составляет: для каждой оси все измерения, которые больше 1, равны; это условие вообще не нуждается в скобках.

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