• 沒有找到結果。

系統實作架構圖

在文檔中 宋詞斷詞與本體論之建置 (頁 58-0)

第四章 實驗成果

4.2. 系統實作架構圖

本論文實作了三個系統,參考圖 13分別為:

• 宋詞斷詞器:針對一至多闕詞進行斷詞處理。

• 語意編輯工具:編輯詞彙的語意,如詞彙的同義詞、反義詞資訊。

• 絕妙好詞網站:提供使用者透過網頁查詢詞與詞彙的相關資訊。

圖 13:系統實作架構圖

「宋詞斷詞器」把斷完的詞之詞彙提供給「語意編輯工具」,以編輯詞彙的 相關語意資訊,這些資訊又提供給「絕妙好詞網站」,讓使用者從網頁進行檢索。

47

48 Instance),由系統配置相關的記憶體。這也就是說,每一個 Ci 類別會轉換成一個 Ci 物件,代表一闕詞。一闕詞中的每一個句子會自動轉換成 Sentence 物件來表示。

句子中的每一個詞彙則自動地轉換成 Segment 物件。

針對這些類別說明如下:

• Ci 類別:代表一闕詞。除了記錄詞牌(Ci Pai)資訊之外,還包含一個 Sentences 屬性(Property),這個屬性代表詞中所有句子(Sentence 物件)

的集合,因此它的資料型別是一個 SentenceCollection 物件。

• SentenceCollection 類別:詞句所成的集合。包含一個 Count 屬性,記錄了 詞中句子的數目。在實際執行時,每一個句子將自動變成一個 Sentence 物 件。

• Sentence 類別:代表一個句子。它包含 SentenceNo 與 Segments 屬性。

SentenceNo 記錄詞句的號碼,Segments 屬性的資料型別為

SegmentCollection,代表某一個句子中所有詞彙所成的集合,也就是指 Segment 物件所成的集合。

• SegmentCollection 類別:代表一個句子中詞彙所成的集合。包含 Count 屬 性,記錄一個句子中詞彙的數目。

• Segment 類別:代表一個詞彙,它包含 Word 屬性,記錄詞彙。

圖 14:Ci 物件模型類別圖(Class Diagram)

4.3.2. 宋詞斷詞器

為了進行斷詞測試,我們實作了宋詞斷詞器,可以讓使用者選擇要斷一或多 闕詞。參考圖 15,斷詞器左方為欲斷的詞之資訊,中間為斷完的結果,右方是每 一個句子正確識別出的詞彙數目、精確度與召回率。為了避免浪費大量人力進行 召回率與精確度的計算,只要將詞的正確斷法輸入到資料庫,斷詞器會自動比對 斷詞的結果,計算出召回率與精確度。

預設各斷詞模組的使用順序是根據規則自動決定,但系統設計上保留了彈 性,使用者也可以自行設定斷詞模組的順序,或勾選想要使用的模組。

49

圖 15:宋詞斷詞器

由於斷詞的結果不一定百分之一百的正確,這時就需要專家的介入。專家可 以利用斷詞工具修訂斷詞完的結果、將辨識出的新詞、專有名詞、典故資料新增 到詞庫當中。必要時可以並把斷詞結果匯出成XML,供其它程式參考或使用。參 考圖 16為匯出的XML檔案。

50

圖 16:將斷詞結果匯出成 XML

4.4. 斷詞實驗

這個小節我們將透過宋詞斷詞器進行斷詞的實驗,評估各斷詞模組的必要 性,並分析斷詞過程中影響召回率與精確度的原因。

宋詞斷詞器中包含了六大斷詞模組,分別是:

(1)專有名詞模組:切分詞句中的專有名詞。

(2)領字模組:切分出領字(虛字)。

(3)典故模組:切分詞句中用典資訊。

(4)構詞模組:切分出定詞、量詞、定量複合詞、複疊詞、詞綴。

(5)節奏斷詞模組:根據宋詞節奏(句法)切分詞句。

(6)對仗模組:根據詞句對仗,切分三字詞。

後續的小節,我們設計了幾個實驗,以評估這些模組對於斷詞的貢獻度。

4.4.1. 僅以詞庫斷詞

在這個斷詞的實驗中,採用中央研究院詞庫[八萬目詞]再整合實驗室搜集 的詞彙而成的詞庫(簡稱 KDE 詞庫)進行測試,目的在評估此詞庫對於斷詞系統 的貢獻度。

51

52

採取的比對方式是正向最大匹配法(Maximum Matching method),將詞句中 的字由左至右切割為一、二、三字詞,一一和詞庫中的詞進行比對,若比對到相

53

表 8:僅使用節奏斷詞的結果

百分比

召回率(Recall) 88%

精確度(Precision) 88.3%

效度(Effectiveness) 88%

但只考慮到通用的節奏進行斷詞,會讓一些可識別的詞彙被切分為二,以致 造成召回率與精確度下降。舉例來說,五字句的節奏可能為(2,3)(3,2)(2,

2,1)(1,4)(1,2,2)等,但最常切分為(2,3),只要詞中含領字,單一 首詞的精確度就變低:

錯誤:任寶/匳閒/掩 (系統切分的結果)

正確:任/寶匳/閒掩

–李清照《鳳凰臺上憶吹簫》

若僅使用常用節奏進行斷詞,那麼就無法切分出五字句中(3,2)(2,2,1)

(1,4)(1,2,2)等組合的詞彙。

4.4.3. 使用所有斷詞模組以及標準斷詞順序

這個實驗中,採用斷詞系統中所有的斷詞模組(專有名詞、領字、典故、構 詞、節奏斷詞、對仗),搭配 KDE 詞庫,並根據第三章 3.2.2.節定義的斷詞規則 為斷詞順序進行實驗。同樣針對無法以任何模組切分的三字句或讀,以亂數方式 切分為(2,1)、(1,2),再將每首詞由斷詞系統處理十次,求其平均的精確 度與召回率。

由於採用亂數方式切分斷詞器無法斷出的三字句會影響斷詞的結果,我們也 以不處理系統無法切分的三字句、讀來進行實驗,以做比較。

54

效度(Effectiveness) 88.7% 86.1%

參考表 9,整體的召回率是 88.8%,精確度為 89.4%,資料的效度達 88.7%。 84.03%與 88.4%,效度為 86.1%。很明顯地斷詞器辨認出的詞數與斷詞器正確辨認 出的詞數皆變少,因此召回率和精確率都稍微下降。

55

表 10:除專有名詞模組,使用標準斷詞順序的結果

所有模組 不含專有名詞模組

召回率(Recall) 88.8% 88.1%

精確度(Precision) 89.4% 89%

效度(Effectiveness) 89.1% 88.5%

參考表 10,在召回率、精確度和資料的效度上比前一節的實驗(使用所有模 組)稍為下降一些。無庸至疑,專有名詞模組對於斷詞的結果有正面的影響。統 計李清照五十首詞中,總共有 25 個專有名詞,這些專有名詞恰巧都是兩個字。以 這個實驗而言,若專有名詞詞庫中未收入這些專有名詞,這些名詞也可能被其它 模組斷出,如被節奏斷詞模組正確地切分。不過若專有名詞是三字詞,那麼沒有 專有名詞模組的輔助,就可能被其它模組誤斷。就理論而言,專有名詞模組對於 長度為三以上的詞彙對於斷詞是有絕對的助益的。

4.4.5. 除領字模組,使用標準斷詞順序

這個實驗中,採用斷詞系統中除領字模組之外的所有的斷詞模組(專有名詞、

典故、構詞、節奏斷詞、對仗),搭配 KDE 詞庫,並且使用標準的斷詞順序進行 測試,以分析領字模組的運作情況。同樣以李清照五十首詞進行測試,亂數切分 無法處理的三字詞,求每首詞斷詞十次平均的召回率與精確度做為斷詞結果。

表 11:除領字模組,使用標準斷詞順序的結果

所有模組 不含領字模組

召回率(Recall) 88.8% 87%

精確度(Precision) 89.4% 87.7%

效度(Effectiveness) 89.1% 87.3%

參考表 11,排除領字,與 4.3.3 節的實驗節果比對,召回率和精確度就分別 下降了 1.8%與 1.7%,而資料效度下降了 1.8%。

56

57

表 13:除典故模組,使用標準順序的斷詞結果

所有模組 不含典故模組

召回率(Recall) 88.8% 90%

精確度(Precision) 89.4% 90%

效度(Effectiveness) 89.1% 90%

參考表 13,這個實驗的結果讓召回率、精確度與效度都達到 90%。那麼為何

58

精確度(Precision) 89.4% 89.5%

效度(Effectiveness) 89.1% 89.2%

構詞模組的加入所得到的測試結果和 4.4.3 節的實驗進行比對,相形之下,三 個評估指標都減少 0.1%,如表 14。這代表使用了構詞模組,召回率、精確度和效

59

精確度(Precision) 89.4% 88.9%

效度(Effectiveness) 89.1% 88.6%

參考表 15,不採用對仗模組,斷詞的召回率(88.3%)、精確度(88.9%)、

效度(88.6%)比 4.3.3 節斷詞方式召回率稍為差一些,顯然對仗對斷詞成果有一

60

效度(Effectiveness) 89.1% 82.7%

從實驗的結果得知,使用詞頻總合解歧義並不能有效地提升精確度、召回率

至於構詞模組的部份,後續可從擴大實驗的詞下手,從多家詞人的作品中再 進行規模更大的測試來看其成效。或者,可以斟酌採用更多的構詞規則以補其不 足之處。

4.5. 本體論實作

為了藉資訊科技之力,讓宋詞的學習變得更為簡單,宋詞語意本體的建立格 外的重要。利用本體描述詞彙之間的關係,可以協助學習者釐清語意,以便了解 詞中的含意。接下來後續的小節中將介紹本體論的實作成果。

4.5.1. 實作架構

在本體論的建置上,首先我們參考 TOVE 本體論工程的方法學進行初步的資 料搜集與分析的動作(參閱第三章),接下來依照此階段得到的資訊進行實作。

首先我們先介紹本體論的基本實作架構。

參考圖 17我們規劃的基本架構為:先將宋詞斷詞器斷好的詞彙資料,以一闕 詞為單位,匯出成XML檔案,然後將這個XML檔案匯入到我們設計的語意設計工 具。

圖 17:本體論實作架構

在語意設計工具中設定詞彙的相關資訊,如概念階層、詞類、同義詞等等。

經由專家校正之後,將這些詞彙相關的語意資料儲存到資料庫之中。最後,使用 者可以將這些資訊匯出成表示知識的 OWL 文件。我們也設計了「絕妙好詞」Web

61

應用程式(網站)讓使用者可以透過網際網路進行資料,以及相關語意的檢索。

4.5.2. 語意設計工具

語意編輯工具可以讓使用者或專家建立宋詞詞句中每個詞彙語意相關的資 訊,參考圖 18。

圖 18:語意編輯工具 描述的詞彙資訊包括:

• 詞代號:詞的編號,為唯一識別碼,此項資訊由匯入的 XML 檔自動建立。

• 詞牌:詞的詞牌,如「清平樂」,此項資訊由匯入的 XML 檔自動建立。

• 作者:詞的作者,如「李清照」,此項資訊由匯入的 XML 檔自動建立。

• 詞彙:詞句中的詞彙,如「年年」、「梅花」。

• 前一個詞彙:某一個詞彙前方接的詞彙。如詞句「常插梅花醉」中的「梅 花」前一個詞彙為「常插」。此項資訊由系統自動建立。

• 後一個詞彙:某一個詞彙後方接的詞彙。如詞句「常插梅花醉」中的「梅 花」後一個詞彙為「醉」。此項資訊由系統自動建立。

• 詞類:詞彙的詞性,如「Nab」為普通名詞。此項資訊由使用者輸入,但 系統提供使用者可以查詢中研院詞庫[八萬目詞]中詞類的定義,以輔助

62

63

圖 19:自動對應詞彙概念階層

同時也可以利用這個工具來檢視語意概念階層,以及此階層下包含了哪一些 詞彙。參考圖 20,左方列出詞彙分類的概念階層,右方則列出此階層下所有詞彙

同時也可以利用這個工具來檢視語意概念階層,以及此階層下包含了哪一些 詞彙。參考圖 20,左方列出詞彙分類的概念階層,右方則列出此階層下所有詞彙

在文檔中 宋詞斷詞與本體論之建置 (頁 58-0)

相關文件