日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微调神经网络

發布時間:2023/12/18 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微调神经网络 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是fine-tuning?

在實踐中,由于數據集不夠大,很少有人從頭開始訓練網絡。常見的做法是使用預訓練的網絡(例如在ImageNet上訓練的分類1000類的網絡)來重新fine-tuning(也叫微調),或者當做特征提取器。

以下是常見的兩類遷移學習場景:

  • 卷積網絡當做特征提取器。使用在ImageNet上預訓練的網絡,去掉最后的全連接層,剩余部分當做特征提取器(例如AlexNet在最后分類器前,是4096維的特征向量)。這樣提取的特征叫做CNN codes。得到這樣的特征后,可以使用線性分類器(Liner SVM、Softmax等)來分類圖像。

  • Fine-tuning卷積網絡。替換掉網絡的輸入層(數據),使用新的數據繼續訓練。Fine-tune時可以選擇fine-tune全部層或部分層。通常,前面的層提取的是圖像的通用特征(generic features)(例如邊緣檢測,色彩檢測),這些特征對許多任務都有用。后面的層提取的是與特定類別有關的特征,因此fine-tune時常常只需要Fine-tuning后面的層。

  • 預訓練模型

    決定如何使用遷移學習的因素有很多,這是最重要的只有兩個:新數據集的大小以及新數據和原數據集的相似程度。有一點一定記住:網絡前幾層學到的是通用特征,后面幾層學到的是與類別相關的特征。這里有使用的四個場景:

  • 新數據集比較小且和原數據集相似。因為新數據集比較小,如果fine-tune可能會過擬合;又因為新舊數據集類似,我們期望他們高層特征類似,可以使用預訓練網絡當做特征提取器,用提取的特征訓練線性分類器。

  • 新數據集大且和原數據集相似。因為新數據集足夠大,可以fine-tune整個網絡。

  • 新數據集小且和原數據集不相似。新數據集小,最好不要fine-tune,和原數據集不類似,最好也不使用高層特征。這時可是使用前面層的特征來訓練SVM分類器。

  • 新數據集大且和原數據集不相似。因為新數據集足夠大,可以重新訓練。但是實踐中fine-tune預訓練模型還是有益的。新數據集足夠大,可以fine-tine整個網絡。

  • 實踐建議

    預訓練模型的限制。使用預訓練模型,受限于其網絡架構。例如,你不能隨意從預訓練模型取出卷積層。但是因為參數共享,可以輸入任意大小圖像;卷積層和池化層對輸入數據大小沒有要求(只要步長stride fit),其輸出大小和屬于大小相關;全連接層對輸入大小沒有要求,輸出大小固定。

    學習率。與重新訓練相比,fine-tune要使用更小的學習率。因為訓練好的網絡模型權重已經平滑,我們不希望太快扭曲(distort)它們(尤其是當隨機初始化線性分類器來分類預訓練模型提取的特征時)。

    總結

    以上是生活随笔為你收集整理的微调神经网络的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。