范數是一個機器學習領域常用的概念。矩陣的范數通常寫成在矩陣的兩邊分別加上兩條豎槓,例如||A||
。下面先介紹向量的范數。
向量的范數運算會給向量賦予一個正標量值。可以把向量范數看成是向量的長度,這在很多機器學習算法比如k近鄰中都非常有用。對於向量z=[3,4]
,其長度為√(3^2+4^2 )=5。這也常常稱為向量的2範式,寫作||z||
或||z||2
。
在某些機器學習算法當中,比如lasso回歸,採用其他的范數計算方法可能效果更好。其中L1范數也很流行,它的另一個名稱是曼哈頓距離(Manhattan distance)。向量z
的L1范數為3+4=7,寫作||z||1
。可以定義任意階范數,其形式化定義如下:
向量范數主要用於確定向量作為輸入時的大小。除了上述定義外,用戶可以採用任意方式來定義自己的向量范數,只要其可以將向量轉換為標量值。