写在前面:在numpy初始化中有“数组(np.array)和矩阵(np.matrix)”两种,但其实两种是完全通用的!
建议:全部使用np.array进行初始化,因为其比matrix具有更多的功能且更加灵活!numpy不区分数组与矩阵!
(1)“线性代数”矩阵相乘:
在numpy做“线性代数”中的矩阵相乘:np.dot(a1,a2)
示例:
import numpy as np
a = np.array([[1,2],[4,5]])
b = np.array([[3,4],[6,7]])
c = np.dot(a,b) # 这就是线性代数中的矩阵相乘,即对两个矩阵的“规格、顺序”有要求!
(2)普通“对应元素”点乘:
在numpy做“普通点乘”的方法:np.multiply(a1,a2) 或直接 a1*a2
import numpy as np
a = np.array([[1,2],[4,5]])
b = np.array([[3,4],[6,7]])
c1 = np.multiply(a,b) # c2 = np.multiply(b,a)
c3 = a*b # c4 = b*a
# 以上4种结果完全相同,说明普通点乘与顺序无关!