the different between np.dot and np.multiply

np.dot is the dot product of two matrices.

|A B| . |E F|    |A*E+B*G  A*F+B*H|

      =

|C D|  |G H|   |C*E+D*G  C*F+D*H|

Whereas np.multiply does an element-wise multiplication of two matrices.

|A B| ⊙ |E F|    |A*E B*F|

      =

|C D|    |G H|        |C*G D*H|

When used with np.sum, the result being equal is merely a coincidence.

>>> np.dot([[1,2], [3,4]], [[1,2], [2,3]])array([[ 5,  8],      [11, 18]])

>>> np.multiply([[1,2], [3,4]], [[1,2], [2,3]])array([[ 1,  4],      [ 6, 12]])

>>> np.sum(np.dot([[1,2], [3,4]], [[1,2], [2,3]]))42

>>> np.sum(np.multiply([[1,2], [3,4]], [[1,2], [2,3]]))23


statckoverflow 上的解释

你可能感兴趣的:(the different between np.dot and np.multiply)