У меня есть вектор nx1 и вектор 1xn. Я хочу, чтобы добавить их в особом порядке, как умножение матриц эффективным образом (векторизованную):Как добавить вектор строки к вектору столбца, как умножение матрицы
Пример:
A=[1 2 3]'
B=[4 5 6]
A \odd_add B =
[1+4 1+5 1+6
2+4 2+5 2+6
3+4 3+5 3+6
]
С уважением
Спасибо, я надеюсь, что решение должно быть достаточно быстро. – remo
Как я его протестировал, он примерно в 6 раз медленнее обычного умножения матрицы. Я использовал exp (A) и exp (B) и умножил их, а затем получил специальное суммирование с использованием функции log(). Этот подход быстрее! Может ли ваш код быть векторизованным? – remo
Я не согласен с вашими испытаниями; Я нахожу 'bsxfun' во много раз быстрее, чем умножение матрицы, для всех размеров вектора, который я тестировал. Это должно быть так, поскольку вычислительная сложность умножения является суперлинейной по числу матричных элементов. – Isaac