《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 業(yè)界動態(tài) > 觀點 | 下一步研究目標(biāo):盤點NLP領(lǐng)域最具潛力的六大方向

觀點 | 下一步研究目標(biāo):盤點NLP領(lǐng)域最具潛力的六大方向

2018-03-05

在開始你的研究之前,了解目標(biāo)領(lǐng)域中最重要的研究方向是很重要的任務(wù)。本文中,德國海德堡大學(xué)的計算語言學(xué)在讀博士 Sebastian Ruder 為我們介紹了 NLP 領(lǐng)域里最具潛力的幾個研究方向。


目錄


獨立于任務(wù)的 NLP 數(shù)據(jù)增強

用于 NLP 的 few-shot learning

用于 NLP 的的遷移學(xué)習(xí)

多任務(wù)學(xué)習(xí)

跨語言學(xué)習(xí)

獨立于任務(wù)的架構(gòu)提升


當(dāng)開始新領(lǐng)域的研究時,你會發(fā)現(xiàn)尋找引人注目的主題并學(xué)會問正確的問題是一件很難的事。這種情況在機器學(xué)習(xí)這種進(jìn)展很快的領(lǐng)域里尤其突出——你很難找到突破點。


本文旨在向初級研究人員和試圖進(jìn)入研究領(lǐng)域的人提供啟發(fā)和思路,其中匯集了我感興趣的一系列研究課題:著重于自然語言處理(NLP)和遷移學(xué)習(xí),所以本文不是面向所有讀者的。如果你對增強學(xué)習(xí)感興趣,OpenAI 提供了一系列有趣的增強學(xué)習(xí)研究主題(https://blog.openai.com/requests-for-research-2/)。如果你期待與他人合作,或?qū)Ω鼜V泛的主題感興趣,請參閱 Artificial Intelligence Open Network(https://ai-on.org/)。


這些研究主題中的大多數(shù)目前還沒有被人們透徹地思考過;在很多情況下,概括性的描述是非常模糊和主觀的,未來研究方向也不甚明確。此外,大多數(shù)主題也并不包含低掛果實,因此需要我們非常努力才能得出結(jié)論。請注意:這一主題集并不是對于所有文獻(xiàn)的綜述,所以其覆蓋范圍可能不全。


希望本文能夠激發(fā)你的興趣,并為你自己的研究歷程提供靈感。


獨立于任務(wù)的 NLP 數(shù)據(jù)增強


數(shù)據(jù)增強旨在通過轉(zhuǎn)換生產(chǎn)現(xiàn)有訓(xùn)練實例的變體而創(chuàng)建額外的訓(xùn)練數(shù)據(jù),以反映現(xiàn)實世界中的實際情況。在計算機視覺中,一般的增強技術(shù)有鏡像、隨機裁剪、剪切等。數(shù)據(jù)增強在 CV 中超級有用,比如有助于 AlexNet 對抗過擬合,絕大多數(shù)當(dāng)前最優(yōu)模型也使用了它。此外,數(shù)據(jù)增強非常直觀,因為它使得訓(xùn)練數(shù)據(jù)更加多元,從而提升模型泛化能力。


然而,NLP 中數(shù)據(jù)增強并未廣泛使用。依我看,原因有兩點:


1. NLP 中的數(shù)據(jù)是分離的。這可防止我們把簡單的轉(zhuǎn)換直接應(yīng)用于輸入數(shù)據(jù)。目前絕大多數(shù)的增強方法聚焦于這樣的轉(zhuǎn)換,比如領(lǐng)域隨機化 (Tobin et al., 2017) [2]。


2. 小的擾動可改變語義。刪除一個否定詞可能會改變句意,修改段落中的一個詞可能無意中改變了關(guān)于該段落問題的答案。其實在 CV 中情況并非如此:擾動一個像素并不會改變一個貓或狗的圖像,并且甚至明顯的變化比如不同圖像的插值也是有用的(Zhang et al., 2017)[3]。


我關(guān)注的現(xiàn)有方法要么是基于規(guī)則的 (Li et al., 2017) [5],要么是解決特定任務(wù)的,比如解析 (Wang and Eisner, 2016) [6] 或零-代名詞分辨率 (Liu et al., 2017) [7]。Xie et al. (2017) [39] 通過來自不同分布的樣本替代單詞以進(jìn)行語言建模和機器翻譯。最近聚焦于創(chuàng)建對抗樣本的工作要么是通過替代單詞或字符 (Samanta and Mehta, 2017; Ebrahimi et al., 2017) [8, 9],級聯(lián) (Jia and Liang, 2017) [11];要么是添加對抗擾動 (Yasunaga et al., 2017)。Li et al. (2017) [16] 同樣使用了對抗設(shè)置,其訓(xùn)練系統(tǒng)生產(chǎn)與人類對話語句無差別的序列。


反向翻譯(Back-translation)(Sennrich et al., 2015; Sennrich et al., 2016) [12, 13] 是機器翻譯中的常見數(shù)據(jù)增強方法,有助于吸收單語訓(xùn)練數(shù)據(jù)。比如,當(dāng)訓(xùn)練一個英轉(zhuǎn)法系統(tǒng)時,單語法語文本通過法轉(zhuǎn)英系統(tǒng)被翻譯成英語;合成的平行數(shù)據(jù)接著被用于訓(xùn)練。反向翻譯同樣用于釋義 (Mallinson et al., 2017) [14]。釋義已被用于 QA (Dong et al., 2017) [15] 的數(shù)據(jù)增強,但并未發(fā)現(xiàn)有其他用處。


另一個方法與釋義相近,即通過變分自編碼器 (Bowman et al., 2016; Guu et al., 2017) [17, 19] 從連續(xù)空間中生成語句。如果按照 Hu et al., 2017 [18] 把表征解開,那么我們離風(fēng)格遷移 (Shen et al., 2017) [20] 也就不遠(yuǎn)了。


以下幾個研究方向很有趣,值得去跟:


1. 評估學(xué)習(xí):評估一系列未廣泛使用的現(xiàn)有數(shù)據(jù)增強方法及技巧,比如應(yīng)用于一系列不同任務(wù)(包括文本分類和序列標(biāo)注)的釋義和風(fēng)格遷移。確定何種類型的數(shù)據(jù)增強在所有任務(wù)和特定任務(wù)中是魯棒的。這可被打裝成軟件庫以使未來的基準(zhǔn)更容易。


2. 帶有風(fēng)格遷移的數(shù)據(jù)增強:調(diào)查風(fēng)格遷移是否可用于修改訓(xùn)練實例的不同屬性以獲得更魯棒的學(xué)習(xí)。


3. 學(xué)習(xí)增強:類似于 Dong et al. (2017),我們可為一個特定任務(wù)學(xué)習(xí)釋義或者生成轉(zhuǎn)換。


4. 學(xué)習(xí)詞嵌入空間以增強數(shù)據(jù):典型的詞嵌入空間同時聚類同義詞和反義詞。因此在空間中使用最近鄰用于替換是不可行的。受最近工作 (Mrk?i? et al., 2017) [21] 啟發(fā),我們可以具化詞嵌入空間以使其更適用于數(shù)據(jù)增強。


5. 對抗性數(shù)據(jù)增強:與最近的可解釋性工作相關(guān) (Ribeiro et al., 2016) [22],我們可以改變實例中最重要的單詞,即那些模型依賴以做出預(yù)測的單詞。但是這依然需要保留語義的替換方法。


用于 NLP 的 Few-shot learning 


Zero-shot、one-shot、few-shot learning 是最近最為有趣的研究方向之一。通過遵從 Vinyals et al. (2016) [4] 的核心思想,即 few-shot learning 模型應(yīng)該明確地訓(xùn)練以執(zhí)行 few-shot learning,我們已取得若干個最新進(jìn)展 (Ravi and Larochelle, 2017; Snell et al., 2017) [23, 24]。學(xué)習(xí)若干個標(biāo)注樣本是最艱難的問題之一,以及區(qū)分當(dāng)前機器學(xué)習(xí)模型生成與更廣泛應(yīng)用的系統(tǒng)的核心能力之一。據(jù)我所知,Zero-shot learning 只在學(xué)習(xí)未知單詞的詞嵌入的語境中被調(diào)查。無數(shù)據(jù)分類 (Song and Roth, 2014; Song et al., 2016) [25, 26] 是一個有趣的相關(guān)方向,它在聯(lián)合空間中嵌入標(biāo)簽和文件,并需要帶有良好描述的可解釋性標(biāo)簽。


1. 標(biāo)準(zhǔn)化基準(zhǔn):為 NLP few-shot learning 創(chuàng)建標(biāo)準(zhǔn)化基準(zhǔn)。Vinyals et al. (2016) 為 Penn Treebank 引入了 one-shot 語言建模任務(wù)。這一任務(wù)盡管很有用,但與 CV 基準(zhǔn)上的廣泛評估相比卻相形見絀,并且據(jù)我所知沒有多少使用。NLP 的 ew-shot learning 基準(zhǔn)應(yīng)該包含大量分類并提供標(biāo)準(zhǔn)化的再現(xiàn)性分割。良好的候選任務(wù)將是主題分類或細(xì)粒度實體識別。


2. 評估學(xué)習(xí):創(chuàng)建這樣一個基準(zhǔn)之后,下一步是評估 CV 中的現(xiàn)有 few-shot learning 方法在執(zhí)行 NLP 任務(wù)方面表現(xiàn)如何。


3. NLP 的全新方法:給定一個基準(zhǔn)數(shù)據(jù)集和實證評估學(xué)習(xí),接著我們可以開始開發(fā)執(zhí)行 NLP few-shot learning 的全新方法。


用于 NLP 的遷移學(xué)習(xí)


遷移學(xué)習(xí)已經(jīng)對計算機視覺(CV)產(chǎn)生了巨大的影響,并大大降低了解決特定 CV 問題的難度門檻。計算機視覺從業(yè)者現(xiàn)在不再需要為每個新任務(wù)耗費大量的工程,僅需使用少量示例對已在大型數(shù)據(jù)集上訓(xùn)練好的模型進(jìn)行微調(diào)。


然而,在 NLP 領(lǐng)域里,我們目前仍然只能通過預(yù)訓(xùn)練嵌入來預(yù)訓(xùn)練模型的第一層。近期一些研究人員提出的方法(Peters et al., 2017, 2018)[31,32] 加入了預(yù)訓(xùn)練語言模型嵌入,但是它們?nèi)匀恍枰槍γ總€任務(wù)定制架構(gòu)。在我看來,若想解鎖遷移學(xué)習(xí)在 NLP 上的真正潛力,我們需要預(yù)訓(xùn)練整個模型,并在目標(biāo)任務(wù)上僅需微調(diào),類似于微調(diào) ImageNet 模型。舉例來說,在 NLP 上的語言建模可以類比為 CV 上的 ImageNet 分類(Howard and Ruder, 2018)[33]。


這里有一些潛在的研究方向:


1. 識別有用的預(yù)訓(xùn)練任務(wù):預(yù)訓(xùn)練任務(wù)的選擇非常重要,即使是對于相關(guān)任務(wù)進(jìn)行微調(diào),我們也可能近會收到有限的成功(Mou et al., 2016)[38]。其他任務(wù),如近期關(guān)于學(xué)習(xí)通用句嵌入的研究(Conneau et al., 2017;Subramanian et al., 2018; Nie et al., 2017)[34,35,40] 可能是語言模型預(yù)訓(xùn)練的補充,或適用于其他目標(biāo)任務(wù)。


2. 復(fù)雜架構(gòu)的微調(diào):模型應(yīng)用于多目標(biāo)時,預(yù)訓(xùn)練是最為有效的。然而,目前仍不清楚如何對更為復(fù)雜的模型進(jìn)行預(yù)訓(xùn)練,如用于配對分類任務(wù)(Augenstein et al., 2018)或推理任務(wù)(如 Q&A 和閱讀理解)的模型。


多任務(wù)學(xué)習(xí)


多任務(wù)學(xué)習(xí)(Multi-task learning,MTL)在 NLP 領(lǐng)域中已經(jīng)變得越來越普遍了。有關(guān)多任務(wù)學(xué)習(xí)的概述,可參閱此處(http://ruder.io/multi-task/),有關(guān) NTL 在 NLP 中的目標(biāo)可參閱此處(http://ruder.io/multi-task-learning-nlp/)。對于我們來說,多任務(wù)學(xué)習(xí)還有很多未知等待我們?nèi)ヌ綄ぁ?/p>


MTL 的主要問題帶來了一系列有趣的研究方向:


1. 確定有效的輔助任務(wù):其中一個主要問題是哪些任務(wù)對于多任務(wù)學(xué)習(xí)是有用的。標(biāo)簽熵已被證明可以是 MTL 中成功的預(yù)測器(Alonso and Plank, 2017)[28],但這一方向并未結(jié)束。在最近的研究中(Augenstein et al., 2018)[27],我們發(fā)現(xiàn)又跟股東數(shù)據(jù)和更多細(xì)化標(biāo)簽的輔助任務(wù)更加有效。未來的 MTL 論文或許不僅會提出新的模型或輔助任務(wù),也會試圖開始求解為何很多輔助任務(wù)會比另一個緊密相關(guān)的任務(wù)更好。


2. 硬參數(shù)共享的替代方案:硬參數(shù)共享目前仍然是 MTL 的默認(rèn)操作方式,但它對模型施加了很多約束,以便用相同的參數(shù)壓縮與不同任務(wù)有關(guān)的知識,這往往會使學(xué)習(xí)變得困難。在 MTL 中,我們需要更加易于使用,且在多種任務(wù)上工作穩(wěn)定的新方法(Misra et al., 2017; Ruder et al., 2017)[29,30],標(biāo)簽嵌入層(Augenstein et al., 2018)在這一方向上很有潛力。


3. 人工輔助任務(wù):最好的輔助任務(wù)是針對主任務(wù)目標(biāo),且不需要任何附加數(shù)據(jù)的任務(wù)。在這里,我列出了潛在的人工輔助任務(wù)列表(http://ruder.io/multi-task-learning-nlp/)。當(dāng)然,目前我們還不清楚哪些輔助任務(wù)可以在多種不同類型的任務(wù)上適用,或哪種基于特定任務(wù)的變體性能最好。


跨語言學(xué)習(xí)


構(gòu)建能夠跨語言的模型,將資源豐富語言中的知識遷移到資源貧乏的語言中,一直是 NLP 的重要研究方向之一。最近,學(xué)習(xí)跨語言表示,將多種不同語言投影到共享嵌入空間的方法有了很大進(jìn)展??蓞㈤喺撐摹禔 Survey of Cross-lingual Word Embedding Models》[36]。


跨語言表示通常根據(jù)內(nèi)部基準(zhǔn)測試,或外部下游任務(wù)(如文本分類)上的表現(xiàn)進(jìn)行評估。雖然目前的最先進(jìn)方法已經(jīng)有了很多進(jìn)步,但我們?nèi)詫τ谶@些方法在某些任務(wù)或語言上的失敗原因,以及如何在所有任務(wù)上減小這些失敗的方法,如加入基于特定任務(wù)的約束(Mrk?i? et al., 2017)仍未有足夠的理解。


獨立于任務(wù)的架構(gòu)提升


目前,在各個特定任務(wù)上,業(yè)內(nèi)最佳的成績正在不斷地被刷新,舊的架構(gòu)正不斷被淘汰。之前,我已經(jīng)列出了在不同 NLP 任務(wù)上的最佳實踐(http://ruder.io/deep-learning-nlp-best-practices/),但如果不對這些架構(gòu)在不同任務(wù)上的性能進(jìn)行比較,我們很難定義特定架構(gòu)的能力,也無法得知它們在其他任務(wù)上的可用性。


最近涌現(xiàn)出了一個頗具潛力的模型 Transformer(Vaswani et al., 2017)[37]。雖然完整的模型可能不適用于每個任務(wù),但多頭注意(multi-head attention)或基于位置的編碼(position-based encoding)可以作為模塊構(gòu)建模型,這樣就可以適用于很多 NLP 任務(wù)了。


結(jié)論


希望這一研究方向匯集能夠?qū)δ阌兴鶐椭H绻阌嘘P(guān)于如何解決相關(guān)研究課題的思路,歡迎在本文下進(jìn)行討論。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。