Stanford NLP 解讀 ACL 2018 論文——用於調試 NLP 模型的語義等價對立規則
雷鋒網 AI 科技評論按,近日,斯坦福自然語言處理小組發布了一篇博文,重點討論了由 Ribeiro、Marco Tulio、Sameer Singh 和 Carlos Guestrin 寫的論文「Semantically equivalent adversarial rules for debugging nlp models」(用於調試 NLP 模型的語義等價對立規則)。該論文是 2018 年 ACL 論文,被發表在《計算語言學協會第 56 屆年度會議論文集》2018 年第 1 卷:長篇論文中。雷鋒網 AI 科技評論將這片博文編譯整理如下。
魯棒性是工程中的一個核心問題。正如弔橋一樣,它需要抵禦強風,這樣它就不會像塔科馬窄橋那樣倒塌。它也需要像核反應堆一樣可以容錯,這樣福島第一核電站事件就不會發生。
當我們越來越依賴一種技術——弔橋、核電,或者是 NLP 模型時,我們必須提高對這項技術的信任水平。魯棒性正是我們在這些系統上所需要的。
打開今日頭條,查看更多圖片Jia&Liang 在 2017 年的早期研究表明,NLP 模型很容易受到文本中人類微小干擾的影響——簡單的添加或刪除可以打破模型,迫使其產生無意義的答案。其他研究,如 belinkov&bisk 的研究、ebrahimi 等人的研究,顯示了系統的不穩定,即刪除或替換一個字元就足以破壞模型。在序列數據中引入雜訊並不總是壞事:Xie 等人 4 的早期工作表明,使用單詞或者字元級擾動(雜訊)訓練機器翻譯或語言模型實際上提高了性能。
然而,在 Ian Goodfellow 的最初概念中,很難將這些受干擾的例子稱為「對抗性的例子」。本文提出了一種用兩個性質來描述文本中一個對立的例子的方法:
兩個句子的語義等價性:SemEq(x,x′)
擾動標籤預測:f(x)≠f(x′)
在我們的討論中,人們指出,從語言學的角度來看,很難定義「語義等價」,因為我們對「意義」沒有一個精確而客觀的定義。也就是說,即使兩個句子對某個特定任務能產生相同的效果,它們也不需要是同義詞。在「What Is a Paraphrase」中可以找到對英語釋義的更細微的討論?這是 Bhagat & Hovy 在 2012 年發表的一篇文章,在文中,語義等價被認為是人類判斷的「等價物」。
語義等價難點(SEAs)
Ribeiro 等人認為只有滿足這兩個條件的序列才是文本中真正的對立例子。它們使用指示函數將此條件轉換為連接形式:
「Pivoting」是 Bannard 和 Callison-Burch 在 2005 年提出的一種統計機器翻譯技術。本文以 Lapata 等人 2017 年發表的多語種釋義論文中定義的釋義可能性來衡量語義等價性。如果兩個英語字元串 e1和 e2可以翻譯成同一個法語字元串 f,那麼可以假定這兩個字元串的意思是相同的。
圖 1
圖 2
pivot 方案由圖 1 的生成模型描述,假設 e1和 e2之間存在條件獨立性,給定 f:p(e2| e1,f)=p(e2| f)。圖 2 的模型描述了 Multipivot:它將一個英語句子翻譯成多個法語句子,然後再重新翻譯成英語生成釋義。multipivoting 的反向翻譯可以是一個簡單的解碼器平均值——每個解碼器使用一個法語字元串,下一個英語標記的總輸出概率是每個解碼器概率的加權和。雷鋒網
釋義概率重新加權
假設釋義模型中的非規範化邏輯為 ?(x′|x),假設 ∏x 是模型可以生成的給定 x 的一組釋義,那麼特定釋義的概率表示如下:
注意在分母中,所有生成的句子(包括生成的原始句子)共享這個概率。如果一個句子有許多容易產生的釋義(用高?值表示),那麼 p(x|x) 和所有其他 p(x′|x) 都會很小,用 p(x′|x) 除以 p(x|x) 將得到一個較大的值(接近 1)。對於一個難以釋義的句子,p(x|x) 應該比 p(x′|x) 大得多,此時用 p(x′|x) 除以 p(x|x) 將得到一個較小的值(接近 0)。
基於這種直覺,Ribeiro 等人建議計算語義得分 S(x,x′) 作為釋義質量的衡量標準:
生成滿足方程式 1 的對立句子的簡單方法是:要求釋義模型生成句子 x 的釋義。可以嘗試這個式子,看是否會改變模型的預測結果:f(x′)≠f(x)。
語義等價對抗規則(SEARs)
SEAs 是為每一個示例獨立產生的對抗性示例。在這一步中,作者制定了將這些本地 SEAs 轉化為全局規則(SEARs)的步驟。本文定義的規則是一個簡單的離散變換 r=(a→c)。例如,r=(movie→film) 可以變成 r("Great movie!") = "Great film!"。
給定一對文本(x,x′),其中 SEA(x,x′)=1,Ribeiro 等人選擇將 x 轉換為 x′ 的文本的最小連續跨度,包括鄰近上下文(文本前後各一個單詞),並用 POS(語音的一部分)標籤對序列進行注釋。最後一步是生成生詞和它們的 POS 標籤組合的產物,下面的例子可以看到它是如何一步一步做到這點的:
"What color is the tray?" -> "Which color is the tray?"
步驟 1: (What -> Which)
步驟 2: (What color -> Which color)
步驟 3: (What color -> Which color), (What NOUN -> Which NOUN), (WP color -> Which color), (What color -> WP color)
因為這個過程適用於每對(x,x′),並且我們假設人們只願意通過 B 規則,Ribeiro 等人建議通過篩選使|R|≤B,那麼標準將會是:
產生語義等價句子的概率很高:這是通過式子
來衡量的。簡單地說,通過應用這個規則,語料庫中的大多數 x 可以翻譯成語義上等價的釋義。在論文中,δ=0.1。
釋義的數量多:規則 r 還必須生成可以更改模型預測結果的釋義。此外,釋義相互之間的語義相似性也應該很高,這一點可以用
來評估。
沒有冗餘:規則應多樣化,並覆蓋儘可能多的 x 。
為了滿足上面的第 2、3 條標準,Ribeiro 等人提出了一種子模型優化目標,該目標可以用貪心演算法來實現,在理論上保證常數因子的最優解。
演算法的整體描述如下:
實驗與驗證
Ribeiro 等人關注的關鍵指標是翻轉的百分比,它的定義為,在驗證集中,有多少例子被正確地預測,但是在使用規則後預測是錯誤的。
在討論過程中,對這個度量標準的意見是,它並沒有指出有多少示例受到這個規則的影響。例如,在 VQA 數據集中,將"color" 更改為"colour" 的規則可能只有 2.2% 的翻轉率,但這可能是因為在 VQA 的驗證集中,只有 2.2% 的實例包含單詞「color」。因此,事實上,此規則在生成對抗性示例中有 100% 的成功率。
這篇論文展示了一些非常好的離散規則,這些規則可以生成對抗性的文本示例如下:
人參與實驗
Ribeiro 等人對人類進行了實驗。把人類帶到實驗中有兩個目的:人類可以判斷規則是否真的能產生意譯(超出了 Lapata 等人提供的語義評分模型);人類可以判斷規則引起的干擾是否真的有意義。
他們首先評估了 SEA 的質量:對於驗證集中 100 個正確預測的示例,他們創建了三組比較:1)完全由人類創造;2)完全由 SEA 模型生成;3)通過演算法生成 SEA,但是用人類相似性判斷的標準替換 S(x,x′)。
結果顯示,SEA 的成績勉強超過人類(18% VS 16%),但結合人類的判斷,HSEA 的表現遠超人類(24% VS 13%)。
隨後他們評估了全局規則SEARs。這一次,他們邀請「專家」使用互動式 Web 界面創建全局規則。他們將專家定義為參加過一個研究生級別的 NLP 或 ML 課程的學生、教師。嚴格來說,專家應該是語言學專業的學生。
專家可以看到關於規則創建的即時反饋:他們知道在 100 個示例中,有多少示例受到規則的干擾,有多少示例的預測標籤受到干擾。為了進行公平的比較,他們被要求創建儘可能多的規則,並從中選出最好的 10 個。此外,每個專家都有大約 15 分鐘的時間來創建規則。他們還被要求評估 SEARs 並選出 10 個對保持語義等價性最有意義的規則。
結果並不令人驚訝,SEARs 在達到一個高翻轉百分比方面表現得好得多。人與機器結合的結果優於只有人或者只有機器。他們還比較了專家創建規則與評估機器創建的規則所需的平均時間(秒)。
最後,論文給出了一個簡單的解決這些 bug 的方法:他們可以簡單地使用這些人為接受的規則來干擾訓練集,並且能夠在 VQA 上將錯誤率從 12.6% 降低到 1.4%,在情感分析上從 12.6% 降低到 3.4%。
總結
本文採用釋義模型來評估語義相似度,生成語義等價的句子。如文中所述,基於機器翻譯的釋義只會對句子造成局部干擾,而人類創造的語義等價句子會產生更顯著的干擾。
另一個局限是基於梯度的對抗性示例生成更具指導性,而本文提出的方法似乎是一種簡單的試錯方法(不斷生成釋義,直到一個釋義干擾模型預測)。另一方面,這種方法適用於沒有梯度訪問的黑盒模型,因此比基於梯度的方法更通用。
本文提供了一個清晰的框架,並明確地提出了對抗性文本示例應遵循的特徵。這個定義與計算機視覺中的對抗性例子非常兼容。然而,這個框架只涵蓋了一種特定類型的對抗性示例。這種方法沒有涉及到的一個明顯的對抗性例子是添加或刪除句子之類的操作,而這對於攻擊 QA 模型很重要。
參考文獻:
Jia, Robin, and Percy Liang. "Adversarial examples for evaluating reading comprehension systems." arXiv preprint arXiv:1707.07328 (2017).
Belinkov, Yonatan, and Yonatan Bisk. "Synthetic and natural noise both break neural machine translation." arXiv preprint arXiv:1711.02173(2017).
Ebrahimi, Javid, et al. "HotFlip: White-Box Adversarial Examples for Text Classification." arXiv preprint arXiv:1712.06751 (2017).
Xie, Ziang, et al. "Data noising as smoothing in neural network language models." arXiv preprint arXiv:1703.02573 (2017).
Goodfellow, Ian J., Jonathon Shlens, and Christian Szegedy. "Explaining and harnessing adversarial examples (2014)." arXiv preprint arXiv:1412.6572.
Mallinson, Jonathan, Rico Sennrich, and Mirella Lapata. "Paraphrasing revisited with neural machine translation." Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics: Volume 1, Long Papers. Vol. 1. 2017.
Colin Bannard and Chris Callison-Burch. 2005. Paraphrasing with bilingual parallel corpora. In Proceedings of the 43rd Annual Meeting of the Association for Computational Linguistics, pages 597–604, Ann Arbor, Michigan.
via:https://nlp.stanford.edu/blog/reading-group-blog-semantically-equivalent-adversarial-rules-for-debugging-nlp-models-acl-2018-/
※Live回顧 | 視見醫療科技研發總監王少彬:宮頸癌放療精準臨床靶區勾畫
※2019,這裡有你今年必須了解的各種5G商用「姿勢」 | 5G商用元年
TAG:雷鋒網 |