• 沒有找到結果。

三、 系統設計與實做

3.3 文法檢查模組設計

文法檢查模組包含以下幾個部份,依序如後:詞性標記(APP)、結構標記 (APPP)、文法檢查(modules)、CLEC 驗證。

3-5 文 法檢查 模組 流程圖

從此圖即可以清楚的看出,剛才經過 Aspell 檢查無誤的句子,經過詞性以 及句子結構的標記,便依照這些標記進行文法檢查,句子經過每一個文法檢查 的模組檢查過後,如果全部都正確無誤,就將資訊送到同義字檢查模組;如果 發生錯誤,便一一記錄下來錯誤的模組有幾個,並且送到評分模組。

3.3.1 詞性及句構標記

我們採用的 parser 是 Apple Pie Parser(APP)。我們將通過拼字檢查的句

子,送進 APP,APP 會對句中的單字作出詞性標記以及句子的結構;之後,再

將句子送進 Apple Pie Parser Parser(APPP)進行樹狀標記,標記完之後,再交 由文法模組做錯誤檢查。

3-6 APP 及 APPP 解析句子流程圖

3.3.2 文法檢查模組驗證方式

系統將文章做過以上的處理之後,就會送到文法檢查模組中做檢查,但是 這些文法模組的設計分類方式,以及相關的驗證,需要大量的樣本來做測試。

因此,我們將依照文法模組在 CLEC 各類型句子中的驗證結果,去設計及撰寫

文法模組,如下圖所示:

3-7 文 法檢查 模組 驗證方 式設 計流程 圖

我們每設計一個文法模組,便以 CLEC 中的錯誤句子做測試,測試完畢後,

便統計尚有多少數量及類型錯誤還未能找出,針對模組不足之處再加以補強,

並且重複這樣的步驟,以新增各類型文法檢查模組。

實做的方式則如下圖所示:

3-8 文 法檢查 模組 驗證方 式實 作流程 圖

圖中 CLEC 的資料送進我們的文法檢查模組中檢驗,檢驗後主要分成兩個

部份:

1. 後端錯誤統計:

利用 perl 去呼叫檢驗程式,將 CLEC 中有錯但尚未檢查出錯誤的句子

經過主程式檢驗之後做成列表,由於 perl 對於字串的處理能力很強,

所以在這個部份能很快的計算出句子數目,以利後續在撰寫程式時,

確認哪類型的文法錯誤數量較多,需要先行解決。

2. 前端網頁測試:

後端撰寫完畢的文法檢查模組,可以由前端網頁呼叫,測試目前文法 檢查模組可以偵測的狀況有哪些。並將檢查出的拼字錯誤、文法錯誤、

語義錯誤的訊息呈現在網頁上。

3.3.3 CLEC 樣本統計

系統藉由以上檢驗方式,首先統計出兩項資料:

1. CLEC 原本樣本句數:

我們將 CLEC 中的 ST2~ST6 樣本輸入 perl 中,雖然已知在 CLEC 中的詞 數為一百萬詞,但並非所有文章中的句子都有發生錯誤,因此我們僅統計 有發生錯誤的句數有多少,同時將它分類。

2. CLEC 句數錯誤類型比率:

表 3-1 是 CLEC 語料庫經過 perl 程式檢驗後,而得到的各類型錯誤數量。

3-1 CLEC 錯誤類型及句數統計表

錯誤類型 句數 錯誤類型 句數 錯誤類型 句數

[ad1] 151 [np2] 56 [sn5] 25 [ad2] 72 [np3] 678 [sn6] 131 [ad3] 17 [np4] 109 [sn7] 125

[aj1] 30 [np5] 209 [sn8] 2523

[aj2] 29 [np6] 1251 [sn9] 1888

[aj3] 156 [np7] 436 [vp1] 776 [aj4] 37 [np8] 99 [vp2] 321 [aj5] 10 [np9] 45 [vp3] 1499 [cc1] 154 [pp1] 309 [vp4] 285 [cc2] 167 [pp2] 380 [vp5] 300 [cc3] 673 [pr1] 340 [vp6] 1548 [cc4] 228 [pr2] 94 [vp7] 318

[cc5] 48 [pr3] 203 [vp8] 57 [cc6] 24 [pr4] 116 [vp9] 484

[cj1] 60 [pr5] 69 [wd1] 210

[cj2] 21 [pr6] 12 [wd2] 1375

[fm1] 6586 [sn1] 1116 [wd3] 3405 [fm2] 1119 [sn2] 1232 [wd4] 1613 [fm3] 2402 [sn3] 42 [wd5] 1185 [np1] 74 [sn4] 43 [wd6] 119

[wd7] 811

統計之後,在 CLEC 裡面的錯誤句數總共有 37895 句,但由於上表並不容

易看出來各類型錯誤比率是多少,因此我們再針對 CLEC 中的言語失誤分類表

上面的 11 大類做出分類和百分比。

表 3-2 是以 CLEC 中 11 大類的錯誤類型,分別統計數量而得到的,並且 計算各大類所佔的比率。

3-2 CLEC 錯誤類型比率統計表

詞形[fm] 10107 26.7%

動詞短語[vp] 5588 14.7%

名詞短語[np] 2957 7.8%

代詞[pr] 834 2.2%

形容詞短語[aj] 262 0.7%

副詞[ad] 240 0.6%

介詞短語[pp] 689 1.8%

連詞[cj] 81 0.2%

詞彙[wd] 8718 23.0%

搭配[cc] 1294 3.4%

句法[sn] 7125 18.8%

總計 37895 100.00%

圖 3-9 是將表 3-2 以統計圖的方式呈現,讓我們可以更清楚的看出各類型

例如:被動語態Æbe 動詞+過去分詞,就可以表示「is broken」、「was opened」、「were selected」…等句型,而不需一一列舉。

相關文件