1. 程式人生 > >Deep Learning-遷移學習

Deep Learning-遷移學習

遷移學習

遷移學習引出的原因:實際上學習模型的訓練是很依賴於1.資料集,包括資料本身以及資料的標註2.訓練的時間成本,很多模型很大引數很多,同時擁有足夠多的資料集,這樣對於模型本身的訓練也是很耗費時間和計算成本的

所謂遷移學習,就是將在某一個問題上已經訓練好了的模型(針對某個問題進行模型的訓練得到一個能解決這個問題的模型),通過對這個已經訓練好的模型進行調整,得到一個能適用於新的問題,即能解決新的問題的模型。根據“NFL”天下沒有免費的午餐,一個學習模型一定是用於解決某一類問題的,並沒有能很好地解決所有問題的一個學習模型。這有一點繼承的含義在裡面,即在原有的模型的基礎上,僅僅是進行了簡單的修改,就能用於解決一個新的問題。

從另一個角度去理解這個遷移學習能work的原因:

根據論文:A Deep Convolutional Activation Feature of Generic Visual Recognition。將已經訓練好的Inception-v3模型的引數保留,僅僅將最後一層全連線層替換,即可得到一個可以用於解決一個新的影象分類問題的模型。在這最後一層全連線層之前的所有網路結構,即網路的所有層,都稱為瓶頸層。而對於瓶頸層的理解,可以認為他起到了一個對影象的特徵進行提取的作用。因為僅僅是替換了一個全連線層,就得到了一個可用於新的影象分類問題的模型,可知,全連線層能做的事情、能提升的效果有限,所以有理由相信這個瓶頸層能對影象進行更強的特徵提取,輸出一個更為精簡、表達能力更強的影象的特徵向量。