1. np.linalg.norm 求范数
linalg = linear + algebra,norm表示范数,范数是对向量(或矩阵)的度量,是一个标量(scalar)
np.linalg.norm(x, ord = None, axis = None, keepdims = False)
ord表示范数的种类
| 参数 | 说明 | 计算方法 |
|---|---|---|
| 默认 | 二范数:L 2 L_2L2 | x 1 2 + x 2 2 + . . . + x n 2 \sqrt{x^2_1+x^2_2+...+x^2_n}x12+x22+...+xn2 |
| ord=2 | 二范数:L 2 L_2L2 | 同上 |
| ord=1 | 一范数:L 1 L_1L1 | ∥ x 1 ∥ + ∥ x 2 ∥ + . . . + ∥ x n ∥ \|x_1\|+\|x_2\|+...+\|x_n\|∥x1∥+∥x2∥+...+∥xn∥ |
| ord=np.inf | 无穷范数:L ∞ L_\inftyL∞ | m a x ( ∥ x ∥ ) max(\|x\|)max(∥x∥) |
axis表示在哪个维度计算
如何记忆
- axis = a,其中a表示哪一维度,就在该维度上进行计算,最终产生的结果维度是,该方向的维度变为1
- 举例:
假设有一个三维矩阵X,X . s h a p e = ( 3 , 4 , 5 ) X.shape = (3, 4, 5)X.shape=(3,4,5),对不同维度进行求和运算,如下:
Y 1 = n p . s u m ( X , a x i s = 0 ) Y_1=np.sum(X, axis = 0)Y1=np.sum(X,axis=0),则Y 1 . s h a p e = ( 1 , 4 , 5 ) Y_1.shape=(1, 4, 5)Y1.shape=(1,4,5)
Y 2 = n p . s u m ( X , a x i s = 1 ) Y_2=np.sum(X, axis = 1)Y2=np.sum(X,axis=1),则Y 2 . s h a p e = ( 3 , 1 , 5 ) Y_2.shape=(3, 1, 5)Y2.shape=(3,1,5)
Y 3 = n p . s u m ( X , a x i s = 2 ) Y_3=np.sum(X, axis = 2)Y3=np.sum(X,axis=2),则Y 1 . s h a p e = ( 3 , 4 , 1 ) Y_1.shape=(3, 4, 1)Y1.shape=(3,4,1)
版权声明:本文为XLearning88原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。