在Python中,norm()
函數用于計算向量的范數。范數是一個用于度量向量大小的函數,常用于機器學習和數學領域。
norm()
函數可以通過 numpy
庫中的 linalg
模塊來調用。它接受兩個參數:向量和范數的類型。
范數的類型可以是以下幾種:
None
或者 np.inf
:計算向量的無窮范數,即向量中絕對值最大的元素。
-np.inf
:計算向量的負無窮范數,即向量中絕對值最小的元素。
0
:計算向量的 0 范數,即向量中非零元素的個數。
1
:計算向量的 1 范數,即向量中所有元素的絕對值之和。
2
:計算向量的 2 范數,即向量中所有元素的平方和的平方根。
以下是 norm()
函數的用法示例:
import numpy as np
# 創建一個向量
vector = np.array([1, 2, 3, 4, 5])
# 計算向量的無窮范數
inf_norm = np.linalg.norm(vector, np.inf)
print("無窮范數:", inf_norm)
# 計算向量的負無窮范數
neg_inf_norm = np.linalg.norm(vector, -np.inf)
print("負無窮范數:", neg_inf_norm)
# 計算向量的0范數
zero_norm = np.linalg.norm(vector, 0)
print("0范數:", zero_norm)
# 計算向量的1范數
one_norm = np.linalg.norm(vector, 1)
print("1范數:", one_norm)
# 計算向量的2范數
two_norm = np.linalg.norm(vector, 2)
print("2范數:", two_norm)
輸出結果:
無窮范數: 5.0
負無窮范數: 1.0
0范數: 5.0
1范數: 15.0
2范數: 7.416198487095663
注意,norm()
函數還可以用于計算矩陣的范數,用法類似。