ML入門(持續更新)
阿新 • • 發佈:2018-11-19
評估方法:交叉驗證法
交叉驗證用於評估模型的預測效能,尤其是訓練好的模型在新資料上的表現
劃分資料集
- 訓練集用於訓練模型引數
- 驗證集用於“訓練”模型的超引數
- 測試集用於估計模型對樣本的泛化誤差
作用
- 可以在一定程度上減小過擬合。
- 可以從有限的資料中獲取儘可能多的有效資訊。
方法
- 留出法
- k折交叉驗證法
- Bootstrapping自助取樣法
正則化
作用:
- 保證模型儘可能的簡單,避免過擬合。
引數值大小和模型複雜度是成正比的。引數過多會導致模型複雜度上升,越複雜的模型,越是會嘗試對所有的樣本進行擬合,甚至包括一些異常樣本點。 - 約束模型特性,加入一些先驗知識,例如稀疏、低秩等。
L0範數
L0是指向量中非0的元素的個數。
如果我們用L0範數來規則化一個引數矩陣W的話,就是希望W的大部分元素都是0。即讓引數W是稀疏的。稀疏的好處:
- 簡化模型,避免過擬合;
- 引數變少可以提高可解釋性
但是,L0範數的最優化問題是一個NP hard問題,理論證明,L1範數是L0範數的最優凸近似,因此通常使用L1範數來代替。
L1範數
L1範數是指向量中各個元素絕對值之和。
L1正則化之所以可以防止過擬合,是因為它能產生等於0的權值,即產生稀疏的效果。引數值大小和模型複雜度是成正比的。因此複雜的模型,其L1範數就大,最終導致損失函式就大,說明這個模型就不夠好。
L2範數
L2範數即歐式距離。
L2正則化之所以可以防止過擬合,是因為它是讓各個引數接近於0。越小的引數說明模型越簡單,越簡單的模型越不容易產生過擬合現象。
L1稀疏、L2平滑
-
假定 ,L1的權值每次更新都固定減少一個特定的值,那麼經過若干次迭代之後,權值就有可能減少到0。 。( )。
-
L2的權值更新公式為 ,假設 ,也就是說權值每次都等於上一次的1/2,那麼,雖然權值不斷變小,但是因為每次都等於上一次的一半,所以很快會收斂到較小的值但不為0。
因此
- L1能產生等於0的權值,即產生稀疏的效果。
- L2能迅速得到比較小的權值,但是難以收斂到0,即產生平滑的效果 。