• 沒有找到結果。

第一章 緒論

1.1 研究動機與目的

對於專業領域的使用者來說,了解專有詞彙是學習上重要的一環。使用者在 閱讀專業領域的書籍時,經常會遇到不懂的專有詞彙,而這類型的詞彙無法由一 般字典中獲得在專業領域上的解釋。假設有一龐大的資料來源可供查詢,使用者 可以取得和專有詞彙相關文章中的說明句子,幫助了解專有詞彙。然而大量的文 章內容會導致資訊過載(Information Overload)的問題,使用者無法在短時間內了 解文章內容,需要花費大量時間自行分析整理之後才可以得到真正想要的資訊。

即使有一個很好的資訊檢索工具,若是使用者想了解兩個專有詞彙有何關聯時,

一次只能輸入一個專有詞彙進行查詢,而只查閱和一個專有詞彙相關的句子,使 用者需要自行整理之後,才能夠瞭解兩個詞彙彼此的關聯性或其具有相同相異的 概念比較。如果能提供一有效摘要方法,例如當使用者輸入兩個查詢詞彙是

―insertion sort‖和―merge sort‖,能自動找出兩個句子,如以下表示:

 ‖The Θ(n2) bound on the worst case running time of insertion sort, however, does not imply a Θ(n2) bound on the running time of insertion sort on every input.‖

 ―Once the input size n becomes large enough, merge sort, with its Θ(n lg n)

worst case running time, beats insertion sort, whose worst case running time is Θ(n2 ). ―

2

使 用者 可以 藉由這樣 的句組了解 兩 個查詢 詞彙 在最差 執行時間 (worst case

running time) 上 的 比 較 ; 當 使 用 者 輸 入 兩 個 查 詢 詞 彙 是 ―heapsort‖ 和 ‖sort algorithm‖,能自動找出這樣的句子,如以下表示:

 ―Heapsort is a comparison-based sort algorithm to create a sorted array (or list),

and is part of the election sort family. ―

使用者可以藉由這樣的句子了解―heapsort‖是一個以比較為基準的排序演算法。

但是目前一般查詢方法大多是針對一個查詢詞彙為主,無法達到自動摘要出兩個 查詢詞彙關係的句子。

因此本論文的研究目的是針對可信資料來源,根據使用者所輸入的兩個專有 詞彙,依照詞彙不同的關係,由資料來源中自動找出關聯句組或是關聯句,幫助 使用者在兩個專有詞彙的比較學習。

1.2 研究範圍與限制

本論文研究資料來源為可信的英文文件資料,文件資料中需要包含可區分出 句子的標點符號或是句尾符號,我們目前採用專業領域的英文 PDF 格式的電子 書,並且假設書中存在和查詢詞彙有相關的關聯句。輸入限定為兩個英文的專有 詞彙。

本論文的研究範圍分為兩大部分,我們將查詢詞彙關係分為兩大類,‖包含‖

關係和‖非包含‖關係。第一部分探討如何對於輸入的兩個查詢詞彙關係進行自動 分類,第二部分則探討如何根據詞彙關係的不同,找出‖包含‖關係的關聯句,或

3

是找出‖非包含‖關係的關聯句組。

我們定義詞彙關係分為兩類,第一類為‖包含‖關係,查詢詞彙之間彼此為上 下包含的關係,例如,‖data structure‖和‖linked list‖,‖linked list‖是一種資料結構

(data structure) ; 第 二 類 為 ‖ 非 包 含 ‖ 關 係 , 例 如 , ‖insertion sort‖ 和 ‖merge sort‖ , ‖insertion sort‖ 和 ‖merge sort‖ 都 是 一 種 排 序 演 算 法 (sorting

algorithm);‖binary tree‖和‖merge sort‖這兩個查詢詞彙同屬於演算法領域之下也 是屬於非包含關係。

詞彙關係若被分類為包含關係,如圖 1.1 所示,當使用者查詢‖data structure‖

和‖linked list‖時,本論文將探討如何自動擷取同時包含兩個查詢詞彙的句子,從 中自動選出一個句子,以下稱關聯句,用以解釋查詢詞彙在包含關係及定義上的 敘述。

詞彙關係若被分類為非包含關係,如圖 1.2 所示,當使用者查詢‖insertion sort‖

和‖merge sort‖,本論文將探討如何自動擷取出包含個別查詢詞彙的句子,並自 動找出兩個句子形成句組,以下稱關聯句組,顯示查詢詞彙在某些概念上相同或 相異的比較。

輸入兩個查詢詞彙: ―data structure‖、‖linked list‖

A linked list is a data structure which can change during execution, consisting of a group of nodes which together represent a sequence.

圖 1. 1 包含關係關聯句範例

4

1.3 論文方法

本論文為了幫助使用者瞭解所查詢的兩個專有詞彙,建立一套由電子書為資 料來源自動擷取關聯句之查詢系統。本論文方法主要分為兩大部分,分別是離線 訓練(Offline training)和線上處理(Online processing)。

離線訓練可分為三部分來說明:電子書內容的前處理、建立詞彙關係分類模 型和建立關聯句比對規則模型。<1>首先對於電子書文字內容進行前處理,句子 切割之後,以句子為單位儲存形成文句集,經過詞性標記和字型原型化的處理後,

對於文句集建立索引。<2>利用 Google 網路搜尋引擎蒐集多篇包含個別訓練查詢 字組的網頁摘要,藉由詞彙出現在網頁摘要中的分布情況作為特徵,輸入支持向 量機(Support Vector Machine, SVM)建立詞彙關係分類模型。<3>對於訓練資料進 行句型樣式擷取後,並取出其子序列,經過評分之後建立關聯句比對規則模型。

輸入兩個查詢詞彙: ―insertion sort‖、‖merge sort‖

Query: insertionsort

The Θ(n 2 ) bound on the worst case running time of insertion sort, however, does not imply a Θ(n 2 ) bound on the running time of insertion sort on every input.

Query: mergesort

Once the input size n becomes large enough, merge sort, with its Θ(n lg n) worst case running time, beats insertion sort, whose worst case running time is Θ(n 2 ).

圖 1. 2 非包含關係關聯句組範例

5

使用者輸入兩個查詢詞彙後,本系統利用 Google 網路搜尋引擎分別以兩個 查詢詞彙當作關鍵字去搜尋,蒐集多篇包含個別查詢詞彙的網頁摘要,藉由詞彙 間彼此出現在網頁摘要中的分布情形做為特徵,利用詞彙關係分類模型進行自動 分類。兩個查詢詞彙若是被分類為‖包含‖關係,系統會利用資訊檢索的概念取出 同時包含兩個查詢詞彙之句子作為關聯句集,一一擷取出句型樣式並取出子序列 後,利用關聯句比對規則模型對於句子進行評分,選出句型和語意關聯分數最高 的當作關聯句;詞彙若是被分類為 ‖非包含‖ 關係,系統取出包含任一查詢詞彙 的句子作為關聯句集,透過這些句子找出對於兩個查詢詞彙有高度關聯的字詞作 為共同概念詞,再依照共同概念詞進行分群,評估句子與共同概念詞以及句子間 兩兩配對的分數,挑選分數最高的兩個句子形成關聯句組。

針對所提出的方法,本研究進行三個部分的實驗:<1>評估查詢詞彙關係自 動分類的正確性,<2>評估‖包含‖關係的關聯句是否可以幫助使用者瞭解查詢詞 彙之間的關係,<3>評估‖非包含‖關係的關聯句組是否能夠讓使用者瞭解查詢詞 彙在概念下的異同處。

6

1.4 論文架構

本論文以下章節內容簡介如下:第二章說明相關文獻及探討。第三章說明本 論文提出之系統架構。第四章說明如何對電子書進行前處理和建立索引。第五章 詳細描述如何對於查詢詞彙關係進行自動分類。第六章說明如何找出‖包含‖關係 的關聯句。第七章說明如何找出‖非包含‖關係的關聯句組。第八章以實驗結果顯 示本論文方法的執行效果。最後在第九章提出總結及未來研究方向。

7

相關文件