• 沒有找到結果。

第 5 章 基於多任務學習之類神經網 路聲學模型

介紹多任務學習的方法之前,我們先介紹多任務學習的概念 (5.1) 以及介紹與 聲學模型結合的相關文獻回顧 (5.2)。接著將說明本論文的多任務學習、多任務學 習類神經網路的定義以及如何透過多任務學習來改進模型的一般化能力。

5.1 多任務學習

多任務學習或者學習如何學習 (learning to learn) 是一種機器學習的研究,目的是 透過共同學習數個相關的輔助任務,提升主要學習任務的一般化能力。據研究學 者證明,假設多個任務彼此之間相關,且它們共享一些內在的表示資訊,通過一 起學習,它們能夠將知識轉移給對方。其實驗結果證實這樣的方法能使模型遇到 沒看過的資料時也能有不錯的成效。

多任務學習大約在二十年前開始成為一項熱門的研究,有許多論文以理論的角 度分析多任務學習的行為與一般化能力界限 (generalization bound)。[84] 中,提出 了一系列多任務學習的統計理論,並且找到多任務學習訓練所得到的平均錯誤邊 界。這個邊界表示當多個相關的任務一起學習的時候,欲使此模型達到最佳效果 所需的訓練資料數量便能夠大幅地減少。它進一步得知,透過相關輔助任務所產 生的參數假設空間 (parameter hypothesis space) 作為基礎,能夠提供更好的初始參 數假設空間給其它新的輔助任務。[85] 聚焦在任務間的相關性,在資料生成的模 型 (data generation model) 中,多個任務之間的相關性可以透過一種特定的方式來

定義每一個任務之間的一般化邊界。他們也明確定義了滿足哪一些條件,多任務 學習保證一定勝過單任務學習 (single task learning, STL)。

另一方面,Caruana 的博士論文 [19] 提出了一些實驗方向,研究多任務學習的 影響,並基於類神經網路設計了一系列實驗,他嘗試揭露多任務學習如何幫助主 要任務的學習。Caruana 假設多任務學習的情境下,相關的輔助任務必須滿足 2 個 必備條件:

1) 相關的輔助任務必須共享輸入特徵。

2) 相關的輔助任務必須共享隱藏層,以便在多任務學習的類神經網路互利互惠。

此外,同時訓練相關任務並不保證效能會提升,訓練的演算法在多任務學習中 同樣也扮演重要的角色。

假設兩任務T1T2,共享的內部特徵 (internal representation) F ,每個任務的 訓練目標有二:學習內部特徵 F 及學習如何使用內部特徵 F 。針對多任務學習效 果較佳的原因,Caruana 提出幾點:

I) 數據放大效應 (data amplification): 多任務學習使得每個任務從其它相關任 務獲取額外資訊,相對地增加了資料的數量。數據放大效應被進一步分類 成統計數據放大 (statistical data amplification),採樣數據放大 (sampling data amplification) 和阻塞數據放大 (blocking data amplification)。

II) 竊聽效應 (eavesdropping): 假設T1 學習 F 較容易;T2 學習 F 較複雜。換句 話說,T2 很難使用有限的訓練資料訓練出較佳的 F 。當任務T1T2 共享類 神經網路隱藏層的內部表示時,T2 便可以透過T1偷偷竊聽 F ,使得T2也能 夠學得較好。

III) 屬性選取 (attribute selection): 試想現在我們有許多特徵,現在想從這些特徵 中選擇出適當的特徵做為函數的輸入,假設 F 是一個函數,且只需要其中的

44

幾種輸入特徵就能夠訓練得好。但是由於訓練資料不足 (或資料有雜訊) 的 緣故,T1 較難從高維度的輸入空間中找到哪些才是適合用於函數 F 的特徵。

如果T1T2 一起學習,由於訓練的資料變多了,也相對較容易選出適當的 特徵來訓練函數 F 。

IV) 重現偏差 (representation bias): 多任務學習的訓練迫使函數 F 的參數貼近兩 任務各自訓練函數所成的交集,如此學習到的 F 應有較佳的一般化能力,因 為它同時滿足了兩個任務。

V) 避免過度擬合 (overfitting prevention): 假設T1 獨自學習函數 F 時容易過度 擬合,當T1T2 一起訓練時,T2就有機會防止得T1過度擬合。另一方面,

在多任務學習反向傳導的情況下,當T1 陷入區域最佳解 (local optimum),T2

仍舊經由共享的結構,提供T1參數更新的梯度幫助T1脫離區域最佳解。

總結上述的論點,多任務學習具有 2 種優勢:

a) 輔助任務提供更多的訓練資料與額外資訊。

b) 共同訓練多個輔助任務等同於在主要任務的目標函數中加上正則化 (regularizer) 的效果,達到更好的一般化能力。

近年來,多任務學習的研究開始探索自動學習任務與任務間的關係,[86] 將任 務與任務之間相關性的區域限制 (local constraint) 視為最佳化的問題。這些關係在 訓練的過程中是固定的,因此學術界開始研究如何自動化地從資料中自動學習任 務之間的關係。[87] 將學習任務之間的關係視為求解凸函數 (convex function) 的 過程,Zhang 等人假設數個線性回歸任務的參數具有相同的矩陣常態分佈事前機 率 (matrix-variate normal distribution prior),並由共變異數矩陣定義任務與任務之 間的關係,透過這種方式,模型訓練時能間接學習如何替正例任務關係 (positive task correlation) 與負例任務關係 (negative task correlation) 的相關性建立模型。後

來 Zhang 等人更融入了多任務特徵選取 (multi-task feature selection) 與相關性學習 (relationship learning) 對高維度的輸入資料進行處理。[88] 則遵循這樣的理念,更 進一步地整合這些特徵的結構資訊。多任務相關性學習被應用於解決許多現實生 活中的任務,例如機器人逆向動力學、考試成績預測及癌症腫瘤分類。

5.2 語音辨識中的多任務學習

語 音 辨 識 中, 多 任 務 學 習 結 合 遞 迴 神 經 網 路 被 用 於 增 進 模 型 的 強 健 性 [89],

Parveen 等人探討了 11 種不同的分類任務 (性別、語者情緒等等) 與語音增強任務 的影響,實驗結果發現在分類任務中,多任務訓練優於單任務訓練。而在語音增 強的任務中,在吵雜環境 (noisy condition) 的效果也勝過單通道語音加強演算法 (spectral subtraction process)。

由於深層學習的興起,我們預期多任務學習融合現今新穎的深層學習應能進 一步改善效果,在本論文中稱為 MTL-DNN(multitask deep neural networks)。例如 Seltzer 等人分別探討了以目前音框的音素標記、鄰近音素狀態標記 (state contexts) 及鄰近音素的音素標記 (phone contexts) 做為輔助任務的效果 [23],在 TIMIT 語 音辨識的任務中有顯著的進步。然而,Seltzer 等人的研究只停留在單連音素 (monophone),沒有使用到三連音素 (triphone) 的資訊,並且沒有探討如果使用三 連音素狀態標記取代單連音素狀態標記做為輔助任務,幫助 (使用單連音素狀態 標記的) 主要任務是否有幫助,這是本論文想探究的其中一部分。

此 外, 多 任 務 學 習 被 用 於 訓 練 多 語 言 類 神 經 網 路, 並 取 得 了 不 錯 的 成 效 [90] [91]。在這些研究成果中,多語言的資料首先被用於預訓練。訓練階段,

所有語言的訓練資料經由共享的隱藏層,一層一層向上濃縮前一層的輸出資訊,

進行前饋運算,每種語言有各自對應的輸出層,目前的輸入語言只會更新所對應 語言的輸出層,與輸入語言不同的輸出層將不會被更新。

46

相關文件