0
本文作者: 汪思穎 | 2019-06-18 14:10 | 專題:ICML 2019 |
雷鋒網(wǎng) AI 科技評論按,本文作者張拳石,上海交通大學副教授,研究方向為機器學習、計算機視覺,本文首發(fā)于知乎,雷鋒網(wǎng) AI 科技評論獲其授權轉載。以下為正文內容。
本來想把題目取為「從煉丹到化學」,但是這樣的題目太言過其實,遠不是近期可以做到的,學術研究需要嚴謹。但是,尋找適當?shù)臄?shù)學工具去建模深度神經(jīng)網(wǎng)絡表達能力和訓練能力,將基于經(jīng)驗主義的調參式深度學習,逐漸過渡為基于一些評測指標定量指導的深度學習,是新一代人工智能需要面對的課題,也是在當前深度學習渾渾噩噩的大背景中的一些新的希望。
這篇短文旨在介紹團隊近期的 ICML 工作——「Towards a Deep and Unified Understanding of Deep Neural Models in NLP」(這篇先介紹 NLP 領域,以后有時間再介紹類似思想解釋 CV 網(wǎng)絡的論文)。這是我與微軟亞洲研究院合作的一篇論文。其中,微軟研究院的王希廷研究員在 NLP 方向有豐富經(jīng)驗,王老師和關超宇同學在這個課題上做出了非常巨大的貢獻,這里再三感謝。
大家說神經(jīng)網(wǎng)絡是「黑箱」,其含義至少有以下兩個方面:一、神經(jīng)網(wǎng)絡特征或決策邏輯在語義層面難以理解;二、缺少數(shù)學工具去診斷與評測網(wǎng)絡的特征表達能力(比如,去解釋深度模型所建模的知識量、其泛化能力和收斂速度),進而解釋目前不同神經(jīng)網(wǎng)絡模型的信息處理特點。
過去我的研究一直關注第一個方面,而這篇 ICML 論文同時關注以上兩個方面——針對不同自然語言應用的神經(jīng)網(wǎng)絡,尋找恰當?shù)臄?shù)學工具去建模其中層特征所建模的信息量,并可視化其中層特征的信息分布,進而解釋不同模型的性能差異。
其實,我一直希望去建模神經(jīng)網(wǎng)絡的特征表達能力,但是又一直遲遲不愿意下手去做。究其原因,無非是找不到一套優(yōu)美的數(shù)學建模方法。深度學習研究及其應用很多已經(jīng)被人詬病為「經(jīng)驗主義」與「拍腦袋」,我不能讓其解釋性算法也淪為經(jīng)驗主義式的拍腦袋——不然解釋性工作還有什么意義。
研究的難點在于對神經(jīng)網(wǎng)絡表達能力的評測指標需要具備「普適性」和「一貫性」。首先,這里「普適性」是指解釋性指標需要定義在某種通用的數(shù)學概念之上,保證與既有數(shù)學體系有盡可能多的連接,而與此同時,解釋性指標需要建立在盡可能少的條件假設之上,指標的計算算法盡可能獨立于神經(jīng)網(wǎng)絡結構和目標任務的選擇。
其次,這里的「一貫性」指評測指標需要客觀的反應特征表達能力,并實現(xiàn)廣泛的比較,比如
1. 診斷與比較同一神經(jīng)網(wǎng)絡中不同層之間語義信息的繼承與遺忘;
2. 診斷與比較針對同一任務的不同神經(jīng)網(wǎng)絡的任意層之間的語義信息分布;
3. 比較針對不同任務的不同神經(jīng)網(wǎng)絡的信息處理特點。
具體來說,在某個 NLP 應用中,當輸入某句話 x=[x1,x2,…,xn] 到目標神經(jīng)網(wǎng)絡時,我們可以把神經(jīng)網(wǎng)絡的信息處理過程,看成對輸入單詞信息的逐層遺忘的過程。即,網(wǎng)絡特征每經(jīng)過一層傳遞,就會損失一些信息,而神經(jīng)網(wǎng)絡的作用就是盡可能多的遺忘與目標任務無關的信息,而保留與目標任務相關的信息。于是,相對于目標任務的信噪比會逐層上升,保證了目標任務的分類性能。
我們提出一套算法,測量每一中層特征 f 中所包含的輸入句子的信息量,即 H(X|F=f)。當假設各單詞信息相互獨立時,我們可以把句子層面的信息量分解為各個單詞的信息量 H(X|F=f) = H(X1=x1|F=f) + H(X2=x2|F=f) + … + H(Xn=xn|F=f). 這評測指標在形式上是不是與信息瓶頸理論相關?但其實兩者還是有明顯的區(qū)別的。信息瓶頸理論關注全部樣本上的輸入特征與中層特征的互信息,而我們僅針對某一特定輸入,細粒度地研究每個單詞的信息遺忘程度。
其實,我們可以從兩個不同的角度,計算出兩組不同的熵 H(X|F=f)。
(1)如果我們只關注真實自然語言的低維流形,那么 p(X=x|F=f) 的計算比較容易,可以將 p 建模為一個 decoder,即用中層特征 f 去重建輸入句子 x。(2)在這篇文章中,我們其實選取了第二個角度:我們不關注真實語言的分布,而考慮整個特征空間的分布,即 x 可以取值為噪聲。在計算 p(X=x,F=f) = p(X=x) p(F=f|X=x) 時,我們需要考慮「哪些噪聲輸入也可以生成同樣的特征 f」。舉個 toy example,當輸入句子是「How are you?」時,明顯「are」是廢話,可以從「How XXX you?」中猜得。這時,如果僅從真實句子分布出發(fā),考慮句子重建,那些話佐料(「are」「is」「an」)將被很好的重建。而真實研究選取了第二個角度,即我們關注的是哪些單詞被神經(jīng)網(wǎng)絡遺忘了,發(fā)現(xiàn)原來「How XYZ you?」也可以生成與「How are you?」一樣的特征。
這時,H(X|F=f) 所體現(xiàn)的是,在中層特征 f 的計算過程中,哪些單詞的信息在層間傳遞的過程中逐漸被神經(jīng)網(wǎng)絡所忽略——將這些單詞的信息替換為噪聲,也不會影響其中層特征。這種情況下,信息量 H(X|F=f) 不是直接就可以求出來的,如何計算信息量也是這個課題的難點。具體求解的公式推導可以看論文,知乎上只放文字,不談公式。
首先,從「普適性」的角度來看,中層特征中輸入句子的信息量(輸入句子的信息的遺忘程度)是信息論中基本定義,它只關注中層特征背后的「知識量」,而不受網(wǎng)絡模型參數(shù)大小、中層特征值的大小、中層卷積核順序影響。其次,從「一貫性」的角度來看,「信息量」可以客觀反映層間信息快遞能力,實現(xiàn)穩(wěn)定的跨層比較。如下圖所示,基于梯度的評測標準,無法為不同中間層給出一貫的穩(wěn)定的評測。
下圖比較了不同可視化方法在分析「reverse sequence」神經(jīng)網(wǎng)絡中層特征關注點的區(qū)別。我們基于輸入單詞信息量的方法,可以更加平滑自然的顯示神經(jīng)網(wǎng)絡內部信息處理邏輯。
下圖分析比較了不同可視化方法在診斷「情感語義分類」應用的神經(jīng)網(wǎng)絡中層特征關注點的區(qū)別。我們基于輸入單詞信息量的方法,可以更加平滑自然的顯示神經(jīng)網(wǎng)絡內部信息處理邏輯。
基于神經(jīng)網(wǎng)絡中層信息量指標,分析不同神經(jīng)網(wǎng)絡模型的處理能力。我們分析比較了四種在 NLP 中常用的深度學習模型,即 BERT, Transformer, LSTM, 和 CNN。在各 NLP 任務中,BERT 模型往往表現(xiàn)最好,Transformer 模型次之。
如下圖所示,我們發(fā)現(xiàn)相比于 LSTM 和 CNN,基于預訓練參數(shù)的 BERT 模型和 Transformer 模型往往可以更加精確地找到與任務相關的目標單詞,而 CNN 和 LSTM 往往使用大范圍的鄰接單詞去做預測。
進一步,如下圖所示,BERT 模型在預測過程中往往使用具有實際意義的單詞作為分類依據(jù),而其他模型把更多的注意力放在了 and the is 等缺少實際意義的單詞上。
如下圖所示,BERT 模型在 L3-L4 層就已經(jīng)遺忘了 EOS 單詞,往往在第 5 到 12 層逐漸遺忘其他與情感語義分析無關的單詞。相比于其他模型,BERT 模型在單詞選擇上更有針對性。
我們的方法可以進一步細粒度地分析,各個單詞的信息遺忘。BERT 模型對各種細粒度信息保留的效果最好。
十多年前剛剛接觸 AI 時總感覺最難的是獨立找課題,后來發(fā)現(xiàn)追著熱點還是很容易拍腦袋想出一堆新題目,再后來發(fā)現(xiàn)真正想做的課題越來越少,雖然 AI 領域中學者們的投稿量一直指數(shù)增長。
回國以后,身份從博后變成了老師,帶的學生增加了不少,工作量也翻倍了,所以一直沒有時間寫文章與大家分享一些新的工作,如果有時間還會與大家分享更多的研究,包括這篇文章后續(xù)的眾多算法。信息量在 CV 方向應用的論文,以及基于這些技術衍生出的課題,我稍后有空再寫。
順便做個廣告,歡迎有能力的學生來實驗室實習,同時也招博后。目前我的團隊有 30 余人,其中不少同學是外校全職訪問實習生。我一般會安排每三四人為一個團隊做一個課題,由于訪問實習生往往不用為上課而分心,可以全天候做實驗室工作,在經(jīng)過一定訓練之后往往會擔任團隊領導。
雷峰網(wǎng)版權文章,未經(jīng)授權禁止轉載。詳情見轉載須知。