[译]深度神经网络的多任务学习概览(An Overview of Multi-task Learning in Deep Neural Networks)...
譯自:http://sebastianruder.com/multi-task/
1. 前言
在機器學習中,我們通常關心優化某一特定指標,不管這個指標是一個標準值,還是企業KPI。為了達到這個目標,我們訓練單一模型或多個模型集合來完成指定得任務。然后,我們通過精細調參,來改進模型直至性能不再提升。盡管這樣做可以針對一個任務得到一個可接受得性能,但是我們可能忽略了一些信息,這些信息有助于在我們關心的指標上做得更好。具體來說,這些信息就是相關任務的監督數據。通過在相關任務間共享表示信息,我們的模型在原始任務上泛化性能更好。這種方法稱為多任務學習(Multi-Task Learning),是本博文的關注點。
多任務學習有很多形式,如聯合學習(Joint Learning),自主學習(Learning to Learn),借助輔助任務學習(Learning with Auxiliary Tasks)等,這些只是其中一些別名。概括來講,一旦發現正在優化多于一個的目標函數,你就可以通過多任務學習來有效求解(Generally, as soon as you find yourself optimizing more than one loss function, you are effectively doing multi-task learning (in contrast to single-task learning))。在那種場景中,這樣做有利于想清楚我們真正要做的是什么以及可以從中得到一些啟發。
即使對于最特殊的情形下你的優化目標只有一個,輔助任務仍然有可能幫助你改善主任務的學習性能。Rich Caruana 在文獻[1]中總結了:“多任務學習通過使用包含在相關任務的監督信號中的領域知識來改善泛化性能”。通過學習本博文,我們將嘗試對多任務學習的研究近況做一個簡要的回顧,尤其是針對深度神經網絡的多任務學習。首先,我們探討了多任務學習的靈感來源。接下來,介紹多任務學習的兩種最常見的方法。接著描述了使得多任務學習在實踐中有效的機制。在總結較為高級的基于神經網絡的多任務學習方法之前,我們回顧了以往多任務學習文獻中的一些背景知識。本文接著介紹了近年來提出的一些給力的基于深度神經網絡的多任務學習方法。最后,我們探討了經常使用的輔助任務的類型以及對于多任務學習講好的輔助任務所具備的特征。
2. 動機
我們提出多任務學習的出發點是多種多樣的:(1)從生物學來看,我們將多任務學習視為對人類學習的一種模擬。為了學習一個新的任務,我們通常會使用學習相關任務中所獲得的知識。例如,嬰兒先學會識別臉,然后將這種知識用來識別其他物體。(2)從教學法的角度來看,我們首先學習的任務是那些能夠幫助我們掌握更復雜技術的技能。這一點對于學習武術和編程來講都是非常正確的方法。具一個脫離大眾認知的例子,電影Karate Kid中Miyagi先生教會學空手道的小孩磨光地板以及為汽車打蠟這些表明上沒關系的任務。然而,結果表明正是這些無關緊要的任務使得他具備了學習空手道的相關的技能。(3)從機器學習的角度來看,我們將多任務學習視為一種歸約遷移(inductive transfer)。歸約遷移(inductive transfer)通過引入歸約偏置(inductive bias)來改進模型,使得模型更傾向于某些假設。舉例來說,常見的一種歸約偏置(Inductive bias)是L1正則化,它使得模型更偏向于那些稀疏的解。在多任務學習場景中,歸約偏置(Inductive bias)是由輔助任務來提供的,這會導致模型更傾向于那些可以同時解釋多個任務的解。接下來我們會看到這樣做會使得模型的泛化性能更好。
3. 深度學習中兩種多任務學習模式
前面我們討論了多任務學習的理論源泉。為了使得多任務學習的思想更加具體,我們展示了在基于深度神經網絡的多任務學習中常用兩種方法:隱層參數的硬共享與軟共享。(1)參數的硬共享機制:參數的硬共享機制是神經網絡的多任務學習中最常見的一種方式,這一點可以追溯到文獻[2]。一般來講,它可以應用到所有任務的所有隱層上,而保留任務相關的輸出層。硬共享機制降低了過擬合的風險。事實上,文獻[3]證明了這些共享參數過擬合風險的階數是N,其中N為任務的數量,比任務相關參數的過擬合風險要小。直觀來將,這一點是非常有意義的。越多任務同時學習,我們的模型就能捕捉到越多任務的同一個表示,從而導致在我們原始任務上的過擬合風險越小。(2)參數的軟共享機制:每個任務都由自己的模型,自己的參數。我們對模型參數的距離進行正則化來保障參數的相似。文獻[4]使用L2距離正則化,而文獻[5]使用跡正則化(trace norm)。用于深度神經網絡中的軟共享機制的約束很大程度上是受傳統多任務學習中正則化技術的影響。我們接下來會討論。
4. 多任務學習為什么會有效?
即使從多任務學習中獲得歸約偏置的解釋很受歡迎,但是為了更好理解多任務學習,我們必須探究其深層的機制。大多數機制早在1998年被Caruana提出。為了便于距離說明,我們假設有兩個相關的任務A與B,兩者共享隱層表示F。(1)隱世數據增加機制。多任務學習有效的增加了訓練實例的數目。由于所有任務都或多或少存在一些噪音,例如,當我們訓練任務A上的模型時,我們的目標在于得到任務A的一個好的表示,而忽略了數據相關的噪音以及泛化性能。由于不同的任務有不同的噪音模式,同時學習到兩個任務可以得到一個更為泛化的表示(As different tasks have different noise patterns, a model that learns two tasks simultaneously is able to learn a more general representations.)。如果只學習任務A要承擔對任務A過擬合的風險,然而同時學習任務A與任務B對噪音模式進行平均,可以使得模型獲得更好表示F。(2)注意力集中機制。若任務噪音嚴重,數據量小,數據維度高,則對于模型來說區分相關與不相關特征變得困難。多任務有助于將模型注意力集中在確實有影響的那些特征上,是因為其他任務可以為特征的相關與不相關性提供額外的證據。(3)竊聽機制。對于任務B來說很容易學習到某些特征G,而這些特征對于任務A來說很難學到。這可能是因為任務A與特征G的交互方式更復雜,或者因為其他特征阻礙了特征G的學習。通過多任務學習,我們可以允許模型竊聽(eavesdrop),即使用任務B來學習特征G。最簡單的實現方式是使用hints[6],即訓練模型來直接預測哪些是最重要的特征。(4)表示偏置機制。多任務學習更傾向于學習到一類模型,這類模型更強調與其他任務也強調的那部分表示。由于一個對足夠多的訓練任務都表現很好的假設空間,對來自于同一環境的新任務也會表現很好,所以這樣有助于模型展示出對新任務的泛化能力[7]。(5)正則化機制。多任務學習通過引入歸納偏置(inductive bias)起到與正則化相同的作用。正是如此,它減小了模型過擬合的風險,同時降低了模型的Rademacher復雜度,即擬合隨機噪音的能力。
?
5. 非神經網絡模型中的多任務學習
為了更好理解深度神經網絡中的多任務學習,我們首先回顧了線性模型、核方法、貝葉斯方法中的多任務學習方法。具體的說,我們將討論多任務學習中兩個普遍存在的重要思想:1)對任務間的不同強制加稀疏性約束的正則化項(enforcing sparsity across tasks through norm regularization);(2)建模任務之間的關系。值得注意的是,文獻中的多任務方法大多是處理同質的場景,即他們認為所有任務都與單一的輸出相關。例如,MNIST數據集上的多分類問題轉換為10個二分類問題來求解。近年來的工作更多的是處理異質場景:每個任務都對應不同的輸出。
5.1 塊稀疏正則化(Block-Sparsity Regularization)
為了更好的將這些方法聯系起來,我們首先介紹了一些符號的含義。我們有T個任務,每個任務t,對應的模型記為,模型參數記為,維度為d維。我們用列向量來表示參數。將這些列向量堆起來形成一個矩陣。矩陣A的第i行對應每個模型的第i個特征,第j列對應任務j的模型參數。
現有的許多方法都對模型參數做出稀疏性假設。文獻[8]認為所有模型共享參數的一個小集合。從任務參數矩陣A的角度來看,這就意味著除了少數幾行外全部是0,與之對應的只有少數特征是可以在不同任務間共享的。為了強制做到這一點,在多任務學習中強制加L1正則化項。我們可以記得的是L1正則化是對參數之和上的約束,強制除少數幾個外的其他所有參數為0。L1正則化又被稱為LASSO(Least Absolute Shrinkage and Selection Operator)。
對于單一任務場景,L1正則化的計算僅依賴于單個任務t中的模型參數。對于多任務場景,L1正則化的計算是基于任務參數矩陣A,首先對每行(對應每個任務的第i個特征)計算正則化,產生列向量,然后計算這個向量的L1正則化,從而強迫b中大部分項為0。
我們可以使用不同的正則化,取決于我們想要對每行設置什么樣的約束。一般來說,我們將之稱為混合正則化(mix norm)約束正則化。由于這樣做導致A的整行為0,故可稱之為塊稀疏性正則化(Block-Sparsity Regularization)。文獻[9]使用正則化,而Argyriou使用正則化。后者又被稱為group lasso,首次提出是在文獻[10]中。Argyriou等人于2007年的時候證明了優化非凸的group lasso可以通過對任務參數矩陣A進行跡正則化(trace norm)約束轉化為凸優化問題。也就是,強制矩陣A是低秩的,其中的每一個列向量都位于一個低維度的子空間。文獻[11]為了進一步在多任務學習中使用group lasso來建立上界約束。
塊稀疏正則化在直覺上是非常受歡迎的,它的受歡迎程度與它依賴于任務間參數共享程度是一樣的。文獻[12]證明了當任務間特征不重疊時,正則化可能會比單純的元素層面的正則化效果更糟。因此,文獻[13]提出了將塊稀疏正則化與元素稀疏正則化結合以改進塊稀疏模型。他們將任務參數矩陣A分解為矩陣B與S,其中A=B+S。然后,對B使用強制的塊稀疏正則化,對S使用lasso來進行元素稀疏正則化。文獻[14]提出了一個分布式版本的group lasso正則化。
5.2 學習任務間的關系
group稀疏性約束可以強制模型僅關注一些特征,使得這些特征被所有任務共享。已有的所有方法假設多任務學習中所有任務之間是彼此緊密相關的。然而,事實并非如此,不是每個任務都與其他任務緊密關聯。在這些場景中,與不相關的任務共享信息有可能會對性能造成傷害。這種現象稱為負遷移(Negative Transfer)。除了稀疏性之外,我們更想要的是使用某種先驗知識來表明與一些任務是相關的,而與另一些任務是無關的,在這種情況下,對任務的聚類約束顯得更為合適。文獻[15]提出了一種聚類約束來同時懲罰列向量及其方差的正則化:
其中是平均參數向量。該懲罰項強制一個任務向量的聚類靠近其均值,用來控制。他們將之用在了核方法中,但是對線性方法同樣適用。
文獻[16]為SVM方法提出了一個類似的約束。這個約束是受貝葉斯方法啟發得到的,它尋求使得所有模型接近均值模型。因此它的損失函數是每個SVM所對應的大間隔損失以及與均值模型的距離。文獻[17]假設潛在的聚類正則化可以顯式表示為A上的聚類約束(當聚類數C已知時),將該聚類正則化分解為三部分:
全局約束:我們的列向量參數均值有多大:
聚類間的方差約束:聚類中心到均值的距離:
聚類內的方差約束:,衡量每個聚類的緊致程度。
最后將這三部分線性組合起來得到:.
這種聚類約束中假設聚類或簇是預先知道的,所以他們引入了對上述正則項的約束進行放松。還有一些場景,任務中可能并不存在聚類想象,但是他們確實存在一個結構。文獻[18]將group lasso擴展到多個任務呈現樹狀結構時。文獻[19]將group lasso擴展到多個任務呈現圖狀結構時。盡管以往建模任務之間的關系大都采用加正則項的方法,但是也有以一些并沒有。文獻[20]是首個用kNN來表示任務聚類的算法。文獻[21]試圖學習到多個任務之間的一個常見結構,來應用到半監督學習中。多任務學習中很多學習任務間關系的方法采用的是貝葉斯方法。文獻[22]提出了一個用于多任務學習的貝葉斯神經網絡,通過對模型參數加先驗來鼓勵不同任務參數相似。文獻[23]通過推斷一個共享的協方差矩陣,將高斯過程擴展到多任務學習中。由于計算代價高,他們采用以個稀疏近似模式來貪心選擇最具信息量的實例。文獻[24]也采用高斯過程來做多任務學習,假設多有的模型都來自于同一個先驗。文獻[25]將正態分布作為先驗,對每個任務相關的層進行約束。為了鼓勵不同任務間的相似性,他們提出了使得均值是任務相關的,使用混合分布來建模任務間的聚類。重要的是,他們需要任務的特點是預先定義聚類,并指定混合分布的數量?;诖?#xff0c;文獻[26]從Dirichlet過程中得到分布并能使得模型學習到任務間的相似性以及聚類的數目(簇數)。同一聚類內的所有任務共享一個模型。文獻[27]提出了一個層次貝葉斯模型來學習任務間潛在的層次關系。文獻[28]使用高斯過程正則化來做多任務學習,并將高斯過程擴展到大規模場景中。
其他還有一些方法在關注在線多任務學習(online Multi-task Learning)的場景:文獻[29]將已有方法擴展到在線的場景。他們也提出了正則化的感知器在多任務問題上的擴展,并將任務間的關系用一個矩陣來表示。他們使用看多種形式的正則化項來對這個任務相關矩陣進行偏置,如任務特征的相關程度,生成子空間維度的相關性等。值得注意的是,以往這些方法都需要任務特點來定義一個這樣的矩陣。文獻[30]擴展了這些方法,通過學習得到關系矩陣。
文獻[31]假設任務形成了多個分割的組,處于同一個組內的任務位于同一個低維空間中。每組內部,任務共享一組特征表示,這些參數可以與組分配矩陣使用交替最小化模式共同學習得到,然而完全分割并非最佳方式。文獻[32]允許來自不同組的兩個任務之間有重疊,假設存在小部分的基本的隱式任務。將每個真實任務的參數向量建模為:。其中為包含k個隱式任務的矩陣,為包含對k個向量進行線性組合的系數。此外,他們還約束這種線性組合應該是稀疏的。這種任務間的重疊應該是稀疏的,以此來控制共享參數的數量。文獻[33]學習到一個共享假設的小集合,并將每個任務對應到一個假設上。
6. 深度神經網絡的多任務學習的最新進展
盡管最近的許多深度學習的工作都或顯式或隱式使用了多任務學習作為其模型的一部分,但是使用方式仍然沒有超出我們前面提到的兩種方式:參數的硬共享與軟共享。相比之下,僅有少部分的工作專注于提出深度神經網絡中好的多任務學習機制。
6.1 深度關系網絡(Deep Relationship Networks)
在用于機器視覺的多任務場景中,已有的這些方法通常共享卷積層,將全鏈接層視為任務相關的。文獻[34]提出了深度關系網絡。除了共享層與任務相關層的結構,他們對全連接層添加矩陣先驗。這將允許模型學習任務間的關系。這一點與我們之前看過的貝葉斯方法是類似的。然而,問題是這個方法依然依賴于事先預定義的共享結構。這一點對于機器視覺問題已經足夠,但是對于新任務有錯誤傾向。
6.2 完全自適應特征共享(Fully-Adaptive Feature Sharing)
從另一個極端說起,文獻[35]提出了一個自底向上的方法。從瘦網絡(thin network)開始,使用對相似任務自動分組的指標,貪心的動態加寬網絡。這個加寬的過程動態創建分支,如圖4所示。然而這種貪心的做法并不能得到全局的最優。為每個分支分配精確的一個任務,并不能允許模型學到更復雜的任務間的交互。
6.3 十字繡網絡(Cross-Stitch Networks)
文獻[36]將兩個獨立的網絡用參數的軟共享方式連接起來。接著,他們描述了如何使用所謂的十字繡單元來決定怎么將這些任務相關的網絡利用其他任務中學到的知識,并與前面層的輸出進行線性組合。這種結構如圖5所示,僅在pooling(池化)層與全連接層之后加入十字繡單元。
6.4 低層次監督(Low Supervision)
相形之下,自然語言處理領域中近年來的多任務學習的工作重點在于找到一個好的層次結構:文獻[37]展示了一些NLP中的基本工作,如詞性標注,命名實體識別等,應該被作為輔助任務,在較低層次時進行有監督學習。
6.5 聯合多任務模型(A Joint Many-Task Model)
基于這種發現,文獻[38]預先定義了一個包含多個NLP任務的層次結構,如圖6所示,并用來做多任務學習的聯合模型。
6.6 用不確定性對損失進行加權(Weighting losses with Uncertainty)
除了學習結構的共享,文獻[39]采用一種正交的方法來考慮每個任務的不確定性。他們調整每個任務在代價函數中的相對權重,基于最大化任務相關的不確定性似然函數原理,來得到多任務學習的目標。對u每個像素深度回歸、語義分割、實例分割等三個任務的框架如圖7所示。
6.7 多任務學習中的張量分解
近來許多工作試圖將已有的多任務學習模型推廣到深度學習中:文獻[40]將已有的一些使用張量分解技術推廣到模型參數劃分來分解出每層的共享參數于任務的相關系數。
6.8 水閘網絡
最后我們說一下文獻[41]中提到的水閘網絡,它是對多種基于深度神經網絡的多任務學習方法的泛化。如圖8所示,這個模型可以學習到每層中哪些子空間是必須共享的,以及哪些是用來學習到輸入序列的一個好的表示的。
6.9 我的模型中應該共享些什么?
已經回顧了這些相關工作,現在我們來總結一下在深度多任務學習模型中到底應該共享些什么信息。大多數的多任務學習中,任務都是來自于同一個分布的。盡管這種場景對于共享是有益的,但并不總能成立。為了研發更健壯的多任務模型,我們必須處理那些不相關的任務。
早期用于深度學習的多任務模型需要預定義任務間的共享結構。這種策略不適合擴展,嚴重依賴于多任務的結構。早在1997年就已經提出的參數的硬共享技術在20年后的今天仍舊是主流。盡管參數的硬共享機制在許多場景中有用,但是若任務間的聯系不那么緊密,或需要多層次的推理,則硬共享技術很快失效。最近也有一些工作研究學習哪些可以共享,這些工作的性能從一般意義上將優于硬共享機制。此外,若模型已知,學習一個任務層次結構的容量也是有用的,尤其是在有多粒度的場景中。
正如剛開始提到的,一旦我們要做一個多目標的優化問題,那么我們就是在做多任務學習。多任務不應僅僅局限于將所有任務的知識都局限于表示為同一個參數空間,而是更加關注于如何使我們的模型學習到任務間本應該的交互模式(it is thus helpful to draw on the advances in MTL that we have discussed and enable our model to learn how the tasks should interact with each other)。
7. 輔助任務(Auxiliary Tasks)
對于同時獲得多個任務的預測結果的場景,多任務學習是天然適合的。這個場景在金融或經濟的預測中是常見的,比如,我們可能既想知道相關的影響因子,又想知道預測結果。在生物信息學中,我們可能想同時知道多種疾病的癥候。但是在大多數情況下,我們僅關注一個任務。本節中,我們將討論如何找到一個輔助任務來使得多任務學習受益。
7.1 相關任務(Related Tasks)
使用相關任務作為一個輔助任務,對于多任務學習來說,是一個典型的選擇。想要知道什么是“相關任務”,此處我們展示一些直觀的例子。Caruana于1997年使用預測不同道路的特征來輔助學習自動駕駛的方向掌控。文獻[42]使用頭部姿勢估計與面部特征屬性推斷輔助臉部輪廓檢測任務。文獻[43]同時學習查詢分類與網頁搜索。文獻[44]同時預測圖像中物體的類別和位置。文獻[45]同時預測文本到語言的過程中音素的持續時間和頻率。
7.2 對抗性(Adversarial)任務
通常情況下,對于一個相關任務來說,不存在標注數據。然而,在一些場合,我們可以用的任務與我們想要實現的目標是相反的。這樣的數據是可以用來做對抗損失的。這些損失不是用來做最小化的,而是使用Gradient Reversal Layer來做最大化訓練誤差的。文獻[46]中展示了這種場景在領域自適應方面的成功例子。這種場景中的對抗任務用來預測輸入的領域。通過對對抗任務的梯度求逆,對抗任務損失最大化。這樣對于主任務是有利的,可以促使模型學習到不用區分兩個域的表示。
7.3 提示(Hints)性任務
如前所述,多任務學習可以學到單任務學不到的特征。使用Hints就是這樣一種有效的機制:在輔助任務中預測特征。最近的一個例子是在自然語言處理中,文獻[47]在情感分析中將一個輸入句子中是否包含正負面情感詞作為輔助任務。文獻[48]在錯誤名字識別中將判斷一個句子中是否包含名字作為輔助任務。
7.4 注意力集中
輔助任務可以用來將注意力集中在網絡可能忽略的圖像的某部分上。例如,對于學習方向掌控的任務中,單一的任務模型通常忽略那些圖像的細微之處,如路標等。那么預測路標就可以作為一個輔助任務。迫使模型學會去表示它們,這樣的知識可以用于主任務。類似的,對于臉部識別來說,既然這些臉是不同的,我們就可以將預測臉部特征的位置作為輔助任務。
7.5 量化平滑
對于多任務來講,優化目標是已經被量化的。通常連續型的是受歡迎的,而可用的標注是離散集合。在大多數情況下,需要人工評價來收集數據,例如,預測疾病的風險或情感分析(正面、負面、中立),由于目標函數是光滑的,所以使用較少量的量化輔助任務會使學習變得容易。
7.6 預測輸入
在一些情況下使用某些特征作為輸入并不會對預測目標輸出有益。然而,它們可能能指導監督學習的過程。在這些情形下,特征是作為輸出的一部分,而非輸入。文獻[49]展示了這些問題在實際應用中的場景。
7.7 用未來預測現在
許多場景中一些特征僅在做出預測后才可用。例如,在自動駕駛中,一旦汽車經過障礙物或路標,便可以對它們做出準確的度量。Caruana于1997年舉了一個肺炎的例子,只有事發后才能又額外的診斷案例可用。對于這些例子來講,這些額外的數據由于在輸入的時刻并不可用,所以并不能作為特征。然而,可以用作輔助任務來為模型傳授額外的知識以輔助訓練。
7.8 表示學習
多任務學習中輔助任務的目標在于使得模型學習到共享的表示,以幫助主任務的學習。我們目前所討論到的輔助任務都是隱式的在做這件事情。由于它們和主任務密切相關,所以在學習的同時可能允許這些模型學到有利于主任務的表示。一個更為顯式的做法是利用一個輔助任務專門來學習一個可以遷移的表示。Cheng等人2015年的一個工作以及文獻[50]所采用的語言模型目標就起到了這樣的作用。類似的,autoencoder也是可以用來做輔助任務的。
8. 為什么輔助任務對主任務是有益的?
雖然在實際當中我們可能僅僅關心一種輔助任務,但是前面我們已經討論了在多任務學習中可能用的各種輔助任務。盡管我們并不知道在實際中哪種會起作用。尋找輔助任務的一個基本假設是:輔助任務應該是與主任務密切相關的,或者是能夠對主任務的學習過程有益的。
然而,我們并不知道什么樣的兩個任務是相關的或相似的。Caruana在1997年給出的定義是:若兩個任務使用相同的特征來做決策,那么兩個任務是相似的。Baxer于2000年補充道:理論上講相關的任務共享同一個最優的假設類,也就是同樣的歸納偏置(inductive bias)。文獻[50]提出若兩個任務中的數據都產生自由同一類變換F得到固定的概率分布,那么兩個任務是F相關的。盡管可以使用于同一個分類問題,但是不能用于處理不同問題的任務。Xue等人2007年提出若兩個任務的分類邊界(參數向量)是閉合的,那么兩個任務是相似的。
雖然早期在理解任務相關性的理論定義方面取得了一些進展,但是近期的成果卻沒有。任務相似性不是二值的,而是一個范圍。更相似的兩個任務在多任務學習中受益更大,而反之亦然。使得我們的模型能夠學習到共享哪些參數可能只是暫時克服了理論上的缺失,以及更好的利用聯系不緊密的任務。然而,我們也很需要對任務相似性的理論認知,來幫助我們了解如何選擇輔助任務。
文獻[52]發現具有完備且統一的標注分布的輔助任務對于序列標注主任務應該更有益,這一點在實驗中已經得到驗證。此外,文獻[53]發現non-plateauing的輔助任務也會為plateauing的主任務帶來改善。
然而這些實驗都是具有范圍局限性的。近期的這些研究成果只是為我們進一步理解神經網絡中的多任務學習提供了一些線索。
9. 結論
本文關注了多任務學習的歷史以及在深度神經網絡中多任務學習的最新進展。盡管多任務學習頻繁使用,但是近20年的參數硬共享機制仍舊是神經網絡中多任務學習的主要范式。學習共享哪些信息的工作看起來更具前景。同時,我們對于任務的相似性,任務間的關系,任務的層次,以及多任務學習的收益等的理解仍舊是有限的,我們需要學習更多以理解深度神經網絡中多任務學習的泛化能力。
?
10. 參考文獻:
[0] 共享相關任務表征,一文讀懂深度神經網絡多任務學習: https://mp.weixin.qq.com/s?__biz=MzA3MzI4MjgzMw==&mid=2650728311&idx=1&sn=62b2dcc82657d1ce3bf91fd6a1197699
[1] Caruana. R. (1998). Multitask Learning. Autonomous Agents and Multi-Agent Systems. 27(1). 95-133.
[2] Caruana. R. Multitask Learning: A Knowledge based Source of Inductive Bias. Proceedings of the Tenth International Conference on Machine Learning. 1993.
[3] Baxter, J. (1997) A Bayesian / Information Theoretic Model of Learning to Learn via Multiple Task Sampling. Machine Learning. 28, 7-39.
[4] Duong, L., Cohn. et.al. 2015. Low Resource Dependency Parsing Cross-Lingual Parameter Sharing in a Neural Network Parser. ACL2015.
[5] Yang, Y. et. al. 2017. Trace Norm Regularized Deep Multi-Task Learning. ICLR2017 workshop.
[6] Abu-Mostafa, et. al. 1990. Learning from Hints in Neural Networks, Journal of Complexity.
[7] Baxter, J. 2000. A Model of Inductive Bias Learning. Journal of Aritificial Intelligence Research.
[8] Argyriou, A. 2007. Multi-Task Feature Learning. NIPS2007.
[9] C. Zhang and J. Huang. 2008. Model Selection Consistency of the Lasso Selection in High Dimensional Linear Regression. Annals of Statistics. 2008.
[10] Yuan, Ming and Yi Lin. 2006. Model Selection and Estimation in Regression with Grouped Variables. Journal of the Royal Statistical Society. 2006.
[11] Lounici. K, et.al. 2009. Taking Advantage of Sparsity in Multi-task Learning. stat.2009.
[12] Negahban, S. et. al. 2008. Joint Support Recovery under High Dimensional Scaling: Benefits and Perils of L1,\inf-regularization. NIPS2008.
[13] Jalali, A. et.al. 2010. A Dirty Model for Multi-Task Learning. NIPS2010.
[14] Liu, S. et.al. 2016. Distributed Multi-Task Relationship Learning. AISTATS2016.
[15] Evgeniou, T. et. al. 2005. Learning Multiple Tasks with Kernel Methods. Journal of Machine Learning Research 2005.
[16] Evgeniou, T. et. al. 2004. Regularized Multi-Task Learning. KDD2004.
[17] Jacob, L. et. al. 2009. Clustered Multi-Task Learning: A Convex Formulation . NIPS2009.
[18] Kim, S. and Xing, Eric P. 2010. Tree-Guided Group Lasso for Multi-Task Regression with Structured Sparsity. ICML2010.
[19] Chen, X. et. al. 2010. Graph Structured Multi-Task Regression and An Efficient Optimization Method for General Fused Lasso.
[20] Thrun, S. et. al.1996. Discovering Structure in Multiple Learning Tasks: The TC Algorithm. ICML1998.
[21] Ando, R, K. et. al. 2005. A Framework for Learning Predictive Structures from Multiple Tasks and Unlabeled Data. JMLR2005.
[22] Heskes, T. 2000. Empirical Bayes for Learning to Learn. ICML2000.
[23] Lawrence, N.D. et. al. 2004. Learning to Learn with the informative vector machine. ICML2004.
[24] Yu, K. et. al. 2005. Learning Gaussian Processes from Multiple Tasks, ICML2005.
[25] Bakker, B. et. al. 2003. Task Clustering and Gating for Bayesian Multi-Task Learning. JMLR2003.
[26] Xue, Y. et. al. 2007. Multi-Task Learning for Classification with Dirichlet Process Priors. JMLR2007.
[27] Daume III, H. et. al. 2009. Bayesian Multitask Learning with Latent Hierarcies.
[28] Zhang, Y. et.al. 2010. A Convex Formulation for Learning Task Relationships in Multi-Task Learning. UAI2010.
[29] Cavallanti, G. et. al. 2010. Linear Algorithms for Online Multitask Classification. JMLR2010.
[30] Saha, A. et. al. 2011. Online Learning of Multiple Tasks and their Relationships. JMLR2011.
[31] Kang, Z. et. al. 2011. Learning with Whom to Share in Multi-task Feature Learning. ICML2011.
[32] Kumar, A. et. al. 2012. ?Learning Task Grouping and Overlap in Multi-Task Learning. ICML2012.
[33] Crammer, K. et. al. 2012. Learning Multiple Tasks Using Shared Hypotheses. NIPS2012.
[34] Long, M. et. al. 2015. Learning Multiple Tasks with Deep Relationship Networks.
[35] Lu, Y. et. al. 2016. Fully-Adaptive Feature Sharing in Multi-Task Networks with Applications in Person Attriute Classification.
[36] Misra, I. et. al. Cross-Stitch Networks for Multi-Task Learning, CVPR2016.
[37] Sogaard, A. et. al. Deep Multi-Task Learning with Low Level Tasks Supervised at Lower Layers. ACL2016.
[38] Hashimoto , K. 2016. A Joint Multi-Task Model: Growing A Neural Network for Multiple NLP Tasks.
[39] Kendail, A. et. al. 2017. Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics.
[40] Yang, Y. et. al. 2017. Deep Multi-Task Representation Learning: A Tensor Factorization Approach. ICLR2017.
[41] Ruder, S. 2017. Sluice Networks: Learning What to Share between Loosely Related Tasks.
[42] Zhang, Z. 2014. Facial Landmark Detection by Deep Multi-Task Learning. ECCV2014.
[43] Liu, X. et. al. 2015. Representation Learning Using Multi-Task Deep Neural Networks for Semantic Classification and Information Retrieval.
[44] Girshick, R. 2015. Fast R-CNN. ICCV2015.
[45] Arik, S. O. et. al. 2017. Deep Voice: Real-time Neural Text-to-Speech. ICML2017.
[46] Ganin, T. 2015. Unsupervised Domain Adaptation by Backpropagation. ICML2015.
[47] Yu, J. 2016. Learning Sentence Embeddings with Auxiliary Tasks for Cross Domain Sentiment Classification. EMNLP 2016.
[48] Cheng, H. 2015. Open-Domain Name Error Detection Using a Multi-Task RNN. EMNLP2015.
[49] Caruana, R. et. al. 1997. Promoting Poor Features to Supervisors: Some Inputs work Better as outputs. NIPS1997.
[50] Rei, M. 2017. Semi-supervised Multitask Learning for Sequence Labeling, ACL2017.
[51] Ben-David, S. et. al. 2003. Exploiting Task Relatedness for Multiple Task Learning. Learning Theory and Kernel Machines.
[52] Alonso, H. M. et. al. 2017. When is Multi-Task Learning Effective? Multitask Learning for Semantic Sequence Prediction Under Varying Data Conditions. EACL2017.
[53] Bingel, J. et. al. 2017. Identifying Beneficial Task Relations for Multi-Task Learning in Deep Neural Networks, EACL2017.
轉載于:https://www.cnblogs.com/shuzirank/p/7141017.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的[译]深度神经网络的多任务学习概览(An Overview of Multi-task Learning in Deep Neural Networks)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第二章:2.2 开始第一个 web Dj
- 下一篇: 数据库连接语句