У меня есть два массива, a и b.
In [168]: a.shape
Out[168]: (20, 3)
In [169]: b.shape
Out[169]: (20,)
Точечное произведение этих двух:
In [171]: numpy.dot(b, a).shape
Out[171]: (3,)
Я не понимаю, зачем получать (3,)
. Что именно numpy.dot
делает для a и b?
В моем понимании механизм, стоящий за этим, может выглядеть так:
numpy.dot(a.T, b)
Это имеет смысл из-за (3, 20) * (20,) -> (3,)
. Но почему numpy.dot(b, a)
, (20,) * (20, 3)
также получают (3,)
?