遷移學習是一種機器學習方法,就是把為任務 A 開發的模型作為初始點,重新使用在為任務 B 開發模型的過程中。
基本介紹
- 中文名:遷移學習
- 外文名:Transfer learning
- 性質:一種機器學習方法
- 領域:人工智慧
簡介,定義,方法,開發模型的方法,預訓練模型方法,
簡介
深度學習中在計算機視覺任務和自然語言處理任務中將預訓練的模型作為新模型的起點是一種常用的方法,通常這些預訓練的模型在開發神經網路的時候已經消耗了巨大的時間資源和計算資源,遷移學習可以將已習得的強大技能遷移到相關的的問題上。
定義
遷移學習是一種機器學習的方法,指的是一個預訓練的模型被重新用在另一個任務中。
遷移學習與多任務學習以及概念飄移這些問題相關,它不是一個專門的機器學習領域。
然而,遷移學習在某些深度學習問題中是非常受歡迎的,例如在具有大量訓練深度模型所需的資源或者具有大量的用來預訓練模型的數據集的情況。僅在第一個任務中的深度模型特徵是泛化特徵的時候,遷移學習才會起作用。
深度學習中的這種遷移被稱作歸納遷移。就是通過使用一個適用於不同但是相關的任務的模型,以一種有利的方式縮小可能模型的搜尋範圍。
方法
以下是兩個常用的方法:
- 開發模型的方法
- 預訓練模型的方法
開發模型的方法
- 選擇源任務。你必須選擇一個具有豐富數據的相關的預測建模問題,原任務和目標任務的輸入數據、輸出數據以及從輸入數據和輸出數據之間的映射中學到的概念之間有某種關係,
- 開發源模型。然後,你必須為第一個任務開發一個精巧的模型。這個模型一定要比普通的模型更好,以保證一些特徵學習可以被執行。
- 重用模型。然後,適用於源任務的模型可以被作為目標任務的學習起點。這可能將會涉及到全部或者部分使用第一個模型,這依賴於所用的建模技術。
- 調整模型。模型可以在目標數據集中的輸入-輸出對上選擇性地進行微調,以讓它適應目標任務。
預訓練模型方法
- 選擇源模型。一個預訓練的源模型是從可用模型中挑選出來的。很多研究機構都發布了基於超大數據集的模型,這些都可以作為源模型的備選者。
- 重用模型。選擇的預訓練模型可以作為用於第二個任務的模型的學習起點。這可能涉及到全部或者部分使用與訓練模型,取決於所用的模型訓練技術。
- 調整模型。模型可以在目標數據集中的輸入-輸出對上選擇性地進行微調,以讓它適應目標任務。
第二種類型的遷移學習在深度學習領域比較常用。