第一章、緒論
在本章節中,我們首先對研究背景與動機做概要的介紹,然後描述本研究所探討的兩種
分割問題定義。第二節我們會敘述研究目的,並在第三節說明研究流程。
1.1 研究背景與動機
本研究欲探討的是ㄧ致性分割問題(consensus partition)問題,其目的在度量不同分割或分 群之間的差異並找尋分割的ㄧ致性。分割問題是非常重要的研究且橫跨多個個不同領域,例 如:生物資訊,資料探勘及作業研究等。給定一個集合內含有 n 個元素,一個分割是指將此 n 個元素分給多個互斥的群(cluster)(每群包含的元素都不同) 。相同的資料在不同的分割演算法 執行下將會造成不同的分割。如何計算不同分割之間的距離是令許多學者非常感興趣的重要 研究議題。藉由分割距離(partition-distance)的計算,我們可以決定(比較)一個分割(方法) 的好壞也可以找出這些不同分割的共同的pattern,稱為一致性分割(consensus partition)[
或稱作一致性分群(consensus clustering)]。本論文將會使用兩種分割距離。第一種分割距 離是 Almudevar 與 Field 在 1997 年所提出[1],用來衡量兩個分割的距離,Gusfield 在 2002 年提出一個ㄧ般化的版本,稱為k partition-distance (k-PD) problem [8]。我們描述此問題如下。
給定一個 n 個元素(element)的集合 N,及兩個分割 P1及P2,兩個分割P1及P2是一致(identical) 定義為在P1中的每個群都會在P2中對應到一個相同的群(反之亦然)。Almudevar and Field 定 義第一個分割距離函數dA:dA(P1,P2)-> R+ ,為移除元素的個數使得移除後兩個分割會變成一 致的 [1]。給定 k 個分割 P={P1,P2,…,Pk}及 n 個元素的集合,k≥2,分割距離 DA(P)定義為移除 N 中若干元素使得所有的分割變成一致(identical)。我們正式定義 k-PD 問題如下:
2
問題 : k partition-distance (k-PD) problem
輸入 : k 個分割 P={P1,P2,…,Pk}及 n 個元素的集合,k≥2 輸出 : 使所有分割變成一致(identical)
目標 : 最小化分割距離(DA(P))
第二種分割距離是Berman et al.於 2007 年定義的 k partition-clustering (k-PC) problem 問 題[5]。我們描述此問題如下:對於兩個分割 P1 and P2,如果每一個分割有相同個數的群,每
問題 : k partition-clustering (k-PC) problem
輸入 : k個分割P={P1,P2,…,Pk}及n個元素的集合,k≥2,且每次分成相同的群數ρ
3
為 NP-complete [8] 。 然 而 k partition-distance problem 的 可 近 似 度 集 合 是 否 為 Max SNP-complete [13][或稱為 APX-complete,沒有 polynomial time approximation scheme (PTAS),
除非 P=NP],亦或是有 PTAS 的方法至今仍是懸而未知。對於 k-PC 問題,在當 k=2,此問 題會等同於第一個問題(k-PD problem)[8],有時間複雜度為 O(ρ3)的演算法可解決,ρ=O(n)。
當 k>2,此問題為 Max SNP-hardness,並有兩倍的近似演算法其時間複雜度為 O(k2(n+ρ3)) [5]。
對於k-PD 及 k-PC 問題,我們將設計幾個啟發式演算法(heuristic algorithms)並分析其 時間複雜度使其執行速度更有效率。我們的方法是利用分群方法的一些特性來設計這些演 算法,其時間複雜度分別為 O(k2n+kρ log ρ) [k-PC 問題]及 O(kn+kρ log ρ) [k-PD 問題],
並應用一些生物上的資料來進行模擬(simulation),藉此結果說明我們的方法的優劣。
1.3 研究架構
本論文的研究架構如下,首先將會逐一介紹分群(clustering)在各個領域中應用的情況;
對相關工作做一個概要的整理。接著會介紹與本研究關係極為密切的k-PD 問題與 k-PC 問題。
最後將會概述 Berman 等人提出的 k-PC 問題的近似演算法。由於在 k>2 的時候,k-PC 問題 是NP-complete,該演算法能保證所找到的解將會是(2-k/2)倍近似。第三章,首先我們將會提 出一個可能的方式,用來代表每個群集的相似程度。然後以該數值為基礎建立一個演算法,
先透過在 k=2 的情況下與 Gusfield 演算法進行比較,確定該數值可以在此一情況下運作。最 後在與Berman 演算法進行比較,確定在 k>2 的時候,我們的演算法將如同 Berman et al.的演 算法一般找出(2-k/2)倍近似的解。在本論文中的第三章,我們將會展示出我們設計用來表示 群集相似程度的數值計算方法,以及一個以該數值為基礎的演算法來解決k-PD 及k-PC 問 題,並藉此分析演算法的時間複雜度。第四章我們會展示整個實驗數據的模擬結果,藉此觀 察我們的方法的執行效率與正確性。最後,我們將在第五章提出結論。