機器學習中的L0,L1,L2講解

2021-08-09 12:17:20 字數 1132 閱讀 3245

1. 正則化概述(regularization)

監督學習可以簡單的理解為在最小化loss function 的同時,保證模型的複雜度盡可能的低,防止出現過擬合(overfitting)。常用的loss函式有square loss(regression),hinge loss(svm),exp-loss(adaboost) 等。關於正則化(regularization),它一方面可用於控制模型的複雜度,提高模型的範化能力;另一方面還可以用於約束模型的特性,例如稀疏、平滑特性等。在數學上公式體現為在最優化loss funcition後面加上正則化項(regularizer)也稱為懲罰項(penalty term),用於限制模型引數w。實際中常使用模型引數w的範數來約束w,0範數、1範數、2範數分別稱為l0正則化、l1正則化、l2正則化。

2. l0、l1正則化

向量的0範數是指向量中非零元素的個數。l0正則化的值是模型中非零引數的個數,l0正則化可以實現模型引數的的稀疏化。模型引數稀疏化使得模型能自動的選擇比較重要的特徵屬性進行yi的**,去掉沒用的資訊項。模型自動選擇的比較少的特徵屬性一般會有比較好的解釋性,例如1000維的患病樣本,到底是怎麼影響患病的?1000維的解釋性遠不如模型引數稀疏化後選擇的幾個重要的維度。遺憾的是,l0正則化是個np難問題,很難求解,這才有了我們常見的l1正則化,l1也能達到模型引數稀疏化的效果。

向量的1範數是指向量中所有元素的絕對值之和。l1正則化用於替代l0正則化,也稱為lasso regularizer。

3. l1、l2正則化

向量的2範數是指向量的模值||w|,向量所有元素的平方和然後求均值。l2正則項不是像l1正則化中通過稀疏模型引數來降低模型複雜度,而是通過減少模型引數的權值來控制過擬合的效果,因此l2正則化也被稱為「權值衰減 weight decay」,在回歸分析中也有人稱為「嶺回歸 ridge regression」。l2正則化中模型引數w中每個元素都很小,接近於0,一般不會等於0。在實際中正則化中感覺使用l2的會更多一些,因為l1 會趨向於產生少量的有效特徵項,l2會選擇更多的特徵。在所有特徵中只有少量特徵其重要作用的情況,可以選擇lasso來自動選擇比較合適的特徵屬性。而如果所有的特徵中,大部分的特徵都能起到一定的作用,還是使用l2會比較合適。

機器學習中L0, L1, L2正則項介紹

l0,l1,l2正則項是機器學習中常用的正則項,本文主要對這三種正則項做乙個簡單的介紹。l0 l0主要是指引數中0的個數,希望引數中的大部分元素是0,希望引數是稀疏的,但是l0有乙個缺點就是難以優化,所以就引出了l1正則項。l1 l1正則項是指向量中各個元素絕對值之和,l0正則項的最優凸近似,它比l...

面試L0,L1,L2範數

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

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

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