深度學習筆記1 L1 L2 L0範數

2021-08-23 12:08:24 字數 1169 閱讀 9579

在深度學習中,監督類學習問題其實就是在規則化引數同時最小化誤差。最小化誤差目的是讓模型擬合訓練資料,而規則化引數的目的是防止模型過分擬合訓練資料。

引數太多,會導致模型複雜度上公升,容易過擬合,也就是訓練誤差小,測試誤差大。因此,我們需要保證模型足夠簡單,並在此基礎上訓練誤差小,這樣訓練得到的引數才能保證測試誤差也小,而模型簡單就是通過規則函式來實現的。

規則化項可以是模型引數向量的範數。如:l0、l1、l2等。 

一、l0範數與l1範數

l0範數是指向量中非0的元素的個數。如果我們用l0範數來規則化乙個引數矩陣w的話,就是希望w的大部分元素都是0。換句話說,讓引數w是稀疏的。

l1範數是指向量中各個元素絕對值之和。l1範數是l0範數的最優凸近似。任何的規則化運算元,如果他在wi=0的地方不可微,並且可以分解為乙個「求和」的形式,那麼這個規則化運算元就可以實現稀疏。w的l1範數是絕對值,|w|在w=0處是不可微。

雖然l0可以實現稀疏,但是實際中會使用l1取代l0。因為l0範數很難優化求解,l1範數是l0範數的最優凸近似,它比l0範數要容易優化求解。

二、l2範數

l2範數,又叫「嶺回歸」(ridge regression)、「權值衰減」(weight decay)。這用的很多吧,它的作用是改善過擬合。過擬合是:模型訓練時候的誤差很小,但是測試誤差很大,也就是說模型複雜到可以擬合到所有訓練資料,但在**新的資料的時候,結果很差。

l2範數是指向量中各元素的平方和然後開根。我們讓l2範數的規則項||w||2最小,可以使得w的每個元素都很小,都接近於0。而越小的引數說明模型越簡單,越簡單的模型則越不容易產生過擬合現象。

三、l1範數和l2範數的差別

乙個是絕對值最小,乙個是平方最小:

l1會趨向於產生少量的特徵,而其他的特徵都是0,而l2會選擇更多的特徵,這些特徵都會接近於0。

附:平方 l 2 範數對

x 中每個元素的導數只取決於對應的元素,而 l 2 範數對每個元素的導數卻和整個向

量相關。但是在很多情況下,平方 l 2 範數也可能不受歡迎,因為它在原點附近增長

得十分緩慢。在某些機器學習應用中,區分恰好是零的元素和非零但值很小的元素

是很重要的。在這些情況下,我們轉而使用在各個位置斜率相同,同時保持簡單的

ft數學形式的函式:l 1 範數。

深度學習 L0 L1及L2範數

在深度學習中,監督類學習問題其實就是在規則化引數同時最小化誤差 最小化誤差目的是讓模型擬合訓練資料,而規則化引數的目的是防止模型過分擬合訓練資料。引數太多,會導致模型複雜度上公升,容易過擬合,也就是訓練誤差小,測試誤差大。因此 我們需要保證模型足夠簡單,並在此基礎上訓練誤差小,這樣訓練得到的引數才能...

面試L0,L1,L2範數

在深度學習中,監督類學習問題其實就是在規則化引數同時最小化誤差。最小化誤差目的是讓模型擬合訓練資料,而規則化引數的目的是防止模型過分擬合訓練資料。引數太多,會導致模型複雜度上公升,容易過擬合,也就是訓練誤差小,測試誤差大。因此,我們需要保證模型足夠簡單,並在此基礎上訓練誤差小,這樣訓練得到的引數才能...

向量範數 矩陣範數(L0, L1, L2)

在數學上,範數包括向量範數和矩陣範數,向量範數表徵向量空間中向量的大小,矩陣範數表徵矩陣引起變化的大小。範數就是距離,計算距離的方法不同,就產生了l0範數 l1範數等等。在向量範數中 l0範數 向量中非零元素的數量,嚴格意義上講l0範數並不是範數。l1範數 向量各元素絕對值之和,這種方法叫曼哈頓距離...