第三章 宋詞斷詞器與本體論設計
3.4 宋詞詞彙本體論
3.4.4. 建置宋詞詞彙本體論
我們根據 TOVE 本體建立的方法論,建立了宋詞詞彙本體論,步驟如下:
第一步:確定本體論的領域以及研究的範圍
我們以宋詞為本體論的建置範圍,其目的地是希望建立詞彙與詞彙之間的 前、後關聯性,以及詞彙的同義關係,和詞彙的近義關係與反義詞。透過此本體 論,可以了解某一詞彙在語意上所屬的概念階層、比如說「玉簪」是屬於植物還 是「器物」,還是兩者皆是。此外,我們也記錄了此詞彙曾被使用在哪一個詞牌
39
40
IEEE 標準上層知識本體工作小組建置了 SUMO(Suggested Upper Merged Ontology),作為建議的上層共用知識本體。由於本研究其中一個目的是要描
表 3:一些類別(Class)的示例
hasCiPaiName Datatype Property 詞牌的名稱 hasAuthor Datatype Property 作者的名稱 hasFrequency Datatype Property 詞頻 hasWordType Datatype Property 詞類
hasNotation Datatype Property 詞譜中標註的平仄資訊 hasPrevious Object Property 前一個詞彙
hasNext Object Property 後一個詞彙
hasAntonym Object Property 反義詞
hasNearSynonym Object Property 近義詞
hasPair Object Property 對仗詞
hasSynonym Object Property 詞彙的同義詞
以下說明這些屬性:
• hasCiPaiName(詞牌)
記錄詞彙在哪個詞牌中曾經使用過。一個詞彙可以在多個詞牌中使用。
41
42
• hasAuthor(作者的名稱)
記錄哪個作者曾經使用此詞彙。一個詞彙可以關聯到多個作者。
• hasFrequency(詞頻)
詞彙的使用頻率。
• hasNearSynonym(近義詞)
對於描述一件具體事例或一個概念,在語意相近的語詞稱為近義詞,妨
記錄曾和此詞彙成對仗一起使用的詞。晏幾道《更漏子》中有一句「柳絲 長,桃葉小」,「柳絲」的對仗詞便是「桃葉」,「長」的對仗詞便是「小」。
• hasSynonym (同義詞)
在意義相同的詞彙稱為同義詞。比如說針對「植物」這個語意概念而言,
「梅花」、「菊花」、「木蓮」、「木樨」、「薔薇」、「牡丹」等詞彙都是 屬於同義詞;而對於「表情」這個概念來說,「強笑」、「竊笑」、「熱淚盈 眶」都是屬於同義詞詞林。
第四步:定義領域中的類別,以及階層關係
本研究為了描述詞彙的同義資訊,以同義詞詞林的階層架構為主體,再參考 SUMO自行建立本體論的階層架構,參考圖 12。
圖 12:宋詞詞彙本體論階層 第五步:設定定理與屬性
為了要描述資源的關係,可以利用本體論的定理(Axiom)進行限制。比如說
「秋」一詞在李清照《一剪梅》詞牌中曾出現:「紅藕香殘玉簟秋。」,也在蘇 易簡《滿江紅》詞牌中出現:「秋知否」,這代表 hasPrevious 和 hasNext 兩個限 制條件中可以使用 hasPrevious>=1 與 hasNext>=1 加以限制。同樣地,hasSynonym
43
44
也可以根據需求設定為 hasSynonym >= 0,代表同義字可以有多個或沒有同義字,
如此將來就可以協助我們了解某詞彙的替代詞彙。
接下來是設定資料的屬性,屬性包含兩類,分別是資料型態屬性(data property)
與物件屬性(object property)。我們使用的資料型態屬性包含以下資訊:
• 領域 (Domain):限制屬性可以使用的類別,如「吃動物」這個屬性限制只 有肉食動物可以使用,而抽象事物如空氣和水就不能夠使用。
• 範圍 (Range):有點類似程式設計領域中變數的型別,包含 any、string、integer、
boolean、float、symbol。
以「梅花」這個詞彙為例,其資料型態屬性參考表 5。
表 5:資料型態屬性
屬性名稱 領域(Domain) 範圍(Range)
hasCiPaiName owl:Thing String hasAuthor owl:Thing String hasFrequency owl: Thing Integer hasWordType owl:Thing String hasNotation owl:Thing String
其中「owl:Thing」代表的含意是本體中所有類別的聯集。這也就是說,所有 在本體中的詞彙不管分在哪一個概念階層(類別)都有 hasCiPaiName 、hasAuthor、
hasFrequency、hasWordType、hasNotation 的屬性,以描述詞彙的詞牌、作者、詞 頻、詞類、平仄資訊。
我們使用的物件屬性包含了以下資訊:
• 領域(Domain):限制哪些類別可以使用。
• 範圍(Range):使用物件連結的方式關聯到其它類別。
參考表 6為「梅花」詞彙的物件屬性示例。
45
表 6:梅花物件屬性
屬性名稱 領域(Domain) 範圍(Range)
hasPrevious owl:Thing owl:Thing hasNext owl:Thing owl:Thing hasSynonym owl:Thing 植物
hasAntonym owl:Thing 動物 hasNearSynonym owl:Thing 植物
hasPair owl:Thing owl:Thing
第六步:建立及表達本體知識
這一步驟將根據第三步驟的分類,將宋詞的詞彙加到本體之中。在建置過程 中,為避免大量的人工處理,我們透過自行設計的語意編輯工具,將本體直接匯 出成 OWL。
首先,使用者可以將斷詞完成的結果,匯入語意編輯工具,進行概念階層,
以及相關屬性的編輯和設定。為了讓使用者在此階段建立的資料能夠重複利用,
又不希望使用者需從無到有建立本體,此工具提供一個功能,能夠自動根據詞彙 語意相關的資訊,產生表達本體的 OWL 文件。到此階段,一個描述宋詞詞句中語 意的本體就建置完成了。
46