行政院國家科學委員會專題研究計畫 期中進度報告
利用機器學習理論分析及判別基因同源性(1/2)
計畫類別: 個別型計畫
計畫編號: NSC93-2213-E-011-039-
執行期間: 93 年 08 月 01 日至 94 年 07 月 31 日 執行單位: 國立臺灣科技大學資訊工程系
計畫主持人: 鮑興國
報告類型: 精簡報告
報告附件: 出席國際會議研究心得報告及發表論文 處理方式: 本計畫可公開查詢
中 華 民 國 94 年 8 月 3 日
利用機器學習理論分析及判別基因同源性 (期中報告)
一、前言
大量基因圖譜的解碼造成基因研究的突飛猛進。我們利用對基因圖譜的了 解來推測物種之間的關係,重建生物演化歷史。譬如研究兩序列的演化過程,我 們可以推測基因和物種外在表現型之間的關係。生物學上定義兩序列為 orthologs 如果它們演化自同一祖先,且具有相同的生物功能。如果 ortholog 的辨別可以用 一些計算上的法則來說明,我們可以因此有效率的推得一些基因序列與表現型的 關係。研究顯示一定比例的同源關係不能完全靠簡單的序列比對辨別出來。一些 同源序列彼此擁有很低的序列間相似度或相似度幾乎無法和隨機序列間的比對 區別開來。我們提出決策樹的分類架構來探討序列之間的同源關係。對於特徵指 標的建立,除了常見序列比對產生的相似度等以外,我們納入 Kolmogorov 複雜 度的估計與計算。實驗顯示,Kolmogorov 複雜度的推估對於兩序列的同源關係 有相當程度的描述。我們挑選三種物種:人、家鼠和雞來作為計畫的試驗資料:
透過我們對人和家鼠基因序列的了解,來找尋雞的序列當中相對應、演化來自共 同祖先與負責類似生物功能的序列。詳細內容已投稿於 [25]。
對於機器學習的分類問題本身,我們也因為此問題的研究,間接發現利用 決策樹和支援向量機(SVM)的整合,我們可以解決一個一般性的分類問題:對於 連續型和離散型的資料,我們可以利用決策樹擅長處理離散型資料,而支援向量 機善於處理連續型資料的兩個特性,嘗試整合兩個模型,進而對一般混和型的資 料作出不錯的分類結果。詳細內容已投稿於 [26],請參照。
二、研究目的
大量基因圖譜的建立造成基因研究的突飛猛進 [35][14][7][8]。利用對基 因圖譜的觀察和了解,我們可以推測物種之間的關係,重建生物演化歷史。微觀 上來說,研究兩序列的演化過程,我們可以推測基因和物種外在表現型之間的關 係,進而快速的掌握大量未解讀的基因資料。蛋白質或基因序列絕大部分並非憑 空產生的,而是循著某條演化歷史逐漸演變而來。這樣的原則告訴我們要對大量 基因資料進行了解並無想像中的毫無機會。生物學上定義兩條序列為 orthologs 如果:(一)它們均從一個共同的祖先演化而來,(二)它們在生物上表現出相同的 功能。對於一對 orthologs,我們可以由一個序列的了解推得對另一序列的認識。
所以如果一對序列是否彼此為 ortholog 的辨別可以經由一定的規則或電腦演算 法推測得知,那我們便可以獲得一些基因序列與表現型的關係,也解決很多未知 基因識別的問題。但是 ortholog 的識別並不簡單。雖然一定比例的同源關係可以 由序列上的相似性推得,但是也有極大比例擁有同源關係 (或互為 ortholog) 的 序列對不能光靠簡單的序列比對軟體或演算法辨別出來;亦即經由一些常用序列 比對演算法的計算,有些同源的序列彼此擁有很低的序列間吻合度 [5]。
我們提出機器學習的模型架構來探討序列之間的同源關係。特別來說,我
們採用決策樹的分類方式來作為辨別序列同源性的一套方法。建構模型的關鍵,
除了資料的適當蒐集以外,最重要的莫過於特徵指標 (attributes) 的適當選擇與 計算。除了傳統或一般常見序列比對方式產生的諸多量,如吻合度,相似度等以 外,我們也試圖尋找一些特殊可以作為特徵指標的一些候選者。我們使用 Kolmogorov 複雜度的分析來補一般序列比對相似度的不足。Kolmogorov 複雜度 將在以下數節中作更深一步的討論。對於實驗的對象,我們挑選三種物種:人、
家鼠和雞來作為計畫的試驗資料,我們想要找尋雞的基因圖譜中和已知這組人和 家鼠的序列互為 ortholog 的序列。
對於一般性的機器學習研究方面,我們也嘗試一些模型的改良。我們整合 決策樹和支援向量機來針對一些同時擁有連續型和離散型資料的集合進行分類 工作,此架構稱做模型樹 (model tree) [26]。模型樹結合決策樹和支援向量機兩 者的特性來針對同時擁有連續型和離散型資料的集合進行分類:以決策樹針對離 散型的資料作 ID3 演算法的分析;以支援向量機針對連續型的資料作一多變量的 綜合分析,之後得到一個合成的特徵值,再利用此特徵值和其它離散型的特徵值 作一整體的比較,以決定較為醒目(salient)的特徵,進而決定整個模型樹的樣貌。
模型樹利用樹的形式來整合適當的模型 (此處為不同的支援向量機),進而給出 整體有效的分類模型。初步實驗結果顯示,此模型樹可以處理多類連續型和離散 型混和的資料,給出不錯的分類結果。進一步的研究可以納入最小描述長度原則 (MDL or Minimum Description Length) 來針對支援向量機產生的合成特徵和其 它離散型的特徵作一更為公平的比較,詳細請參閱 [26]。
三、文獻探討 I. 基因序列比對
基因序列的比對依照比對方式一般分為局部的比對 (local alignment) 和 整體全域的比對 (global alignment)兩種,各有其不同的適用範圍。在我們的模型 架構之下,可以假設兩者都會在個別特殊的情形下,協助我們做序列特徵的擷取 與分析,和同源性序列的辨別。Smith-Waterman [31] 演算法是眾所熟知的局部 比對演算法,可以協助我們找尋兩個或多個序列最佳的局部相似片段。由 Huang
& Miller 撰寫的 Matcher [13] 是我們用來執行局部比對的一套工具,依據的正是 Smith-Waterman 的演算法。另一類廣泛運用於許多資料庫搜索的局部演算法是 BLAST [1] 和 PSI-BLAST [2]。它們是 GenBank 上搜尋相似序列的基本配備。
在全域的比對的演算法方面,一般都是運用動態規劃的方式來求取最佳 解。Needleman-Wunsch algorithm [22] 即是運用此方式來完成最佳解的計算。全 域比對的意義在於輸入序列自頭至尾的比對都在考慮的範圍之內。一般此種方式 較多運用於長度比較相近的序列之間的比對,或序列彼此相似情形位於兩序列絕 大部分區域時。另一個全域比對的演算法來自 Gotoh 提出的方法 [12]。它提供 更有效率的演算方式,雖然仍較局部序列比對演算法所花的時間長,但是結果似 乎更為可靠,時間也在可容許的範圍之內。其它的全域序列比對工具包含 CLUSTALW [32]。對於多序列的比對,CLUSTALW 提供一般公認不錯的比對結果。
一般來說,基因的比對可以以全域的方式考慮,或是只注重彼此局部序列 的相似性。兩種方式各有其優劣。全域的方式考慮整條的序列,綜合的求取最佳 解,所以所有的序列內容都會在被考慮的範圍之內。有時這樣的方式並不適合處 理彼此長度差距太大的序列,或是只有少數局部範圍有相似性的序列。對於這樣
的序列,一般我們可以考慮局部比對的演算法來解決問題。但是局部比對的方式 有時一般並不考慮序列的整體性,提供的結果有時也只注重在一小部分的序列內 容,提供幾條相似度高的小序列對,卻沒有描述到序列的其它部分。段落對段落 (segment-to-segment) 的比對 (或稱作 gap-free 的比對) 提供一套折衷的方式。比 對的序列間,它只著重局部小序列的相似性,然後它將這些小序列比對且鏈結在 一起。對於兩兩小序列之間、彼此相似度低的部分、或長度上有不小差異的部分,
演算法並沒有作任何的考慮。以一般全域演算法的語言來說,它不會對沒有被比 對好區域的排比間隙 (gap) 作太多的減分。另一方面,因為它還是全序列一起 作排比,所以還是有一套方式對整體的排比結果有一套客觀可比較的評比方式。
舉例來說,對於兩同源序列 ABCD 和 ABD 的排比 (‘A’ ‘B’ ‘C’ or ‘D’ 代表的都是 一段核苷酸或氨基酸),如果‘C’的長度過大,傳統的全域演算法預料不能找到理 想的排比方式,因為長的間隙會獲得很大的減分而不會成為最佳解。對於這類的 排比方式,我們採用 Morgenstern et al.發展的 DIALIGN [19][20] 來作為我們序列 排比的工具。另外可以預期的,因為不需像一般全域比對的情形定義一些重要參 數 gap penalties (penalties for gap opening & gap extension),此法可以省去之前決 定最佳參數的繁複過程,也可省去一些在參數決定過程中可能產生的偏失。
II. Kolmogorov 複雜度
Kolmogorov 複雜度 (K 複雜度或 Kolmogorov entropy 或 Kolmogorov complexity) 的分析較早運用於對一般字串的描述 [17]。在此,我們借用來作為 基因序列的複雜度分析。一個字串 (一般字串或只含有特別字元符號的基因序列) 的 K 複雜度被定義成描述 (或輸出) 此字串的最小電腦程式的長度。這樣的定義 非常抽象,一般無法為電腦計算出來。我們可以利用壓縮的方法來嘗試逼近這樣 的解答。我們可以量度一個字串壓縮後的長度來決定此字串的複雜度。一般來 說,壓縮程度愈不好的字串,表示字串的複雜度愈高、愈無規則可言。生物序列 並非亂數所構成,一般相信有某種程度的規則存在於序列裡 (或序列與序列之間) [6]。我們利用兩種壓縮的方法來作為 K 複雜度的近似計算。第一種是 Lempel 和 Ziv 發展的 LZ77 演算法 [15][36]。我們使用以 LZ77 寫成的 gzip (在 UNIX system 的架構) 來作為實際的壓縮工具。另一種採用的壓縮方式是 Chen et al.發展出來 的 GenCompress [6] 。 兩 種 壓 縮 方 式 都 是 採 用 不 固 定 長 度 到 固 定 長 度 (variable-to-block) 的編碼方式來作壓縮。兩者的差異在於 LZ77 的編碼考慮完全 相同子字串且將後發現的子字串用簡單的編碼來代表。而 GenCompress 則考慮 近似相同的子字串而將後發現的子字串用簡單的編碼來代表。一般來說,對於含 有一定突變比例的生物序列資料,GenCompress 的策略可以提供更好的壓縮結 果。另外一點它們的差別在於 GenCompress 有考慮基因序列的特殊性來作壓縮。
譬如核苷酸序列一般會有反向互補的情形,即序列裡如果看到一前方片段 ACTTG,可能會在之後看到反向互補的 CAAGT 的片段。這現象來自於 RNA 二 次結構 (secondary structure) 的鍵結特性。此種考慮也有助於提高壓縮的效能。
對於一段序列,壓縮的效能愈好,壓縮的結果愈能用來估計此序列的 K 複雜度。
利用 K 複雜度的分析,我們可以藉此定義序列間的距離函數描述序列間 可能的親緣關係。Li et al. [16] 曾提出一項距離函數來描述物種序列的血緣關 係,用以建立多個物種的演化樹
) (
)
| ( ) 1 (
) ,
( K st
t s K s t K
s
d = − −
其中函數 K(s) 代表的是序列 s 的 K 複雜度值,而 K(s t) 則是代表序列 s 和 t 連 接起來新序列的 K 複雜度值。另外 K(s | t) 代表已知序列 t 的情形下序列 s 的 K 複雜度值,也就是最小可以輸入 t 而輸出 s 的電腦程式的長度。此函數函數值介 於 0 和 1 之間,愈小的值表示愈接近的親緣關係。同樣的,因為這樣的定義不容 易被直接算出,我們藉助壓縮演算法來得到它的估計值。值得注意的是此項方法 用來判斷物種整段基因組 (或長度較長的基因序列) 之間的關係並藉此分析物 種之間的血緣關係是可行的,但是對一組含有幾個小段長度序列的親緣關係分析 並非很恰當。原因在於長度小的序列的壓縮結果一般不佳,於是也不能很適當的 以此估計序列的 K 複雜度值。我們需要針對此點找尋一些可行的改良方式。更 深入的分析詳見以下各節。
III. 機器學習
我們採用機器學習的方式來解決同源序列的辨別問題。一般來說,給定分 類的工作和若干相關此分類工作的特徵 (attributes),我們可以運用決策樹來協助 分類預測。一般認為決策樹的優點在於,決策樹的結果一目了然,可以為各專業 人士所了解,且可依需要做進一步依照專業建議的改進。所以分類工作的優劣取 決於決策樹建立的方式。但是決策樹的建立不是一項簡單的工作,對於一組固定 的資料,理論證明我們無法在多項式時間之內找出最好最有效率的一個決策樹來 描述這組資料 [18]。正因如此,我們必須退而求其次找出優良的可能次佳解。
我們採用一套建立決策樹的工具 C5.0 [27][18] 來協助我們分類的工作。它依據 的是貪進演算法 (greedy algorithm),和一套和 entropy 相關的計算來決定那一項 特徵指標應當先被我們考慮。在每一步決定下一步要判斷的特徵指標時 (決定下 一個決策樹的 node 應該是什麼),對所有的特徵指標都做一個被稱作 information gain 的計算。也就是計算 (1)一個對資料空間的分割 (partition) 和 (2)資料標籤 所得到的分群之間的交互資訊 (mutual information) [18][27][9]。一些訣竅也被利 用來增進決策樹的功效,譬如一個改善 information gain 的量叫做 gain ratio,在 大部分情形可以產生更好的決策樹 [18][27]。
有相當多的狀況是在我們面對實際的分類問題會碰到的難處。例如特徵數 值不完全有缺時 (missing values) 如何處理特徵指標的選取,如何在假陽性 (false positive) 和假陰性 (false negative) 的判斷錯誤中去作取捨,和如何面對決 策樹與資料過分密合 (overfitting) 的問題。對此,C5.0 (或 C4.5) 提供可以接受 的不錯結果來供我們參考。C5.0 等有相當豐富的參數群可以針對不同的情形來 作特別的調整,最後提供適當的決策樹。對於樹與資料過分密合的問題,我們必 須小心來處理。一類廣泛流行的模型建構哲學建議當兩組模型同時都可以描述一 組 資 料 時 ( 有 同 樣 的 預 測 正 確 率 ) , 我 們 應 當 選 取 比 較 簡 單 的 那 一 組 模 型 (Occam’s razor) [9][18]。這樣的說法不一定是正確的,雖然簡易的模型一般提供 較高的效率。一般的做法是在對未知資料的預測率降低的同時,我們就應該停止 模型朝已知資料更進一步的密合[18][10][11]。一個用於分類工作的方法,最小描 述長度原則討論類似的議題 [18]。對於決策樹來說,如果兩個樹都可以同樣正 確的描述一組資料,我們猜測選擇比較小的樹會增加對未來資料預測的正確率。
這樣的猜想實踐在於對樹的裁減或是在適當的時間停止樹的繼續分歧 [18][27]。
推進術 (boosting) 是一個可以提高機器學習模型效能的重要方法。最著 名的一種是 Freund 和 Schapire 發展的 AdaBoost [10][11]。對於一個效能未臻完美 的學習模型,我們可以透過推進術來進一步改進它。以 AdaBoost 為例,這樣的 改善可以無窮盡的朝向完美的方向來前進。它的作法是針對初步分類有錯的資料 點給予較大的權重,再依此作另一次的模型建構。之後的分類模型可以再進一步 的被用來檢驗資料的正確率。對於分類模型仍然不能正確預測的資料點,我們再 給予比原先更大的權重,之後依此再建立一個新的學習模型,以此類推。C5.0 和 C4.5 的一項最大差異就在於 C5.0 提供推進術的功能,雖然它所使用的推進術 是 AdaBoost 的一種變形 [29]。C5.0 運用推進術的技巧建立一連串的決策樹。每 一個樹都是針對之前的樹預測不好的資料點作權重的重分配作出來的新樹。最後 的資料分類預測取決於這一連串決策樹對此資料的分類 (結果不盡相同),之後 再作一個有權重的平均 (voting) 來決定最後的分類結果。
決策樹並非唯一一套建立機器學習模型的方法。另外的幾種機器學習方法 包 含 支 撐 向 量 機 (support vector machine) [33][34] 、 類 神 經 網 路 (neural network)、基因演算法等。決策樹的模型和這幾類機器學習模型最大的差別在於 決策樹提供相當透明的結果。依此相關領域的專家可以利用產生的決策樹模型作 更進一步的修正或改良。這在其它的模型架構下並不容易辦到。一些生物上的問 題曾以決策樹獲得不錯的結果,決策樹的模型簡化了其它做法可能帶來分析上的 困難。譬如 Morgan system [30] 利用決策樹解決 intron-exon 的識別問題。另外 Arikawa et al. [3] 也成功運用決策樹找尋到蛋白質負責特殊功能的區域。
對於決策樹本身,除了 C5.0 (或 C4.5) 也有以外的幾種演算法。譬如在決 策樹中,決策節點可以以非二元的方式進行分割。其它的選擇是在資料點的空間 中用非垂直的平面 (仍為線性) 來作切割,或運用不同的標準 (不用 entropy) 來 作空間的切割,或採取貪進法以外的方式來建立決策樹等,各方法的優劣及相關 的討論可以參考 [27]。
四、研究方法
我們挑選三種物種:人、家鼠和雞來作為計畫的試驗資料。我們企圖透過 一組已知互為 orthologs 的人和家鼠的序列,來找尋雞的基因圖譜中和這組序列 互為 ortholog 的序列。 挑選人和家鼠的原因主要在於人和家鼠是現在為止,大 型生物中基因圖譜比較完整的兩個物種。依此我們可以獲得更多的序列與序列相 關的資訊來作為機器學習的輸入資料。至於挑選雞的原因在於雞在演化歷史中和 人與家鼠的演化距離約略相等。我們可以依此運用分子時鐘假說 (molecular clock hypothesis) [21] 來假設突變發生在人與雞之間和人與家鼠之間的頻率是相 近的。如此情形將讓我們的研究工作更為單純。當然此架構並不僅限於運用於這 三種物種的同源性分析,物種的數目也並不一定要限於三種。一搬來說,愈多的 物種同時來探討會增加結果的可靠性。
我們透過決策樹的分類方式,特別是 C5.0 的分類方式,來協助我們辨別 一序列是否與某一已知序列(組)有同源性的關係。輸入資料是以 (C, H, M) 的形 式為一單位。‘C’, ‘H’, 和‘M’代表分別來自雞 (Gallus gallus 或 chicken), 人類
(Homo sapiens 或 human),或是 老鼠 (Mus musculus 或 house mouse) 的基因序 列 (可以為核苷酸序列或氨基酸序列)。如果‘H’和‘M’是兩列我們所關心、具有同 源性關係的基因序列,我們的問題是我們可不可以運用機器學習的分類模型來預 測一個給定的序列 ‘C’是否與‘H’和‘M’來自同樣的起源,或是從雞現有的基因圖 譜當中找出一個序列‘C’,它與‘H’和‘M’都來自相同的祖先。
研究的過程可以依先後概分為三大部分: (A) 資料的蒐集與判別; (B) 依據擁有的資料建立決策樹模型作為分類工作的依據; (C) 對未知屬性資料的 預測。我們分別詳述如下:
(A) 資料的蒐集與判別:資料的蒐集可以仰賴 NCBI 的網站和一些生物 學家的建議,找出可靠的同源資料作為學習過程(B)的輸入。對於蒐 集到的資料,剔除一些不全或不詳盡的部分整理出若干同源的序列 組 [24]。假設有 N 組這樣的資料。此部分的資料我們可以以
(Ci, Hi, Mi), ∀ 1 ≤ i ≤ K
來表示,其中‘C’, ‘H’, 和‘M’分別代表來自雞、人類和老鼠的基因序 列。每一組資料下標的相同表示它們的同源性關係。
(B) 依據擁有的資料建立決策樹:此步驟包含兩件工作:特徵指標的計 算和決策樹的建立。特徵指標計算的目的在於將資料轉換為固定長 度的資料
(a1, a2, …, aN),
也就是每一筆資料都是一個數個特徵 ai, 1≤ i ≤ N 所組成的向量。我 們將各 ortholog 的序列轉化為此向量,當作肯定的資料。由於分類 問題同時需要肯定和否定的資料,我們也需要一些蒐集否定資料的 原則和方法,詳細的原則和方法可參考 [23][24][25]。至於特徵值的 蒐集,一般來自於各類排比演算法 (譬如 CLUSTALW, BLAST, Matcher 等) 得到的相似度 (similarity) 或吻合度 (identity) 等的計 算。我們依照各類演算法和相似度等的計算得到 46 個特徵值。另外 一個關於序列功能類別的資訊來自於生物學家的判斷也被納入我們 的資料當中,共 47 個特徵值 (詳細請參考 [25])。此 47 特徵值為一 單 位 的 資 料 被 送 入 我 們 的 分 類 器 當 中 當 作 訓 練 的 資 料 (training data)。我們選擇 C5.0 來作為我們的分類器。特別強調的是我們加入 K 複雜度估計所產生的特徵:依據對序列 K 複雜度的分析,我們可 以估計兩兩序列之間的關係遠近。愈大的值表示兩序列的親緣關係 愈遠,反之亦然。我們給出函數 D 和 D’如下
和 Li et al. [16]提出的函數 d 比較則可以如下的關係式來說明
所以可以看出來以作為分類工具的特徵值的觀點來看,函數 d 和函 數 D’將具有一樣的功效。而函數 D’和函數 D 的差距在於函數 D 有 利用到 conditioned K 複雜度的估計。S 和 T 定義為序列 s 或 t 所屬物
)
| ( )
| (
) ) (
,
(
K s S K t T st t K
s
D
= +) (
) ( ) ( ) ( 2 )
(
)
| ( ) 1 (
) ,
(
K st
t K s K st K st
K
t s K s t K
s
d
− −− ≈
−
=
) ( ) (
) ) (
,
'(
t K s K
st t K
s
D
= +種「所有可獲得基因序列所成的集合」。Conditioned 複雜度的計算 在於對於某序列估計如果假設此序列物種的所有序列樣式 (pattern) 為已知,我們需要多少額外的 coding 來描述這個序列。
(C) 對未知類別資料作預測:(B)的結果是一個或多個決策樹 (依照是否 有採用推進術)。我們可以依此來對未曾見過的資料作是否為同源序 列的預測。對於新得到的序列,我們可以依照類似(B)的第一步作特 徵指標的計算。得到的特徵數列就可以運用決策樹來求得估計的類 別 (是否為同源的序列)。C5.0 的結果除了作出序列類別的估計以 外,也會提供數值來描述此估計的可靠性 [27]。
以這個架構為前提,我們得到一些正面的結果,詳下節的討論。
五、結果與討論
實驗的目的在說明第一、機器學習,特別是決策樹或模型樹的架構可以適 當的幫助我們找出序列之間的同源性關係;第二、以決策樹或模型樹的架構來 看,K 複雜度所衍生出的特徵值通常對分類具有不錯的效果。確切來說,如果代 表 K 複雜度的特徵值被加入在我們的決策樹輸入當中,ortholog 的判斷能力會有 顯著的提升。更甚之,我們可以看到在某些決策樹上,K 複雜度所代表的特徵值 位於樹的最根部,也就是被列為第一優先檢驗的項目。以決策樹的觀念來說,此 結果代表的是 K 複雜度對於兩序列是否為 ortholog 有不錯的區分能力。我們可 以以圖表一來說明。
我們執行兩個系列的實驗。在兩個實驗裡,我們分別比較幾項由不同演算 法所計算出的特徵值集。它們分別是:Matcher 所代表的局部比對演算法 (12 個 特徵值),Gotoh 的全域比對演算法 (四個),ClustalW 所代表的可處理多重序列 的演算法 (六個),可以做段落對段落比對的演算法 DIALIGN (20 個) 和代表 K 複雜度估計的壓縮法 GenCompress (四個)。儘可能挑選不同類的演算法是希望藉 由它們彼此互異的比對方式或區分能力,藉由決策樹的架構,整合成一個有不錯 分類效力的分類器。
第一個系列實驗裡,我們比較當任何一個而且僅有一個演算法被納入決策 樹的架構下,哪一個演算法具有對同源性分析最佳的分類能力。由圖表一可知,
GenCompress 所代表的 K 複雜度估計有不錯的分類效力,雖然較 ClustalW (最好) 和 DIALIGN (次好) 相比略差。在第二個系列實驗裡,我們比較當任何一個而且 僅有一個演算法被從決策樹的架構中抽離出來時 (其它的特徵值都依然放在決 策 樹 的 輸 入 裡 ) , 那 一 個 會 造 成 最 大 的 分 類 效 能 損 失 。 可 以 看 出 來 , 當 GenCompress 所代表的特徵值被抽離時,整個分類錯誤率會有最大的上升。我們 可以概略的解釋為,GenCompress 所代表的特徵值具有和其它演算法所計算出來 的特徵值之間最大的相異性。如果同樣都放在決策樹的架構下,它們可以補彼此 對於是否為 ortholog 的判斷能力的不足。相對的,非 GenCompress 的演算法彼此 之間就有比較大的類似性。所以如果一個演算法沒有被納入決策樹當中,另一個 演算法約略可以補其之不足,而使得整個決策樹的分類能力沒有太大的下降。以
此觀點來看,在大量比對演算法都可輕易獲得的同時,我們最需要的計算方法正 是來自於對 K 複雜度作估計的 GenCompress 壓縮法。了解這項結果,無疑的將 對序列同源性分析有更有效的推測。相關結果已發表於 [25]。
圖表一、10-FOLD cross-validation 的結果,比較五類關於序列相似度的特徵值集合
Attribute Set Missed in Testing: +/– (%)
A: only one in (& class) B: at most one out w. all attr. 41.9 / 15.6 (0.87%) Matcher (w.) 71.7 / 53.7 (1.89%) (w/o) 41.3 / 16.3 (0.87%) Gotoh (w.) 70.8 / 67.7 (2.09%) (w/o) 43.2 / 15.0 (0.88%) ClustalW (w.) 45.3 / 46.1 (1.38%) (w/o) 41.9 / 15.5 (0.87%) DIALIGN (w.) 51.7 / 51.8 (1.56%) (w/o) 40.1 / 16.1 (0.85%) GenCompress (w.) 101.6 / 12.6 (1.72%) (w/o) 47.9 / 50.3 (1.48%)
展望未來一年的工作,除了針對此項發現與 K 複雜度的估計作更進一步 的研究外,我們也將針對方法學本身的研究更進一步的加強。針對決策樹本身,
一般來說我們會面臨當資料同時具有連續型和離散型的特徵時,決策樹常會挑選 出不是很恰當的特徵值作為醒目的特徵,造成整體分類能力的下降 [28]。譬如 一般會比較傾向挑選連續型的特徵,因為連續型特徵具有比較多的離散切點,也 就有較多的機會被挑選為醒目的特徵。雖然此項缺陷已為多位研究者所發現及提 出改進的方法,但是我們仍然指出這些方法仍有改進的空間。我們得到一些初步 的結果,發表於 [26]。我們將針對此議題作更深入的研究。
參考文獻:
[1] Altschul, S. F., Gish, W., Miller, W., Myers, E. W., & Lipman, D. J. (1990).
“Basic local alignment search tool”, J. Mol. Biol., 215: 403–410.
[2] Altschul, S. F., Madden, T. L., Schäffer, A. A., Zhang, J., Zhang, Z., Miller, W., Lipman, D. J. (1997). “Gapped BLAST and PSI-BLAST: A new generation of protein database search programs”, Nucleic Acids Research, 25(17): 3389–3402.
[3] Arikawa, S., Miyano, S., Shinohara, A., Kuhara, S., Mukouchi, Y., and Shinohara, T. (1993). “A machine discovery from amino-acid-sequences by decision trees over regular patterns”, New Generation Computing, 11: 361–375.
[4] Benedetto, D., Caglioti, E., & Loreto, V. (2002). “Language trees and zipping”, Physical Review Letters, 88: 048702.
[5] Brenner, S. E., Chothia, C. and Hubbard T. J. P. (1998). “Assessing sequence comparison methods with reliable structurally identified distant evolutionary relationships”, Proc. Natl. Acad. Sci. USA, 95(11): 6073–6078.
[6] Chen, X., Kwong, S., & Li, M. (2000). “A compression algorithm for dna
sequences and its applications in genome comparison”, RECOMB, p. 107.
[7] Collins, F. S. and Galas, D. (1993). “A new 5-year plan for the U.S. Human Genome Project”, Science, 262: 43–50.
[8] Collins, F. S. et al. (1998). “New goals for the U.S. Human Genome Project:
1998-2003”, Science, 282: 682–689.
[9] Cover, T. and Thomas, J. (1991). Elements of Information Theory, Wiley & Sons, NY.
[10] Freund, Y., & Schapire, R. E. (1997). “A decision-theoretic generalization of on-line learning and an application to boosting”, Journal of Computer and System Science, 55, 119–139.
[11] Freund, Y., & Schapire, R. E. (1999). “A short introduction to boosting”, Journal of Japanese Society for Artificial Intelligence, 14(5): 771–780.
[12] Gotoh, O. (1982). “An improved algorithm for matching biological sequences”, J.
Mol. Biol., 162: 705–708.
[13] Huang, X., & Miller, W. (1991). “A time efficient, linear space local similarity algorithm”, Adv. Appl. Math., 12, 337–357.
[14] International Human Genome Sequencing Consortium. (2001). “Initial sequencing and analysis of the human genome”, Nature, 409: 860–921.
[15] Lempel, A., & Ziv, J. (1977). “A universal algorithm for sequential data compression”, IEEE Trans. Inf. Theory, 23, 337–343.
[16] Li, M., Badger, J. H., Chen, X., Kwong, S., Kearney, P., & Zhang, H. (2001).
“An information-based sequence distance and its application to whole mitochondrial genome phylogeny”, Bioinformatics, 17, 149–154.
[17] Li, M., & Vitányi, P. (1997). An introduction to kolmogorov complexity and its applications (2nd ed.), New York: Springer.
[18] Mitchell T. (1997). Machine Learning, McGraw Hills.
[19] Morgenstern, B., Dress, A., & Werner, T. (1996). “Multiple DNA and protein sequence alignment based on segment-to-segment comparison”, Proc. Natl.
Acad. Sci. USA, 93, 12098–12103.
[20] Morgenstern, B., Frech, K., Dress, A., &Werner, T. (1998). “Dialign: finding local similarities by multiple sequence alignment”, Bioinformatics, 14, 290–294.
[21] Mount, D. W. (2001). Bioinformatics: Sequence and Genome Analysis, Cold Spring Harbor Laboratory Press.
[22] Needleman, S., & Wunsch, C. (1970). “A general method applicable to the
search for similarities in the amino acid sequence of two proteins”, Journal of Molecular Biology, 48, 443–453.
[23] Ouyang, M., Case, J., & Burnside, J. (2001). “Divide and conquer machine learning for a genomics analogy problem (progress report)”, Discovery Science, pp. 290–303.
[24] Ouyang, M., Case, J., Tirunagaru, V., & Burnside, J. (2002). “565 triples of chicken, human, and mouse candidate orthologs”, Journal of Molecular Evolution. Accepted provisionally.
[25] Pao, H.-K. and Case, J. (2004). “Computing Entropy for Ortholog Detection”, International Conference on Computational Intelligence.
[26] Pao, H.-K., Chang, Shou-Chih and Lee, Yuh-Jye. (2004). “Model Trees for Classification of Hybrid Data Types”, 6th International Conference on Intelligent Data Engineering and Automated Learning.
[27] Quinlan, J. R. (1993). C4.5: Programs for machine learning. San Mateo, CA:
Morgan Kaufmann Publishers.
[28] Quinlan, J. R. (1996). “Improved use of continuous attributes in C4.5”, Journal of Artificial Intelligence Research, 4: 77–90.
[29] Quinlan, J. R. (1997). Private communication.
[30] Salzberg, S., Delcher, A. L., Fasman, K. H., and Henderson, J. (1998). “A decision tree system for finding genes in DNA”, Journal of Computational Biology, 5(4): 667–680.
[31] Smith, T. F., & Waterman, M. S. (1981). “Comparison of biosequences”, Adv.
Appl. Math., 2, 482–489.
[32] Thompson, J. D., Higgins, D. G., & Gibson, T. J. (1994). “Clustal w: improving the sensitivity of progressive multiple sequence alignment through sequence weighting position-specific gap penalties and weight matrix choice”, Nucleic Acids Res., 22, 4673–4680.
[33] Vapnik, V. (1995). The Nature of Statistical Learning Theory, Springer Verlag, New York, 1995.
[34] Vapnik, V. (1998). Statistical Learning Theory, John Wiley and Sons, New York, 1998.
[35] Venter, J. C. et al. (2001). “The sequence of the human genome”, Science, 291:
1304–1351.
[36] Ziv, J. and Lempel, A. (1978). “Compression of individual sequences via variable-rate coding”, IEEE Trans. Inf. Theory, 24(5): 530–536.