在深度學習中,監督類學習問題其實就是在規則化引數同時最小化誤差。最小化誤差目的是讓模型擬合訓練資料,而規則化引數的目的是防止模型過分擬合訓練資料。
引數太多,會導致模型複雜度上公升,容易過擬合,也就是訓練誤差小,測試誤差大。因此,我們需要保證模型足夠簡單,並在此基礎上訓練誤差小,這樣訓練得到的引數才能保證測試誤差也小,而模型簡單就是通過規則函式來實現的。
規則化項可以是模型引數向量的範數。如:l0、l1、l2等。
l0範數是指向量中非0的元素的個數。如果我們用l0範數來規則化乙個引數矩陣w的話,就是希望w的大部分元素都是0。換句話說,讓引數w是稀疏的。
l1範數是指向量中各個元素絕對值之和。l1範數是l0範數的最優凸近似。任何的規則化運算元,如果他在w=0
w=0w=
0的地方不可微,並且可以分解為乙個「求和」的形式,那麼這個規則化運算元就可以實現稀疏。w的l1範數是絕對值,|w|在w=0處是不可微。
雖然l0可以實現稀疏,但是實際中會使用l1取代l0。因為l0範數很難優化求解,l1範數是l0範數的最優凸近似,它比l0範數要容易優化求解。
l2範數,又叫「嶺回歸」(ridge regression)、「權值衰減」(weight decay)。它的作用是改善過擬合。過擬合是:模型訓練時候的誤差很小,但是測試誤差很大,也就是說模型複雜到可以擬合到所有訓練資料,但在**新的資料的時候,結果很差。
l2範數是指向量中各元素的平方和然後開根。我們讓l2範數的規則項∣∣w
∣∣
2||w||_2
∣∣w∣∣2
最小,可以使得w的每個元素都很小,都接近於0。而越小的引數說明模型越簡單,越簡單的模型則越不容易產生過擬合現象。
乙個是絕對值最小,乙個是平方最小:
l1會趨向於產生少量的特徵,而其他的特徵都是0,而l2會選擇更多的特徵,這些特徵都會接近於0。
機器學習中的範數規則化
機器學習中的範數規則化之 一 l0 l1與l2範數 l1範數是指向量中各個元素絕對值之和,也有個美稱叫 稀疏規則運算元 lasso regularization 現在我們來分析下這個價值乙個億的問題 為什麼l1範數會使權值稀疏?有人可能會這樣給你回答 它是l0範數的最優凸近似 實際上,還存在乙個更美...
範數規則化
監督學習的過程可以概括為 最小化誤差的同時規則化引數。最小化誤差是為了讓模型擬合訓練資料,規則化引數是為了防止過擬合。引數過多會導致模型複雜度上公升,產生過擬合,即訓練誤差很小,但測試誤差很大,這和監督學習的目標是相違背的。所以需要採取措施,保證模型盡量簡單的基礎上,最小化訓練誤差,使模型具有更好的...
機器學習中的範數規則化 L0,L1和L2正規化
監督學習的過程可以概括為 最小化誤差的同時規則化引數。最小化誤差是為了讓模型擬合訓練資料,規則化引數是為了防止過擬合。引數過多會導致模型複雜度上公升,產生過擬合,即訓練誤差很小,但測試誤差很大,這和監督學習的目標是相違背的。所以需要採取措施,保證模型盡量簡單的基礎上,最小化訓練誤差,使模型具有更好的...