迁移学习简介
遷移學習是一種機器學習方法,就是把為任務(wù) A 開發(fā)的模型作為初始點,重新使用在為任務(wù) B 開發(fā)模型的過程中。遷移學習是通過從已學習的相關(guān)任務(wù)中轉(zhuǎn)移知識來改進學習的新任務(wù),雖然大多數(shù)機器學習算法都是為了解決單個任務(wù)而設(shè)計的,但是促進遷移學習的算法的開發(fā)是機器學習社區(qū)持續(xù)關(guān)注的話題。
深度學習中在計算機視覺任務(wù)和自然語言處理任務(wù)中將預(yù)訓練的模型作為新模型的起點是一種常用的方法,通常這些預(yù)訓練的模型在開發(fā)神經(jīng)網(wǎng)絡(luò)的時候已經(jīng)消耗了巨大的時間資源和計算資源,遷移學習可以將已習得的強大技能遷移到相關(guān)的的問題上。
遷移學習是一種機器學習的方法,指的是一個預(yù)訓練的模型被重新用在另一個任務(wù)中。
遷移學習與多任務(wù)學習以及概念飄移這些問題相關(guān),它不是一個專門的機器學習領(lǐng)域。
然而,遷移學習在某些深度學習問題中是非常受歡迎的,例如在具有大量訓練深度模型所需的資源或者具有大量的用來預(yù)訓練模型的數(shù)據(jù)集的情況。僅在第一個任務(wù)中的深度模型特征是泛化特征的時候,遷移學習才會起作用。
深度學習中的這種遷移被稱作歸納遷移。就是通過使用一個適用于不同但是相關(guān)的任務(wù)的模型,以一種有利的方式縮小可能模型的搜索范圍。
以下是兩個常用的方法:
??? 開發(fā)模型的方法
??? 預(yù)訓練模型的方法
開發(fā)模型的方法
??? 選擇源任務(wù)。你必須選擇一個具有豐富數(shù)據(jù)的相關(guān)的預(yù)測建模問題,原任務(wù)和目標任務(wù)的輸入數(shù)據(jù)、輸出數(shù)據(jù)以及從輸入數(shù)據(jù)和輸出數(shù)據(jù)之間的映射中學到的概念之間有某種關(guān)系,
??? 開發(fā)源模型。然后,你必須為第一個任務(wù)開發(fā)一個精巧的模型。這個模型一定要比普通的模型更好,以保證一些特征學習可以被執(zhí)行。
??? 重用模型。然后,適用于源任務(wù)的模型可以被作為目標任務(wù)的學習起點。這可能將會涉及到全部或者部分使用第一個模型,這依賴于所用的建模技術(shù)。
??? 調(diào)整模型。模型可以在目標數(shù)據(jù)集中的輸入-輸出對上選擇性地進行微調(diào),以讓它適應(yīng)目標任務(wù)。
預(yù)訓練模型方法
??? 選擇源模型。一個預(yù)訓練的源模型是從可用模型中挑選出來的。很多研究機構(gòu)都發(fā)布了基于超大數(shù)據(jù)集的模型,這些都可以作為源模型的備選者。
??? 重用模型。選擇的預(yù)訓練模型可以作為用于第二個任務(wù)的模型的學習起點。這可能涉及到全部或者部分使用與訓練模型,取決于所用的模型訓練技術(shù)。
??? 調(diào)整模型。模型可以在目標數(shù)據(jù)集中的輸入-輸出對上選擇性地進行微調(diào),以讓它適應(yīng)目標任務(wù)。
第二種類型的遷移學習在深度學習領(lǐng)域比較常用。
總結(jié)
- 上一篇: 当人工智能掌管城市,会带来怎样的巨变?
- 下一篇: CentOS服务器利用.htaccess