• 沒有找到結果。

句式邊界偵測(Sentence Boundary Detection)

二、  相關研究

2.2  句式邊界偵測(Sentence Boundary Detection)

句子(sentences)是構成文章的重要單位,有許多文件處理的應用,例如 句式分析(syntactic parsing)、機器翻譯(machine translation)、自動摘要

(document summarization)等,首先要將文本切分為一連串的句子,才能進行 後續的工作。在許多語言中,所謂句子,多半以句點(period, “ . “)、問號(question  mark, “ ? ”)、驚嘆號(exclamation mark, “ ! “)作結尾。所以,這些符號可以視 為句子與句子之間的分界符號(delimit),並能藉此將文件分割成一連串的句子。

然而,真實的情況並不是這麼單純。 

大多數的西方語文,句點(period, “ . “)符號固然常用在句子的最末,表示 句子完結,但有時卻也用來表示縮寫(abbreviation),如  “No. 1”,有時又可以 作為刪節號(ellipsis, “ … ”)的一部份,或是數字中的小數點(如  ”3.1415926”)。

所以,在文本中判斷句子的結尾,辨識句子的邊界,並不是簡單直觀的任務。在 自然語言處理中,把這個問題稱為句式邊界偵測(sentence boundary detection,

又稱作sentence boundary disambiguation 或  sentence boundary identification,

也可稱為sentence segmentation)。 

句式邊界偵測有很多種作法。最簡單是period­space­capital letter 演算法  [9]。

凡是句點之後緊接著一個空白字元,又接一個大寫的字母,則可以假定這個句點 標示句子的結尾。這個方法實作簡單,可以寫成regular expression [.?!][ ]+[A‐Z] 

的形式,簡便地運用在許多地方,但效果卻差強人意。舉例來說,在  He stopped  to see Dr. White . . .  句中,Dr.  中的句點,是用來表示縮寫,但因為其後接著一個 空白,又接著大寫字母W,在 period‐space‐capital letter 演算法的判斷下,會將 這個句點視為句子結尾,於是切出He stopped to see Dr.  這樣錯誤的句字。對於 這樣的錯誤,固然可以準備一套字典,羅列各種縮寫詞彙,讓period‐space‐capital  letter 盡量涵蓋各種例外情況,但必須耗費極鉅的人力和工時,而且還未必能應

付層出不窮的特殊情況。 

目前主流的研究,捨棄了rule‐based 的框架,改以統計式(statistical)的 思維切入這個問題。統計式的作法,就是機器學習的方法,將句式邊界偵測,視 為一個分類(classification)的問題。首先,利用機器學習的技術,建立適當的 分類器,繼而從大量的語料中,訓練分類器。訓練完成之後,分類器對輸入文本 中的每一個句點、問號、驚嘆號作二元分類,判斷是否為句子的結尾,而判斷的 依據,就是符號前後的文字。分類器的實作方式很多,前人研究中,使用了回歸 樹(regression trees)  [10]、類神經網路(artificial neural networks) [11], [12]、

決策樹(decision trees)  [13]、maximum entropy modeling [14]  等分類器,效 能和最佳的rule‐based 演算法差不多,錯誤率在 0.8%‐1.5%之間  [9]。 

 

句式邊界偵測,乍看之下,和古漢語斷句頗有類似之處,但是現有的句式邊 界偵測模型,卻無法直接套用到古漢語斷句的系統上。第一,傳統的句式邊界偵 測所disambiguating 的對象,是文本中的每一個句點、問號、驚嘆號,斷句所 disambiguating 的對象,卻包括所有字與字之間的間隙。在這點來說,古漢語斷 句更接近中文斷詞。第二,只要用簡單的rules,例如前述的 period‐space‐capital  letter 演算法,就堪能辨識大多數的案例。但在古漢語斷句問題,卻沒簡單的規 則,足以應付大多數的狀況。第三,句式邊界偵測的問題,主要出現在西方語言,

相關的研究,自然都以西語(特別是英語)為主。然而,許多西語的性質,為中 文所無,所以,許多有助於句式邊界辨識的語言特徵,不能完全套用在中文上。

舉例來說,西文的大小寫(capitalization)、字首變化(prefix)、字尾變化(suffix)

等特徵,在句式邊界判定中,有顯著的參考意義,但中文卻沒有相應的特性可以 利用。 

 

儘管無法直接從句式邊界偵測的現有研究中,找到合乎斷句需求的模型,但

卻可以借用此一領域的效能準則(performance metrics),來作古漢語斷句系統 的評估指標。句式邊界偵測的常用指標是F­measure 和 NIST­SU error rate [15]。 

F‐measure 是 recall 和 precision 這兩個數值的 harmonic mean。先不考慮問 號和驚嘆號,假設某個文本,共有k 個句點,其中的 m 個是實際的句尾標示(故 該文本共有m 個句子,且  ),而句式邊界偵測系統判定這k 個句點中,有

n 個句尾標示,其中判定正確的有 c 個(故  , )。則    ,即

代表,所有的句尾當中,獲得正確判斷的比例;    ,代表句式邊界

偵測系統所判定的句尾當中,真正是句尾的比例。這兩個量值的範圍都在0%到 100%之間,數值越高,判斷的效能越好。F‐measure 綜合了 recall 和 precision 這兩個指標,合成單一指標,方便評估比較。F‐measure 也介於 0%到 100%之 間,並接近recall 和 precision 當中,較低的一邊,只有當 recall 和 precision 均 高的時候,F‐measure 才會高。 

NIST‐SU error rate 是另一個常見的指標,除了句式邊界偵測,這指標也經 出現在其他segmentation 的議題。NIST‐SU error rate 計算是 segmentation 的錯 誤率,所以其值越低,代表判斷的錯誤越少,最低為0%,最大值則可能超過 100%。 

F‐measure、recall、precision 這三個指標,在中文斷詞和諸多 classification 的研究經常出現,作為評估效能的參考。而NIST‐SU error rate 則常見於各類 text  segmentation 研究。我將在第三章中,詳細介紹這幾項指標,並作定義。進而使 用這些指標,來作斷句效能的評量。並會對照實驗結果,檢討這些指標在斷句研 究中的適用性。