pytorch實現fine tuning


cs231n notes
pytorch官方實現transfer learning
Pytorch_fine_tuning_Turtorial

cs231n notes

transfer learning

  • 特征提取器:將預訓練模型當成固定的模型,進行特征提取;然后構造分類器進行分類
  • 微調預訓練模型:可以將整個模型都進行參數更新,或者凍結前半部分網絡,對后半段網絡進行參數更新,因為前半段網絡提取的是通用的低級特征, 后半段提取的是與數據集有關的特征

How to fine-tune

  • 新數據集小,與原始數據集類似:只訓練最后的分類器
  • 新數據集大,與原始數據集類似:微調整個網絡或前半段網絡
  • 新數據集小,與原始數據集不類似:都不太合適,但可以試試對網絡某一層的激活函數進行分類
  • 新數據集大,與原始數據集不類似:重新訓練整個模型,但是使用預訓練的參數作為初始化

注意事項

  • 數據維度需要注意匹配,尤其fc層
  • 微調模型的時候,對於預訓練模型的學習率要較小,對新的分類層的學習率要較大,因為我們不想破壞預訓練模型的參數

Pytorch_fine_tuning_Turtorial

  • 使用imagenet的訓練過程,值得借鑒,並且有詳細的講解


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM