Numpy two types of multiplication, five expressions

1. Matrix multiplication (vector inner product)

d=np.dot(a,a)#matrix multiplication
e=a@a#matrix multiplication

2. Hadamard product

b=a**2#Element level multiplication, equivalent to a*a, equivalent to np.multiply(a,a)
c=a*a#Element level multiplication, equivalent to a**2
f=np.multiply(a,a)#Element level multiplication, the shape can be different
demo:

import numpy as np
a = np.array([1,2])
print(f"a{
      
      a}")
# >>>矩阵乘法(向量内积)
d=np.dot(a,a) #矩阵乘法
e=a@a #矩阵乘法
print(f"d {
      
      d}")
print(f"e {
      
      e}")

# >>>哈达玛(Hadamard)积
b=a**2 #元素级别相乘,等同于a*a,等同于np.multiply(a,a)
c=a*a #元素级别相乘,等同于a**2
f=np.multiply(a,a)#元素级别相乘,形状可以不一样
print(f"b{
      
      b}")
print(f"c{
      
      c}")
print(f"f{
      
      f}")

aa =np.array([[1,2],[1,2]])
print(f"aa{
      
      aa}")
g=a*aa
h=np.multiply(a,aa)
i=np.dot(a,aa)
j=a@aa
print(f"g{
      
      g}")
print(f"h{
      
      h}")
print(f"i{
      
      i}")
print(f"j{
      
      j}")




good post

Several common products in machine learning are introduced in more detail, you can directly see this

Guess you like

Origin blog.csdn.net/condom10010/article/details/131392919