目錄
Intro
Related work
Example
.1 重新訓練
.2 使用新的數據集進行fine tune
.3 修改net結構
References
移學習不是一種算法而是一種機器學習思想,應用到深度學習就是微調(Fine-tune)。通過修改預訓練網絡模型結構(如修改樣本類別輸出個數),選擇性載入預訓練網絡模型權重(通常是載入除最后的全連接層的之前所有層 ,也叫瓶頸層)再用自己的數據集重新訓練模型就是微調的基本步驟。 微調能夠快速訓練好一個模型,用相對較小的數據量,還能達到不錯的結果。
Intro
開個頭
因為有定制化的下游任務需求,所以需要進行fine tune
1)Transfer Learning:凍結預訓練模型的全部卷積層,只訓練自己定制的全連接層。
2)Extract Feature Vector:先計算出預訓練模型的卷積層對所有訓練和測試數據的特征向量,然后拋開預訓練模型,只訓練自己定制的簡配版全連接網絡。
3)Fine-tune:凍結預訓練模型的部分卷積層(通常是靠近輸入的多數卷積層),訓練剩下的卷積層(通常是靠近輸出的部分卷積層)和全連接層。
* 注:Transfer Learning關心的問題是:什么是“知識”以及如何更好地運用之前得到的“知識”,這可以有很多方法和手段,eg:SVM,貝葉斯,CNN等。而fine-tune只是其中的一種手段,更常用于形容遷移學習的后期微調中。