numpy矩阵和数组的区别
numpy矩阵(matrix) 是严格 二维的 ,而 numpy数组(ndarray) 是 N维 。矩阵对象是ndarray的子类。因此它继承了ndarray的所有属性和方法。
[numpy矩阵]( https://docs.scipy.org/doc/numpy/reference/generated/numpy.matrix.html )
它可以为线性代数的矩阵运算提供方便的表示法,
例如,如果a和b是矩阵,则“ a * b”是它们的矩阵乘积,“ a.T”是它的转置矩阵。
[numpy数组]( https://docs.scipy.org/doc/numpy/reference/generated/numpy.array.html )
它可以是多个二维矩阵,例如,对于CNN来说非常方便。
结论
1.使用 np.mat()和np.array() 更方便。
2.对于矩阵,我们还可以将 aMat.A和aMat.A1 用于ndarray对象和扁平化的ndarray。
结论
1.将 aMat.T 用于矩阵,并将 np.transpose(aArr) 用于ndarray。
2.但是, np.transpose() 对于 N维 具有更有用的功能。
对于线性代数来说,这是一个非常重要的概念,比如,它用于基于最小二乘法的线性回归中。
结论
1.将 aMat.I 用于矩阵,并将 np.linalg.inv(aArr) 用于ndarray。
2.但是, np.linalg.pinv() 用于奇异矩阵求伪逆。
结论
1.将 aMat * bMat 用于矩阵,并将 np.dot(aArr) 用于ndarray。
结论
1.将 aMat * bMat 用于矩阵,并将 np.dot(aArr) 用于ndarray。
本人能力有限,如有问题,欢迎讨论,谢谢