歡迎光臨
每天分享高質量文章

CMU提出「十字繡網絡」,自動決定多任務學習的最佳共享層

在碎片化閱讀充斥眼球的時代,越來越少的人會去關註每篇論文背後的探索和思考。

在這個欄目里,你會快速 get 每篇精選論文的亮點和痛點,時刻緊跟 AI 前沿成果。


點擊本文底部的「閱讀原文」即刻加入社區,查看更多最新論文推薦。

這是 PaperDaily 的第 77 篇文章

本期推薦的論文筆記來自 PaperWeekly 社區用戶 @Cratial。多任務學習是機器學習的重要組成部分,但是對於應用深度學習進行多任務學習時會遇到一個棘手的問題,那就是我們該如何確定網絡的共享部分針對不同的任務,其最佳共享層往往不同。


外,針對不同的多任務學習,我們需要根據任務需求設計不同的共享層,並沒有統一的標準。因此,本文針對這一問題設計了“十字繡”單元,通過端對端的學習來自動決定共享層

如果你對本文工作感興趣,點擊底部閱讀原文即可查看原論文。

關於作者:吳仕超,東北大學碩士生,研究方向為腦機接口、駕駛疲勞檢測和機器學習。

■ 論文 | Cross-stitch Networks for Multi-task Learning

■ 鏈接 | https://www.paperweekly.site/papers/1969

■ 作者 | Ishan Misra / Abhinav Shrivastava / Abhinav Gupta / Martial Hebert


引出主題


多任務學習是機器學習的重要組成部分,但是在應用深度學習進行多任務學習時會遇到一個棘手的問題,那就是我們該如何確定網絡的共享部分。針對不同的任務,其最佳共享層往往不同。 


本文使用 AlexNet 網絡分別進行圖像檢測、圖像屬性生成及圖像語意分割、圖像平面法向量生成(Surface Normal)等多任務學習。針對兩個任務,作者分別從 fc8 層進行共享,一直測試到兩者完全不進行共享的為止。

 圖1


實驗結果如圖 1 所示,其中,圖 1(b)是不同共享層完全獨立時的效果對比,可以看出對於任務一來說,共享部分在 conv4 時所能達到的效果,針對於任務二來說,在 fc7 層的效果最好。


此外,針對不同的多任務學習,我們需要根據任務需求設計不同的共享層,並沒有統一的標準。因此,本文針對這一問題設計了“十字繡”單元,通過端對端的學習來自動決定共享層

“十字繡”單元與網絡設計


Cross-stitch Unit


本文的核心就在這裡,設計“十字繡”單元的思想如圖 2 所示,通過在兩個網絡的特征層之間增加“十字繡”單元可以使網絡自動學習到需要共享的特征。

 圖2


其中的“十字繡”單元就是一個繫數矩陣。其運算式如式(1)所示。


針對這個“十字繡”單元如何進行端對端學習呢?作者給了具體的計算公式:


在下文中,為了方便,將 αAB 及 αBA 統稱為 αD 表示不同任務的權重值,αAA 及 αBB 統稱為 αS 表示相同任務的權重值。


“十字繡”網絡設計 


圖 3 是作者通過對網絡添加“十字繡”單元設計的網絡。

 圖3


網絡設計好之後,作者又針對網絡提出了以下幾個問題: 


1. 如何對“十字繡”單元進行初始化,及如何設置“十字繡”單元的學習速率? 


作者認為初始值設置應該在 [0,1] 之間,此外,作者還針對初始值及學習速率的設計進行了實驗,以決定如何對兩者進行設計能夠達到最優效果。


2. 如何對網絡 A 和 B 進行初始化?


如何對 A、B 進行初始化呢?作者提出了兩種方案,第一種就是網絡全用由 ImageNet 訓練出的引數進行初始化,然後對整個“十字繡”網絡進行訓練。第二種是針對一種任務在網絡上進行微調,然後再添加“十字繡”單元,並對網絡進行訓練。 


引數選取 


針對 2.2 中提到的兩個問題,作者分別嘗試了不同的策略來對引數進行選擇。實驗結果如表 1 所示:

 表1


在對“十字繡”單元進行訓練時作者發現,用來更新網絡引數的學習速率相對於“十字繡”單元而言太小了,以至於無法得到好的效果,實驗結果如表 2 所示:

 表2


關於如何對網絡 A、B 進行初始化,作者同樣進行了實驗,實驗結果如表 3 所示:

 表3


表 4 展示了在 αD 及 αS 取不同的初始值時,最終網絡各層各個通道的 αD 及 αS 的值的分佈情況。其中 αD 越大說明共享程度越大,αS 越大,說明特征的特殊性越強。

 表4

實驗及結果分析


為驗證本文演算法的有效性,作者分別在 NYU-v2 資料集進行了圖像語意分割及圖片平面法向量生成實驗,在 PASCAL VOC 2008 資料集上進行了物體檢測和屬性預測實驗。 


作者分別針對單任務網絡、結合兩個單任務的網絡(文中稱為“ensemble”)、多任務網絡(如圖 1 中那樣嘗試在各個特征層共享特征)進行了實驗。平面法向量生成及圖像語意分割的實驗結果如表 5 所示:

 表5

從表 5 可以看出,使用“十字繡”單元的網絡均能在兩個任務上得到較好的結果。此外,作者分析在圖像語意分割任務中,存在嚴重的資料匱乏問,如圖 5 中黑線所示,wall、floor 的資料數量遠超出其餘的類別數,其中,藍色柱狀表示採用“十字繡”單元的多任務學習相對於單任務學習在效果上的增益,從圖中可以看出,數量越少的類別所獲得增益越多。

 圖5


圖像檢測及屬性預測的實驗結果及增益情況分別如表 6 及圖 6 所示:

 表6


 圖6


總結與分析


雖然本文作者提到他們的方法相對於傳統方法不需要去依次嘗試如何選取所要共享的特征層,但是增加的“十字繡”單元同樣帶來了很多麻煩的東西,例如,如何進行初始化,如何設置學習速率。最終的實驗結果表明,使用該方法對多任務學習的性能有一定的提升。

本文由 AI 學術社區 PaperWeekly 精選推薦,社區目前已改寫自然語言處理、計算機視覺、人工智慧、機器學習、資料挖掘和信息檢索等研究方向,點擊「閱讀原文」即刻加入社區!


點擊標題查看更多論文解讀: 

 戳我查看招募詳情

#作 者 招 募#


讓你的文字被很多很多人看到,喜歡我們不如加入我們

           

關於PaperWeekly


PaperWeekly 是一個推薦、解讀、討論、報道人工智慧前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號後臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。


▽ 點擊 | 閱讀原文 | 查看原論文

赞(0)

分享創造快樂