Investigating Capsule Networks with Dynamic Routing for Text Classification
發表在EMNLP 2018
文章目錄
- CNN 在對空間信息進行建模時,需要對特徵檢測器進行復制,降低了模型的效率。
- CNN 空間不敏感的方法不可避免地受限於豐富的文本結構(比如保存單詞的位置信息、語義信息、語法結構等),難以有效地進行編碼且缺乏文本表達能力。
Capsule Network 由hinton提出,用神經元向量代替傳統神經網絡的單個神經元節點,以 Dynamic Routing 的方式去訓練這種全新的神經網絡,有效地改善了上述兩類方法的缺點。
本文是capsNet在文本分類上的應用,並針對文本分類任務提出了三個策略減少背景或者噪音膠囊對網絡的影響。
- Orphan Category:在膠囊網絡的最後一層,引入 Orphan 類別,它可以捕捉一些背景知識,比如停用詞。在視覺任務加入 Orphan 類別效果比較有限,因爲圖片的背景在訓練和測試集裏往往是多變的。然而,在文本任務,停用詞比較一致,比如謂詞和代詞等。
- Leaky-Softmax:除了在最後一層引入 Orphan 類別,中間的連續卷積層也需要引入去噪機制。對比 Orphan 類別,Leaky-Softmax 是一種輕量的去噪方法,它不需要額外的參數和計算量。
- 路由參數修正:傳統的路由參數,通常用均與分佈進行初始化,忽略了下層膠囊的概率。相反,我們把下層膠囊的概率當成路由參數的先驗,改進路由過程。
在 6 個 benchmarks 上進行了實驗,Capsule Network 在其中 4 箇中取得了最好結果。
同事,在多標籤遷移的任務上(fromsingle-label to multi-label text classification),Capsule Network 的性能遠遠地超過了 CNN 和 LSTM。
Model
模型包含四層,
- N-gram convolutional layer
- primary capsule layer
- convolutional capsule layer
- fully connected capsule layer
N-gram convolutional layer
這是標準的卷積層,對於每一個卷積,窗口大小:
其中,,V是詞向量維度。
卷積核通道數爲B,卷積層輸出:
primary capsule layer
第一層膠囊網絡。
其中:,g是squash函數。
通道數設置爲C,即:
最終輸出爲個維度爲d的膠囊。
Child-Parent Relationships
在膠囊網絡層之間就會存在Child-Parent關係,本文嘗試了兩種transformation。
- 共享權重,對於每一個parent膠囊,共享權重。
- ,其中是每個child-capsule。
- 參數量:
- 非共享權重,對於每一個parent膠囊j,child膠囊i,有
- 參數量:,parent膠囊N個,child膠囊H個。
Dynamic Routing
通過動態路由算法學習獲得child膠囊對parent膠囊的權重,動態的加強或減弱權重,優於會丟失位置信息的max pooling算法。同事本文針對文本分類任務提出了三個策略優化CapsNet:
-
Orphan Category:在膠囊網絡的最後一層,引入 Orphan 類別,它可以捕捉一些背景知識,比如停用詞。在視覺任務加入 Orphan 類別效果比較有限,因爲圖片的背景在訓練和測試集裏往往是多變的。然而,在文本任務,停用詞比較一致,比如謂詞和代詞等。
-
Leaky-Softmax:除了在最後一層引入 Orphan 類別,中間的連續卷積層也需要引入去噪機制。對比 Orphan 類別,Leaky-Softmax 是一種輕量的去噪方法,它不需要額外的參數和計算量。
-
路由參數修正:傳統的路由參數,通常用均與分佈進行初始化,忽略了下層膠囊的概率。相反,我們把下層膠囊的概率當成路由參數的先驗,改進路由過程。
原始Dynamic Routing: