機器學習:偏差、方差與正則化
1. 偏差和方差
1.1 偏差
通俗的講,偏差反映的模型學習的好壞程度或者捕捉訓練集主要特徵的能力大小。偏差大意味著學習不夠充分,主要特徵沒有捕捉到;偏差小意味著學習充分,捕捉到了訓練集中的主要特徵,當然這也存在過擬合的風險。
偏差較大的原因:訓練不充分、資料規模大但模型過於簡單(常見於神經網路)等
1.2 方差
通俗的講,方差反映的是模型舉一反三的學習能力,即在測試集上的學習表現。若在測試集上的表現好,則方差小;若在測試集上的表現不好,則方差大。
方差較大的原因:資料規模小(噪音存在的概率大
1.3 偏差與方差的均衡
一般來說,偏差與方差此消彼長,方差大則偏差小,偏差大則方差小。在模型訓練過程中,需要通過一些方法來確保模型在偏差不是太大的前提下保證方差也不是太大。
2. 正則化
機器學習中經常出現模型學習的過於“好”的現象,導致在測試集上的分類精度不高,方差過大,這就是所謂的過擬合。為此,將正則化機制引入損失函式,以減弱模型的過擬合效應。
常見的正則化機制有L1(矩陣的1範數)正則化和L2(矩陣的2範數)正則化,下面結合損失函式予以介紹。
2.1 經L1和L2正則化損失函式的形式
上述定義形式詳見點選開啟連結。
2.2 正則化效果
經L1範數正則後的損失函式傾向於使部分待優化引數的值等於於0,從而簡化模型,削弱過擬合。因此,L1範數有稀疏引數的作用。
經L2範數正則後的損失函式傾向於使得引數的值較小,從而簡化模型,削弱過擬合。其中,在神經網路中應用L2正則化可以實現權值衰減:
詳見
再深入一點,權值衰減為何會削弱過擬合效應那?見下圖
以tanh啟用函式為例進行解釋,當權值減小後,Z值隨之減少,啟用函式的作用區域(如座標軸紅色標註處)將大致呈線性,整個神經網路的非線性因素減少,一定程度上阻礙了模型的“過充分”學習,進而削弱了過擬合效應,sigmod啟用函式也可以類似的進行解釋。當然,這個僅作為直覺上的解釋,理論解釋尚需進一步研讀其它相關文獻。引自點選開啟連結