第三章 研究方法
第一節 資料前處理階段
本節將敘述資料前處理階段中各個模組的運作情形,包含斷詞模組、詞性篩 選模組及 TF-IDF 模組,詳細內容如下說明:
一、斷詞模組
本系統所使用的中文斷詞系統是由高雄應用科技大學資訊工程系張道行老 師所主持的智慧型系統實驗室提供。斷詞系統所依賴的語料庫是參考中央研究院 提供的中文詞庫、漢語平衡語料庫及中文句結構樹資料庫所建置而成。此斷詞系 統使用的斷詞方法為「正向常詞優先法(Forward Maximum Matching)」再加上貝 氏機率來實作。系統語言使用 Borland C++撰寫。
本研究所使用到斷詞程式中兩個主要的功能,分別是斷詞功能與詞性標記功 能,詳述如下:
1. 斷詞功能
中文的句法(syntactic)和語意(semantic)基本單位是「詞」而非「字」(許菱祥,
1986),單獨的中文字未必是語句分析的最小單位。由此可知,在處理中文文本 時,應以詞為單位對文本進行斷詞的處理,然而,從過去的經驗發現,英文與中 文在書寫的過程中有明顯的差異,英文的句子在書寫的過程中,每個單字中間都 有一個空白做區隔,可以容易的擷取文句中的所有詞彙。但是在中文的環境底下,
在撰寫文句的過程中除了句子間的標點符號外,不需要再用任何符號或者空白來 區隔各個詞彙。因此在處理中文文本時,資料的前處理(斷詞)就顯得更加重要。
斷詞功能提供將文本內容的詞彙一一斷開的功能,由於本研究所使用的潛在 語意分析是以詞為單位進行語意空間的建構,所以需要事先把文本的詞彙一一斷 開,以供潛在語意分析系統進行處理,建立共生矩陣。
以下以一個範例來說明斷詞結果,如圖 3-2 所示,句子「今天天氣很好」輸 入斷詞系統後,透過斷詞功能,會將句子斷成「今天 天氣 很好」三個詞彙。
今天天氣很好 斷詞功能 今天 天氣 很好
圖 3-3 斷詞範例 2.詞性標記:
中文斷詞系統在把文章的詞彙都斷開以後,接下來會開始進行詞性標記的工 作,目的在把各個詞彙的詞性標記出來。然而中文在書寫的過程中彈性非常大,
一個詞彙的詞性可能會因為使用者用法的不同而有不同的詞性,造成判斷上的困 難,而本研究採用的中文斷詞系統在面對同一個詞彙擁有多種詞性時的解決方式,
是透過記錄過去各詞彙於語料庫中出現的頻率與各詞性間彼此共同出現的頻率,
再利用條件機率的方式去計算該詞彙於目前詞彙組合中最有可能的詞性。
以下以一個範例來說明斷詞結果,如圖 3-3 所示,句子「今天天氣很好」輸 入斷詞系統後,會利用斷詞功能產出的結果(「今天 天氣 很好」三個詞彙)透 過詞性標記功能,會將三個詞彙標記所屬的詞性「Nd Na Vh」。
今天天氣很好 詞性標記功能 Nd Na Vh
圖 3-4 詞性標記範例 二、詞性篩選模組
LSA 針對文章中所有的詞進行分析,透過詞與詞相互出現的位置,找到詞 彙之間的相似關係,進而建構出一個有效的語意空間,可以將不同的詞彙投影到 一個向量空間進行計算。因此詞彙的篩選就顯得非常重要,本研究依照中央研究 院資訊科學研究所中文詞知識庫小組 1993 年 6 月出版的中文詞類分析(三版)一 書的介紹,將在文章中比較沒有意義的詞性排除,包括:副詞(D)、介詞(P)、連 接詞(C)、語助詞(T)和感嘆詞(I),以增加資料的可靠性。
TF-IDF(term frequency – inverse document frequency)常被使用於資訊檢索與 文本挖掘,用以評估一個文件集或語料庫中任何一個詞彙的重要程度,然而一個 詞彙的重要程度,與該詞彙於單一文件中的出現次數成正比增加,但是又會與整 個文件集中該詞彙的次數增加而成反比下降。因此本研究在計算詞頻時,透過 TF-IDF 的方式對原始的詞頻進行一個正規化的處理。
在一份文件中,詞頻(term frequency,TF)所指的是一個詞彙在一個文件中出 現的個數,可以視為單一文件內部詞彙的分佈特性。然而一個詞彙在一個較長的 文件中出現的機會相對於較短的文件來說一定會比較高,因此詞頻通常都要先透 過一個正規化的機制,防止詞頻受到文章長度的影響。對於在某一個特定文件𝑑𝑗 中的詞彙ti來說,該詞彙的重要性𝑡𝑓𝑖,𝑗可以被表示為:
𝑡𝑓𝑖,𝑗 = 𝑛𝑖,𝑗
∑ 𝑛𝑘 𝑘,𝑗 (1) 如以式(1)所述,分子𝑛𝑖,𝑗代表詞彙𝑡𝑖於文件𝑑𝑗中出現的次數,而分母∑𝑘𝑛𝑘,𝑗則 是代表文件𝑑𝑗中所有的詞彙個數的總和。
逆向文件頻率(inverse document frequency,IDF)則可以視為全域資料中詞彙 的分佈特性,一般來說,一個詞彙如果在一個文件集或語料庫中出現的篇數越多,
此詞彙相對的重要性就越低,某一個特定詞彙𝑡𝑖的 IDF,可以由文件集或語料庫 的總文件數目除以包含該詞語之文件的數目得到的商數,再取對數得到:
𝑖𝑑𝑓𝑖 = log1+|{𝑗:𝑡|𝐷|
𝑖∈𝑑𝑖}| (2) 其中|𝐷|代表的是文件集或語料庫中所有的文章數,|{𝑗: 𝑡𝑖 ∈ 𝑑𝑖}|則是所有文 章中有出現詞彙𝑡𝑖的文章數,分母加一的原因是防止𝑡𝑖從未出現在文件集或語料 庫中導致分母為 0 的情況發生。
將上述式(1)與(2)相乘,即可求得某一特定詞彙於整個語料庫中的重要性。
𝑡𝑓𝑖𝑑𝑓𝑖,𝑗 = 𝑡𝑓𝑖,𝑗× 𝑖𝑑𝑓𝑖 (3) 本研究中處理完文章的斷詞後,建立 LSA 所需的共生矩陣,再將共生矩陣 內全部的元素值進行 TF-IDF 正規化的轉換,以求得一個公平的詞彙出現頻率。