• 沒有找到結果。

利用圖形化模型及維度降低技術執行高查全率文件探勘

N/A
N/A
Protected

Academic year: 2021

Share "利用圖形化模型及維度降低技術執行高查全率文件探勘"

Copied!
20
0
0

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

全文

(1)

行政院國家科學委員會專題研究計畫 成果報告

利用圖形化模型及維度降低技術執行高查全率文件探勘(第 2 年)

研究成果報告(完整版)

計 畫 類 別 : 個別型

計 畫 編 號 : NSC 95-2221-E-011-125-MY2

執 行 期 間 : 96 年 08 月 01 日至 97 年 07 月 31 日 執 行 單 位 : 國立臺灣科技大學資訊工程系

計 畫 主 持 人 : 鮑興國

計畫參與人員: 碩士班研究生-兼任助理人員:賴志松 碩士班研究生-兼任助理人員:蘇俊成 碩士班研究生-兼任助理人員:陳啟東

處 理 方 式 : 本計畫可公開查詢

中 華 民 國 97 年 12 月 09 日

(2)

共 19 頁 第 1 頁

利用圖形化模型及維度降低技術執行高查全率文件探勘 (期末報告)

執行期間: Aug. 1, 2006 – July 31, 2008 計畫主持人:鮑興國

一、前言

自從網際網路的使用普及後,網際網路上所擁有的資料呈現爆發性的成長,

而Blog,Web 2.0 等相關技術及應用的出現,也使得一般使用者也能夠輕易的新 增網頁內容,因此網際網路也可視為現成的巨大電子資料庫。但要從這些天文數 字般的網路資訊中搜尋到使用者所需的網頁,就必須依靠隨時提供有效知識擷取 服務的網際網路搜尋引擎,而相關的搜尋引擎如Google 及 Yahoo 等已也成為廣 大現代人的每日必備工具之一。雖然如此,大多數搜尋引擎仍然擁有諸多問題,

例如著重於高正確率 (high precision rate) 的搜尋能力,卻忽略了高查全率(high recall rate)的問題,也缺乏多類搜尋者需要的功能。因應此實際需要,本計畫企 圖建立一個在確保一定正確率下具高查全率的探勘引擎。我們提出階層式搜尋的 架構,將不完備的查詢依照個人的喜好回傳更為正確的結果,因為正確率的提 升,我可以更加擴大搜尋範圍,以達到高查全率的效果。為了在廣大資料中釐清 搜尋者真正需要的搜尋目標,我們必需具有將資料進行概念分割的能力,在機器 學習裏這可以視作資料分群的課題。由於資料在高維度空間中不容易進行分群,

因此我們使用維度降低技術來進行資料前處理,此方法對分群結果有著相當程度 的提升,在效能上也能朝向達到搜尋者需要的搜尋速度的目標前進。我們將試驗 不同的維度降低技術與不同的分群、分類方法,由其中發掘出最合適本研究的各 項技術,並利用這些技術來完成我們所期望的具有高查全率的探勘引擎。

二、研究目的

由於網際網路產生了前所未有的龐大資訊量,為了了解並得到這些資料,其 中的關鍵在於隨時提供有效知識擷取服務的搜尋引擎。搜尋引擎的成效常常以正 確率(precision rate)跟查全率來作為效能評估的指標。正確率衡量一定範圍的 回傳連結(links)內對於使用者有用知識的比率,實驗說明一般使用者常不耐低 正確率的搜尋。查全率計算回收的網頁連結佔所有使用者有興趣的連結的比率。

一般來說,正確率和查全率是兩個相牴觸的衡量標準,比較嚴苛的判斷會回傳較 少的連結,如此可獲得較高的正確率但是較低的查全率。相對的,比較寬鬆的判 斷會回傳較多的連結,如此將得到較低的正確率但是較高的查全率。但高查全率 卻是一般探勘引擎比較不重視的部分。當今熱門的Google 搜尋引擎似乎在正確 率上已經有很重要的貢獻,但是在查全率上卻很難得到一個數據,這也點出查全 率一般來說比較不易計算的客觀狀況。但是查全率並非是完全可以忽視的項目。

(3)

共 19 頁 第 2 頁

比方說研究人員等常面對的相關研究論文的探勘或是專利的申請。明顯的,正確 的得到相關的研究論文的資訊可以節省相關的研究投資,也可以更正確、更輕鬆 的讓研究學者得到完整的相關研究勘查(survey),另外專利提出者或是判斷專 利申請並核發專利的單位也需要高查全率或地毯式的搜尋相關的專利文件。為了 避免地毯式搜索的曠日費時,高查全率的引擎有其重要性。

本計畫企圖建立一個在確保一定正確率下具高查全率的探勘引擎,我們結合 使用者的資訊來達到高查全率的效果。由一般研究顯示77%的使用者在使用搜尋 引擎時,只輸入一個英文單字來查詢 [16],且 85%的使用者輸入少於三個英文 單字來查詢 [7],而一個英文單字通常有許多意義,在這種情況下,關鍵字搜尋 引擎傳回來的資料,往往不是使用者所需的,這種情形,我們稱之為不完備查詢

(incomplete query),使用者無法明確定義所要找的資料,使得關鍵字搜尋引擎 的效能不彰。如圖一假設我們輸入字串「race」來搜尋「賽車」的資料,一般搜 尋引擎會回傳所有包含 race 單字的資料。但因 race 含有種族與競賽的概念,回 傳的資料並不為我們所希望的資料。除此之外,各種不同的概念也可能包含各種 子概念,如同競賽概念中又包含「賽車」與「賽馬」等各式各樣的競賽概念,這 些影響因素都會使搜尋引擎的效能降低。對這些問題,我們可以使用分群技術來 進行概念切割,以提升查全率。

我們可以將不完備查詢所衍生出的問題分為幾類。第一種情形是使用者所輸 入的關鍵字為一個同字異義詞,如上「race」,可以解釋成「種族」或者「競賽」。

我們稱這個情形是從相混淆的幾個獨立概念中找出需要的某一特定概念,如圖一 (a)所示。第二種情形是使用者所輸入的關鍵字為一個主概念(concept,例如 computer),而其所想要尋找的資料為主概念中的子概念(subconcept,例如買電 腦)。我們稱這個情形是從主概念中找出需要的子概念,如圖一(b)所示。第一種 情形和第二種情形的不同點在於第一類相混淆的兩個詞在概念上相去甚遠;而第 二類中主概念和子概念符合一般概念的階層架構(hierarchical structure)。另外一 種情形是同義詞的狀況。譬如想要買電腦,應當輸入「computer store」或「computer shop」似乎都不是標準答案,因為「store」、 「shop」以及「buy」都是相近詞 意的詞,如圖一(c)所示。這些問題在文件探勘中極其重要,如前所述的專利資料 探勘,針對一個概念,我們除了要儘可能精確嘗試描述所需的子概念、小心避免 同字異義詞外,我們還需要有能力將所有相近的詞都嘗試作搜尋,以免遺漏重要 的回傳結果。

第 一 種 和 第 二 種 的 問 題 主 要 需 要 的 是 正 確 率 提 升 的 技 術 , 以 及 利 用 分 群

(Clustering)的方法來進行概念的切割,而分群的方法將在文獻探討中會有比 較完整的說明。第三種問題主要需要的是查全率提升的技術,在這方面,我們考 慮從主概念的搜尋,將問題轉變為第一類或第二類的問題。在本計劃中,我們先 使用向量空間模型將文件轉換成為向量空間形式,之後使用 ISOMAP 將資料維 度降低到本質維度後,再使用k-Means 演算法對資料進行分群。各技術說明在文 獻探討中加以詳述。

(4)

共 19 頁 第 3 頁

(a) (b) (c)

圖一、不完備查詢所衍生出的三大類問題

三、文獻探討與研究方法

I. 向量空間模型(Vector Space Model)

原始的文件資料是不無法直接使用來進行處理的,所以我們必需將文件轉換 為電腦能處理的型式,而最常見的方式便為向量空間模型 [13][14]。向量空間模 型主要包含三個部分,其一為文件的前處理,第二則為Term-by-Document 矩陣 的產生,最後一個為文件間距離的度量法,而這三部分將分述如下:

i. 文件前處理

由於文件中所包含的字詞眾多,且有著許多不包含意義的詞彙,因此我 們需透過文件前處理的將文件中的詞轉換成最根本化型式,其過程有三。第 一步為詞句分割 (tokenization),即將原本文件資料型態 (document data type) 的資料轉變為詞彙資料型態 (token data type),如將文件內的標點符號去 除。第二步為過濾停用詞 (stopwords),由於文件中常出現一些如:it、that、

a 等不具有表達文件類別特徵的字詞,這些停用詞必須被濾掉,以得到我們 真正需要的關鍵字 (keywords / terms)。第三步為辭性正規化 (stemming),

表一、文件前處理範例

前處理步驟 文件內容

Along with “bananas” or “cranberries” , 第一步:詞句分割 Along with bananas or cranberries 第二步:過濾停用詞 bananas cranberries

第三步:辭性正規化 banana cranberry

關鍵字

(computer store)

關鍵字

(computer shop)

關鍵字

(computer buy)

主關鍵字(computer store)

目標概念

:概念群

:搜尋引擎回傳結果 :目標概念

種族概念 競賽概念

目標概念

種族概念 競賽概念

主關鍵字(race) 主概念(computer) 子概念

(buy)

子概念 (use)

子概念 (buy)

子概念 (use) 目標概念

(5)

共 19 頁 第 4 頁

由於在英文文件中有許多字詞是具有許多型態的,如banana 及 bananas 都 是表達同一種物品,只是在數量上不同。我們需將這些具不同型態但為同源 的詞轉變為最原始的形式,如將bananas 轉換成 banana。表一為文件前處理 之範例。

ii. Term-by-Document 矩陣:

經過文件前處理後,我得到文件中字詞的最根本形式,但文件只是一些 關鍵字詞 (Term) 的集合,我們需再將文件轉換成電腦能處理且有意義的形 式。在此使用過濾後的關鍵字詞 (Term) 及文件索引 (document index) 來建 構代表文件集合的Term-by-Document 矩陣,而矩陣中的數值即是加權詞頻 (weighted term frequency)。加權詞頻最簡單的做法是根據詞在每一文件 (document)中,是否有出現過給予 0 或 1 的數據。表二為前處理後的文件,

表三為使用Term Frequency 來建構 Term-by-Document 矩陣後的結果。定義 如下:

TF(term frequency):TF=f ij

其中fij為計算第i 個詞在第 j 篇文章中出現的次數。由於 TF 為區域性 (local) 的term weighting 方式。這種作法雖然簡單卻無法有效表現某一詞在文件中 的重要性。另一個最常用的做法為TF*IDF 。IDF 主要的含意是指當某一詞 在每一文件中出現機率都很高時,則此詞的重要性也就相對的較低;反之當

表二、經過前處理後的文件

文件一: banana cranberry apple orange 文件二: Haagen Daze apple chocolate banana 文件三: apple dell microsoft chocolate

表三、Term Frequency

文件一 文件二 文件三

banana 1 1 0

cranberry 1 0 0

apple 1 1 1

orange 1 0 0

Haagen 0 1 0

Daze 0 1 0

chocolate 0 1 1

dell 0 0 1

microsoft 0 0 1

(6)

共 19 頁 第 5 頁

表四、TF*IDF

文件一 文件二 文件三

banana log(1/2) log(1/2) 0

cranberry log(1) 0 0

apple log(1/3) log(1/3) log(1/3)

orange log(1) 0 0

Haagen 0 log(1) 0

Daze 0 log(1) 0

chocolate 0 log(1/2) log(1/2)

dell 0 0 log(1)

microsoft 0 0 log(1)

某一詞在不常出現於文件中,則此詞的重要性也就相對的較高,其定義如下:

IDF(inverse document frequency):IDF=

j

fij

n ) log (

χ

其中n:表示整個文件集合,

j χ(f )ij :表示包含Term(i)的文件總數。

表四為使用TF*IDF 所建構的 Term-by-Document 矩陣。

和TF 相比,TF*IDF 為全域性(global)的 term weighting 方式。本計劃結合 TF 以及 IDF 概念,使此矩陣更能完善的表現文件集的特性。

iii. 文件間距離的度量法:

當我們得到一個包含多個文件的Term-by-Document 矩陣後,我們就必須 去計算文件彼此間的相似度或差異度,才能處理分群問題。目前較普遍使用 於度量相似度的方法為兩向量間的餘弦(cosine),如下所示:

2 2

cos

j i

j T i

ij d d

d

= d

θ (1)

其中di為代表第i 個文件的關鍵字詞向量,θij為文件i 與文件 j 之夾角。當 兩向量已進行過單位化的處理後,計算餘弦也就只是兩向量之間做內積 (inner product)。若兩向量夾角為 90 度,則值為 0。也就是說兩文件若越不 相似,則內積值就越小。因此我們將各文件之間的相似度以相似度矩陣的形 式來表示,並將相似度矩陣當作ISOMAP 中各點之間的距離。由於 ISOMAP 是越相似的點距離越近,因此我們需用一減去各餘弦值,才能符合ISOMAP 的距離性質。

(7)

共 19 頁 第 6 頁

II. ISOMAP

在一般在空間上,我們猜想資料集的分佈在一個流形 (manifold)上。當資料 呈現在高維空間上時,我們無法直接觀察到這個流形,所以我們需要透過維度降 低的技術,將高維空間上的資料點映射到較低維度空間中,使我們能觀察到這個 流形,並利用這個觀察來進行各種的應用。而最能表現這個流形的維度,被稱為 本質維度 (intrinsic dimensionality)。由於資料在高維度空間中不一定呈現線性結 構,因此若直接使用如PCA (Principal Component Analysis) 等全域技術進行降 維,結果將無法符合我們的需求。在期中報告時我們已利用幾個資料集比較過 ISOMAP 與 LLE 的差異,在這些資料集中 ISOMAP [8] 均較能表現出資料的真 正結構,因此我們選用ISOMAP 技術來作為我們的維度降低技術。

ISOMAP [8] 為利用非線性的方式對特徵集進行維度降低的技術。它的目的 在同時保有局部 (local) 與全域 (global) 的不相似 (dissimilar) 性質下,透過 MDS (MultiDimensional Scaling) [17] 將資料集投影到較低的維度空間中。於新維 度空間中,各資料點間有著如同原維度空間中的不相似性質,以及適當地呈現資 料集的本質。ISOMAP 的處理過程主要分為三個部分。第一部份為局部結構的建 立;第二部份為全域資訊的建立;最後一部份為低維度空間的映射。而這三部份 將分述如下。

i. 第一部份 局部結構的建立:

在局部結構的建立方面,ISOMAP 利用 k 個最鄰近鄰居 (kNN) 建立子結 構 (sub/local structure),並用圖 (graph) 的形式來表示,使資料點與其 k 個 最鄰近鄰居皆具有一個邊(edge),其中,邊長 (edge length) 用相對應兩資料 點間的不相似度來表示。在此我們使用一減掉各文章間的餘弦值來當作資料 點間的不相似度。

ii. 第二部份 全域資訊的建立:

於全域,ISOMAP 利用第一部分所產出結果,透過局部子結構間的連通 (connect) 性質,便可計算任兩資料點間的最短路徑 (shortest path),並借此 做為全域的資訊。最後會產生一個資料點間的距離矩陣 (pairwise distance matrix) Dx=[dx(i,j)],而 dx(i,j)為資料點 i 與資料點 j 之間的最短路徑。關於最 短路徑的計算,我們可以採用Dijkstra 演算法,或是 Floyd 演算法來處理。

如此一來,在經過第一部分與第二部分的處理,整體的結構上,不僅保有局 部的性質亦包含了全域的資訊。

iii. 第三部份 低維度空間的映射:

最後一部分是將第二部分所產生的Dx,透過MDS 來找出各資料點於新 維度m 上的坐標 (coordinate),並使映射後的坐標資訊滿足式子(3),其中 Dy(p)為各資料點間於 p 維度上的映射所產生的距離矩陣,而||A||L2為兩距離

(8)

共 19 頁 第 7 頁

矩陣間的差異度。然而我們亦可用另一個角度來選擇m,如式子(4),意即 當增加的新維度對兩距離矩陣間的差異度小於某設定的程度,便停止新維度 的增加。當然上述所求的m 就可以視為我們所要找的本質維度(intrinsic dimensionality)。

( )

2

min

arg p Ep Dx Dy p L

m= = − (3)

( ) ( )

( )

{

p D D p D D p threshold θ

}

m=min x y +1 L2 x y L2 < (4)

III. Landmark ISOMAP

我們利用ISOMAP 做為降維的技術,但實際上在於 ISOMAP 有兩項計算上 的瓶頸,第一點為建構所有資料之間的最短路徑矩陣時,必須計算所有點對點間 的最短路徑距離,當資料量大時,這是相當耗時的。第二點為MDS 之中計算特 徵值的過程。因此我們使用L-ISOMAP (Landmark ISOMAP) 的方式來減輕上述 兩項計算量,為了要使用L-ISOMAP,我們必須將 ISOMAP 的步驟二和步驟三 做一些改變。

在步驟二中,L- ISOMAP 在所有 N 個文件中選定部分 l 個文件當作 Landmark set,取代計算原來所有文件資料點間最短路徑。詳細來說,L- ISOMAP 只計算 Landmark set 中所有點到原始所有點間的最短路徑。我們定義 Δl為Landmark shortest distance Matrix,[Δl]ij為第i-th landmark 到第 j-th landmark 的最短路徑距 離。

而步驟三中,我們也將原來的MDS 做一些轉變,令[A]ij = 21l]2ij,而內積 矩陣B=HlAHN,其中Hj =(Ij j11j1Tj)。接下來,我們將矩陣B 做 SVD (singular value decomposition),B = USVT = (U(S)1/2)(U(S)1/2)T有最大奇異值p 的向量 X = BUP(SP)-1/2,可用來建立low-rank 的近似。

為了更加清楚表示Landmark ISOMAP,我們在 20_newsgroup dataset 中的 comp.sys.ibm.pc.hardware 和 rec.sport.baseball 中各取一千篇文章,利用 L-ISOMAP 來做進行實驗。在計算所有點之間最短路徑時,只考慮計算Landmark 點,來取 代所有的點來省下計算量。之後我們利用k-Means 演算法做分群 (cluster),實驗 結果顯示利用L-ISOMAP 仍能維持一定的正確率(precision rate)跟查全率(recall rate),表五與圖二為實驗數據與結果。

表五、L-ISOMAP 實驗數據結果

Landmark number 1000 500 250 100 50 Avg.Precision 0.9371 0.9416 0.8409 0.8468 0.8006 Avg.Recall 0.9325 0.937 0.8335 0.840 0.8 Avg.Fmacro 0.9348 0.9393 0.8372 0.8434 0.8003

(9)

共 19 頁 第 8 頁

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2

−1.5

−1

−0.5 0 0.5 1 1.5 2 2.5

(A)

−1.5 −1 −0.5 0 0.5 1 1.5 2

−1.5

−1

−0.5 0 0.5 1 1.5 2

(B)

−1.5 −1 −0.5 0 0.5 1 1.5

−1.5

−1

−0.5 0 0.5 1 1.5 2

(C)

−1.5 −1 −0.5 0 0.5 1

−1.5

−1

−0.5 0 0.5 1

(D)

−1 −0.5 0 0.5 1

−1.5

−1

−0.5 0 0.5 1

(E)

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1.2

−1

−0.8

−0.6

−0.4

−0.2 0 0.2 0.4 0.6 0.8

(F)

圖二、(A)為 ISOMAP 投影到二維的結果(k=7),(B)為 L-ISOMAP 投影到二維 的結果(k=7, l=1000),(C)為 L-ISOMAP 投影到二維的結果(k=7, l=500),(D)

為L-ISOMAP 投影到二維的結果(k=7, l=250),(E)為 L-ISOMAP 投影到二維的 結果(k=7, l=100),(F)為 L-ISOMAP 投影到二維的結果(k=7, l=50)。

IV. Incremental ISOMAP

由於Landmark ISOMAP 或 ISOMAP 都是建立在 batch model 之下,在處理 過程中,必須先將所有的資料一次一併放入。在某些應用上,例如搜尋引擎,資

(10)

共 19 頁 第 9 頁

料的收集是累積的,每當有新的資料新增時,整個model 就必須重新花費時間建 立,所以batch model 不適用。為了能使 Landmark ISOMAP 能有效避免上述重複 計算上的問題,因此構想了I-ISOMAP (incremental ISOMAP)。我們為了將 Landmark ISOMAP 改變成為 incremental 的版本,我們必須改變 L-ISOMAP 每一 個步驟成為I-ISOMAP。

在第一步中,我們要改變原先的neighborhood graph。令 AE 和 DE 分別為新 增 N+1之後要加入以及刪除的邊集合。我們定義AE 為

) 1 ( 1 )or

(

| } 1 , (

{ + ∈ + > +

= i N i i N

y i

kNN y

N i e

AE δτ δ

而DE 為

} and

| ) , (

{e i i i i i(N 1) ii ili DE= τ δτ >δ + δτ >δτ

在這裡τi代表新增yN+1之前yi 的第K 個最近鄰居,而lili則為新增yN+1之前 yτi 的 第K 個最近鄰居。

第二步,我們必須更新新增yN+1後最短路徑的長度,在AE 和 DE 中的邊可 能會替代原有存在的最短路徑,也就是說新增資料點近來後,原先最短路徑可能 會因此改變。在這步驟中,我們必須更新原來landmarks 到所有點的最短路徑長 度。

最後一個步驟,我們必須更新新增yN+1後的座標集,在L- ISOMAP 中找到 X最小化cost function

/ 2

) )(

((

) ,

(B X tr B X X B X X T N

E = − TT

而上式的gradient 可寫成

/ 2

) 4

( ) ,

(B X XB XX X N

E T

X = − +

接下來,我們可以根據gradient descent by Xnew= XαxE(Bnew,X)更新座 標,其中α 為step size。

以上我們探討了向量空間模型、ISOMAP、處理大量資料的 L-ISOMAP 和可 以逐漸加入資料的I-ISOMAP。本計畫將根據這些方法和其它相關分群的演算法 作為高查全率引擎的基礎工具。

四、實驗結果與討論

實驗的內容主要在說明第一、維度降低技術的效能,並利用資料集分群上的 成效來驗證。一般來說,我們會很直觀的認為降維後的資料會比原空間中的資料 好處理很多,也會有較佳的成果。我們選擇了若干UCI 網站上的 Newsgroups 來 做為實際文件的資料集。第二部分、我們探討實際搜尋引擎的不完備搜尋查全率

(11)

共 19 頁 第 10 頁

的比較,利用之前所敘述的方法來建構的高查全率引擎是否符合之前所謂的要 求。資料集以Google 所獲得的資料為分析的基礎。

I. 使用降維技術與否於資料集分群上的比較:

這部份我們要試驗資料集在有無維度降低的情況下,進行分群的效果。在這 裡我們設計了兩個不同的資料集,每個資料集皆各自包含二個不同類別的文章,

而每類別的文章各佔一百篇。第一個資料集包含兩個差異性比較大的文章類別,

一類為棒球相關文章,另一類為電腦相關文章。第二個資料集包含兩個差異性比 較小的文章類別,一類為棒球相關文章,另一類為曲棍球相關文章。分群的技術 方面,我們採用k-Means 與高斯混合模型於降維與否的資料上進行分群。兩系列 實驗結果詳述如下。於這部份的實驗中,我們所需設定變數有四。包含,一、

ISOMAP 中 kNN 的 k,在這兩個實驗中皆預設為 10;二、k-Means 中的群數值

kk-Means,在這兩個實驗中我們皆預設為2,而起始中心點以亂數自動產生;三、

高斯混合模型中的最小群數值kGMM-Min,在這兩個實驗中皆預設為1;四、高斯 混合模型中的最大群數值kGMM-Max,在這兩個實驗中皆預設為15。

i. 實驗一:資料集中包含兩個差異性比較大的文章類別各一百篇文件,一 類為棒球相關文章,另一類為電腦相關文章。首先,我們嘗試的將原空 間上的資料分佈透過MDS 映射到二維的平面上,如圖三(A),從這個圖 中我們不難看出兩類的文件間有著不差的可分離 (separable) 性質,唯有 少數的資料點是重疊的,這也滿足了我們認為這資料集的文件為異性比

(A) (B)

圖三、將棒球相關文章(藍◇)與電腦相關文章(紅+)進行分群,(A)利用 MDS 將原 空間中的距離關係映射在二維的空間上,(B)經 ISOMAP 處理後並映射到二維空 間上的分群結果(k=10)。

(12)

共 19 頁 第 11 頁

較大的假設。圖三(B)則是將資料集透過 ISOMAP 降維至二維空間中的資 料分佈。由圖中我們可以直覺的發現,降維後的資料於可分離性質上有 著顯著的提升。而圖三(B)中實線的橢圓為高斯混合模型所找出的最佳分 群結果,在這裡高斯混合模型找出的群數為2,這也是實際上的群數。

表六、棒球與電腦相關文章分群正確率評估

分群方法 k-Means 高斯混合模型

維度 原維度空間(維度:4256) 降維後空間(二維) 降維後空間(二維)

平均Fmicro 0.7415 (0.9100) 0.9800 (0.9800) 0.9825 (0.9850)

平均Fmacro 0.7459 (0.9130) 0.9800 (0.9800) 0.9825 (0.9850)

接著我們從分群正確率來看整體分群的成效如何,我們將此實驗重覆進 行10 次,並以 10 次實驗的平均正確率來表示各個分群結果的效果,而 正確率的評估,我們採用平均micro F 量度(average micro F-measure)與平 均macro F 量度(average macro F-measure)。F 量度計算法如式子(5)所示。

recall precision

recall precision

measure

F +

×

= ×

− 2

(5) 實驗結果如表六所示。由於高斯混合模型在原維度空間中無法完成實 驗,所以在表六中沒有此實驗的結果數據。關於正確率數值的部份包含 兩個數值,括弧外的數值為10 次實驗的平均正確率,而括弧中的數值為 10 次中最佳的單次正確率。從實驗結果中,我們發現原維度空間中所進 行的分群結果相當不穩定,最好的單次正確率為0.91,但平均正確率卻 只有約為0.74。反觀降維後的分群結果,不僅具有較好的正確率,亦呈 現了相當穩定的結果。由此實驗中,我們証實了對此情況的資料集進行 降維能帶給我們更佳的分群效果。

ii. 實驗二:資料集中包含兩個差異性比較小的文章類別各一百篇文件,一 類為棒球相關文章,另一類為曲棍球相關文章。同樣的,我們嘗試的將 原空間上的資料分佈透過MDS 映射到二維的平面上,如圖四(A),從這 個圖中我們發現這兩類的文件雖也有著可分離性質,但兩類間卻有著較 多的資料點是重疊的,這也滿足了我們認為這資料集的文件為異性比較 小的假設。圖四 (B)則是將資料集透過 ISOMAP 降維至二維空間中的資 料分佈。由圖中我們得到了相同的發現,也就是降維後的資料於可分離 性質上有著顯著的提升。同樣的,圖四 (B)中實線的橢圓為高斯混合模 型所找出的最佳分群結果,在這裡高斯混合模型找出的群數為2,亦是 實際上的群數。

(13)

共 19 頁 第 12 頁

(A) (B)

圖四、 將曲棍球相關文章(藍◇)與棒球相關文章(紅+)進行分群,(A)利用 MDS 將原空間中的距離關係映射在二維的空間上,(B)經 ISOMAP 處理後並映射到二 維空間上的分群結果(k=10)。

表七、曲棍球與棒球相關文章分群正確率評估

分群方法 k-Means 高斯混合模型

維度 原維度空間(維度:4916) 降維後空間(二維) 降維後空間(二維)

平均Fmicro 0.5835 (0.7500) 0.9010 (0.9050) 0.8855 (0.8900)

平均Fmacro 0.5877 (0.7525) 0.9032 (0.9075) 0.8865 (0.8903)

接著我們從分群正確率來看整體分群的成效如何,我們一樣將此實驗重 覆進行10 次,並以 10 次實驗的平均正確率來表示各個分群結果的效果,

而正確率的評估方法與實驗一同相。實驗結果如表七所示。由於高斯混 合模型在原維度空間中無法完成實驗,所以在表七中沒有此實驗的結果 數據。關於正確率數值的部份包含兩個數值,括弧外的數值為10 次實驗 的平均正確率,而括弧中的數值為10 次中最佳的正確率。從實驗結果 中,我們發現原維度空間中所進行的分群結果相當不穩定,最好的單次 正確率為0.75,但平均正確率卻只有約 0.58。反觀在降維後的分群結果,

不僅具有較好的正確率,亦呈現了相當穩定的結果。

由實驗一與實驗二中,我們証實了降維技術對兩類相似的文件集或兩類 不相似的文件集,不僅於分群有著較穩定的結果,亦使正確率有一定程 度的提升。另外值得一提的是,高斯混合模型於此實驗中相當的成功,

不僅自動的從中資料集中找到正確的群數,亦在分群正確率上有著相當 優秀的表現。

(14)

共 19 頁 第 13 頁

II. 搜尋引擎的不完備搜尋查全率的比較:

如前所述,不完備搜尋會面對幾種情形:一、輸入的關鍵字可能為同字異義 字;二、輸入的關鍵字可能不足以表示所要搜尋的;三、輸入的關鍵字代表某一 子概念,但是此子概念可能以不同的關鍵字出現在文章中。針對這些情形,我們 設計從主概念至子概念階層式搜尋的系統架構。針對第一種的同字異義字,階層 式搜尋將在一步之後把含有同一個關鍵字卻含有不同兩種概念的文章分開,因為 這兩種概念的文章應當在空間中(特別是降維後的空間)分在不同的兩個區塊,

並不具有階層式架構的結果將可以輕易的於一步的階層式搜索後被分開而使得 搜尋者很快獲得想要的文章。針對第二類的狀況,由於輸入的關鍵字和實際搜尋 者想要搜尋的概念很可能就是主概念和子概念的關係,所以階層式的架構剛好提 供所需要的解決方案。針對第三種的情形和第二種的情形有些相關,輸入的代表 是一個子概念,但是搜尋者想要搜尋的概念可能是在階層架構下同一階層所有的 文章,譬如之前所提“computer store”和“computer shop”之間類似同輩之間的關 係,這些文章可能都是搜尋者感興趣的。針對這樣的情形,我們可以先將相關的 主概念找出來,然後再依照階層式的架構來做搜尋。綜合以上的討論,階層式的 搜尋架構可以將以上三種情形的搜尋提出解法,以下我們即將專注在階層式架構 的搜尋。

我們設計如下的實驗。在此搜尋架構下,使用者所輸入的關鍵字可能是一個 主概念,而實際想尋找的為主概念底下的子概念。考慮這樣的階層架構,我們可 以逐次用分群和挑選的方式得到想要的資料。當使用者想尋找的是屬於較低的階 層時,我們利用分群後的結果再繼續分群,逐漸接近使用者需要的結果。例如我 們若要尋找有關曲棍球的文章,則可能是包含於球類底下,球類又包含於運動底 下,故我們可能在所有文章中先區分出運動類以及非運動類,再繼續從運動類中 繼續區分出球類,最後再從球類區分出我們想尋找的曲棍球類的文章。

圖五、Alt.atheism 共有 1000 篇、rec.autos 共有 700 篇、rec.sport.basebal 共有 600 篇、rec.sport.hockey 共有 400 篇,共有 2700 篇。

Alt.atheism Rec.autos

Rec.sport.

baseball Rec.sport.

hockey

(15)

共 19 頁 第 14 頁

在這部分我們進行了兩個實驗,第一個實驗利用“20_Newsgroups” dataset 中 的四類別文章 : alt.atheism、rec.autos、rec.sport.baseball、rec.sport.hockey 來做測 試,第二個實驗我們以Google 所搜尋得到的資料來做測試驗證高查全率的搜尋 方法,我們相信Google 搜尋引擎所得到的結果將可以推廣至其它如 Yahoo 等的 搜尋架構。

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5

−2.5

−2

−1.5

−1

−0.5 0 0.5 1 1.5 2

圖六、依照圖五將這2700 篇文章利用 ISOMAP 投影到二維的結果,紅色代表 alt.atheism 藍色代表 rec.autos 綠色代表 rec.sport.baseball 黃色代表

rec.sport.hockey。

i. 實驗一:假設我們目標在於尋找關於曲棍球的文章,先將四類文章 (2700 篇) 經 ISOMAP 做處理,隨即以 K-means 將之分為兩群 G1 & G2,再從 兩群中判斷哪一群和我們想要的文章比較有相關,再以此群為出發點遞 迴,直到找到我們想找的群為止。在這組實驗中,我們得到曲棍球文章 的正確率 (precision rate) 為 0.9111、查全率 (recall rate) 為 0.9225,同 時我們也將四類別的文章都區分開來,對於每類別文章的平均正確率 (average precision rate) 為 0.9449、平均查全率(average recall rate) 為 0.9401。圖五顯示此四類文章的階層關係,圖六表示利用 ISOMAP 投影 到二維的結果,圖七為過程結果。

(16)

共 19 頁 第 15 頁

圖七、每一次split 為一次 K-means,每一個圓角矩形表示一個群 (group),黃 色區塊為最後找到的群。

ii. 實驗二:我們在 google 上搜尋關於 ALLEN IVERSON (球星,簡稱 AI)的 文章,但實際在搜尋文章時我們給予的關鍵詞是“AI”。之後將 google 回 傳的前331 筆文件抓取下來,將資料分為兩群 G1 (121 篇) 和 G2 (210 篇),並隨機從兩群中分別取 5 篇文章判斷,結果發現從 G1 這群取出來 的文章5 篇有 3 篇是我們想找的,而 G2 這群取出的 5 篇都不是,因此 我們繼續從將G1 群再次分兩群 G11 (92 篇)和 G12 (118 篇),在 G12 隨 機取出的5 篇皆不是關於這位球星的 AI,而從 G11 取出的 5 篇全都是屬 於該位球星的文章,透過這樣的實驗結果和實驗一的佐證,我們可以認 為G11 是我們真正有興趣的文章所在的群。

alt.atheism :1000 rec.autos : 700

rec.sport.baseball : 600 rec.sport.hockey : 400

alt.atheism :994 rec.autos : 22

rec.sport.baseball : 16 rec.sport.hockey : 10

alt.atheism :6 rec.autos : 678

rec.sport.baseball : 584 rec.sport.hockey : 390

alt.atheism :4 rec.autos : 655

rec.sport.baseball : 13 rec.sport.hockey : 4

alt.atheism :2 rec.autos : 23

rec.sport.baseball : 571 rec.sport.hockey : 386

alt.atheism :0 rec.autos : 8

rec.sport.baseball : 26 rec.sport.hockey : 369 alt.atheism :2

rec.autos : 15

rec.sport.baseball : 545 rec.sport.hockey : 17

(17)

共 19 頁 第 16 頁

五、結語與未來的方向

在實驗一和實驗二中,我們已經得到不錯的分群效果,但在大多數的文件分 類中,都會使用bag of words 這樣的模型,在這樣的模型之下,所有的文字都會 被打散,並收集成一群不具順序性的字(unordered collection of words)。在這樣的 模型之下,所有字跟字之間的距離,就完全被忽略了。之所以要這樣使用,最主 要當然是為了處理上的方便,然而這樣卻也造成了部份資訊的闕漏,而這些資訊 卻有可能是區分同字異義的關鍵,因為同字異義的詞,通常會是上下文相關的 (contextual),也就是說,在這樣的情況下,只要根據上下文的內容,就可以分辨 出所包含的意義。但是在傳統以term-by-document 的方式來表示文章的情況下,

勢必就無可避免的要利用到bag of words 的方式,因此打亂了字間的關係。為了 要保留文件中每個字之間的資訊,建構出不同於以往的模型來表示文件,就勢在 必行。

一般而言,很多問題可以由一群node 以及 link 構成的 graph 來描述,每一 個node 代表著該事件的狀態、屬性或是行為,而 node 之間的 link 則代表著 node 間的相關性。所以相同類型的的事件上,會有著類似的graph,或是存在著一小 部份的graph 是可以用以界定出這些事件的差異。把這樣的想法應用在文件分類 的話,則是以graph 來表示文件的模型,而每一個 graph 都表現了一份文件;graph 中的每一個node,都是文件中的 keywords;node 間的 link,則是 keyword 之間 的強弱關係,也許是字之間的距離,也許是在某個範圍內同時出現的次數;以圖 八而言,keyword 2 和 keyword 3 之間,就有很強的關聯性,相對的,keyword 5 則和其他的幾個keyword 都沒什麼關係。如果一來所有的文件,都透過這樣的 表示方式,形成許多的graph。接著再定義出一套計算 graph 間的不相似度方式,

並套用到之前提過的降維演算法,把每個graph 視作為一個點,投影到本質維度 上,再使用一些分群的方法,便可以將保留了比使用term-by-document 的方法,

還要更多的資訊。

圖八、示意圖,以graph 來表示文件

keyword 2 keyword 1

keyword 4

keyword 3 keyword 5

(18)

共 19 頁 第 17 頁

以往之所以會使用bag of words 的方法,大膽的捨棄字之間距離的資訊,主 要是因為這麼做的效果並不差,而且有種說法是就算文件中的某個keyword 的意 義有很多種,但還是能夠從文章中其他出現的字來判別,也就是可以用另外的字 來輔助判定文章的意義。以圖九而言,keyword 1 和 keyword 2 都有出現,就代 表著concept 1,而如果和 keyword 3 出現一個比例以上,就是 concept 2。另一個 說法則是,要把這些文章歸類到concept 1 或是 concept 2 並不需要以 keyword 1 來看,而是以 keyword 2 或是 keyword 3 來決定。

圖九、概念示意圖

但這並不表示以前的方法就一定很好或是沒有什麼問題,而且字的出現位置在字 的意義上,也確實扮演著相當重要的角色,因此忽略掉這樣的資訊,而要迂繞到 另外的角度切入去處理的方式,仍存在著相當程度的改進空間。所以試著導入字 之間的關聯性以及利用graph 的方式來解決文件分群的問題,我們認為是未來相 當可行的方向。

keyword 1

keyword 2

keyword 1

keyword 3

concept 1 concept 2

(19)

共 19 頁 第 18 頁

參考文獻

[1] AK Jain and RC Dubes. (1988). Algorithms for Clustering Data. Prentice-Hall, Inc. Upper Saddle River, NJ, USA.

[2] C. Biernacki, G. Celeux, and G. Govaert. (2000). “Assessing a Mixture Model for Clustering with the Integrated Completed Likelihood”. IEEE Trans. on Pattern Analysis and Machine Intelligence, 22(7):719-725.

[3] Carlo Tomasi. (2003). Estimating Gaussian Mixture Densities with EM - A Tutorial.

[4] Dempster, A., Laird, N. and Rubin, D. (1997). “Maximum Likelihood from Incomplete Data via the EM Algorithm”, Journal of the Royal Statistical Society, Series B, 39(1):1-38.

[5] H. Hartly. (1958). “Maximum Likelihood Estimation from Incomplete Data”.

Biometrics, 14:174-194.

[6] J.A. Bilmes. (1997). “A Gentle Tutorial of EM Algorithm and Its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models.”

Technical Report, University of Berkeley, ICSI-TR-97-021.

[7] Jansen, B. J., Sping, A., Bateman, J. and Sarace-vic, T. (1998). “Real Life Information Retrieval: A study of User Queries On The Web”, ACM SIGIR Forum, 32(1):5-17.

[8] J. B. Tenenbaum, Vin de Silva, J. C. Langford. (2000). “A Global Geometric Framework for Nonlinear Dimensionality Reduction”, Science, 22:2319-2323.

[9] Jyh-Shing Roger Jang. Data Clustering and Pattern Recognition (http://neural.cs.nthu.edu.tw/jang/books/dcpr/index.asp).

[10] M. A. T. Figueiredo, A. K. Jain (2002). “Unsupervised Learning of Finite Mixture Models”, IEEE Trans. On Pattern Analysis and Machine Intellegence, 24(3):381-396.

[11] M. I. Jordan. (1998). Learning in Graphical Models. Kluwer Academic Publishers.

[12] MacQueen, J.B. (1967). “Some Methods for Classification and Analysis of Multivariate Observations”, Proceedings of 5-yh Berkeley Symposium on

Mathematical Statistics and Probability, Berkeley, University of California Press, 1: 281-297.

[13] Michael W. Berry, Murray Browne. (2005). Understanding Search Engines – Marthematical Modeling and Text Retrieval 2nd.

[14] Chakrabarti. (2003). Mining the Web - Discovering Knowledge from Hypertext Data, Morgan-Kaufmann Publishers.

[15] S. Roberts, D. Husmeier, I. Rezek, and W. Penny. (1998). “Bayesian Approaches to Gaussian Mixture Modeling”. IEEE Trans. on Pattern Analysis and Machine

(20)

共 19 頁 第 19 頁

Intelligence, 20(11):1133-1142.

[16] Silverstein, C., Henzinger, M., Marais, H. and Moricz, M. (1998). “Analysis of a very large AltaVista query log”, Digital SRC Technical Note 1998-014.

[17] Trevor F. Cox, Michael A.A. Cox. (2001). Multidimensional Scaling.

參考文獻

相關文件

能夠按圖說進行裝 配、拆卸及維修基本 電子儀表裝置之零 組件,而且不損壞零

• 後段工程是從由矽晶圓切割成一個一個的晶片 入手,進行裝片、固定、接合連接、注模成 形、引出接腳、按印檢查等工序,完成作為元

化成 reduced echelon form 後由於每一個 row 除了該 row 的 pivot 外, 只剩 free variables (其他的 pivot variable 所在的 entry 皆為 0), 所以可以很快地看出解的形式..

檢查圖形上的每一點在對稱軸之兩側等距離位置是否都有對稱點,若 有,則此圖形是線對稱圖形。. ( 若圖形可以拿起來對折,可以沿著對稱軸對折,檢查圖形是否會完全

 學生能圍繞主題說話,能運用連接詞略述 事情的經過,高年級學生可以用較多形容

Segmented Bushy Path 分為兩個步驟,第一個步驟是文件結構的切割 (Text Segmentation),也就是分析文件內容並將文件內容切割成幾個具有代 表的結構。Text Segmentation

當兒童以自由叙述形式披露事件後,如 內容的資料不足,調查員可用開放式問 題澄清事件的時、地、人、性質及發生 經過.. 呢件事係點發 生,幾時發生

• Flash 的打散(Break Apart)功能,可以將群組 物件、點陣圖、文字物件,以及元件轉換成填色