依存句法分析(Dependency Parsing)是什麼?

依存句法分析是自然語言處理中,分析句子中詞彙之間的依存關係,建立句子的語法結構,揭示詞彙間的修飾、支配等關係。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

依存句法分析(Dependency Parsing)是什麼? 自然語言處理AI基礎

你讀一句話時,怎麼知道哪個詞在修飾哪個詞? 你可以把 依存句法分析 想成句子裡的關係圖。 它其實就是把每個詞和它依賴的詞連起來,標出誰修飾誰、誰支配誰。 依存句法分析是自然語言處理中,分析句子中詞彙之間的依存關係,建立句子的語法結構,揭示詞彙間的修飾、支配等關係。這會直接影響機器怎麼理解句意,也常是後續 NLP 任務的基礎。

容易混淆

vs 成分句法分析 成分句法分析像搭積木,把詞組合成更大的結構(名詞片語、動詞片語);依存句法分析則像畫箭頭,直接標示詞與詞之間的「誰依賴誰」的關係,更側重語義連結。

自然語言處理 vs 詞性標注 自然語言處理 比較像同一類問題裡的近鄰參考,詞性標注 則更像把資料或結構往更深一層整理,兩者的用法不一樣。

最關鍵的區別: 先看它是在做「理解、生成、分組、保護」哪一件事,再看細節。

記住這句就好

畫出詞和詞之間的依存箭頭

實際案例

案例一:依存句法分析 處理中文句子 你看到「我昨天在台北買了新手機」時,系統要知道「買了」是核心動作,「昨天」修飾時間,「台北」修飾地點。

案例二:依存句法分析 幫助資訊抽取 當句子很長、修飾很多,依存關係可以讓後續任務更快知道誰跟誰有關。

深入了解

依存句法分析常把每個詞連到它所依賴的核心詞,形成樹或圖 這能幫助做資訊抽取、問答和機器翻譯前處理 中文場景常先要分詞,否則句法關係很難站穩

依存句法分析 真正重要的,不是名詞本身,而是它幫你解決的是哪一類問題。

情境判斷

Q1(直覺題): 一句話裡,哪個詞修飾哪個詞,機器有必要知道嗎? → 有必要,因為這會影響整句話的語法和語意理解。

Q2(判斷題): 中文和英文做依存句法分析時,步驟會完全一樣嗎? → 看情況,中文常要先分詞,因為詞邊界不明顯,這一步會直接影響後面的依存關係。

常見問題

依存句法分析的準確度如何評估?

依存句法分析的準確度通常使用標注依賴準確率(Labeled Attachment Score, LAS)和非標注依賴準確率(Unlabeled Attachment Score, UAS)來評估。LAS是指依存關係標籤和父節點都正確的詞彙數量與總詞彙數量的比率。UAS是指父節點正確的詞彙數量與總詞彙數量的比率。此外,還可以使用其他指標,例如根節點準確率(Root Accuracy)等。

如何選擇合適的依存句法分析器?

選擇合適的依存句法分析器取決於具體的應用需求和可用的資源。如果需要高準確度,可以選擇基於深度學習的依存句法分析器。如果資源有限,可以選擇基於轉換或基於圖的方法的依存句法分析器。此外,還需要考慮依存句法分析器是否支持所需的語言和依存關係標籤集。預訓練模型通常是一個不錯的選擇,可以節省訓練時間。

依存句法分析在中文自然語言處理中的應用有哪些不同?

中文依存句法分析與英文依存句法分析的主要區別在於中文需要先進行分詞。中文沒有明顯的詞彙邊界,因此需要先使用分詞器將文本分割成詞彙,然後才能進行依存句法分析。此外,中文的語法結構與英文不同,因此需要使用針對中文語法結構設計的依存句法分析器。中文依存句法分析也面臨著歧義消解的挑戰。