先看 numpy.array() 和 numpy.matrix 的区别
我们生成 ndarry A 和 matrix B
numpy.array() | numpy.matrix() | |
---|---|---|
维度 | 理论上任何维度 | 只能2维 |
转置 | A.T 或 A.transpose() | B.T 或 B.transpose() |
矩阵乘法 (点乘, dot product) (以乘以自身的转置为例) |
np.dot(A, A.T) 或 A@A.T | np.dot(B, B.T) 或 B@B.T 或 B*B.T |
元素乘法 (element-wise product, Hadamard product) (以乘以自身为例) |
np.multiply(A, A) 或 A*A |
np.multiply(B, B) |
numpy.matrix() 处于deprecate warnings, 将来有可能不再支持, 建议统一使用numpy.array() 处理矩阵.
numpy.mat(A) 产生ndarry A的矩阵形式的引用, 比如我们用C 来表示 A 的一个matrix引用