Stanford UFLDL教程 从自我学习到深层网络
從自我學習到深層網絡
在前一節中,我們利用自編碼器來學習輸入至 softmax 或 logistic 回歸分類器的特征。這些特征僅利用未標注數據學習獲得。在本節中,我們描述如何利用已標注數據進行微調,從而進一步優化這些特征。如果有大量已標注數據,通過微調就可以顯著提升分類器的性能。
在自我學習中,我們首先利用未標注數據訓練一個稀疏自編碼器。隨后,給定一個新樣本 ,我們通過隱含層提取出特征。上述過程圖示如下:
我們感興趣的是分類問題,目標是預測樣本的類別標號 。我們擁有標注數據集,包含 個標注樣本。此前我們已經說明,可以利用稀疏自編碼器獲得的特征 來替代原始特征。這樣就可獲得訓練數據集。最終,我們訓練出一個從特征 到類標號 的 logistic 分類器。為說明這一過程,我們按照神經網絡一節中的方式,用下圖描述 logistic 回歸單元(橘黃色)。
考慮利用這個方法所學到的分類器(輸入-輸出映射)。它描述了一個把測試樣本 映射到預測值 的函數。將此前的兩張圖片結合起來,就得到該函數的圖形表示。也即,最終的分類器可以表示為:
該模型的參數通過兩個步驟訓練獲得:在該網絡的第一層,將輸入 映射至隱藏單元激活量 的權值 可以通過稀疏自編碼器訓練過程獲得。在第二層,將隱藏單元 映射至輸出 的權值 可以通過 logistic 回歸或 softmax 回歸訓練獲得。
這個最終分類器整體上顯然是一個大的神經網絡。因此,在訓練獲得模型最初參數(利用自動編碼器訓練第一層,利用 logistic/softmax 回歸訓練第二層)之后,我們可以進一步修正模型參數,進而降低訓練誤差。具體來說,我們可以對參數進行微調,在現有參數的基礎上采用梯度下降或者 L-BFGS 來降低已標注樣本集 上的訓練誤差。
使用微調時,初始的非監督特征學習步驟(也就是自動編碼器和logistic分類器訓練)有時候被稱為預訓練。微調的作用在于,已標注數據集也可以用來修正權值 ,這樣可以對隱藏單元所提取的特征 做進一步調整。
到現在為止,我們描述上述過程時,都假設采用了“替代 (Replacement)”表示而不是“級聯 (Concatenation)”表示。在替代表示中,logistic 分類器所看到的訓練樣本格式為;而在級聯表示中,分類器所看到的訓練樣本格式為。對級聯表示同樣可以進行微調(在級聯表示神經網絡中,輸入值 也直接被輸入至 logistic 分類器。對此前的神經網絡示意圖稍加更改,即可獲得其示意圖。具體的說,第一層的輸入節點除了與隱層聯接之外,還將越過隱層,與第三層輸出節點直接相連)。但是對于微調來說,級聯表示相對于替代表示幾乎沒有優勢。因此,如果需要開展微調,我們通常使用替代表示的網絡(但是如果不開展微調,級聯表示的效果有時候會好得多)。
在什么時候應用微調?通常僅在有大量已標注訓練數據的情況下使用。在這樣的情況下,微調能顯著提升分類器性能。然而,如果有大量未標注數據集(用于非監督特征學習/預訓練),卻只有相對較少的已標注訓練集,微調的作用非常有限。
中英文對照
總結
以上是生活随笔為你收集整理的Stanford UFLDL教程 从自我学习到深层网络的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Stanford UFLDL教程 自我学
- 下一篇: Stanford UFLDL教程 深度网