Harnessing Deep Neural Networks with Logic Rules論文解讀

作者信息:Zhiting Hu、Xuezhe Ma、Zhengzhong Liu、Eduard Hovy、Eric P.Xing,都來自CMU

問題:深度神經網絡一個很大的問題是不可解釋性,另一個問題是往往需要大量的訓練數據。因此,我們希望能夠在深度神經網絡中引入一些知識,一方面可以幫助訓練,另一方面能提高模型的可解釋性。具體的知識形式可以採用邏輯規則,因爲它能較好地建模人類的認知思維和先驗知識。那麼如何將深度神經網絡和邏輯規則結合起來?

摘要:將深度神經網絡與結構化的邏輯規則結合在一起是可取的,可以控制神經模型的靈活性,減少模型的不可解釋性。文章提出一個通用框架,能夠用聲明的一階邏輯規則來提升多種神經網絡。特別的,文章開發了一種反覆蒸餾方法,可以將邏輯規則的結構化信息轉移到神經網絡的權值中。文章在語句分析的CNN網絡上以及命名實體識別的RNN網絡上實現了框架。通過一些高度直觀的規則,實驗獲得了大量的提升,得到了state-of-the-art結果,或者和之前最好的系統相比有了競爭性的結果。

深度神經網絡在許多領域都獲得了十分顯著的進展,但是神經網絡的高準確性嚴重依賴於大量的標註數據,並且純粹的數據驅動學習會導致結果的不可解釋性和直觀性。如果沒有昂貴的直接監督或特別初始化,也很難編碼人的意圖來指導模型捕獲期望的模式。

另一方面,人類行爲的識別過程表明,人類的學習不僅來源於具體的例子,還來源於不同形式的通用知識和豐富的經驗。邏輯規則爲高階認知與表達邏輯化知識提供了一個靈活的聲明語言。因此,將邏輯規則注入到DNN中是可行的,將人類意圖和領域知識注入到神經模型,然後控制學習過程。

文章的框架將邏輯結構化知識封裝到神經網絡中,是通過迫使網絡模擬一個規則化教師的預測,並且在訓練過程中迭代的演進這兩個模型。實現過程對於網絡結構是不可知的,因此可以使用在不同的網絡架構上,包括CNN和RNN等。我們在每一次迭代中通過在邏輯約束設置(3.3節)中採用後驗正則化原理來構造teacher網絡,其中公式提供了封閉形式的解。

下圖展示了文章的框架:

圖注:在每一次迭代時,將student網絡投射到rule-regularized子空間中,得到teacher網絡(紅色箭頭)。然後更新student網絡,以達到“模擬teacher網絡的輸出“與“預測真實標註“之間的平衡(黑色/藍色箭頭)。

那麼,實現過程分爲三部分:
1 如何表達logic知識
2 如何把logic加到teacher網絡中
3 teacher-student網絡之間如何一起訓練

  • 網絡學習的來源:實例與規則
    文章提出的方法允許神經網絡從特定的實例和通用規則中學習。Teacher Network使用軟邏輯(soft logic)來編碼一階邏輯信息。soft logic在[0,1]之間的連續取值,而不是二元值{0, 1}。這種在0,1中連續取值的方式能夠引入各種概率,使得模型擴展性大大增強。這裏邏輯運算的形式如下:

  • knowledge distillation
    knowledge distillation其實就是p(y|x)( student network)利用q(y|x)(Teacher network )的輸出和真實 label 之間的權衡結果去 update student network 的參數。整個目標函數如下:
    參數l表示選擇的損失函數,例如分類問題選擇交叉墒作爲損失函數。
    這裏的π就是一個線性參數,用來控制系統偏向哪個網絡。注意teacher network在每次訓練迭代中都要構建,也就是說訓練過程中teacher network和student network是一個聯合訓練的過程(同時學習)。

  • teacher network construction
    第一個要求是引入邏輯規則約束,方法就是在統計模型加入規則的方法,即 posterior regularization(PR)。這裏採用expection operator的方式。第二個要求就是要找到滿足上面這個 rule的條件下儘可能地接近 student network 分佈 p的Teacher network分佈q——這個“接近”就用兩個分佈之間常用的 KL divergence。於是優化問題就是這樣一種形式:

爲什麼不直接把訓練好的模型映射到logic rule constrained的子空間或者是把直接訓練已經映射到logic rule constrained的子空間模型?一個是這種iterative knowledge distillation的過程實驗的結果更好;另一個是這種方式將邏輯規則形式的結構化信息引入到神經網絡的權重中,不需要依靠顯然的規則表達,在測試階段當規則評估無法獲取的時候可以應用到一些新樣本上。

與其直接將 logic rule 強行加入到某一個獨立的 neural networks,這篇論文將 logic rule 所代表的 knowledge 通過 posterior regularization 的方式建模到一個 teacher network 裏,然後用 knowledge distillation 的方式將 teacher network 裏的 knowledge “分享/傳授”給 student network。

訓練

測試時可以使用最後的student network p或者teacher network q,一般來講q的表現會優於p。q更適用邏輯規則覆蓋了大量樣本的情況,而p更適用於規則評價複雜或者未知的情況。

實驗結果

本文分別在CNN和RNN上測試所提出的框架的效果。選取的具體任務爲利用CNN進行情感分類,以及利用RNN進行命名實體識別。

在情感分類任務上,通過引入與連詞but相關的邏輯規則,如下所示:

可見加入邏輯規則,顯著提高了情感分類的效果,達到了State of art的結果。

每日學單詞:
substantial:adj.大量的;結實的,牢固的;重大的 n.本質;重要材料
intuitive:adj.直觀的;直覺的;憑直覺獲知的
distillation:n.蒸餾,昇華(過程)
simultaneously:adv.同時的
complementary:互補的,補充的
imitate:模仿,效仿,僞造
paradigm: n.範例,樣式,模範;詞形變化表
encapsulates:囊括、總結

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章