constituent parsing & dependency parsing

句法分析是對句子進行分析非常重要的部分,主要包括constituency parsing(成分句法分析)和dependency parsing(依存句法分析),兩者具有非常大的差異。


1. constituent parsing

A constituency parse tree breaks a text into sub-phrases. Non-terminals in the tree are types of phrases, the terminals are the words in the sentence, and the edges are unlabeled. For a simple sentence "John sees Bill", a constituency parse would be:

Sentence | +-------------+------------+ | | Noun Phrase Verb Phrase | | John +-------+--------+ | | Verb Noun Phrase | | sees Bill

一個成分解析樹將一段文本轉化為短語,樹中的非葉子結點是短語的類型,而葉子結點是句子中的word,邊是沒有標記的, 一個簡單的句子"John sees Bill"解析到的結果如上所示

在Stanford CoreNLP中得到的結果如下所示,我們以「在秋天的時候,陶喆愛吃蘋果」為例進行說明

(ROOT (IP (PP (P 在) (NP (DNP (NP (NN 秋天)) (DEC 的)) (NP (NN 時候)))) (PU ,) (NP (NR 陶喆)) (VP (VV 愛) (IP (VP (VV 吃) (NP (NN 蘋果)))))))

將其進行圖形化表示,如下所示

constituent parsing 結果圖示


2. dependency parsing

A dependency parse connects words according to their relationships. Each vertex in the tree represents a word, child nodes are words that are dependent on the parent, and edges are labeled by the relationship. A dependency parse of "John sees Bill", would be:

一個依存解析將word按照他們的關係連接起來,每個節點代表一個word,邊用關係來進行表示。

root(ROOT-0, 愛-7)case(時候-4, 在-1)nmod:assmod(時候-4, 秋天-2)dep(秋天-2, 的-3)nmod:prep(愛-7, 時候-4)punct(愛-7, ,-5)nsubj(愛-7, 陶喆-6)ccomp(愛-7, 吃-8)dobj(吃-8, 蘋果-9)

一個常識是依存句法樹能夠根據成分句法樹轉換而來,但成分句法樹不能通過依存樹轉化來。轉換的規則是head-finding rules from Zhang and Clark 2008

3. Head word

head word在不同的parse方案中是不一樣的。

在成分句法分析中,一個長短語的head word表示最能表示整個短語的那個詞,名詞短語一般是名詞,動詞短語一般是動詞。而具體怎麼選,則根據不同的parser採取的方案有不同的規定,不過大部分的句子是一樣的,如上圖這些簡單的句子,不同的parser規則,得到的樹應該是一樣的。在」布朗訪問上海「這一整棵樹中head word就是「訪問」這個詞,而在右子樹上head word是「訪問」。

在依存句法分析中,eating fish的中心就是eating,因為fish依賴於eating,中心詞的作用可以理解成在parse的過程中的一個重要的特徵

推薦閱讀:

Distant Supervision for Relation Extraction with Sentence-Level Attention and Entity Descriptions
<<Deep Semantic Role Labeling with Self-Attention>>閱讀筆記
基於知識庫的問答:seq2seq模型實踐
Neural Machine Translation with Word Predictions 閱讀筆記
吳恩達 DeepLearning.ai 課程提煉筆記(5-2)序列模型 --- NLP和詞嵌入

TAG:自然語言處理 |