You are on page 1of 5

談資訊科學的研究方法

作者:陳鍾誠

相關文章

研究生一定要知道的 ─ “秘密”
娛樂篇:研究所完全求生手冊
娛樂篇:你們公司的程式設計師穿著 Level Up 了嗎?

前言

我想、我是最沒有資格談研究的大學老師了,畢竟、我沒有做過多少學術性的論
文, 然而、當我看到許多同學努力的往錯誤的方向走去,卻沒有人告訴他們這
件事, 我就忍不住要提醒他們,我也曾經範過同樣的錯誤,這些錯誤,足足讓
我白費了 很多年的光陰。

何謂科學研究?

到底甚麼是科學研究呢?科學與非科學之間有之間有何區別? 很難的東西就是
科學研究嗎? 用了很多數學方法的東西就是科學研究嗎? 當然不是。

區分科學與非科學之間的界限,在於是否可以用外在環境或實驗進行檢驗,可
以驗證或否證者 稱為科學研究,例如:『物理、化學、生物』等類別的研究,通常
可以用實驗的方法檢驗, 因此毫無疑問屬於科學類,而『歷史學、人類學、社會
學、心理學』等社會類的科目,由於許多 研究難以檢驗,能否納入科學類則見人
見智,另外、有一些很特別的學科,例如:『數學、資訊科學』, 能否納入科學研
究呢?

根據可否進行檢驗的判斷法,數學很難被納入科學研究的範疇,因為數學是受
邏輯法則規範, 但卻無法用外在環境進行檢驗的,雖然數學在許多科學當中是
重要的工具,但通常不會因此而被納入 科學研究的範疇。
資訊科學就更難以判定了,某些資訊科學的領域,像是『演算法、影像識別...』等
等,是可以很容易的 進行檢驗的,其判定的指標有『速度、空間、正確率』等等,
而有些領域,則難以用客觀標準判定, 例如:『自然語言處理、機器翻譯...』等等,
由於牽涉到人類主觀的評判,不容易以客觀的標準評定, 因此、能否稱為科學
很難定義,這與社會科學的狀況一樣。

資訊科學的檢驗與評判

既然科學研究要求檢驗,要求否證或驗證,那進行研究之前當然要想清楚『如何
檢驗?』這個問題, 有些研究領域,無法或很難進行檢驗,若一腳踏入,可能
誤入歧途,那對急於畢業的研究生而言可能就 一命嗚呼了,因此、進行研究之
前千萬要想清楚如何驗證的問題。

資訊科學研究的檢驗方式,常用的有三種判斷指標,第一種判斷指標是速度,
演算法的研究通常可以用速度來 進行比較,例如:比較哪一個演算法的速度比
較快,複雜度比較低,硬碟存取次數比較少等等,第二種 斷指標是使用的空間
大小,這個指標在演算法上比較少用,但在影像壓縮等領域則可以使用,第三
種判斷指標 是正確率或準確率,這在人工智慧的領域比較常見,涉及預測或模
仿人類行為的,通常可以用準確率進行評量。

要進行評量,很多時候得先看看手上的資源是否足夠,否則、當研究進行了兩三
年,才發現沒有辦法評量, 那將陷入進退兩難的境地,這對博士生是一個很大
的傷害。

舉例而言:假如你進行影像處理的研究,例如辨認車牌號碼,那你可能會先去
看各式各樣的論文後開始設計方法, 然而、是否有車牌號碼辨識準確率測試常
用的影像庫卻是一個大問題,否則、當你設計出程式後,如何與 其他方法進行
比較將有一定的困難。

如果有標準的測試資料,也就是所謂的 Bench Mark,那在方法的比較上就相對


容易,各個論文的方法可以 不用重做實驗就能進行比較,但是若沒有,那你如
何與其他方法進行比較呢?

當沒有標準的測試資料時,就無法直接進行比較,但是在網際網路時代,如果
有些論文作者將其論文的程式碼 上網,則你可以對同一份測試資料進行兩次的
實驗,一次用你的程式跑,一次用對方的程式跑,在將結果進行 正確率的比較,
這也是一個很容易的辦法。

當該領域既沒有標準的測試資料,或者比較的方法沒有公開的程式時,那你只
好仔細看看對方的論文,然後 自行實作出程式,再將兩者進行比較,以評估方
法間的優劣。

但是這種私自實作對方方法的作法,有時很不容易進行,因為論文很難揭露所
有程式設計的資訊,因此、 即使實作完成,仍然無法確認是否與對方的方法一
致,參數等設定方式是否相同,程式設計是否正確等等, 因此、費力費時又不
討好。

甚至有些領域連評量都有所困難,就更別說客觀性了,例如:『自然語言處理、
機器翻譯...』等領域, 其評量指標都會與人的主觀判斷有關,若沒有一個大家共
同認定的評量基準,根本無法比較,當你踏入這樣的 領域時,要有非常堅強的
心理準備,實驗測試必定很難進行。

資訊科學中所使用的研究方法

要談論研究方法,我想我實在太不夠資格『班門弄斧』了,我的研究少得可憐,
在學術領域頂多只是食物鏈中的『浮游生物』而已,連蝦米都可以吃掉我,但為
了本篇文章,只好勉力振作一下,但是、我還是希望有重量級的 研究者能看到
本篇文章後,為我們講講『研究方法』 。

『喂、劉 x 朗爺爺,李 x 同伯伯,我在叫你們了,聽到了沒有,出來指導一下可


憐的研究生吧!』
(喔! 不要踢我...)

承上所述,研究必需找對題目,在選定題目之前一定要先想清楚該題目有沒有
辦法驗証或評估優劣,有沒有比較的 實驗基準等等,如果沒有,你卻冒然踏入,
那就又踩到陷井了。

這樣說明實在太抽像了,我再用具體一點的例子,還是以資訊科學領域作範例:

假如你要投入『語音辨識』領域的研究,那最好先想清楚,作一下需求分析的動
作,例如是否已經能取得 供測試用的『語音庫』,該語音庫是否曾經被其它研究
使用過,並成為研究人員比較語音辨識方法優劣的基準, 如果有,那驗證上就
有比較好的依據。

作研究時,往往不是像大學生想像的那樣

『我從頭到尾將程式作出來,然後看看我的程式的表現如何,這樣就好了,不是
嗎?』

這就又錯了,語音辨識的方法何其多,前人曾經作過多少的研究,若你完全重
新自創一套方法, 那勢必在前處理 (數位化後轉換成可被辨識程式處理的動作)、
學習 (利用標準達案讓電腦學到一套模式)、 辨識 (用該模式對前處理的結果進行
輸入-辨識-輸出的動作)、甚至後處理等等的過程都自己來,這樣即使你取得了
實驗結果,也不知道到底是前處理的功能很好,還是學習的功能很好,還是辨
識的功能很好, 更何況還要與他人的研究成果比較,你憑甚麼說你的方法是最
好的,況且、這樣做很容易範下致命的錯誤, 那就是自大的認為別人的研究都
是垃圾,口試時萬一有專家在場,肯定會不高興,被修理批鬥也是理所當然的。

因此、資訊科學的研究,較安全的方法是對目前幾種最好的方法進行改良,例如,
若語音辯識的模組可以 拆成 5 個部份,也就是

語音辨識 = A+B+C+D+E

那我們首先取得以這些方法實作出來了語音辨識模組的原始程式碼,然後對其
中某一個模組,例如 D, 進行改良,成為 MD,接著,用 A+B+C+MD+E 進行
測試,然後比對改良方法與原方法在正確率上是否有 所改進,甚至進一步對結
果進行分析,看看輸出相同的有哪些,原先正確後來確錯誤的有哪些,原先 錯
誤後來正確的又有哪些,D 與 MD 的優缺點各在哪理,然後、若結果令人滿意,
有明顯的改進, 再開始準備論文寫作。

但是、並不是每個領域都有被認可的測試資料與原始程式碼,因此、在選擇研究
領域上,就會很為難, 有些領域的風險就是比較高,投入後會『踢到鐵板』的機
會也會比較大。

擅於作研究的人,往往會有一些常用的技巧,例如:在影像處裡領域,有很多
種的前處理方式, 像是 Fourier Transform, Cosine Transform, Hadmard Transform
等等轉換方法,於是當某一個 研究者想要產出大量的論文時,就可以搭配某些
辨識方法,進行排列組合,舉例而言,假如影像辨識 有三個主要步驟,也就是

影像辨識 = A+B+C

經調查後,A 過程有 A1, A2 ... A5 等五種版本,B 過程有 B1, B2, B3 三種版本,


C 過程有 C1, C2, C3, C4 等四種版本,於是較投機的研究人員就可以出
5*3*4=60 篇論文,測試每一種的結果,但是這樣的作法通常不會是 很好的研究
(不過可以衝論文數量就是了,但要小心被指為一稿多投,那就掰掰了)。

一種可能的方法是,暴力式的對所有的 60 種組合進行過實驗後,寫出單一篇論
文說明哪些組合較好, 然後進行理論分析,看看為何這些組合會比較好,這樣
的做法就比較科學。

結語

資訊科學是一個跨領域的學科,可說是科學、工程、心理、設計、藝術的綜合體,
科學的部份可以用『速度、空間、正確率』等指標進行檢驗比較,牽涉到心理與人
類主觀判斷的部份, 例如:『自然語言處理、機器翻譯...』等等,在評量上很難以
客觀,而最難以評判的,是設計與藝術類的 領域,你應該無法想像如何使用客
觀指標去評價『凡谷』、『畢卡索』等人的繪畫吧 ?

然而、當你的興趣在『多媒體設計、遊戲設計、軟硬體設計』等設計類的領域時,卻
又一腳踏進學術界, 那勢必要大嘆『男怕入錯行、女怕嫁錯郎』了。

You might also like