來自加利福尼亞州歐文分校的艾倫人工智能研究所和研究人員發(fā)布了AllenNLP Interpret,該工具包用于解釋自然語言處理(NLP)模型的結(jié)果??蓴U(kuò)展的工具包包括用于解釋和可視化組件的幾種內(nèi)置方法,以及使用AllenNLP Interpret解釋包含BERT和RoBERTa的最新NLP模型的結(jié)果的示例。
在arXiv上發(fā)表的一篇論文中,研究團(tuán)隊(duì)更詳細(xì)地描述了該工具包。AllenNLP Interpret使用兩種基于梯度的解釋方法:顯著性圖,確定輸入句子中的每個單詞或“標(biāo)記”對模型的預(yù)測有多大作用;以及對抗攻擊,嘗試刪除或更改輸入中的單詞,同時仍保持來自模型的相同預(yù)測。這些技術(shù)可用于各種NLP任務(wù)和模型架構(gòu)。這些實(shí)現(xiàn)使用一組通用的API和可視化組件,為將來開發(fā)其他技術(shù)和模型支持提供了框架。
隨著公司越來越多地使用AI來自動提供問題的答案,用戶想知道為什么 AI會給出給定的答案。例如,在檢測到信用卡交易欺詐的情況下,該交易特別暗示欺詐嗎?
對模型如何產(chǎn)生答案的解釋對于模型開發(fā)人員了解面對新數(shù)據(jù)時系統(tǒng)將如何泛化的能力也很重要。AllenNLP Interpret研究人員Sameer Singh經(jīng)常引用該模型來區(qū)分狼和狗,但實(shí)際上只是學(xué)會了檢測雪。
對于某些機(jī)器學(xué)習(xí)算法,解釋很簡單:例如,決策樹只是一系列if / then規(guī)則。但是,深度學(xué)習(xí)模型的輸出可能更難以解釋。
辛格的先前工作包括LIME,它使用線性逼近來解釋更復(fù)雜模型的預(yù)測。AllenNLP Interpret使用基于梯度的方法,該方法可測量輸入要素對輸出的影響。由于計(jì)算此梯度是深度學(xué)習(xí)培訓(xùn)的關(guān)鍵組成部分,因此這些方法可以應(yīng)用于任何深度學(xué)習(xí)模型。
盡管這些技術(shù)是通用的,但AllenNLP Interpret旨在用于NLP。NLP系統(tǒng)的輸入是文本字符串,通常是句子或整個文檔,然后將文本解析為其組成詞或標(biāo)記。AllenNLP Interpret包括顯著性圖,顯示每個標(biāo)記對模型預(yù)測的貢獻(xiàn);一個用例可能是解釋句子中的哪些單詞導(dǎo)致其情感被分為正面或負(fù)面。
該工具包還包括兩個對抗方法,這些方法顯示了更改輸入中的標(biāo)記如何影響輸出。第一,HotFlip,用其他單詞替換斜率最高的輸入單詞,直到模型輸出更改。另一種攻擊是輸入縮減,它會反復(fù)刪除坡度最小的單詞,而不會更改輸出。這導(dǎo)致輸入文本“通常是無意義的,但會引起高置信度預(yù)測”。