Q1 大學及研究所的求學經歷
巫坤品老師畢業於台大電機博士班,他形容自己是很純的資工人,因為台大電機的計算機科學組和資工系所學的類似。巫老師主要興趣在發展資訊方法,無論是應用在生物資訊領域或其他領域,資訊方法彙整了很多不同領域的內容。
譬如很多資訊方法底層是線性代數、機率、統計,或數論。離散數學也是從數學的不同分支匯總而來;或像自然語言會和語言學有所關連,資訊科學彙整了這些不同領域的內容而發展出解決問題的方式。
博士階段巫老師起初進行分散式理論 (Distributed Algorithms) 的研究,之後則轉往密碼學 (Cryptography)、並以相關研究作為博士畢業論文。 離開校園之後,喜歡多方嘗試的巫老師認為與其選擇已經成熟發展多年很多人作的研究領域,或是目前大家都覺得熱門的方向。還不如專注真正有潛力能有所突破及貢獻的領域。當時中研院資訊所代所長許聞廉老師來到台大電機系給了生物資訊相關的演講。引起巫老師極大的興趣,覺得這是個深具潛力的領域。
巫老師後來就進入許老師實驗室擔任國防役,從事生物資訊相關的研究。 剛開始,巫老師從高中生物課本開始讀起,一點一滴地充實相關背景知識。在許老師實驗室服國防役的階段,共發表了五、六篇生物資訊相關的研究成果。所以巫老師常會對學生說:「如果你要跨領域永遠不要怕太晚,沒有太晚的事只要你開始就來得及。你看我可以從分散式換到密碼學,而在博士班畢業後再跳到生物資訊研究領域。」巫老師的前兩項生物資訊研究是蛋白質二級結構預測;巫老師所參與的團隊的成果,比當時最好的預測方法好上 2%。但後來回顧這個研究成果時,巫老師認為其具體意義並不是特別顯著。生物學家其實不會在意2% 的差別。以作為蛋白質三級結構預測的模版,其實 75% 的二級結構預測正確率就夠了。在剛開始踏入生物資訊研究領域,其實會遇到很多類似這樣的文化衝擊。譬如對資訊人來說,計算的 performance 是研究重點之一,但生物人根本不在乎,他們在乎的是資訊方法能不能提供生物上新的知識、發現或想法。
Q2 實驗室目前的研究方向
巫老師在蛋白質體學 (Proteomics) 方面的一系列研究,主要是和中研院化學所所長陳玉如博士的合作。陳玉如老師是國內以質譜 (Mass Spectrometry) 分析為基礎的蛋白質體的頂尖研究學者。因為一點因緣巧合,開始和陳玉如老師實驗室的長期合作關係。巫老師以資訊方法幫忙分析質譜訊號並進行蛋白質體學相關研究。巫老師對研究題目的看法是:「我作東西都是靠一點直覺,靠一點興趣和一點對未來的判斷。所以我是個會換題目的人,知道社會會變遷,現在很紅的東西未來就不紅了,每一波會有每一波重要的東西會出來。我的個性是我會隨著未來趨勢移動。像我就不一定覺得我會作生物資訊作一輩子,我的概念就是這樣,是因為在那個時候他帶給我樂趣。我覺得人工作上要和興趣結合,才會有動力。」
蛋白質體學方面的研究,包括與一些老師和醫院合作尋找生物標記 (Biomarker discovery)。譬如進行胃癌與大腸直腸癌的生物標記找尋。這部份的研究主要是分析從醫院取得的樣本,這些是和陳玉如老師的合作項目,由她負責進行樣本的質譜分析、而巫老師則是進行質譜訊號處理與後續的差異性分析。此外,實驗室的研究還包括應用在基因體學的演算法,以及一些幹細胞 (Stem cell) 的差異性分析,譬如somatic cell、embryonic stem cell 還有IPSC之間 pathway 活化程度的差異。曾經有人問巫老師的研究主軸是甚麼?巫老師這樣回答:「我的主軸就是資訊方法,任何我感興趣的生物或醫學問題,只要資訊方法使得上力,我就願意去嘗試。」但跨領域要成功不能一直抓著自己的價值觀,那個很容易會與合作對象發生研究方法上的衝突,然後就無法繼續進行下去,要能夠暫時放掉自己的主觀意識。然後站在別人的立場想一想,為什麼對方會有這種想法;為什麼會覺得這個好這個不好;為什麼某項要求是必要的,等等。所以我很清楚可以作的題目非常廣,只要我的資訊方法可以應用的我都可以作。但還是要知道自己的長處和工具在甚麼地方,然後去尋求一些合作的管道,然後在合作的過程中要拋掉自身的領域優越感,花時間學習對方領域的基礎知識。
Q3 演算法與生物資訊
其實廣義的演算法,就是解決問題的方法。很多人在生活中不知不覺就在執行很多演算法,譬如像以前學過的輾轉相除法,那就是演算法,輸入兩個數字進去,最後得到最大公因數。然而演算法稍微嚴謹的定義就是用有限明確的步驟,去解決一個問題。只要輸入固定的資料並依照有限的步驟,作完了就可以得到輸出,這就是演算法。而演算法在生物資訊上的應用應該說是要不擇手段,譬如給你個生物資訊相關的應用問題,然後要想到一個有系統明確的方法去解決這問題,這就是演算法。有些人會套目前現有很漂亮的資訊理論解決這個問題,例如把問題或數據模擬成一個 graph 然後硬是用圖論 (graph theory) 的理論去解。個人不是建議這樣的研究方式,因為把生物問題轉成資訊問題時,有時候必須作一些假設,而這個過程有時候會失真,譬如,假設 sequence 不會有 mutation,或者 sequence 沒有gene type error等等。為什麼要作這種假設,因為這樣就可以很方便轉成資訊上既有的問題。然後就有資訊方法可以去解,這樣其實是本末倒置。然而巫老師也承認,自己曾做過這樣的事。
巫老師認為,真正有價值的生物資訊研究,前提是不能隨意更動問題的本質,寧願用不是很漂亮但有效的方法把問題解決。真的要說演算法訓練在生物資訊上有甚麼應用?只能說如果受過演算法的訓練,思考的過成會較為嚴謹。巫老師非常強調「學習過程」;其實不只演算法,每個學生時期學到的東西,知識本身不見得那麼重要,例如像以前念資工的時候最重要的是組合語言,人家認定你是不是資訊高手在於你會不會寫組合語言。但現在有誰在用組合語言? 現在大家都使用高階語言例如: C、JAVA、Perl、Python…等。很少人在寫Machine code,這樣說來,難道以前修課時學組合語言是浪費時間嗎? 其實並不是,重要是在學習過程中鍛鍊出來的能力,例如邏輯嚴謹度、抽象思考方式等。這些比修課內容本身更重要。因此學習演算法在於培養邏輯能力,還有學習如何嚴謹的分析問題,驗證答案重要性,然後看答案的效能如何。巫老師很喜歡以前在中研院許聞廉老師常說的一個譬喻:「假如說今天我有一支掃把,我可以到處去看說哪個是掃把可以應付的地方,譬如樹葉掉一堆,掃把沒問題;泥巴一堆,可能就沒辦法了。」其實正確的態度應該是哪邊髒,就選擇適合的方法去把哪邊弄乾淨。
演算法設計有幾個大的經驗法則,但不代表演算法有固定的設計公式。譬如有些問題,輸入與輸出的對應關係是很明確的,所以可以從答案倒回來推想。如果要得到這個答案的前一步是要如何,知道前一步是怎樣就再往更前面推。又例如,如果大問題很複雜就把他切成很多小問題解決,小問題解決掉再把小問題合併成大問題。這就叫做divide and conquer。這些只是設計演算法的一些經驗或法則,可以順著這個方向思考。但是沒有絕對的演算法設計鐵則,有時候需要一點經驗一點慧根才能設計得出優良的演算法。這就像有時候念資訊理論的文獻,會感覺到某個方法好像很簡單但自己就是沒想到,其實就是高手和自己的差別。
解決問題的重點就是解決問題,不需一定要使用新穎漂亮的方法,只要找到工具,把問題用最適合的方式處理掉就是很好的研究,不見得一定要想出新的方法。因此到後來追求效能的提升已經不是重點,因為對實際領域的進展沒有幫助,還不如去想關鍵的問題,然後用很簡單的方法提供第一個解法,這樣的貢獻反而比較大。以台灣目前的環境來看,和國外相比實驗室規模小,資金也少。所以台灣應該要作那種走在尖端的題目。在這裡給一個建議,如果學生物資訊的學生想找適合的題目或方向,不要去看 bioinformatics 這種期刊,要看 Nature、Science 就是去看生物最新的技術,然後想想那些新發現裡面有沒有生物資訊可以處理的重要環節,這樣才會有競爭力。簡單講,重點在於要積極培養看未來的眼光,涉獵學習方面也要夠廣。自然有個法則,在不同領域的模式有時候會很像,例如,在企管曾經發生過的變化,在社會學曾經發生過的變化,在生物上也可能就會有類似模式。有時候要學會甚麼時候估計下一步,該怎麼涉獵學習,然後找到時代尖端的研究題目。
Q4 實驗室未來的研究方向
生物和醫學比較起來,醫學進展對目前社會的衝擊感覺是相對大一些的。所以現在會慢慢涉獵醫學資訊方面的發展。期待未來能將生物資訊與醫學資訊串連起來,這就是Translational bioinformatics的概念。希望能把生物的基礎研究成果,轉換成對實際臨床的貢獻。但台灣現在的生物資訊和醫學資訊的距離似乎非常遙遠,一邊著重在生物基礎研究、另一邊則是往電子病例、醫療照護,甚至是公衛議題來發展。但其實兩個領域應該還是有密切相關且可以緊密連結在一起的元素。生物基礎研究上的發現應該能成為醫學資訊方面的進展,這會是未來想嘗試的方向。
要將生物資訊和醫學資訊作某方面的連結,一定要先瞭解現在醫學資訊的情況。才有資格去談連結,所以先去瞭解現在醫學資訊領域發展的現況,再看看能不能結合以前的經驗。如果可以很稱職的扮演橋樑的角色這樣已經夠了。舉例來說,像臨床找 Biomarker,一定要知道臨床的需求。譬如如果要找適合作非侵入式檢測的 marker 那就得從分泌蛋白質著手,假如找到一個蛋白質,它在cancer和normal之間差異量很多。但只有在Tissue上才有這個現象,那或許就不會是一個好的非侵入式偵測用 marker。一定要有這一層的認識之後,研究成果才有實用上的價值,所以要瞭解現在醫學的進展,看看他們需要甚麼, 才能真正有效在兩個領域之間作連結。
為甚麼在台灣的生物資訊和醫學資訊的距離感覺非常遙遠呢? 這有很多現實的原因及考量,第一,台灣的生物資訊大多是研究所,很少大學部。這表示現在在進行生物資訊研究,或是現在進行醫學資訊研究的學者,他們都是從原本的單一研究領域跨過來的。而在台灣的學術環境除了要考量到熱忱,也得考量到生存。想要儘快的有學術產能,就不能「跨太遠」。譬如作醫學資訊研究的大部分人從是從公衛那邊來的,如果要再跨進生物領域,就得花更大的成本. 所以很可能跨到某個「有產能」的點 (直說就是可以出論文) 就停了。所以兩個領域之間在台灣一直存在距離。台灣的學術界不能只靠使命感在生存,還要考量到現實生活還有研究經費分配問題。
Q5 跨領域研究的合作模式
跨領域研究還是要學會對方的一些東西和思考模式,至於要看他們領域的東西到甚麼程度,原則上是可以坐下來進行對話,對方可以聽的懂,而對方提的問題我聽的懂。至於是不是瞭解的很透徹,能很清楚判斷這個問題的價值,那個是其次。如果本身作 Proteomics 相關研究,就要回去看分子生物,至於所有分子生物的知識都要懂嗎?以和我研究有關的部分看懂為主。如果還有些東西看不懂就回去看生化,再有些東西看不懂就到回去看有機。不見得要看得很透徹;我個人覺得只要看研究需要或相關的部分。重點是一定要自己踩下去,因為這和解決方法的品質有關,要知道對方的想法,才能做出他們覺得有價值的東西,倒過來也是一樣。
對資訊人來說,巫老師經歷過的生物資訊合作有幾個模式:一個是 domain knowledge 是生物的,問題與解決方法也是生物的,我們藉由資訊方法將這些解決方法自動化,藉此加速解決流程。另外一種是 domain knowledge是生物的,問題跟解決方法也是生物的,但是生物人不知道他的解決方法可以透過資訊方法變得更好,我們就提供他建議。最後一種是domain knowledge是生物的,問題也是生物的,但生物人對這個問題束手無策,如果資訊人對這些問題有一些解決的想法,進而提出一些 hypothesis 讓生物人去設計後續的實驗驗證,這樣就有相對較大的貢獻。所以如果生物人對資訊一點概念都沒有,他沒有辦法知道資訊人能提供甚麼樣的幫助,也很容易產生誤解,有時候生物資訊的角色只是在幫忙從大海撈針縮小到池塘撈針,再縮小一點變成臉盆撈針。但還是要去作撈針,資訊人只是盡量確保針一直還在,沒有提前被濾掉,或是被濾掉的機率較低而已。資訊人就只能做到這樣. 如果不能理解資訊的極限與資訊的做法,那就沒辦法合作下去。
只是會寫程式,會寫簡單的 pearl 或 python,那個叫生物資訊嗎? 那個不是生物資訊。只是學了個工具可以加速手邊的工作,那叫資訊工具,那就是電腦科學 Computer science 和計算機 Calculator 的差別。所以如果很想把資訊方法融入到你的研究裡面,就花一點時間修基礎資訊的課程。我在陽明開課的原則是,從最基本的計算機概論來教,計概後面還有演算法,演算法後面還有生物資訊演算法。因為跨領域就是要提供很基礎的課程給跨領域的人來修,跨領域重要的是廣度不是深度,跨領域的難度不在於領域懂多深,只要自己領域懂很深就夠了,其他得就只要懂到一個層面就夠了。然後要懂生物要懂資訊要懂統計,某種程度要懂化學或者是物理。如果你是作系統生物學 Systems biology,要懂一些物理,因為高能物理那邊的很多分析方式 Modeling 用在系統分析上很好用。如果你是作蛋白質體學,就要有一些分析化學的基礎。譬如質譜圖譜,不同的方式打都會有不同的結果,如果你都沒有相關知識你根本不知道怎麼面對數據。所以說要怎麼進入領域? 把自己當成白紙,開始學這個領域的東西,然後怎麼知道學夠了沒?就要三不五時要倒回去審視自己的研究,發現我知道怎麼去連結兩個領域了,就不需要去修很高階的課,那個不需要。每個領域都一樣,缺甚麼就去補甚麼,補到你覺得在你的研究上夠用就夠了。
跨領域重要的是廣度不是深度,除非你自己很有興趣往下鑽,那個無可厚非。但如果只是研究需要,該要花時間去資訊學一學、統計學一學。 可是怎麼補呢?我的經驗是沒有捷徑,就像很多合作研究,如果和對方沒有共同語言很快就作不下去。但如果合作時你知道我在講甚麼,我也知道你在講甚麼,這種合作是最快的,可以馬上擊中到問題的核心。所以要和對方合作自己一定要先作功課,跨領域研究真的比較辛苦。照這樣來說台灣的學生要不要去跨領域研究? 在原來的領域不是很好? 但你要考慮到你未來的價值,以後你的價值就在於你之前作跨領域研究,在這兩年學會了快速吸收不同領域的能力,學會快速整合不同領域之間的能力,學會面對一個實際問題的能力。現在的社會企業裡已經沒有任何一個產業只需要單一專長,全都是跨領域。像美國華爾街一樣薪水最高是懂法律和經濟的數學家,這和產業結構有關係,因為他們需要精算師,但又不能只會精算,因為在業界,還要懂經濟,公司競爭也要懂法律。
所以現在跨領域很辛苦,但之後會有跨領域的優勢,不管是不是繼續作生物資訊或出去就業,一定有優勢。今天如果兩個人水準差不多,為何我要僱用你?因為每個人進公司都是白紙,但是今天已經過鍛鍊,能很快的上手任何工作,這是優勢讓一個人能容易被業界所接受,能進好的公司,這和之前生物資訊作多好沒有關係。主管看到的就是快速學習力。跨領域培訓中,研究主題本身或許沒有這麼重要,但是過程的訓練很重要,也對未來很重要。這是我個人的想法。
Q6 在台灣是否鼓勵學生唸PhD?
除非你非常喜歡這種生活形態和可以不管現實面,在台灣的產業沒有 PhD 的位置,除非你把就業市場放到全球。業界的話除非很重研發,不然碩士可以作的事,為什麼要供一個博士?因為博士薪水一定比較高,除非有本事帶一個團隊去作藥物開發或其他專案。但台灣哪裡有產業可以讓博士帶一個團隊去作類似的開發?台灣企業主連開發都不想作,台灣企業的股東們不能接受研發過程中龐大的損失。我個人認為,台灣的生技產業要由國家主導才有機會。其實當 PhD 在台灣根本沒有這麼好,沒有老師敢拍胸脯說唸完 PHD 可以保證找到不錯的工作。我自己真的不贊成花那麼多時間念一個 PhD。除非你覺得有絕對必要性,不管是工作需求或個人喜好,不然真的不建議。現在的社會對年輕人很不友善,很多政策對年輕人不友善,所以既然被迫賺這個錢就早點出去賺,可以趕快出去找到安身立命的工作,再來談理想;要能生存才來談理想,用使命感過日子的人很快就不見了。我個人不建議學生念 PhD,除非這真的是你想要。很多人說念博士是要追尋學術成就感,一定要唸書才能作這種事嗎? 如果真的想追求,不用在校園也可以作。如果是醫生也可以自己弄個小 lab,醫生也是可以請助理作實驗。
Q7 對於沒有生物或資訊背景的高中生等想進入生物資訊領域有甚麼建議
如果是比較小開始發展我會比較建議從資訊開始念,因為他是一種邏輯的建立。這和文化有關係,理工的知識傳承是邏輯性的。所有的engineering的訓練過程就是用有系統的方式建構起東西,所以是邏輯性的知識傳承。但生醫上比較是敘述性,他都一直用講的,你看文獻就完全不一樣。如果你看過很理論的資訊文獻和很生物的文獻,寫法就不同,這沒甚麼好壞,就是文化差異而已。 不同領域形成不同的文化,生醫方面就是敘述性。我個人覺得可以比較晚建立,我比較建議小孩子先從建立邏輯思考開始,從邏輯進入非邏輯要比較輕鬆一點。像邏輯這類的抽象思考,相對來說是比較難建立的,為什麼要念線性代數? 不知道,學邏輯要幹嘛? 不知道,這也是到後來才有體悟. 其實抽象的邏輯思考訓練幫助是很大的。
撰稿│吳子青
編輯│蔡文豪