一、linalg=linear(線性)+algebra(代數),norm則表示範數。函數
二、函數參數spa
x_norm=np.linalg.norm(x, ord=None, axis=None, keepdims=False)
①x: 表示矩陣(也能夠是一維)code
②ord:範數類型orm
向量的範數:blog
矩陣的範數:class
ord=1:列和的最大值import
ord=2:|λE-ATA|=0,求特徵值,而後求最大特徵值得算術平方根numpy
ord=∞:行和的最大值im
③axis:處理類型總結
axis=1表示按行向量處理,求多個行向量的範數
axis=0表示按列向量處理,求多個列向量的範數
axis=None表示矩陣範數。
④keepding:是否保持矩陣的二維特性
True表示保持矩陣的二維特性,False相反
三、代碼實現
import numpy as np x = np.array([ [0, 3, 4], [1, 6, 4]]) #默認參數ord=None,axis=None,keepdims=False print "默認參數(矩陣2範數,不保留矩陣二維特性):",np.linalg.norm(x) print "矩陣2範數,保留矩陣二維特性:",np.linalg.norm(x,keepdims=True) print "矩陣每一個行向量求向量的2範數:",np.linalg.norm(x,axis=1,keepdims=True) print "矩陣每一個列向量求向量的2範數:",np.linalg.norm(x,axis=0,keepdims=True) print "矩陣1範數:",np.linalg.norm(x,ord=1,keepdims=True) print "矩陣2範數:",np.linalg.norm(x,ord=2,keepdims=True) print "矩陣∞範數:",np.linalg.norm(x,ord=np.inf,keepdims=True) print "矩陣每一個行向量求向量的1範數:",np.linalg.norm(x,ord=1,axis=1,keepdims=True)
結果顯示:
四、總結
①矩陣的三種範數求法
②向量的三種範數求法