<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          如何“錨定”NLP模型中的語言智慧?丨長文評析語言探針

          共 7168字,需瀏覽 15分鐘

           ·

          2021-01-04 15:33



          ??新智元推薦??

          來源:數(shù)據(jù)實戰(zhàn)派

          作者:Keyur Faldu等

          【新智元導(dǎo)讀】本文由兩位數(shù)據(jù)科學(xué)家 ——Keyur Faldu 和 Amit Sheth 所撰寫,詳細闡述了現(xiàn)代自然語言處理的興起以及可解釋性的必要,并結(jié)合對當前技術(shù)狀況的調(diào)查,以更好地回答由 NLP 模型所引發(fā)的語言智慧相關(guān)的一些開放性問題。

          在正式開篇前,先來了解下 “可解釋性” 這個概念。

          事實上,可解釋性并沒有數(shù)學(xué)上的嚴格定義,可以簡單理解其為人們能夠理解模型決策原因的程度。換句話說,對機器學(xué)習(xí)模型來說,它的可解釋性越高,人們就越容易理解它為什么做出某些決策或預(yù)測。

          英文中有兩個詞 ——“interpretable” 和 “explainable”,可以用來表達可解釋性這個概念,但那是否完全一致呢?

          在 NLP 興起的時候,兩個詞默認同一個意思(即,解釋模型的行為),可以交替使用。隨著 NLP 的發(fā)展,兩個名詞漸漸出現(xiàn)了細微的差別。

          其中,“interpretable” 可以理解為,使本就透明的白盒通俗易懂,所有經(jīng)驗水平的用戶都可以明白模型的含義,偏重于理解;而 “explainable”,則強調(diào)研究者對于黑盒模型的行為作出人們所能理解的解釋,更偏重于深層的解釋。

          厘清這兩個概念后下面切入正題,本文是先前發(fā)表的名為“ Discovering the Encoded Linguistic Knowledge in NLP models” 文章的延續(xù),之前的文章討論了什么是 “探針”(Probes)、它與多任務(wù)學(xué)習(xí)的區(qū)別,以及兩種類型的探針 —— 基于表征的探針和基于注意力權(quán)重的探針。

          本文將會提出更有趣的深層次問題,在先前工作的基礎(chǔ)上,進一步揭示探針任務(wù)(或輔助任務(wù))是如何用于評估 NLP 模型在其他初級任務(wù)訓(xùn)練上的語言能力的,旨在幫助大家深入了解 NLP 模型中編碼的語言知識(Linguistic Knowledge)究竟是什么。

          探針對語言任務(wù)的性能預(yù)測,或用于關(guān)聯(lián)或比較神經(jīng)網(wǎng)絡(luò)和語言現(xiàn)象的支持模式,提供了對編碼語言知識的內(nèi)容和方式的獨特見解。對于性能預(yù)測的指標,可以是分類準確性,相關(guān)系數(shù)或預(yù)測金標的平均倒數(shù)排名(MRR, Mean Reciprocal Rank)。

          需要注意的是,模型在探針任務(wù)上的性能預(yù)測,可以與專為這類任務(wù)設(shè)計的、經(jīng)過明確訓(xùn)練的模型的最新技術(shù)性能進行比較,以了解編碼語言知識的程度。

          當然,還有其他方面需要深入分析,例如:

          • 更大的模型能夠更好的編碼語言知識嗎?模型所捕獲的語言知識在復(fù)雜性方面(維度大小,參數(shù)數(shù)量)如何變化?探索不同復(fù)雜度模型在輔助任務(wù)上的分類器性能,可以對此問題作出解釋。

          • 如何評估模型對語言知識進行編碼的泛化能力?探針在編碼語言知識上的成功可看作模型測試復(fù)雜數(shù)據(jù)時泛化能力的標志。例如,如果訓(xùn)練數(shù)據(jù)通常將 “主要助動詞” 作為第一個動詞,而廣義的數(shù)據(jù)故意包含干擾因素,則 “主要助動詞” 不再是第一個動詞如何處理?在這種情況下,如果探針可以檢測到 “主要助動詞”,則可以將其歸因于諸如語法解析樹之類的語言特征,而非順序位置特征。

          • 我們可以解碼語言知識,而不是依賴于淺層探針分類器標簽嗎?在探索解碼語言知識的能力中發(fā)現(xiàn),與解碼或構(gòu)建語言知識的任務(wù)相比,分類任務(wù)的復(fù)雜性相對較低,那能否使用內(nèi)部表示構(gòu)建一個完整的依存解析樹呢?或許尋找恢復(fù)潛在語言知識的方法將會是一種非常有趣的體驗。

          • 探針的局限性是什么?當探針能夠很好地完成輔助語言任務(wù)時,是由于某種相關(guān)性,還是有因果關(guān)系?考慮到深層而復(fù)雜的探針模型也具有記憶能力,很可能會導(dǎo)致過擬合現(xiàn)象。那么,如何驗證探針所表達的語言知識的來源呢?可以嘗試以下方案,在設(shè)計 “控制任務(wù)” 時,將探針的預(yù)測性能與控制任務(wù)的性能進行比較,便于揭秘探針的有效性和語言知識的來源。

          • 我們可以注入語言知識嗎?如果神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練端到端任務(wù)的過程中學(xué)習(xí)語言知識,那么,是否可以考慮注入語言知識(即語法解析樹)來提高性能呢?

          編碼的語言知識是否捕獲含義?語言知識,諸如詞性標注,依存樹等,本質(zhì)上是句法層面上的。實際應(yīng)用程序希望 NLP 模型能夠理解語義。因此,評估模型編碼語義含義的能力依舊至關(guān)重要。

          帶著以上問題,讓我們更深入地研究與這些主題相關(guān)的研究論文都揭示了什么。

          圖 1 BERT 模型上的探針說明圖

          模型越大,效果越好?


          期正式探討探索編碼語言知識問題的研究中,有一篇題為 “Fine-Grained Analysis of Sentence Embeddings using Auxiliary Prediction Tasks” 的論文。該論文旨在更好地理解編碼語言的句子表征。

          文中,三個與句子結(jié)構(gòu)相關(guān)的輔助任務(wù)考慮如下:

          1. 句子長度(Sentence length):句子嵌入是否在句子長度上編碼信息?

          2. 單詞內(nèi)容(Word-content):是否可以根據(jù)句子嵌入來預(yù)測句子中是否包含某個單詞?

          3. 單詞順序(Word-order)。給定句子嵌入和兩個單詞,能否確定兩個單詞的順序?


          這些探針基于句子嵌入,而該句子嵌入是由編碼器 - 解碼器模型和連續(xù)詞袋模型(CBOW, Continuous Bag-of-Words Model)產(chǎn)生的最終表示的平均值來計算的。該論文的主要發(fā)現(xiàn)是 —— 大的模型可以更好地對語言知識進行編碼。


          如下所示:

          圖 2 圖片出處:ICLR 2017

          一方面,增加維度會使某些任務(wù)的執(zhí)行效果更好。如圖 2 所示,(a)長度和 ? 順序測試獲得了更大維度表示的效果提升,而內(nèi)容測試在 750d 時達到峰值。

          另一方面,CBOW 模型相比于編碼器 - 解碼器模型,參數(shù)要少得多,維度越小,在 “單詞內(nèi)容” 任務(wù)中也能表現(xiàn)得越好。


          泛化能力


          在泛化數(shù)據(jù)上測試模型以驗證其學(xué)習(xí)的程度,不失為一種好的選擇策略。而且經(jīng)過精心設(shè)計的復(fù)雜泛化數(shù)據(jù)可以測試 NLP 模型學(xué)習(xí)語言智慧的極限。顯而易見,模型在如此復(fù)雜的數(shù)據(jù)上進行泛化,其真正的語言能力將會呈現(xiàn)的淋漓盡致,而不再僅僅局限于記憶表面的模式。

          Lin 等人在另一篇論文 “Open Sesame: Getting Inside BERT’s Linguistic Knowledge” 中,也進行了此類實驗。

          圖 3 圖片出處:ACL 2019

          圖 3 顯示了對于壓力測試模型編碼的語言知識,泛化數(shù)據(jù)是如何包含故意干擾因素的。
          “主要輔助任務(wù)” 用于識別句子中的主要助動詞。一般而言,訓(xùn)練和驗證數(shù)據(jù)集會把包含的 “主要助動詞” 作為句子的第一個動詞,而泛化數(shù)據(jù)集則將其 “藏匿” 在句子的更深處。
          同樣地,“主語名詞任務(wù)” 用于識別句子中充當主語的名詞,這是訓(xùn)練和驗證數(shù)據(jù)集中的第一個名詞,但在泛化集中對其進行了修改。

          圖 4 圖片出處:ACL 2019


          以訓(xùn)練集中的句子為例,“the cat will sleep” 中的主要助動詞是 “will”。相比上個句子,“The can that can meow will sleep” 則算得上是復(fù)雜的概括性的句子了,若要對這句話分析,很容易發(fā)現(xiàn)句中存在干擾詞 “can”,因此,很難預(yù)測主要助動詞是 “ will”。

          圖 4(左)中的探針性能顯示,BERT 層對語言信息進行了編碼,能夠很好地檢測出泛化數(shù)據(jù)中的 “主要助動詞”。


          圖 5 圖片出處:ACL 2019

          圖 6 圖片出處:ACL 2019

          類似地,對 “主語名詞” 任務(wù)的漸進式數(shù)據(jù)集進行泛化同樣是一項相對困難的任務(wù)。不過,值得慶幸的是,隨著連續(xù)層中探測分類器性能的提高,可以注意到編碼語言信息的增加。

          文中進一步研究了該模型的注意力機制及其對這些干擾因素的敏感程度。它提出了 “混淆分數(shù)(Confusion score)”,即候選令牌對目標令牌的關(guān)注度的二進制交叉熵。

          下面的情況將觀察下當干擾因素的復(fù)雜度降低時,混淆度是如何下降的:當 A1 的混亂度從 0.97 下降到 0.93,因為 A2 中的干擾項 “the dog” 相對較容易捕獲,它與動詞 “dose” 的奇異點不匹配。

          同樣,A3 中的混亂度也從 0.85 下降到了 A4 的 0.81。由于增加了關(guān)系從句,A1 的混亂度從 0.97 下降到 A3 的 0.85(和 A2,A4 的情況類似),這可能會更好地識別層次句法結(jié)構(gòu)。

          語言知識的解碼能力


          由于分類器探針的復(fù)雜度相對較低,因此研究是否可以整體解碼編碼的語言知識是很有趣的一個問題。比方說,我們能否完全依靠編碼表示來構(gòu)建依存解析樹呢?


          圖 7 圖片出處:NAACL 2019


          Hewitt 和 Manning 在論文 A Structural Probe for Finding Syntax in Word Representations 中提出了 “結(jié)構(gòu)性探針” 的概念,從經(jīng)驗上來說,將內(nèi)部表示的空間轉(zhuǎn)換為語言知識的空間是可能實現(xiàn)的。探針識別一種線性變換,在這個變換下,變換表示的 L2 平方距離編碼解析樹中單詞之間的距離,而變換表示的 L2 平方范數(shù)編碼解析樹中的深度。

          由此,我們可以得知,語言知識是逐層地從模型中學(xué)習(xí),在頂層逐漸消失的,因為這些層更趨向于主要的目標函數(shù)。

          本文還研究了轉(zhuǎn)換空間維度的增加是否有助于表達語言知識,實驗表明,解析依賴樹的語言知識可以用約 32 或 64 個維度來表示,除此之外,增加維度并不會帶來更多的價值效應(yīng)。

          圖 8 圖片出處:NAACL 2019


          語言知識的局限和來源


          監(jiān)督模型 “訓(xùn)練有素” 的探針,其預(yù)測語言屬性的功能已經(jīng)在一系列的語言任務(wù)中取得了很高的準確性。

          但這是否意味著這些表示形式對語言結(jié)構(gòu)進行了編碼,還是僅僅是探針學(xué)習(xí)了語言任務(wù)?可以使用語言任務(wù)準確性來有意義地比較模型各層的語言屬性嗎?一個足夠深層次的探針模型可以記憶語言信息。那么我們?nèi)绾谓鉀Q這個限制呢?

          Hewitt 和 Liang 在 “Designing and Interpreting Probes with Control Tasks” 一文中提出了 “選擇度(Selectivity)” 的概念作為衡量探針有效性的一種方法。

          控制任務(wù)旨在了解探測器如何學(xué)習(xí)與編碼表示形式無關(guān)的語言信息,其中選擇度定義為語言任務(wù)準確性和控制任務(wù)準確性之間的差異。

          圖 9 圖片出處:EMNLP-2019

          從圖 9 可以看出,詞性預(yù)測的控制任務(wù)將為某組單詞單獨分配某種單詞類型(或標識),并且根據(jù)單詞類型預(yù)測詞性標注(完全忽略編碼表示)。

          因此,如果一個深層次的探針具有記憶功能,那么它也應(yīng)該能夠很好地執(zhí)行控制任務(wù)。

          圖中清晰的顯示了用于詞性輔助任務(wù)及其控制任務(wù)的探針模型的復(fù)雜性和準確性,由此,選擇具有高選擇度和高精度的探針對得出結(jié)論是至關(guān)重要的。

          圖 10 圖片出處:ICLR 2017

          Adi 等人在 “Fine-Grained Analysis of Sentence Embeddings using Auxiliary Prediction Tasks” 一文中研究了句子結(jié)構(gòu)知識的來源。盡管 CBOW 模型忽略了周圍的上下文,但探針能夠在輔助任務(wù)上提供較高的準確性以預(yù)測句子的長度。

          但是,我們發(fā)現(xiàn)僅僅是句子嵌入向量的范數(shù)就表征了句子的長度(圖 10(右)),所以信息的來源并非來自標記的編碼表示形式。

          然而,將這些表示形式進行匯總時,范數(shù)趨向于 0,這是由中心極限定理和霍夫丁不等式(Hoeffding‘s inequality)確定的。

          在圖 10(左)中可以注意到,合成句子(隨機選擇單詞組成合成句子)的長度預(yù)測精度也接近合法句子。所以,決定句子長度的實際知識來源只是隨機變量集合的統(tǒng)計性質(zhì)。

          因此,這需要進行更深入的研究和分析,以從探測結(jié)果中得出推論。

          注入語言知識


          上文已經(jīng)研究了用于分析編碼語言知識的探針的技術(shù),接下來的問題是,可以為預(yù)期的結(jié)果注入明確的語言知識嗎?

          有一個關(guān)于釋義生成(paraphrase generation)的令人興奮的研究 ——Syntax-guided Controlled Generation of Paraphrases。Kumar 等人已經(jīng)證明,如何利用示例句的語法來釋義源句。生成的釋義詞應(yīng)保留源句意思,但語法和句子結(jié)構(gòu)應(yīng)與示例句相似。

          圖 11 圖片出處:TACL 2020

          圖 11 顯示了在不同示例語句的語法指導(dǎo)下生成的釋義。我們可以仔細的觀察并探究該模型是如何從示例句子的語法中獲得指導(dǎo)的。

          請注意,只有示例句的語法是作為輸入給出的,實際的單個標記則不會輸入到模型??梢栽诓煌母叨?H 處提取示例句的語法樹,并將其作為編碼器 - 解碼器模型的輸入。

          由此,我們得出如下結(jié)論:高度越小,釋義靈活性就越大,而高度越高,就越能顯式地控制釋義的句法結(jié)構(gòu)。

          圖 12 圖片出處:TACL 2020


          編碼語言知識能否捕獲其含義?


          編碼的語言知識對于理解自然語言的意義至關(guān)重要,現(xiàn)在大多數(shù)探針都涉及句法語言知識。我們需要開發(fā)框架來評估像 BERT 這樣的 NLP 模型的功能,機器閱讀理解、文本相似度、問答系統(tǒng)、神經(jīng)機器翻譯等應(yīng)用示例表明,模型的真正性能是以其編碼語義的能力為基礎(chǔ)的。

          開發(fā)諸如 GLUE(General Language Understanding Evaluation)和 SuperGLUE 之類的基準,可以用來評估經(jīng)過微調(diào)的 NLP 模型執(zhí)行自然語言理解任務(wù)的能力。通常,將 NLP 模型的性能與驗證準確性的結(jié)果進行比較。需要注意,使用驗證準確性存在固有的局限性,例如過擬合,驗證集的數(shù)據(jù)分布不同等均可能干擾正確的判斷。

          而在 ACL 2020 年的 Best Paper 論文 “Beyond Accuracy: Behavioral Testing of NLP Models with CheckList” 中,作者提出了一個框架,一種新的 NLP 模型評測方法:CHECKLIST。

          CHECKLIST 借鑒了傳統(tǒng)軟件工程的測試準則,通過模板快速生成大量樣例,全面測試模型的各種能力,可以用于幾乎所有 NLP 任務(wù)。(附:作者提供了開源工具用于生成測試樣例:https://github.com/marcotcr/checklist)

          CHECKLIST 建議使用三種不同的測試方法:
          1. 最小功能測試(MFT, Minimum Functionality Tests),其中使用預(yù)期的金標生成示例;

          2. 不變性測試(INV, INVariance Tests),其中從給定的示例中,創(chuàng)建新示例,其中金標被翻轉(zhuǎn);

          3. 方向預(yù)期測試(DIR, Directional Expectation Tests)對原始句子進行修改,金標往期望的方向(正向 / 負向)變化。


          作者建議對于 NLP 模型的每一種能力,都盡量采用這三種測試方法測試一遍。

          示例如下:

          圖 13 圖片出處:ACL 2020

          令人驚訝地是,盡管像 Roberta 和 BERT 這樣的模型超過了人類基線(準確度分別為 91.1%和 91.3%),但在基于驗證數(shù)據(jù)集的簡單規(guī)則泛化上卻 “一塌糊涂”。也就是說,要實現(xiàn)人類水平的自然語言理解,仍任重道遠。

          最后,通過評估探針對 NLP 模型中的編碼語言知識,我們總結(jié)了以下幾點:
          • NLP 模型確實可以對語言知識進行編碼,以解決某些下游 NLP 任務(wù)。

          • 較大的模型或表示形式不一定更好編碼語言知識。

          • 為句法任務(wù)編碼的語言知識可以泛化到具有復(fù)雜句子結(jié)構(gòu)的測試數(shù)據(jù),這歸因于模型對語言語法的編碼能力。

          • 較深層次的探針可能會過度擬合并潛在地記憶輔助任務(wù),從而導(dǎo)致我們對編碼語言知識的估計過高,得出誤判,所以,建議設(shè)計探針的控制任務(wù)。

          • 提供語言知識后,模型可以更好地完成從此類知識中尋求指導(dǎo)的任務(wù)。

          • 句法語言知識不足以捕捉自然語言理解的含義,甚至目前最前沿的模型離實現(xiàn) NLP 任務(wù)所需的理解也尚有差距。


          總而言之,編碼的語言知識本質(zhì)上主要是語法上的,正如 “CHECKLIST” 所證實的那樣,模型在語義的泛化上基本是失敗的,最先進的 NLP 模型主要是在未標記的數(shù)據(jù)上以自我監(jiān)督的方式進行預(yù)訓(xùn)練,并在有限的標記數(shù)據(jù)上進行了微調(diào)以用于下游任務(wù)。而從未標記的數(shù)據(jù)或有限的標記數(shù)據(jù)中獲取與任務(wù)或領(lǐng)域相關(guān)的語義知識無疑是很困難的。

          注入語義和領(lǐng)域兩方面的知識可以提高 NLP 模型對兩者的編碼能力,因此也內(nèi)在地提高了模型的推理能力,并產(chǎn)生了合理可信的解釋。

          補充一下,Guar 等人 在 Semantics of the Black-Box: Can knowledge graphs help make deep learning systems more interpretable and explainable?” 中描述了知識圖譜(Knowledge Graphs)是如何幫助深度學(xué)習(xí)系統(tǒng)更具理解性和可解釋性的,感興趣的讀者可以選擇閱讀。

          如何跨越語言知識的鴻溝,仍將是一個具有挑戰(zhàn)性的研究課題。

          點擊閱讀原文,即可查看原文鏈接
          文章轉(zhuǎn)載自:數(shù)據(jù)實戰(zhàn)派,如需轉(zhuǎn)載請聯(lián)系原作者授權(quán)。
          數(shù)據(jù)實戰(zhàn)派,利用真實數(shù)據(jù),提升分析能力,共建有趣的大數(shù)據(jù)社區(qū)。




          ?
          推薦閱讀:
          開源項目在GitHub上貢獻33.5W個Star!騰訊的十年「云」答卷,請收好!
          「2020中國AI算力報告」重磅出爐:中國怎么解決GPT-3的算力難題?



          瀏覽 28
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  AV天堂成人网 | 一区二区三区在线视频免费 | 西西444WWW无码高清视频 | 一级二级黄色视屏 | 亚洲精选一区二区三区 |