日文語法分析軟體入門

Facebook Twitter LinkedIn LINE Skype EverNote GMail Yahoo Email

前言

在本文中,我們會簡單地介紹日文的語法分析軟體及其應用。如果我們想把日文語法分析軟體的分析結果應用在自己的軟體上,也有一些現成的函式庫或套件可以使用。

由於本文章非學術論文,我們不會深入探討相關的理論。此外,為了避免文章過長,我們在本文中沒有放入各個函式庫的使用教學,或許日後會再寫另外一篇文章來介紹。

語法分析在做什麼?

對於日文等自然語言 (natural language) 來說,語法分析會解析該語言的文字,從這些文字中取得相關的語言學知識。

我們以實例來看語法分析的過程。例如,這裡有一行簡短的日文句子:

日本語が話せますか。
(你) 會說日語嗎?

將上句以語法分析解析或拆解可得以下結果:

日本語話せます
日本語話せるます
名詞助詞動詞助動詞助詞(符號)

在這輪語法分析中,我們執行了三項任務:

  • 斷詞:將詞彙按照語義從句子中分開
  • 詞形還原:將詞彙還原至其字典型態
  • 標註品詞:標註詞彙在句子中的詞性

語法分析執行的項目不止這些,我們這裡只是舉出一些常見的項目。

透過語法分析,我們可以從日文文字中得到這些額外的資訊。這個過程是由電腦程式全自動完成,不需要人為介入。

語法分析軟體的應用

語法分析軟體相當於自然語言的語法分析器。透過分析取得的資訊通常不是最終的成果,而會搭配後續處理來實作特定應用。例如,在資訊檢索中,我們會將文字還原至語幹 (stem) 或字典形態 (lemma),以減少資料的維度。當我們要進行機器翻譯時,也會先解析句子以取得句子中的詞彙。

現存的日文語法分析軟體

本節列出一些常見的日文語法分析軟體,有需要的讀者可以從中選擇適合自己的軟體。

JUMAN

JUMAN 是比較早期 (西元 1998 年) 的語法分析軟體。該軟體使用加上權重的字典來斷詞。目前 JUMAN 的字典仍然有在維護,會不定期更新。如果讀者想要更了解 JUMAN,可以參考這篇論文 [PDF]。

ChaSen

ChaSen (西元 2000 年) 除了使用字典外,還使用隱藏式馬可夫模型來處理無法以字典處理的情境。因為語言會持續地進化,單一系統中固定的字典無法包涵所有的文字使用情境。如果讀者想要了解 ChaSen,可以參考這篇論文 (日文) [PDF]。

MeCab

原本的 MeCab 是基於 ChaSen 再改良的詞法分析軟體,但現在的 MeCab 獨立於 ChaSen 之外重新開發 (參考這裡)。為了處理內建字典以外的情境,MeCab 採用了條件隨機域。一般來說,條件隨機域所運算的結果會比隱藏式馬可夫模型來得好一些。

雖然 MeCab 本身沒有論文,但 MeCab 的開發者曾於西元 2004 年發表過使用條件隨機域處理日文詞法分析的論文 [PDF],有興趣的讀者可以參考一下。

KyTea

前述的日文語法分析軟體皆對文字進行單一走訪,邊走訪邊解析文字。而 KyTea (西元 2011 年) 主打兩階段分析,將斷詞及品詞標註拆成兩個步驟。KyTea 的開發團隊為這套軟體發表了相關的論文 [PDF]。根據這篇論文的實測,KyTea 的表現比 MeCab 略佳。

其他

據筆者所知,kuromoji 並沒有相關的論文或實測數據,故無法確認其表現。由於 kuromoji 有以 Java 和 JavaScript 實作的版本,如果需要使用這兩種程式語言,可以考慮看看。

Rakuten MA 主打在網頁前端和網頁後端皆可使用,因為 Rakuten MA 除了標準語言模型外,另外提供了小型的語言模型。故該軟體對於網頁前端這類資源受限的環境也能使用。根據 Rakuten MA 團隊所發布的論文 [PDF],該軟體和 MeCab 的效能不相上下。但 Rakuten MA 的功能較陽春,只有斷詞和品詞標註。

如何選擇日文語法分析軟體?

雖然沒有正式的統計數據,根據網路上的討論串,MeCab 應該是最多人使用的。此外,新興的語法分析軟體也是以 MeCab 為基準來比較其表現。所以,我們可以推估 MeCab 是目前最受歡迎的日文詞法分析軟體。

如果沒有特別的考量,應該優先使用 MeCab。因為 MeCab 經過最多的實戰考驗,而且是開放原始碼軟體。如果在使用 MeCab 時出了問題,有機會回饋給原開發者,甚至主動改善這個軟體。

此外,MeCab 在語法分析的表現上也是相當優秀。根據 KyTea 開發團隊所發布的論文,兩者在 F-measure 的表現皆超過 94%,而且 MeCab 和 KyTea 的差距僅在 1% 至 2% 的範團。當兩者誤差甚小時,可將其視為語料所帶來的隨機誤差。

實際體驗日文語法分析的應用

本站的軟體「日文小老師」「日文小書僮」就運用到語法分析的結果。在這兩個軟體中,「日文小老師」著重在單一句子的分析,而「日文小書僮」則將語法分析用於輔助整段文字的閱讀。如果讀者對這兩個軟體有興趣,歡迎實際體驗。

Facebook Twitter LinkedIn LINE Skype EverNote GMail Yahoo Email
site logo
日文小老師 谷歌 火狐
日文小書僮 谷歌 火狐
學練日語
Copyright (c) 2019-2021 Michelle Chen. All Rights Reserved.