機器學習基礎——範數
阿新 • • 發佈:2021-12-16
範數本質是向量或者矩陣對映到實數域的單值函式。
假設\(N(x)=\Vert x \Vert\)是定義在\(R^n\)上的函式,她需要滿足以下三個條件:
- 非負性: \(\Vert x \Vert \ge 0\),當且僅當\(x=0\)時,\(\Vert x \Vert = 0\)
- 齊次性:\(\Vert kx \Vert = \Vert x \Vert *\Vert k \Vert, \quad k \in R\)
- 三角不等性:對於\(\forall x,y \in R^n, \quad \Vert x+y \Vert \le \Vert x \Vert+\Vert y \Vert\)
則稱\(N(x)=\Vert x \Vert\)
在\(R^n\)上向量\(x\)的範數
那麼,向量範數和矩陣範數輸出都是一個值,實數值。只不過輸入空間不同罷了。他們都是為了能夠更顯性的體現出一個向量和矩陣的大小。
下面是一些範數的圖示:
同樣,範數也可以有相對應的變化趨勢,從下圖中不難發現一些東西:
Vector 範數計算公式:
\[\Vert x\Vert_1= \sum_{i=1}^N |x_i| \\\Vert x\Vert_2= \sqrt {\sum_{i=1}^N x_i^2} \\\Vert x\Vert_p= ({\sum_{i=1}^N x_i^p})^{\frac{1}{p}} \\\Vert x\Vert _\infty= \max|x_i| \]Matrix 範數計算公式:
範數的應用:在機器學習中,範數最常見的作用是來對目標函式進行懲罰,達到正則化的效果,以免目標函式過擬合。當然面對模型過擬合的方法不止正則化這一種,還有增加資料,特徵提取等方式。
\(L_1\)範數(Lasso)和\(L_0\)範數通過正則化得到稀疏解
\(L_2\)範數(Ridge)通過正則化得到稠密解,這種方法有個專有的名字:權值衰減
有時會發現學習是一件很快樂的事情 比一直跑步容易多了 不是嘛