• 沒有找到結果。

基於 Ontology 架構之文件分類網路服務 研究與建構

N/A
N/A
Protected

Academic year: 2022

Share "基於 Ontology 架構之文件分類網路服務 研究與建構 "

Copied!
75
0
0

加載中.... (立即查看全文)

全文

(1)

國 立 成 功 大 學

資 訊 工 程 學 系 碩 士 論 文

基於 Ontology 架構之文件分類網路服務 研究與建構

A Study and Construction on Ontology-based Document Classification Web Service

研 究 生:鍾明強

指導教授:郭淑美 博士 指導教授:李健興 博士

中 華 民 國 九 十 三 年 七 月

(2)
(3)
(4)

基於 Ontology 架構之文件分類網路服務研究與建構

鍾明強* 郭淑美** 李健興**

國立成功大學資訊工程研究所

中文摘要

由於 Ontology 能夠描述特定知識領域內相關的概念與關係,利用此種特性,

本論文提出一種基於 Ontology 架構的文件分類方式,以期能有效的協助知識管 理者在電子文件的管理上達到正確的分類效果。本論文首先利用訓練方式,分別 求得 Ontology 內的概念與關係之權重值,進而得到一個具有權重值的 Weighted Ontology。當一份新聞文件需要分類時,則須先經由文件前處理程序得到新聞文 件內的詞彙集合,然後與 Ontology 中各類別的 Concept 進行比對,以求得新聞 文件與 Ontology 的對應關係。再來,我們將此對應關係轉換成具有權重的有向 圖,並透過搜尋演算法找出有向圖中最長的路徑與權重值最大的路徑,再加上有 向圖內各個節點所代表的對應 Concept 數量,則可產生藉以判斷文件類別的模糊 變數,包括對應概念權重(MCW)、最大語意路徑長度(MSRPL)以及最大語意路徑 權重(MSRPW)等三個模糊變數。最後,利用這三種模糊變數進行模糊推論,藉以 評估該文件與各類別 Ontology 之間的相似度,達到正確的分類結果。經由實驗 証實,本論文所提出之 web Services 能有效地進行中文文件自動分類。

關鍵字:實體論、文件分類、模糊推論、網路服務

*作者 **指導教授

(5)

A Study and Construction on Ontology-based Document Classification Web Service

Min-Chiang Chung* Shu-Mei Guo** Chang-Shing Lee**

Department of Computer Science and Information Engineering, National Cheng Kung University

Abstract

Because of the Ontology can describe the specific domain knowledge with the concepts and relationships, we utilize the properties of the Ontology to assist in classifying the documents automatically. In this thesis, we first compute the weights of concepts and relationships based on the tf*idf values, respectively, then construct the weighted Ontology based on the weights. When a news is necessary to be classified, the document pre-processing procedure will generate a term set of the news, then the mapping relationship between the concept of the Ontology and the term set of the news will be produced by a mapping mechanism. In addition, the mapping relationship will be transformed into a weighted digraph. By a search algorithm, we can find the maximal path length, the maximal weights of all the paths, and the number of the concepts in the digraph for generating the fuzzy variables of the Fuzzy Inference Mechanism(FIM). The three fuzzy variables including Mapped Concept Weight (MCW), Maximal Semantic Relation Path Length (MSRPL), and Maximal Semantic Relation Path Weight (MSRPW) are utilized in FIM to evaluate the similarity between the news and the domain Ontology. The experimental results show that our approach can effectively classify the Chinese documents correctly.

Keywords: Ontology, Document Classification, Fuzzy Inference, Web Service

*Author **Advisor

(6)

目錄

中文摘要...IV Abstract ... V 目錄...VI 圖目錄...VIII 表目錄...X

第一章 緒論...1

1.1 研究動機與目的...1

1.2 論文架構...2

第二章 相關研究探討...3

2.1 Ontology ...3

2.2 文件分類... 11

2.3 Web Services...14

2.4 分類成效評估方式...18

第三章 研究方法...20

3.1 Weighted Domain Ontology ...20

3.2 計算權重值...22

3.3 語意關係路徑...27

3.4 模糊推論機制(Fuzzy Inference Mechanism) ...31

第四章 網路服務架構...39

4.1 文件分類網路服務架構...39

4.2 文件分類網路服務(DCWS) ...41

4.3 系統介面...42

第五章 實驗結果與分析...44

5.1 實驗資料...44

5.2 實驗分析...44

第六章 結論與未來研究方向...53

6.1 結論...53

6.2 後續研究之建議...53

參考文獻...55

附錄A 新聞領域Ontology架構圖...58

A.1 政治新聞Ontology...58

A.2 氣象新聞Ontology...58

A.3 社會新聞Ontology...59

A.4 運動新聞Ontology...59

A.5 財經新聞Ontology...60

附錄 B...61

(7)

B.1 文件前處理網路服務之描述檔(WSDL文件)...61 B.2 文件分類網路服務的描述檔(WSDL文件)...63

(8)

圖目錄

圖 2-1 政治新聞的Ontology架構 ...5

圖 2-2 Ontology Language之層級關係 ...7

圖 2-3 OntoEdit

TM

V2.5 之執行畫面...10

圖 2-4 Protégé-2000 的執行畫面...11

圖 2-5 銀行信用卡額度決策樹分類範例 ...12

圖 2-6 KNN 分類...13

圖 2-7 一般線性分類方式與SVM線性分類方式...14

圖 2-8 WSDL服務定義 ...16

圖 2-9 Web services服務流程說明 ...17

圖 3-1 Structure of Object-Oriented Ontology ...21

圖 3-2 Structure of Object-Oriented Weighted Ontology ...22

圖 3-3 計算Concept出現頻率的流程...23

圖 3-4 給予Concept權重值...24

圖 3-5 計算Relation重要性的流程...25

圖 3-6 給予Relation權重值...26

圖 3-7 訓練前之Ontology ...26

圖 3-8 訓練後之帶有權重值之Ontology ...27

圖 3-9 一個Weighted Ontology...28

圖 3-10 由Weighted Ontology轉換而成的有向圖...29

圖 3-11 文件與Ontology對應形成的有向圖 ...29

圖 3-12 模糊推論機制[31][32][33] ...32

圖 3-13 氣象新聞 ...33

圖 3-14 將新聞文件透過文件前處理後得到的詞彙集合 ...33

圖 3-15 氣象Weighted Ontology...34

圖 3-16 對應後的關係圖 ...34

圖 3-17 輸出模糊變數SRS之模糊集合...36

圖 4-1 文件分類網路服務系統架構圖 ...39

圖 4-2 新聞經過斷詞斷句後的結果 ...40

圖 4-3 分類流程 ...41

圖 4-4 線上即時新聞分類服務 ...43

圖 5-1 新聞文件與Ontology對應後之MCW的模糊集合...45

圖 5-2 新聞文件與Ontology對應後之MSRPL的模糊集合...45

圖 5-3 新聞文件與Ontology對應後之MSRPW的模糊集合 ...46

圖 5-4(a) 4000 訓練資料的正確率...47

圖 5-4(b) 1000 訓練資料的正確率...48

圖 5-5(a) 800 筆政治新聞分類效果...48

(9)

圖 5-5(b) 800 筆社會新聞分類效果...49

圖 5-5(c) 800 筆氣象新聞分類效果...49

圖 5-5(d) 800 筆運動新聞分類效果...50

圖 5-5(e) 800 筆財經新聞分類效果...50

圖 5-6(a) 200 筆政治新聞分類效果...51

圖 5-6(b) 200 筆社會新聞分類效果...51

圖 5-6(c) 200 筆氣象新聞分類效果...51

圖 5-6(d) 200 筆運動新聞分類效果...52

圖 5-6(e) 200 筆財經新聞分類效果...52

(10)

表目錄

表 2-1 文件分類數量表 ...19

表 3-1 轉換的對應路徑 ...28

表 3-2 新聞與氣象Ontology對應後所得到的對應關係 ...34

表 3-3 FIA之推論規則 ...35

表 5-1 模糊變數MCW的模糊數參數值...44

表 5-2 模糊變數MSRPL的模糊數參數值...45

表 5-3 模糊變數MSRPW的模糊數參數值...46

(11)

第一章 緒論

近年來資訊技術蓬勃發展,由於網際網路盛行拉近了人與人之間的距離,所 有的訊息在彈指間都可以傳遞到世界上其它任何角落,也由於資訊數位化的因 素,造成大量的資訊充斥在隨手可得的網路世界中,許多電子文件的服務也與日 俱增,要如何尋找、收集資料,然後整理、探勘為有用的資訊便顯得一門重要的 學問,要有效的管理這些資料也因此顯得格外重要,電子化文件若透過有效的分 類方式,將文件存放在適合的類別中便能夠有效的協助人們尋找需要的資料;然 而,透過人力將文件歸類往往耗時而且判斷上容易顯得不夠客觀,因為相同的文 件由不同的人員來分類可能會有差異,甚至相同的人員在不同的時間也可能對同 一份文件做出不同的類別判斷,所以,自動化文件分類透過機器學習各類別中文 文件之特徵,改善分類效果,又不需耗費大量人力,更重要的是能夠達到客觀性 與一致性,因此自動化文件分類在知識管理或資訊檢索相關研究領域上算是相當 重要的一種研究。

1.1 研究動機與目的

在人工智慧與知識管理領域,Ontology 的應用逐漸增加,相關語言及開發軟 體的支援,另外伴隨著第二代網路,也就是語意網路(Semantic Web)以及 web services 的興起,利用建構 Ontology 來描述特定領域下的知識與服務等研究也漸 漸熱絡,因此,本篇論文希望利用 Ontology 架構來協助文件分類上的準確性,

先透過訓練求得 Ontology 內部 Concept 與 Relation 的權重值,然後以 Ontology 與文件之間對應後所形成的語意關係,計算語意關係的長度與權重值,透過模糊 推論的方式將這些語意關係做適當的評估,藉以判別文件應該屬於何種類別,提 高分類上的效能與準確性,並提供相關的文件分類網路服務。

(12)

1.2 論文架構

本論文第二章討論相關之研究背景,包括常用的文件分類方法,Ontology 概述,以及 web services 的發展;第三章介紹 Weighted Ontology 的訓練,文件與 Weighted Ontology 對應方式,以及對應後要如何搜尋與計算語意關係路徑,將求 得的語意關係路徑透過模糊推論的方式來評估文件所屬的類別;第四章介紹所建 置的文件分類網路服務;第五章為實驗結果與分析;最後,第六章為結論與心得,

以及未來研究方向。

(13)

第二章 相關研究探討

2.1 Ontology

2.1.1 Ontology 定義

Ontology,以中文的直譯為實體論,最早是使用在哲學領域中,表示”存在 的、有意識的實體或主體”之意,後來延伸應用在人工智慧領域上,表示用來描 述與說明特定領域下的概念與知識,藉以分享與表達該知識領域下存在的事件與 彼此間的關係;在 Gruber 的描述中[1],其定義如下:

“An Ontology is a specification of a conceptualization.”,Ontology 是某種概念上清 楚的說明 [1]。當我們使用 Ontology 來描述特定領域下的知識,可以將 Ontology 看做是概念(Concept、Object 或是 Class)、屬性(Attribute、Property、Slot 或是 Role)、

實例(Instance)與關係(Relation)這些元素的組合[2],以下分別說明這些元素[3]:

概念(Concept):Concept 就是以多個底層物件所組成的範圍,也就是由多個字彙 (Vocabulary)所組成的集合,這個集合能夠作為一個概念性的描 述,描述出主題的基本範圍,透過這個集合能讓系統了解到定義 Concept 所代表的意思。

屬性(Attribute):屬性可以當作是該物件的一個描述,描述該物件的特性或特徵,

當我們使用 Ontology 表達某個特定知識領域時,Concept 就是其 中的子集合,這些集合我們可以將其看成是物件,在物件間會有 各種關係存在,而且每一物件本身也會有各種屬性存在。實際 上,物件擁有屬性所建構出整個 Ontology 的資料架構,在應用上 將提供更為多元及有用的訊息,我們不但可得知 Concept 與其它 的 Concept 之間的關係,從單一的 Concept 也可得知 Concept 本 身的重要性,另外,若是要將一個 Ontology 作充分有效的利用,

(14)

屬性對於訊息的多樣化是最有幫助的利器。

關係(Relation):若只使用物件與其屬性來清楚的描述特定知識領域內的概念與結 構時,在知識領域的表達上來說,還不足以提供物件之間相關的 細節訊息,所以當建構出整個 Ontology 的架構之後,除了清楚的 描述出物件與物件屬性之外,還可以為這些物件定義其彼此間所 有的關係。由於目前自動建構 Ontology 的技術尚未成熟,所以大 都還是透過領域專家以人工方式提供一個有系統的知識領域架 構,這個架構可以用來描述整個領域中的抽象結構與關係,提供 相關應用系統上的使用與共享。

實例(Instance):實例可以用來更清楚的表達上層的 Concept,因此實例與上層 Concept 通常會存在著某種關係,並繼承某些上層 Concept 的屬 性,當然,實例也可以擁有自己更細微的屬性來表示與其它實例 的差異之處。這裡存在一個問題是,在建構 Ontology 的過程中,

對於一個項目,要如何定義它是 Concept 或是 Instance 呢?根據 Natylya F. Noy[2] 的 建 議 : ”Instance 是 用 來 更 清 楚 的 表 達 Concept ”,所以通常在 Ontology 架構中最底層的部份來定義 Instance。

這裡舉出一個簡單的範例如圖 2-1:

(15)

政治新聞

總統府 總統 副總統 地方政府 中央政府

監察院 監察院長 監察委員

立法院 立法院長 立法委員

政治活動

選舉 侯選人

抗議 示威 考試院

考試院長 司法院

司法院長 行政院

行政院長

圖 2-1 政治新聞的 Ontology 架構

圖 2-1 表示的是一個政治新聞的 Ontology 架構,”政治新聞”是這個 Ontology 中最上層的 Concept,在政治新聞中,地方政府、中央政府、總統府與政治活動 等訊息都是屬於政治新聞的一種,所以與政治新聞存在著一種”is-a”的關係 (relation),都是屬於政治新聞下所衍生出的 Concept;而在總統府這個 Concept 中,總統與副總統表示其屬性(Attribute),代表著總統府中有總統與副總統二種 職位,在這裡我們利用屬性來描述其所屬之 Concept 下的某些特徴與特性,因此,

在其它 Concept 與 Instance 中,也都會有各自的屬性來表達該 Concept 的結構與 性質;在屬於政治新聞下的中央政府 Concept 中,分別由行政院、司法院、考試 院、監察院、立法院等五個中央行政機構所組成,因此這五院與中央政府便存在 一種”part-of”的關係,而且各自有其屬性來表達各機構內的職務。

如上述所示,當我們利用 Ontology,便可以簡單的來針對這些知識領域的分 類來定義與描述出該特殊領域的專業術語、項目與彼此間的關係,再利用以 XML 為基礎,而且人與電腦皆可理解的 Ontology language 來描述上述的架構圖,進

(16)

而分享、再利用或擴張相同的資料。

2.1.2 Ontology 的應用

通常建置 Ontology 的原因,可能有下面這些因素[2]:

讓人類或電腦軟體代理人之間彼此分享資訊的共識 讓領域知識可以重覆被利用

讓領域知識可以清楚的描述

在現有的知識中分離出新的領域知識 分析領域知識

因此,使用 Ontology 來定義某個領域中的一些基本概念及它們之間的關連,

其主要的用意是為了讓電腦更容易閱讀這些知識,讓某特定領域的知識與資訊能 夠以人與電腦皆可理解的架構來描述與呈現,並清楚的說明抽象資料概念間的關 係,使得這樣的資訊能夠配合電腦系統以支援知識的分享及重複利用,因此在 Ontology 內所定義的元素皆是可以充份代表此特定領域內的相關知識,目前在建 構 Ontology 除了是經由該領域下的領域專家(domain expert)來制定;也有越來越 多相關研究提出自動化或半自動化建構 Ontology 的方式與機制[4][5]。另外,

Ontology 在許多資訊應用上已成為一個常被採用的技術與架構,例如使用在代理 人系統[6]、知識管理系統、電子化商務、醫藥管理系統[7]、線上即時服務[8]等 系統,藉以產生以自然語言整合的智慧型資訊,以及在網路上提供以語意為基礎 的服務[9],並已經漸漸成為在知識管理上做語意處理的一種關鍵技術,或是在 資料交換時能夠精確的對應一些意義相同的詞彙與符號,倚靠由概念性模組所構 成的 Ontology 來精確的定義不同符號或詞彙的意義[10]。另外,在下一代網路,

也就是語意性網路 (Semantic Web) 中,也使用 Ontology 做為其中一項極重要的 技術,希望利用 Ontology 架構來表達其語意性,協助軟體代理人(agent)在語意 網路上搜尋最適合的資訊,甚至達到電腦自動推論的服務[11]。

(17)

2.1.3 Ontology Language

Ontology 可以被應用在各個不同的領域及應用層面,例如:智慧型代理人系 統、知識管理、自然語言處理和網路資訊搜尋擷取等。然而,在此之前必須先讓 電腦看得懂專家所建構出的 Ontology,因此需要一種電腦所能理解的語言來轉換 描述 Ontology,以便電腦瞭解 Ontology 所欲表達之語意性概念。近年來,已經 發展出許多 Ontology Language,有些是基於 XML 語法,例如:XOL、SHOE 和 OML;還有由 W3C 協會(World Wide Web Consortium)所制訂發展的 RDF 和 RDFS (RDF Schema);另外,尚有建置於 RDFS 基礎上,即 OIL 與 DAML+OIL,其是 為了改善加強 RDF(S) 功能特質之不足。如圖 2-2 顯示各語言之層級關係[9],以 下簡要說明各種 Ontology Language[12]。

XML

RDF(S)

DAML+OIL OIL

XOL SHOE OML

圖 2-2 Ontology Language 之層級關係[9]

1. XOL

XOL(XML-Based Ontology Exchange Language),是在 1999 年由 Peter D. Karp, Vinay K. Chaudhri, and Jerome Thomere [14] 等專家所發展出來的。它是基於 XML(eXtensible Markup Language)的 Ontology Language,可應用於不同異質系統 之間的訊息交換。

2. SHOE

SHOE(Simple HTML Ontology Extensions),起源於馬里蘭大學資訊科學系所 的 Understanding Systems Group 所提出的 SHOE 計畫。SHOE 是一種 HTML 的延

(18)

伸語言,它允許網頁作者在他們的網頁文件中註解機器可讀取的語意知識。

SHOE 使得線上智慧代理人 (Intelligent Agent) 能更有效率地執行搜尋網頁和文 件內有意義的資訊,這過程包含三個步驟:步驟 1.定義 Ontology。步驟 2.使用 HTML 來註解 Ontology 知識及描述它們和其他網頁的關連。步驟 3.設計一個 Agent 使它可搜尋到語意網頁資訊 [9]。

3. OML

OML(Ontology Markup Language),是 1998 年 8 月由華盛頓大學所提出來 的,其嘗試以 XML 的語法為基礎來表達 Ontology,且其有部分是建立於 SHOE(Simple HTML Ontology Extension)的基礎上,也就是說,OML 和 SHOE 有 許多共有的特徵[9]。

4. RDF& RDF Schema

資源描述架構(RDF , Resource Description Framework,),是 1999 年 2 月由全 球資訊網協會(W3C)主導所發展而成的一個架構,其提供一具有語意網路之機 制,可用來描述網頁資源,允許資源描述機構訂定各自的控制詞彙,提供結構化 的相互共容機制,RDF 在語法上則是遵循 XML。

5. OIL

OIL(Ontology Inference Layer or Ontology Interchange Language) , 是 從 On-To-Knowledge Project 中所發展出來的一種 Ontology 表達語言,而這個 Project 是從 1999 年開始到現在,其成員是由業界及學術界所組成的。OIL 之所以會被 發展出來是為了能正確地去表達在 Web 上電腦可以存取有語意的資訊,而這些 有語意的資訊必需能符合電腦可以存取的格式,而 OIL 的語法及語意是建構在 已存在的一些標準語言上,如 Open Knowledge Base Connectivity(OKBC)、

XML-Based Ontology Exchange Language(XOL) 、 Resource Description Framework(RDF)等。目前可用以建構 OIL Ontology 的工具軟體有 OntoEdit、

OILEd,、WebODE 和 Protégé-2000 [9] [15]。

6. DAML+OIL

(19)

DAML(DARPA Agent Markup Language),是由美國國防部高等研究計畫局研 發。為了比 RDF 能更佳表達 RDF Class 的定義,在美國政府倡議的努力下,於 2000 年 10 月發行了 DAML-ONT,這是一種符合 RDFS 的簡單語言。不久 DAML 小組為提供更加的功能服務,乃朝向結合 Ontology Inference Layer(OIL)而努力,

使用人工智慧框架基礎(Frame-based)的架構,這些努力的結果即為後來發展的 DAML+OIL。DAML+OIL 是 Web Resource 中可以用來描述語意的 Ontology 標 記語言,它是以 W3C 早期所制定的標準(RDF 及 RDF Schema)而建立的,這樣的 DAML+OIL Language 是相當簡潔且容易來定義語意的。目前用以建構 OIL Ontology 的工具軟體如:OntoEdit、OILEd、WebODE 和 Protégé-2000,亦可以 用來建構 DAML+OIL Ontology [9] [15]。採用 DAML+OIL 標記語言來轉換描述 Ontology 的好處是 Daml+OIL Language 可以引用 XML Schema 來訂定資料的型 態,不但簡潔、容易定義語意而且也符合 W3C 所制訂的標準需求。

2.1.4 Ontology Language Editor

目前可用以建構描述 Ontology language 的工具軟體陸續被發展出來,如可 用以建構 OIL Ontology 的工具軟體有 OntoEdit、OILEd、WebODE 和 Protégé-2000 [9][15] , 而 OntoEdit 、 OILEd 、 WebODE 和 Protégé-2000 ,亦可以用 來 建構 DAML+OIL Ontology。以下分別簡介 OntoEdit 以及 Protégé-2000 這兩種 Ontology Language Editor[3] [12]。

1. OntoEdit

OntoEdit

TM

V2.5 這套軟體是由Ontoprise這家公所開發的,它主要是針對OIL 的語法去建立OIL Ontology,它是一個Ontology工程環境,它應用圖形化的方式 去支援Ontology的發展及維護,OntoEdit它被建立在一個強大的內部Ontology模 型的最頂端。OntoEdit允許使用者去編輯Concept和Class的階層性,而這些Concept 可能會是Abstract或Concrete,這指示它是否允許它是直接的Concept實體,一個 Concept可能有多個名稱,所以有必要去定義這個Concept的同義詞。OntoEdit它 是一個工具,它可以檢查、瀏灠、編寫及修改Ontology,以這種方式去進行Ontology

(20)

發展及維護的工作。

這個工具是建構在一個有彈性的 Plug-in 的架構上。首先,它很容易允許去 延伸它的功能以模組化的方式去進行,Plug-in 是一個開放的介面,它主要包含 三部份:一、它可以讓使用者去擴展 OntoEdit 內自己需要的功能;二、擁有一 個 Plug-in 的集合,例如一個領域的詞彙,一個推論的 Plug-in 和多個匯入及匯出 的 Plug-in;三、它允許使用者去自訂適當的工具在不同的使用情況上。

OntoEdit

TM

V2.5 被分成免費版本及專業的版本,專業版本包括了額外的Plug-in 的集合,例如一個協同的環境和推論的能力,圖 2-3 為OntoEdit

TM

V2.5 之執行畫 面。

圖 2-3 OntoEdit

TM

V2.5 之執行畫面[12]

2. Protégé-2000

Protégé-2000 這套 Ontology 編輯器是由 Stanford 大學的 Stanford Medical Informatics 所開發的,它是用 Java 開發的,圖 2-4 為 Protégé-2000 的執行畫面。

在 Protégé-2000 中,它的 Knowledge Model 是屬於 Frame-based 的形式,Frame 是一個最頂層抽象型態,在它下面有四個實體資料型態 Class、Slot、Facet 及 Instance。

(21)

圖 2-4 Protégé-2000 的執行畫面[12]

2.2 文件分類

文件分類(document classification or text categorization),是指依照文件內容將 文件歸類為一個或多個既定好的類別,在資訊擷取領域(Information retrieval)上,

文件分類是一項很重要的研究,隨著網路化的發展,文件分類的應用在電子郵 件、全球資訊網頁的管理也越趨頻繁,雖然人工分類有其準確性,但可能受到人 為上主觀的影響,而且資訊數位化也讓需要分類文件的數量變得太大而無法靠人 工分類文件;因此,自動化文件分類方式便有其必要性與重要性。目前自動化文 件分類方法包括有決策樹(decision tree classifier)[18][19]、KNN [17]、SVM[24]、

naive Bayes(naive Bayes classifier)[20]、等 TFIDF [16]。

(22)

1. 決策樹分類:

目前常使用的決策樹分類方式有 ID3[21]與 C4.5[22],決策樹的分類速度較 快,在訓練的過程中,由決策樹中每個根節點(root node)開始,若訓練資料存在 著不同類別的資料,便透過評估計算來選擇某個特徵或屬性做為判別的條件,利 用 IF-Then 的條件判斷將訓練資料分割後再訓練其子節點,直到該子節點的訓練 資料皆為同一類別時,則該子節點便轉換為葉節點,然後給予此葉節點與訓練資 料相同的類別,因此每個內部節點都存在一個條件判斷的規則(If-Then Rule),進 而推導出整個決策樹。在測試資料時,由根節點開始,依據節點所要評估的屬性 進行條件判斷,將測試資料一層層向下推導,到達葉節點時,則可給予測試資料 與該葉節點相同的類別。

圖 2-5 銀行信用卡額度決策樹分類範例 [23]

普卡 其它貸款

中 低

無 有

金卡 普卡

銀卡

年收入

圖 2-5 為一家銀行在核準發行信用卡等級的一種決策樹分類方式,依據客戶 的部份屬性來決定分類結果,也就是考量客戶的年收入、負債情況來決定發行的 額度應該為金卡、銀卡或是普卡,因此,若某客戶年收入程度中等,又有其它貸 款,則銀行將會先自動將客戶信用卡額度歸類為普卡等級。

(23)

2. K-Nearest Neighbors (KNN)

KNN[24]分類的方式是把需要判別的測試文件與所有訓練資料做計算,在訓 練資料中找出與測試文件最相近的 N 筆資料,然後檢查 N 筆資料中哪一種類別 的資料佔最多,就將測試文件判別為該種類別,因此,KNN 分類方式並不需要 太大量的時間做訓練,而是在對測試文件分類的過程中,隨著訓練資料變多則分 類時間也因此提高。如圖 2-6,在問號的部份是我們要分類的圖形,當我們設定 距離為 4 時,會在問號周圍找距離最近的 4 筆訓練資料,由近到遠分別是正方形、

圓形、圓形以及菱形,再依據其遠近分別給予不同的權重值,如正方形最近,所 以給予的權重值為 0.8,二個圓形的權重分別為 0.6 與 0.3,菱形因為與問號離最 遠,所以得到的權重值相對較小,為 0.1,根據這樣權重值,我們可以簡單的計 算出在距離為 4 時,問號圖形的類別應該是(0.6+0.3) = 0.9 > 0.8 > 0.2,因此我們 判定問號的圖形應該是圓形。

圖 2-6 KNN 分類[24]

3. Support Vector Machine (SVM)

SVM 由 Vapnik 等人所提出(Boser, Guyon, and Vapnik, 1992; Cortes and Vapnik, 1995) [25],屬於線性分類方式的一種,可以在二種類別的特徵值中找出 一個最佳的分割平面(optimal hyper plane)將資料分成二類。如圖 2-7 所示[25],

左圖為一般線性分類方式透過訓練所得到的分割情況,右圖為透過 SVM 分類方 式透過訓練學習求得的超平面,SVM 將資料分為二類,並且在分割平面與訓練

(24)

資料之間有最大的邊界,使得未來在判定測試文件的類別時能夠擁有更佳的精確 度,不過 SVM 存在的缺點為其訓練時間較長,也是一種二元分類方式,因此在 處理多種類別的分類時需要稍加變化,而且訓練資料有時無法完全分割,須經由 其它函數轉換成可以割的型態,再求出分割超平面。

圖 2-7 一般線性分類方式與 SVM 線性分類方式[25]

2.3 Web Services

Web services 為一種網際網路上的服務,提供程式間彼此呼叫、傳遞參數與 運算,不受平台與程式語言間的束縛,跨越系統間的異質性,彼此能互相溝通、

運算與交換資料,讓相同功能的元件與服務能直接取用而不需各自另外建置,達 到分散式運算的功能;軟體開發人員可以將設計好的 web services 公佈於網路上 供其它應用程式使用,所以其它軟體開發人員便可以重複使用這些現有的程式元 件而不需另外設計相同功能的程式元件,節省時間與人力成本,解決了跨平台、

資料交換、尋找、再利用的資訊需求。例如在線上金融交易時,可以將使用者的 資料透過銀行所提供的網路服務來驗証使用者身份與檢視使用者信用狀況,或是 旅遊時可直接由 PDA 透過網路,利用航空公司與飯店所提供的 web services 對 於最恰當的時間與最合適的行程做訂票與訂房的服務,而要能提供與使用這樣的 服務與硬體或平台無關,web services 的好處之一就是能夠包裝在不同平台使用

(25)

不同語言所撰寫的程式,再透過公開標準的 HTTP 通訊協定,就能夠方便的應用 與執行這些服務。

Web services 擁有跨平台的特性,為了讓資料能夠互相傳遞、溝通,web services 採用 XML 技術傳遞結構性資料,並包含了三個標準技術以達到實現 web services 的能力,這三個技術分別為 SOAP、WSDL 與 UDDI,以下為簡單的說 明其技術與關係。

1. SOAP(Simple object access protocol)

SOAP,簡單物件存取協定,是在分散或分散式的環境中交換訊息的一種協 定,是傳遞 web services 訊息的標準協定,當電腦傳送要求或接受運算結果時便 是用 SOAP 來描述這些傳送過程中的資料定義與資料值,SOAP 本身遵循 XML 語言規則,也繼承 XML 語言結構化的特性,有良好的擴充性與提供了資料交換 所需的標準資料型態,所以用 XML 為資料主體的 SOAP 訊息能傳遞與表達複雜 的結構化資料,在傳遞資料時會先將資料轉換成 XML 格式,然後再透過 HTTP 協定與網際網路傳送訊息,因此便達到了 web services 能跨平台的特性。SOAP 包含了三個基本元件,分別是

SOAP 信封(Envelop):為一標準的 XML 文件,分為標頭(Header)與內文(Body) 二部份,標頭定義 SOAP 內文、資料型態、編碼與命名空間位址,內文定義了客 戶端請求與伺服器端回應的訊息內容。

編碼規則:描述 SOAP 訊息所使用的編碼方式。

SOAP 請求與回應:描述 SOAP 傳遞與接收訊息的過程與方式。

SOAP 是由微軟、IBM...等公司共同主導制定,在 2000 年共同提交給 W3C 組織,

目前規格發展至 SOAP 1.2 版[26]。

2. WSDL(Web services description language)

WSDL,網路服務描述語,遵循 XML 語言規則,為一描述 web services 的 標準語言,由服務提供者建置,說明提供的 web services 操作方法與介面,亦即,

讓服務提供者採用一種標準的方式來描述所提供的 web services 所有擁的能力。

(26)

WSDL 分為二部份,服務介面定義(Service Interface Definition)與服務實做定義 (Service Implementation Definition) [9],如圖 2-8,服務介面定義描述與 web services 間傳遞參數的個數、參數型態、回傳值型態以及與提供 web services 服務 伺服器的連線方式,而服務實做定義則是描述服務執行方式與服務所在的位置;

透過 WSDL 可以了解某個 web services 所提供的服務,因此每個 web services 開 發時也需建置 WSDL 讓需要的使用者能夠了解如何使用該 web services 所提供的 功能與存取方式。WSDL 是由 IBM、微軟、Ariba...等公司共同制定,目前的版 本為 1.2 版[27]。

服務實做定義

(Service Implementation Definition)

圖 2-8 WSDL 服務定義[28]

服務 連接埠 資料類型 訊息

鏈結 介面類型 服務介面定義

(Service Interface Definition)

服務:服務名稱、提供服務的廠商 連接埠:服務的網路位置

資料類型:說明了所有必須傳遞的資料類型 訊息:定義客戶程式和伺服器之間的互動事項 介面類型:定義服務介面的資料輸入與回應方式 鏈結:說明這些服務該如何存取

3. UDDI(Universal description discovery and integration)

UDDI,全球探索描述與整合,主要目標是要發展成為一個具安全性的 web services 登錄與搜尋機制的整合平台,讓提供 web services 的供應者註冊他們的

(27)

web services 以供人查尋該服務與該服務供應商的資訊,讓需要 web services 的使 用者前來搜尋是否他們想要的 web services,透過 UDDI 提供的搜查機制,讓服 務需求者可以搜尋特定地區內提供服務的公司,得到其服務資訊、聯絡人、連結 位址以及技術資料,加速個人或組織資訊電子化的整合機制;例如,當使用者需 要一個計算服務的 web services 時,就連至 UDDI server 去搜尋是否有計算服務 的 web services,若搜尋成功,這時 UDDI server 便會回傳該 web services 的 WSDL 訊息,讓使用者了解該 web services 提供的功能以及如何呼叫該計算服務 web services;UDDI 目錄就是一個 XML 檔案,列出一些公司與該公司所提供的服務;

在 UDDI 目錄中主要有三個部份:

白皮書(White Pages):記錄服務提供者的相關資訊,如:公司名稱、描述、聯絡 資料、識別碼...等。

黃皮書(Yellow Pages):將各種服務分類,使得服務需求者可以從分類中找到相關 服務的提供者與服務說明。

綠皮書(Green Pages):描述服務需求者要如何連結服務提供者所提供的網路服務 介面與相關技術資料。

目前 UDDI 目前發展的版本為 version 3[29];

圖 2-9 Web services 服務流程說明[28]

Services Requester 服務需求者 Services Provider

服務提供者 2 1

6 5

4 3

Services Broker 服務仲介者(UDDI)

(28)

圖 2-9 為 web services 服務的流程架構,流程說明如下:

[1] 服務提供者向 UDDI 登錄與註冊所提供的 web services 服務。

[2] UDDI 回覆服務服務提供者登錄與註冊結果。

[3] 服務需求者向 UDDI 查詢是否有符合其需求的 web services。

[4] UDDI 回覆服務需求者搜尋結果以及服務提供者的相關資訊 [5] 服務需求者根據 UDDI 回覆的資訊向服務提供者要求服務 [6] 服務提供者回覆服務需求者其執行結果

2.4 分類成效評估方式

在資訊檢索相關的研究上,經常採用計算召回率(Recall)和精確率(Precision) 來評估其成效,例如在搜尋引擎的應用,通常希望使用者輸入關鍵字串後就能夠 找到所有相關的資料,即產生較高的召回率,但通常有了較高的召回率的同時也 可能由於資料過於龐大而產生了較低的精確率,因為有許多看似相關但主題完全 不同的資料也被搜尋引擎所引入,因此,為了避免找到不相關的文獻或引入錯誤 的資料,希望所找出的資料都是正確符合使用者需求的,所以需要較高的精確 率,但有時可能由於找到的資料量過小,雖然有了高的精確率,但召回率反而降 低了;因此,為了避免做出做出高精確率、低召回率,或低精確率、高召回率的 結果,一般的資訊檢索會在精確率與召回率之間取得一個使用者可以接受的平衡 點,為同時兼顧這兩個數據,則採用 F-measure[25]來比較不同系統間的成效。

在文件分類技術上,通常也採取分析召回率與精確率的方式,對於每個類 別,所有分類後的文件被劃分如表 2-1[24]中的四種情況,即原屬於i類,分類後 被正確分為i類有ai篇,沒被分為i類的有bi篇,而不屬於i類的文件中,分類後被 錯誤分成i類的有ci篇,沒被系統分為i類的有di篇,同時也計算F-Measure做為與 其它文件分類分式成效之比較,我們計算的精確率與召回率分別為[24]:

(29)

(2-1) (2-2)

(2-3)

i i

i

i a c

ecision a

= + Pr

i i

i i

i call ecision

ecision Measure call

F Re Pr

Pr

* Re

* _ 2

= +

i i i

i a b

call a

= + Re

為類別總數

K

K i

∈{1,2,..., };

a

i:表示原本屬於類別i,分類後也判定為類別i的文件數

b

i:表示原本屬於類別i,分類後卻判定不屬於類別i的文件數

c

i:表示原本不屬於類別i,分類後卻判定為類別i的文件數

d

i:表示原本不屬於類別i,分類後也判定不屬於類別i的文件數

表 2-1 文件分類數量表[24]

系統分為該類 系統不分為該類

屬於該類別

a

i

b

i

不屬於該類別

c

i

d

i

(30)

第三章 研究方法

3.1 Weighted Domain Ontology

3.1.1 Object-Oriented Ontology 架構

如圖 3-1,我們首先引用一個物件導向式的 Ontology 架構(Object-Oriented Ontology)[30],並且稍作修改成為帶有權重值的物件導向式 Ontology,在原始的 物件導向式架構中包含了幾個主要的元素,Domain、Category、Concept 和 Relation,將分別說明如下[3][30]:

Domain:Domain 所代表的是 Ontology 所要描述的特定領域。

Category:將建構出的 Ontology 運用於分類,因此 Domain 下又有數個 Category,

每個 Category 都會繼承 Domain 的一些特性,所以 Domain 與 Category 間會有 Generalization 的 Relation。

Concept:Concept 是由 Concept Name、Attribute 與 Weight 所組成,通常 Concept Name 與 Attribute 是由名詞中取得。

Relation:依照 Object-Oriented 的觀念將 Relations 可分成三種,Association、

Generalization 與 Aggregation,Association 就是一般的 Semantic Relation 是為了要加強 Ontology 的語意;Generalization 是一種 Inheritance Relation;Aggregation 是一種 Part-Whole Relation,舉例說明如:「IBM PC」和「麥金塔」與「桌上型電腦」間有 Generalization Relation,故

「IBM PC」和「麥金塔」會繼承「桌上型電腦」的屬性「CPU」、「硬 碟」、「記憶體」,而「主機」、「鍵盤」、「銀幕」與「滑鼠」與「桌上型 電腦」間有 Aggregation Relation,因此可知「桌上型電腦」是由「主 機」、「鍵盤」、「螢幕」與「滑鼠」等所構成的。

(31)

9

Structure of Object-Oriented Ontology

• Domain

• Category

• Concepts – Concept – Attributes – Operations

• Relations – Association – Generalization

(is-kind-of) – Aggregation

(is-part-of)

Domain

Category 1 Category 2 Category 3

Category k

Concept 1 Attributes 1 Operations 1

Concept 2 Attributes 2 Operations 2

Concept 3 Attributes 3 Operations 3

Concept n Attributes n Operations n

Concept 4 Attributes 4 Operations 4

Concept 5 Attributes 5 Operations 5

Concept 6 Attributes 6 Operations 6

Concepts Set

Association Generalization Aggregation

圖 3-1 Structure of Object-Oriented Ontology[30]

3.1.2 Weighted Ontology 架構

我們延伸引用圖 3-1 之 Object-Oriented Ontology 架構,提出一個 Weighted Domain Ontology 架構(如圖 3-2 所示),作為專家建構 Ontology 的基礎框架。首 先,在每個 Category 與 Concept 的部份加入權重值,權重值的值是透過訓練過程 求得,權重值越高,表示該項目與該知識領域的相關性越強。另外,對於每個 Relation 也有其權重值,Relation 的權重值是用來表示二個項目在該領域下的語 意關連程度,而我們最後便是希望透過關係的權重與長度來評估測試文件與各類 別的相似性。

(32)

9

Structure of Weighted Ontology

• Domain

• Category

• Concepts – Concept – Attributes – Weight

• Relations – Association – Generalization

(is-kind-of) – Aggregation

(is-part-of)

Domain

Weight 1 Weight 2 Weight 3

Weight k

Concept 1 Attributes 1

Weight 1

Concept 2 Attributes 2

Weight 2

Concept 3 Attributes 3

Weight 3

Concept n Attributes n

Weight n

Concept 4 Attributes 4

Weight 4

Concept 5 Attributes 5

Weight 5

Concept 6 Attributes 6

Weight 6

Concepts Set

Association Generalization Aggregation

Category 1 Category 2 Category 3 Category k

圖 3-2 Structure of Object-Oriented Weighted Ontology

3.2 計算權重值

1.

計算

Concept

的出現頻率:

在屬於類別k的Ontology

k

中,我們計算每個Concept在各類別文件中出現的次 數,計算出現與未出現的次數,再以TF * IDF [16]的方式來計算Ontology

k

內的各 個Concept的重要性。

(3-1)

log

1 , ,

,

=

×

=

C

c c i k

i k i

DF DF N

W

k:表示類別 k, k

{1...C}, C 為類別總數

i:表示在屬於類別k的Ontology

k中的某個Concept i

W

i,k:表示在屬於類別k的Ontology

k

中, Concept i的權重值

DF

i,k:表示在屬於類別k的文件中, Concept i出現的文件數

(33)

N:表示所有的訓練文件數

透過公式(3-1)可以計算出各類別的 Ontology 內的各個 Concept 之權重值;

除了計算各 Concept 的權重值之外,接下來,我們也要計算 Concept 之間的語意 關聯強度,藉以提供分類時,增強相似度判斷的依據。

Training Data

圖 3-3 計算 Concept 出現頻率的流程

=

×

= C

c

c i k

i k

i

DF DF N

1 , ,

, log

W

自然語言前處理 Ontologyk

計算Ontology

k

中的Concept i出現在類別k與 所有類別的文件數N中的次數

2. 依照出現頻率給予 Concept 權重值

我們以 Ontology 架構來計算各個新聞類別中每個 Concept 出現過的文件 數,透過公式 3-1 可以計算出每個 Concept 的重要性,因此,如圖 3-4,我們依 照每個 Concept 的重要性將該類別內的分成十等份,依序給予每個 Concept 由 0.1 至 1 的權重值。

(34)

1

0.1 0.2 0.9 . . . . . .

Concept 10 Concept 1

Concept 11 Concept 26 Concept 29

Concept 12

Concept 15 Concept 2

Concept 14 Concept 13

Concept 5 Concept 21

Concept 23 Concept 24

Concept 25

Concept 22

Concept 20 Concept 16

Concept 18 Concept 19 Concept 9

Concept 4

Concept 8

Concept 17 Concept 6

Concept 28

Concept 7

Concept 30 Concept 27

圖 3-4 給予 Concept 權重值

3. 計算 Concept 之間的語意關聯強度:

在各個類別的 Ontology 中,部份 Concept 都會存在著一些關係,這些關係 在文件分類上計算文件相似度時,便可以採用做為計算文件相似度的特徵;因 此,我們將這些存在於 Concept 之間的關係做訓練,計算 Relation 二端所連接之 Concept 在該類別下共同出現的頻率,若是同時出現的次數越頻繁,表示他們便 有更佳的語意關聯強度。

k j k

i

k j i k

j

i

DF DF

RW DF

, ,

),

&

( ,

,

* 2

= +

(3-2)

i:表示Concept i j:表示Concept

j

k:表示類別 k

RW

i,j,k:表示在屬於類別k的Ontologyk中的Concept i與Concept j之間關係的權重值

DF

i,k :表示在屬於類別k的文件中, Concept i出現的文件數

DF

(i&,j),k :表示在屬於類別k的文件中, Concept i與Concept

j

共同出現的文件數

利用公式(3-2),便可以了解在屬於類別k的Ontology

k

中,Concepti與Conceptj

(35)

Training Data

在類別k的文件中,計算Ontologyk內,Concept

i與Concept j共同出現過的文件數,以及分別

出現過的文件數

Ontologyk

自然語言前處理

k j k i

k j i k

j

i

DF DF

RW DF

, ,

),

&

( ,

,

* 2

= + 同出

圖 3-5 計算 Relation 重要性的流程

4.

依照出現頻率給予

Relation

權重值

新聞類別中每個 Relation 出現過的文件 數,透

現的次數DF(i&j),k大於分別出現的文件數DFi,k或DFj,k,其語意關係強度便越 強,關係的權重值也就越高,反之,若Concept i或Concept j分別單獨出現的次數 遠多於DF(i&j),k,則表示Concept i與Concept j之間的語意關係強度較弱。

我們以 Ontology 架構來計算各個

過公式 3-2 可以計算出每條 Relation 的重要性,因此,如圖 3-6,我們依 照每條 Relation 的重要性將該類別內的分成十等份,依序給予每個 Concept 由 0.1 至 1 的權重值。

(36)

1

0.1 0.2 0.9 . . . . . .

Relation 10

Relation 1

Relation 11

Relation 26 Relation 29

Relation 12

Relation 15 Relation 2

Relation 14 Relation 13

Relation 5 Relation 21

Relation 23 Relation 24

Relation 32

Relation 22

Relation 20 Relation 16

Relation 18 Relation 19 Relation 9

Relation 4 Relation 8

Relation 17

Relation 6

Relation 28 Relation 33

Relation 30 Relation 27

Relation 31

Relation 25

Relation 7

圖 3-6 給予 Relation 權重值

透過上述的訓練方式,我們可以將一個 Ontology k,轉換成一個含有權重 值的 weighted Ontology k

,如下圖 3-7 與圖 3-8,

Concept m Attributes m

Concept n Attributes n

Concept p Attributes p

Concept q Attributes q

Concept r Attributes r

Concept s Attributes s

Concept t Attributes t

News Ontology

Concept 1 Attributes 1

Concept 2 Attributes 2

Concept 3 Attributes 3

Concept k Attributes k Domain Concept 0

Association Generalization

圖 3-7 訓練前之 Ontology

(37)

Weight 0

Concept m Attributes m

Weight m

Concept n Attributes n

Weight n

Concept p Attributes p

Weight p

Concept q Attributes q

Weight q

Concept r Attributes r

Weight r

Concept s Attributes s

Weight s

Concept t Attributes t

Weight t

Weighted News Ontology

Concept 1 Attributes 1

Weight 1

Concept 2 Attributes 2

Weight 2

Concept 3 Attributes 3

Weight 3

Concept k Attributes k

Weight k

RW

1,0

RW

k,0

RW

m,2

RW

2,0

RW

3,0

RW

n,2

RW

p,3

RW

q,k

RWr,s

RW

s,n

RW

r,n

RW

,r,m

RW

p,2

Domain Concept 0

Association Generalization

圖 3-8 訓練後之帶有權重值之 Ontology

3.3 語意關係路徑

在建構 Ontology 的過程中,彼此間有相關的項目都存在著 Relation,而且存 在關係的二個項目也容易同時出現在同一份文件當中,因此在分類的過程中,我 們將利用這些關係所代表的語意做為一種判斷文件類別的模糊變數,藉由文件與 各類別 Ontology 所對應到 Concept 尋找出最大語意關係路徑長度(MSRPL)與最大 語意最大語意路徑權重值(MSRPW),最後經由模糊推論方式藉以得到文件與類別 之間的相似程度。

3.3.1 計算最大語意路徑長度與最大權重:

1. 將對應路徑轉為有向圖

經過訓練後,我們可以看出附有權重值的 Ontology 就如同一個附有權重值 的有向圖,可以將每個 Concept 看做是一個節點,Concept A 與 Concept B 之間的 關係便可以轉換成有向路徑,因此,如表 3-1 的定義,可以對於 Concept A 與

(38)

Concept B 之間存在的 Generation 關係,轉換成由節點 A 至節點 B 的一條單向路 徑,對於 Concept H 與 Concept I 之間存在的 Association 關係,轉換成由節點 H 與節點 I 之間的一條雙向路徑,

表 3-1 轉換的對應路徑

Item 轉換為

Concept 節點

Generation 單向路徑 Association 雙向路徑

因此,我們將一附有權重之 Ontology 圖 3-9 將轉換如圖 3-10:

W

D

C D

W

C

W

I

I W

H

H W

B

B

W

F

F

W

G

G W

E

E

W

A

RW

A,B

RW

A,D

RW

A,C

RW

D,I

RW

C,H

RW

C,G

RW

B,F

RW

B,E

RW

G,I

RW

H,I

RW

F,G

RW

F,I

A

圖 3-9 一個 Weighted Ontology

(39)

圖 3-10 由 Weighted Ontology 轉換而成的有向圖

F

D B

E

C

RW

B,E

RW

A,B

G H I

RW

A,D

RW

F,G

RW

H,I

RW

D,I

RW

C,H

RW

C,G

RW

B,F

RW

F,I

A

RW

G,I

透過附有權重的有向圖,我們再求其對應的最長路徑,給予文件d與類別k 一個文件類別相似度Sd,k

2. 計算最長語意關係長度與權重

假設要計算一份文件d與類別k的相似度Sd,k,首先發現了在文件d中屬於類別

k的Ontology k中的Concept {C,D,F,G,H,I},透過圖形的轉換,可以得到的有向圖

如下:

圖 3-11 文件與 Ontology 對應形成的有向圖

D

G H I

RW

F,I

RW

G,I

RW

C,G

RW

C,H

RW

D,I

RW

H,I

RW

F,G

C

F

(40)

得到了文件 d 與 Ontology k 之間對映的圖形關係,接下來便可以利用語意搜 尋演算法找到相連的語意路徑長度與權重值。

Semantic Relation Path Search Algorithm:

尋找文件 d 與 Ontology k 所對應的語意關係路徑

Step 1 尋找 d 與 Ontology k 對映的 n 個 Concepts, n≧0;

Step 1.1 將對映的n個Concepts轉換為矩陣Mn*n

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

= =

concept to

concept from

relation any

not are there if or

concept concept

if , 0

concept

to concept from

relation a

is there if , 1 ] , [

j i

j i

j i

j i M

M

1’ = M[i,j]

Step 2 設 t = 2,

Step 2.1 計算Mt = M

(t-1)’

* M If Mt = 0 then goto Step 3

Step 2.2 刪除由Concept

i

到Concept

j

各種長度為t-1 且有迴圈的路徑,

⎪⎪

⎪⎪

⎪⎪

⎪⎪

=

otherwise ,

] , [

path each in loop a is there

and concept to

concept from

path are there , ] , [

, 0 ] , [ '

j i M

l l

l j i M

j i j

i Mt

t

i,j

j i

t

Step 2.3 對於每個Mt’[i,j]≠ 0,我們可以找到長度為t-1 而且無迴圈的語意關係 路徑, patht-1,1, patht-1,2, ..., patht-1,x

Step 2.4

t = t + 1

若 t ≦ n,則跳至 Step 2.1 Step 3 End

透過語意關係路徑搜尋演算法,我們可以得到文件 d 與 Ontology k 所對應到 的所有語意關係,但這種語意關係有些可能是重疊的、多餘的,而且,語意關係 路徑較長也表示文件 d 與類別 k 的語意相似度較高;因此,針對上述的條件,我

(41)

們從所有語意關係路徑中選出語意關係較強且不重覆的路徑,所以可以得到:

最長的語意關係路徑之長度(MSRPL) 最重的語意關係路徑之權重(MSRPW)

的路徑 2 長度為

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎢ ⎢

⎢ ⎢

⎢ ⎢

⎢ ⎢

=

0 0 1 1 0 0

0 0 1 1 0 0

1 1 0 1 0 0

1 1 1 0 0 0

0 1 1 1 0 0

2 0 1 0 0 0

' 2

IFG IGF

HIG HIF

GFI GIH GIF

FGI FIH FIG

DIH DIG DIF

CGI,CHI CGF

M

長度為1的路徑

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎢ ⎢

⎢ ⎢

⎢ ⎢

⎢ ⎢

=

0 1 1 1 0 0

1 0 0 0 0 0

1 0 0 1 0 0

1 0 1 0 0 0

1 0 0 0 0 0

0 1 1 0 0 0

' 1

IH IG IF

HI GI GF

FI FG

DI CH CG

M

的路徑 4 長度為

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎢ ⎢

⎢ ⎢

⎢ ⎢

⎢ ⎢

=

0 0 0 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0

0 1 1 1 0 0

' 4

CGFIH CHIFG CHIGF

M

長度為3的路徑

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎢ ⎢

⎢ ⎢

⎢ ⎢

⎢ ⎢

=

0 0 0 0

0 0

0 0 1

1 0 0

0 1

0 0

0 0

0 1

0 0

0 0

0 0 1

1 0 0

1 1 1 2

0

0

,

' 3

HIFG HIGF

GFIH FGIH DIFG DIGF

CGFI CGIH CHIG CHIF CGIF

M

長度為 2 的語意關係 {C,G,F}, {C,G,I}, {C,H,I}, {D,I,F}, {D,I,G},{D,I,H}, {F,I,G}, {F,I,H}, {F,G,I}, {G,I,F}, {G,I,H}, {G,F,I}, {H,I,F}, {H,I,G}, {I,G,F}, {I,F,G}

長度為 3 的語意關係 {C,G,I,F}, {C,H,I,F}, {C,H,I,G}, {C,G,I,H}, {C,G,F,I}, {D,I,G,F}, {D,I,F,G}, {F,G,I,H}, {G,F,I,H}, {H,I,G,F}, {H,I,F,G}

長度為 4 的語意關係 {C,H,I,G,F}, {C,H,I,F,G}, {C,G,F,I,H}

3.4 模糊推論機制(Fuzzy Inference Mechanism)

我們引用一個五階層式的模糊推論機制[31][32][33]如圖 3-12 所示,透過模 糊推論機制將新聞文件與 Ontology 對應後得到的所有對應 Concept 權重值

(42)

(MCW)、最大語意關係路徑長度(MSRPL)、最大語意關係路徑權重(MSRPW)三個 模糊變數進行文件類別判定的推論運算。

DocTerm1, DocTerm2, …, DocTerm n.

Layer5 (output similarity layer)

Layer4 (output semantic layer)

Layer3 (rule layer)

Layer2 (input semantic layer)

Layer1 (input document layer)

Chinese term set of Document Weighted Ontology

Y

i

COA

. . . SRS

SRS SRS SRS SRS

MCW MSRPL MSRPW

Term 1, Term 2, …,Term m, Relation matrix of Term 1 …Term m.

圖 3-12 模糊推論機制[31][32][33]

在此平行推論的模糊推論機制中,包含了五個層級:input document layer

input semantic layerrule layeroutput semantic layer 以及 output similarity layer,在 input document layer 中,包函二種輸入集合,一是待分類的新聞文件經

過文件前處理[34]後所得到的詞彙集合,另一是由專家建置之 Domain Ontology 內的所有詞彙與詞彙之間的關係矩陣,將文件透過文件與 Weighted Ontology 的 對應與計算,在 input semantic layer 中可以得到三個模糊變數,分別為對應概念 權 重 (MCW) 、 最 大 語 意 關 係 路 徑 長 度 (MSRPL) 與 最 大 語 意 關 係 路 徑 權 重 (MSRPW)。

MCW(Mapped Concept Weight):所有對應的 Concepts 權重值

MSRPL(Maximal Semantic Relation Path Length):最長的語意關係路徑長度 MSRPW(Maximal Semantic Relation Path Weight):最大的語意關係路徑權重值

假設有一篇待分類的氣象新聞(如圖 3-13),透過文件前處理後,我們可以得

(43)

到該篇新聞詞彙的集合(如圖 3-14),然後將待分類的新聞詞彙集合與氣象新聞 Ontology 做對應(如圖 3-14),便可得到其對應後的 Concept 與 Concept 之間的關 係(如圖 3-16),之後透過路徑搜尋演算法找到所有存在的語意關係,便可以求得

MCW、MSRPL、MSRPW 三種用來評估文件相似度的模糊變數。因此,圖 3-13

與氣象新聞 Ontology 對應後所得到的 MCW、MSRPL、MSRPW 三種模糊變數分 別為 6、4、2(表 3-2)。

圖 3-13 氣象新聞 明日天氣概況:

東部地區多雲陰有雨,中部地區受颱風外圍環流影響,中央氣象局 對中南部發佈豪雨特報,請山區民眾嚴防土石流災害。

圖 3-14 將新聞文件透過文件前處理後得到的詞彙集合 明日(Nd) 天氣(Na) 概況(Na) : 東部(Ncd) 地區(Nc) 多 (Neqa) 雲(Na) 陰(Na) 有(V_2) 雨(Na) ,中部(Ncd) 地區 (Nc) 受(P) 颱風(Na) 外圍(Nc) 環流(Na) 影響(VC) , 中央氣象局(Nc) 對中(VJ) 南部(Ncd) 發佈(VE) 豪雨(Na) 特報(VC) , 請(VF) 山區(Nc) 民眾(Na) 嚴防(VE) 土石流 (Na) 災害(Na) 。

(44)

0.5 自然氣侯 氣壓

0.7

0.5 雲 0.8

氣象局

0.7 颱風

1

0.8 0.8

0.2

0.7 0.6 0.3

特報 0.2 0.2

0.9 0.8

災害 0.3

天氣

0.7 0.6

0.6

0.6 氣象新聞

圖 3-15 氣象 Weighted Ontology

圖 3-16 對應後的關係圖

表 3-2 新聞與氣象 Ontology 對應後所得到的對應關係

模糊變數 對應的 Concept 值

MCW 氣象局,災害、天氣、特報、颱風、雲 3

MSRPL 氣象局→特報→颱風→雲→天氣 4

特報 0.2

天氣 0.6 氣象局

0.8

災害 0.3

颱風 0.7

雲 0.4 0.3

0.2 0.6

0.7 0.6

(45)

MSRPW 災害→颱風→雲→天氣 1.9

在 rule layer 層級中,我們制定了 27 條推論規則,用來推算 MCW

MSRPLMSRPW 三個模糊變數所對應得到之 Matching degree,利用正規化運算得到輸出

的模糊變數 SRS(Semantic Relation Strength) 值,並依據重心法計算得到每一條規 則推導之重心值(Center of Area, COA ),最後再做加權平均計算出每一詞組的語 意關聯強度值。表 3-3 顯示預先定義之 27 條推論規則,圖 3-17 為輸出模糊變數

SRS 之模糊集合。

表 3-3 FIA 之推論規則

Fuzzy Variables

Rules

MCW MSRPL MSRPW SRS

1 L L L VL

2 L L M L

3 L L H L

4 L M L L

5 L M M L

6 L M H M

7 L H L L

8 L H M M

9 L H H H

10 M L L L

11 M L M L

12 M L H M

13 M M L L

14 M M M M

15 M M H H

16 M H L M

17 M H M H

18 M H H H

19 H L L L

20 H L M M

(46)

21 H L H H

22 H M L M

23 H M M H

24 H M H H

25 H H L H

26 H H M H

27 H H H VH

VL: Very Low L: Low M: Medium H: High VH: Very High

Membership Degree

0 1

SRS_Very Low SRS_Low SRS_Medium SRS_High SRS_Very High

α

2 SRS

2 SRS

m

SRS+

m

SRS2

m

SRS3

m

SRS4

m

SRS4+

β

SRS4

m

SRS5

m

SRS1

圖 3-17 輸出模糊變數 SRS 之模糊集合

接下來,我們分別描述五階層式模糊推論機制各層級的輸入、輸出。

Layer 1 (Input Layer)

第一層的輸入值分別是一篇中文新聞文件詞彙集合和某類別的 Weighted Ontology 內的各個詞彙以及詞彙之間的關係矩陣,中文新聞文件詞彙集合是將中 文新聞透過自然語言前處理後所匯集的詞彙集合

( DocTerm

1

, ..., DocTerm

n

)

,而某 類 別 Weighted Ontologies 中 詞 彙 與 關 係 為

。因此,第一層的輸出向 量如下所示:

( OntoTerm

1

, ..., OntoTerm

n,

Relation Matrix of OntoTerms )

參考文獻

相關文件

智者大師根據《大品般若經》 、 《大智度論》 、 《成論》 、 《毘曇》等較早期的大乘經 論對禪法的演繹及修行,使我們聯想起近代西方學者 Paul Harrison

二、 學 與教: 第二語言學習理論、學習難點及學與教策略 三、 教材:.  運用第二語言學習架構的教學單元系列

在 在 運用新修訂自評框架後 運用新修訂自評框架後 的意見

2.「情境」創設對非華語學生學中文的影響 3.應用「調適架構」配合情境訂立教學目標 二、 第二語言教學流派..

Registry Server 是建構於第三方具有公信力的一個組織,而 Registry Server 在 Web Service 的架構中,主要的功能類似於提供服務查詢(Yellow

ZigBee Stack 的架構分別是由 IEEE 802.15.4 standard 以及 ZigBee 聯盟 所制定;其中 IEEE 802.15.4 standard 定義了兩層,分別為 Physical (PHY) Layer 以及 Medium Access

無線感測網路是個人區域網路中的一種應用,其中最常採用 Zigbee 無線通訊協 定做為主要架構。而 Zigbee 以 IEEE802.15.4 標準規範做為運用基礎,在下一小節將 會針對 IEEE

計算統一設備架構(Compute Unified Device Architecture, CUDA)為 nVIDIA 所 提出的 API,是有別於傳統 OpenGL 以及 DirectX,CUDA 讓使用者能夠透過 C