依存句法解析《an efficient algorithm for projective dependency parsing》

Motivation:

依存句法分析在句法分析和語義消歧任務上發揮着重要的作用。在此之前決策式的分析方法(deterministic parsing)大部分都是語言心理學家考慮的問題,而這種方法在消歧任務上有很大優勢,因此本文提出一種數據驅動的依存句法分析方法——基於轉移的決策式分析方法用來替代傳統的做法。將生成句法樹的任務轉換成生成操作序列的任務。

 

基本概念:

一顆依存樹應該滿足以下形式約束:

Single head:即句子中的每個單詞只有一個入邊;

Acyclic:依存圖或依存樹中不能出現循環結構;

Connected:圖中任意兩個結點之間通過有限的邊可以連接;

Projective:假設這條邊連接的是wi和wj,其中i<j,它的中心詞是head(是wi,wj中的一個)。如果對於i和j之間的每一個詞,都存在一條從head到它的路徑,那麼這條邊就滿足Projective性質。

 

總體流程:

先看一個整個算法執行的步驟:

  1. 我們目前有的是預料(如下圖)和句法解析算法(下面介紹)

     

                                                                       原始數據

  1. 然後用句法解析算法對語料進行處理生成一系列的操作,原始數據加上操作纔是訓練數據(這裏纔是訓練數據);
  2. 根據訓練數據生成一個解析器(parser);
  3. 測試數據放入解析器生成一系列的操作,有了這些操作就相當於得到句法樹;
  4. 計算attachment score,判斷生成句法樹的質量。

 

解析算法:

這部分算法用來根據語料生成訓練數據,對於如何根據訓練數據生成模型文章中並沒有提到。參考其他資料可以發現,大部分都是利用SVM或最大熵訓練解析器(parser)。

  1. Baseline:

                     

  1. S/R:  

If the node on top of the stack can be a transitive head of the next input token then Shift; otherwise Reduce.

  1. S/RA:

preferring a Shift over a Right-Arc in congurations where the token on top of the stack is a verb and the next token could be a post-modier of this verb but could also be a pre-modier of a following token.例如下圖所示情況。

                              

 

實驗結果:

可以發現模型越複雜,效果越好。

                        

 

啓發:

  1. 在選擇操作時,使用更復雜的優先級算法;
  2. 除上面4個約束以外,考慮其他約束;
  3. 改動不同生成parser的模型。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章