一、文件探勘的定義
Feldman(1995)的文章標題「由文件資料庫中發現知識」(Knowledge Discovery
15
in Textual Databases (KDT))道出了文件探勘(text mining)的定義。文件探勘又稱文 件資料探勘(text data mining),即從文件資料中抽取出有趣且隱含的模式或知識 (Tan, 1999) ,Apte(1997)提到文件探勘為「從大量的文件資料集之中找出正確的、
可理解的(understood)且過去未知的資訊,用以改善決策」,學者 Hearst(1999)認為 文件探勘為「透過電腦自各式文件資料發現嶄新的、過去未知的資訊與資訊間的 關聯,發掘出隱含的意義」,Hotho(2005)則說文件探勘即「自各種文件中萃取資 訊,運用機器(machine)自動運算學習與統計以找出有用的模式(pattern),是一個 從資料庫挖掘知識的歷程」。
綜合上述各學著的觀點,我們可以將文件探勘敘述為「透過電腦自大量各式 文件中,對巨量文字進行分析,以找出過去未知的、可供應用的、隱含在巨量文 字背後的資訊、知識以及模式」。
二、文件探勘的架構
文件由文字組成,單一文字或詞彙所含資訊已甚複雜,例如:一字多義,而 由多個文字組合之文件背後,所包含的資訊更是龐雜,相較於數字所屬之結構性 (structured)資料,要直接對非結構化之文件進行分析,將有許多困難與限制。半 結構性或非結構性資料不具固定的特徵與屬性,文章長短不一且不具固定格式,
組成文章的文字不易明確定義與切割,且文字與文字間的關聯特殊,不像結構性 資料有固定的語法描述關係,因此無法以一般資料探勘(data mining)的方式分析,
因此文件資料必須先經過處理,方能進行分析。
Tan(1999)提出了文件探勘的架構,架構中將文件探勘分為兩部份,分別為文 件精煉(text refining)以及知識純化(knowledge distillation):
1. 文 件 精 煉 : 將 自 由 型 式 的 文 件 (free-form text) 轉 化 為 指 定 的 中 間 型 式 (intermediate form)。
2.知識純化:自中間型式推論出知識或模式。架構如圖 2.5 所示,文件先經由文 件精煉步驟,將文件轉變為中間型式,再經由知識純化產生知識或模式(pattern)。
16
圖 2.5 文件探勘架構 1(Tan, 1999)
中間型式可以為文件式(document-based)或概念式(concept-based),文件式中 間型式中的每一個實體代表一份文件,概念式中間型式中的每一個實體表示一個 客體(object)或某一個特定領域中有興趣的概念。若中間型式為文件式的,後續可 進行群集(clustering)、分類(categorization)或視覺化(visualization),若為概念式的,
則可以進行預測建模(predictive modeling)、發掘關聯(associative discovery)或視覺 化。
Losiewicz(2000)對文件探勘的架構則另有想法,他提出了一個具六個步驟的 文件資料探勘(text data mining)模型,如圖 2.6
圖 2.6 文件探勘架構 2(Losiewicz et al., 2000) 此架構包含三個歷程,每個歷程有兩個步驟。
17
1. 資料蒐集:包括選擇來源與選擇文件。
(1)選擇來源:為選取欲探索之資料來源的過程。選擇來源時需知道有哪些資 料來源、需有領域相關知識、需確定分析目標。
(2)選擇文件:從資料來源中發現、選擇並獲得文件的過程。此步驟可由計算 機軟體自動化選取或由領域專家完成
2. 資料入倉:包含抽取資訊與儲存資料。
(1)資料轉換:將選取文件中的特定資訊轉換為可供後續執行資料儲存(data storage)資料探勘(data minina)的形式。
(2)儲存資料:將以轉換為適當格式的資料儲存至資料庫以便後續分析、存 取。
3. 資料開採:包含資料探勘與呈現結果。
(1)資料探勘:分析資料以找出適合的模型(model)。
(2)呈現結果:解釋資料探勘的結果並予以視覺化,進一步評鑑資料的品質、
模型是否適當,並詮釋模型。
三、文件探勘的應用
文件探勘在許多領域已有諸多利用,以下列舉文件探勘的應用文獻。
尹其言(2010)試圖將機器學習應用領域分為數個次領域,並找出各次領域的 發展脈絡,預測未來的可能發展。首先自SSCI資料庫中以關鍵字「machine learning」
針對摘要、關鍵字、應用方向等欄位撈取與機器學習應用相關文獻共554篇作為 原始資料,資料時間涵蓋範圍為1956至2008年,原始資料以QDA Miner V3.1軟體 進行前處理,將資料轉換為可供分析之形式,並自資料中排除對分析無幫助的詞 彙,留下共5337個詞彙進行特徵詞擷取,接著透過頻率門檻與TF-IDF權重設定,
篩選出533個特徵詞進行詞彙群集分析,最後以自組織映射網路(self-organizing map network, SOM)進行資料歸納,將機器學習應用分為10個次領域,並統計出 各次領域在不同年段的文章數量,以折線圖描述趨勢變化。
鄭為倫(2005)嘗試在特徵詞數量的選擇上,利用相對性的比較方式,過濾類 別與類別中不重要的特徵詞,以提高分類效果,並設計了可執行多類別文件分類
18 結構性資料有固定的語法描述關係,因此無法以一般資料探勘(data mining)的方 式分析,而文件探勘(text mining)則專門針對文字所屬之非結構性資料擷取背後 隱含的資訊或知識(Hotho et al., 2005)
19
四、文件探勘相關技術
本文使用的文件探勘的技術包括:建立文件集、特徵詞選取、比對文件相似 度、文件群集化(clustering)。
(一) 建立文件集
分析前需針對欲分析的對象蒐機並建立文件集,可以為訪談內容、電子郵件、
文本文句、政府文宣、廣告訊息、學術期刊、產品目錄、演講文稿、調查問 卷、新聞報導等以文字紀錄之文件,文件探勘嘗試由大量文件資料中找出可 用的知識或模式,為方便後續分析處理,分析的文件多半經過電子化,由電 腦軟體協助處理分析。
(二) 特徵詞選取
由文件中篩選出具有可顯示出文件特徵的、具代表性、有助於研究目的的特 徵詞,特徵詞的選取影響分析結果,若有對研究目的無幫助、造成雜訊之特 徵詞干擾,分群結果將不夠精確。以下為常用之特徵詞擷取判準:
1. TF-IDF演算法(Term Frequency - Inverse Document Frequency )
由Salton(1983)提出以單篇文章詞頻(Term Frequency, TF)與文章詞頻倒數 (Inverse Document Frequency, IDF)相關的演算法做為特徵詞選取的判斷依據。
(1)單篇文章詞頻(Term Frequency, TF):為一詞彙出現在單一文件中的頻率,
此演算法假設出現在單篇文章中次數越多的詞彙越重要,重要的詞彙會在一 篇文章中被反覆提起。例如:以argumentation為主題的文章,會反覆使用此一 詞彙,使用次數越多越重要。
(2)文章詞頻倒數(Inverse Document Frequency, IDF):為一詞彙總共出現在幾 篇文章的倒數,本演算法假設詞彙出現在文章的篇數越少,越能與其他文章 區隔,而出現的文章篇數越多,倒數越小,出現的文章篇數越少,倒數越大。
例如:the一詞幾乎會出現在各篇文件中,計次越多,則倒數越小,而類似 Science Inquiry之專有名詞則只會出現在相關主題中,計次較少,則倒數越大。
TF-IDF公式如下:
20
當 Entropy 越大時,代表不確定性越大,提供的資訊量也越大。Entropy 之相 關公式如下:
P(ti) = Dti / D
Entropy of ti = H(ti) = -P(ti)log2P(ti)
ti 為某一特徵詞,Dti 為出現該特徵詞的文章數量,D 為文件集中的所有文章 數,P(ti)為在文件集中隨機選取一篇文章時,特徵詞 ti 出現的機率,H(ti)為特 徵詞 ti 的亂度值(Shannon, 2001)。設定適當的閾值(threshold)為標準,將低於 某閾值的詞彙捨棄,可篩選出對文件而言重要的特徵詞。
3. 以文章標題詞彙(title words)或關鍵詞(keyeords)為特徵詞
Whittaker(1989)於文章中提及,關鍵詞是由訓練有素的編輯者選用,用以 表達文章敘述的重要概念,而文章標題則是由作者命名,必須要讓讀者從標
21 大。以下為 Wordstat 採用的文章相似度演算法 Cosine theta(Singhal, 2001):
Cosine theta = 𝑎 容接近,而各子集間內容差異達到最大(Hotho et al., 2005),意即子集中文件相似 度接近,子集間文件相似度低,群集化之後,依據各子集中特徵詞的屬性找出各 子集的特性或主題(topic)。
文件群集的演算法可分為階層式群集演算法(Hierarchical Method)與分割式
22
群集演算法(Partitional Method)。
1.階層式群集演算法(Hierarchical Method)
階層式群集演算法產生的群集為一個具階層關係的樹狀結構,可以樹狀圖 (dendrogram)表示(如圖 2.7)。
圖 2.7: 階層式群集演算法樹狀圖
階層式群集演算法依樹狀結構的建立方向又可分為兩種:
(1)階層式聚合群集法(hierarchical agglomerative clustering)
聚合群集法將各文件視為一個小群集,以本研究為例,共有 279 篇文件,
便有 279 個小群集,之後再依據相似度的接近程度,慢慢聚合為較大的群集,
最大的群集即文件集本身,聚合群集法是由樹狀圖底部開始向上聚合。
(2)階層式分裂群集法(hierarchical divisive clustering)
分裂式群集法的分群方向與聚合群集法相反,先將整個文件集視為單一 群集,再依據相似度的差異程度分群,以本研究為例,起始群集為文件集本 身,最多可分為 279 個群集,每個群集為一個文件,分裂群集法是由樹狀圖 頂端開始向下分群。
2.分割式群集演算法(Partitional Method)
分割式群集演算法需事先決定群集的數量,並以此群集數量設定同等 數量的隨機中心點,計算各文件與文件中心點的距離,決定哪些文件可分
23
為同一群,分好後再反覆疊代,直至分群結果收斂穩定為止。K-平均值演 算法(K-means)為常見的分割式群集演算法,K-平均值演算步驟如下:
(1)決定群集數量 K,由群集數量 K 定出中心點個數。
(2)隨機選取文件集中的 K 個文件,做為各群集的起始中心點。
(3)計算其餘文件與各起始中心點的距離,將文件分配至最鄰近的群集。
(4)所有文件分配至各群集後,再找出各群集的中心點,重新計算出新的中 心距離。
(5)反覆疊代,直至結果收斂為止。
24