當前位置:
首頁 > 知識 > 如何做好計算機視覺的研究?

如何做好計算機視覺的研究?

如何做好計算機視覺的研究?



如何做好計算機視覺的研究?

——寫在朱松純老師關於計算機視覺的三個起源和人工智慧的評論之後


華剛


簡單說一下這篇文章的背景:從我去年(2015年)回到微軟亞洲研究院之後接觸到很多聰明的實習生。一方面感受到他們對計算機視覺研究的熱情,另方面也有感於他們對計算機視覺研究認知的局限性,或者說大一點,是基本研究方法和思路上的局限性,就有想法要對如何做好計算機視覺的研究寫點什麼,但一直也沒有找到合適的機會。最近計算機視覺領域國際權威、加州大學洛杉磯分校的朱松純老師發表了一篇關於計算視覺的三個起源和人工智慧的評論,引起了很大的反響。朱松純老師的評論全面深刻,我想借著這個機會,結合朱老師評論的內容和我在計算及視覺領域15年的研究經歷,也來談談如何做好計算機視覺的研究,希望對領域內的學生和年青的研究員能有所幫助。


「如何做好計算機視覺的研究?」

要回答這個問題,我們先要對這個問題的關鍵詞進行分析:如果去掉「計算機視覺」這個限定詞,這問題就變成了「如何做好研究?」那麼,要回答這個問題,我們就要知道「什麼是好的研究?」而要定義什麼是好的研究,必須回到根本,先要知道「什麼是研究?」


我們的討論就從這個問題開始。


什麼是研究?


一個被普遍接受的對研究的廣義定義為:研究是為了產生新的知識或者是為已有的知識設計新的應用的系統性的工作。因為我們今天的討論其實更多集中在科學研究上,先確定狹義的研究的定義為:利用科學的方法來調查解釋一個現象或者獲取新的知識。


綜合這兩個定義,可以看到科學研究從本質上是由三個基本的要素構成:1)目的:產生新的知識或者是設計出新的應用; 2)手段:科學的方法。缺少這兩個要素任何之一都不構成科學研究; 3)成果:新的知識。所謂新的知識,必須是前人不知道的東西。

我們很多同學和年輕的研究員認為研究就是寫論文、研究成果就是論文,這其實是在觀念上走進了一個誤區。論文是系統闡述新的知識、新的應用,以及闡述獲取這個新知識或者新應用用到了什麼樣的科學方法的一個載體。論文,作為闡述研究成果的主要手段,必須經過同行的評議通過才能正式發表和被認可。


在人工智慧進入第三個熱潮之際,我們看到各種各樣關於AI的各種媒體報道層出不窮,一方面,這對大眾普及了AI各方面的知識,是積極的。但從另一個方面講,很多觀點沒有經過仔細的推敲,也沒有同行的評議,一些謬誤或者是誇大的觀點可能因為廣泛傳播而被大眾接受,結果產生負面的社會影響。這就提醒我們相關領域的研究人員,在對大眾媒體去做一些評論的時候,必須仔細斟酌,盡量不傳播沒有得到檢驗的觀點。


這就談到第二個問題:


什麼是好的研究?


不同領域的研究員對這個問題可能會有不同的看法。

從計算機科學的角度來講,尤其是計算機視覺的研究,無論是理論的還是實踐的,我們的研究成果最終是要解決現實世界的問題的。在這個方面,我印象比較深刻的還是我在西安交通大學讀研究生的時候,沈向洋博士2001年在西安交大做報告提到的一個觀點:最好的研究員發現新問題;好的研究員創造新方法解好問題;一般的研究員跟隨別人的方法解問題——大家在多次這裡看到「新」這個關鍵詞,創新是研究的本質。


有了這些鋪墊,我們首先定義什麼是最好的研究。通常認為一個領域中對於某一個問題最好的研究工作有三種:第一篇論文 (The First Paper),最好的一篇論文 (The Best Paper),以及最後一篇論文(The Last Paper)。這第一篇論文的含義是說這篇論文率先提出了一個好的問題和方向。最好的一篇論文是什麼?那一定是開創性地提出了一種解法,啟發了最終解決這個問題的途徑。至於最後一篇論文,那一定是徹底把這個問題解決了,從此以後這個問題不再需要繼續做進一步的研究。


從計算機視覺領域舉一個具體的例子來講,Harris Corner Detector屬於最早的一批在圖像中檢測角點的論文,可以歸為第一篇之列。David Lowe博士的SIFT特徵檢測和局部描述子,可以歸為在這個方向上最好的論文之列。那麼這個方向的最後一篇呢? 我認為可能還沒有出現。具體到我自己的研究工作,在局部描述子這個方向上,我跟我的同事Matthew Brown和Simon Winder在2007年到2009年之間所做的一系列用機器學習的方法來建立描述子的工作,也實際上為提高局部描述子的性能提供了一個新的思路和方法。


對於我們很多研究員和學生來講,一輩子可能都做不到這三種最好的研究工作之一。那是不是就等於說你不能做好的研究工作或者根本不用考慮做研究了呢?肯定不是這樣。科學研究是一個共同體。這些最好的研究工作也是在前面很多很多非常紮實(solid)的研究工作的基礎上發展出來的。因此,對於年青的研究員和學生而言,應該胸懷大志,去追求做最好的研究工作,但從實際執行上來講,還是要把一項一項具體的工作先做紮實了。

怎麼做到把研究工作做紮實了?首先,你必須對你要解的問題有一個全面深刻的了解,包括為什麼要解這個問題、解這個問題有什麼意義呢、以前有沒有試圖解決同樣或者類似問題的先例,如果有,你就要全面了解前人都提出了什麼樣的解法、他們的解法都有什麼樣的優勢和缺陷……最後,你的解法解決了前面這些解法不能解決的問題呢,或者是你的解法處理了什麼樣的他們不能處理的缺陷了?這些問題的答案如果都有了,那麼,在寫論文的過程中要注意的就是,1)你的假設是什麼?2)你怎麼驗證了你的假設?這個驗證既可以是理論上的證明,也可以是實驗的驗證。我們很多學生和年青的研究員,寫論文的時候沒有找到內在的邏輯關係,很多觀點都是似是而非。或者說重一點,在論文撰寫方面的訓練嚴重不足。你的研究如果到了寫論文的階段,那就必須要有明確的觀點提出來。這個觀點必須明確無誤,只有這樣你才能被稱為形成了新的知識。你的每一個觀點都必須在理論上或者是實驗中得到驗證。另外,論文的撰寫是為了讓人看懂,不是讓人看不懂,所以我們在撰寫過程中必須盡量保證不去假設讀者已經擁有了某些方面的知識。做好了這些,基本上你就有很大的可能性能夠做出紮實(solid)的研究工作。


然後回到我們討論的主題:


如何做好計算機視覺的研究工作?


其實,要回答這個問題,將我上面講的所有觀點加上「計算機視覺領域」這個限定詞就行了。我這兒結合計算機視覺研究的一些現狀及朱松純老師的一些觀點來進一步談談我的觀點。


首先談談我觀察到的一些現象。很多年輕的學生,現在討論問題的時候都用這樣的談話:我發現用FC6層的特徵,比用FC7層的特徵,在某個圖像數據集上比現在最好的演算法提高了1.5%的識別精度,老師我們可以寫論文了(如果大家不能理解這句話,FC6和FC7是表示AlexNet的兩個中間輸出層)。我想請問,你在這個過程中發現了什麼樣的普適的新的知識嗎,又或者,在不是普適的情況下,你在什麼限定條件下一定能夠看到這樣的識別精度提高了?


不錯,提高識別精度是一個很好的目標,但要注意,計算機視覺的研究是要解決識別的問題,不是解某一個圖像數據集。這些圖像數據集提供了很好的驗證你的假設和方法的手段,但如果你沒有遵循科學的方法和和手段去設計你的演算法和實驗,你也不可能得到一個科學的結論,從而也不能產生新的知識,更不用談對這個領域做出貢獻。朱松純老師在他的評論中提到,很多學生認為,計算機視覺現在就是調深度神經網路的參數,也就是說的這個問題。


所以,具體到對於剛開始從事計算機視覺研究的學生來講,要做好這方面的研究,我覺得第一步還是要系統學習一下計算機視覺的課程,全面了解一下計算機視覺這個領域的來龍去脈、這個領域都有哪些基本的問題、哪些問題已經解得比較成熟而哪些問題還在初級階段……這裡,推薦所有的學生學習兩本經典教材《Computer Vision: A Modern Approach》和《Computer Vision: Algorithms and Applications》,可以先讀完第一本再讀第二本。

如何做好計算機視覺的研究?



只有對這個領域有了一個初步的全面了解,你才能夠找到自己感興趣的那個問題。在眾多的問題當中,你是希望做三維重建,還是做圖像識別、物體跟蹤,又或是做計算攝影呢?做研究其實不是一個完全享樂的的過程,你必須要有足夠的興趣來保證你能持續地走下去,這在你感覺自己當前研究的思路走不下去的時候尤其具有重要意義。當你確定你感興趣的問題,你應該首先全面調研一下這個問題的來龍去脈。這就意味著你不能只讀過去五年的論文。你可以從過去一年的論文開始,慢慢追溯回到過去很久的相關的論文。有些時候,你會驚訝地發現前人想問題的深度。研究的英文單詞是Research,拆開是Re-Search,用中文直譯就是重新搜索和發現,而不是直接發現,其實就是說你要首先對這個問題做追本溯源。朱松純老師提到的我們很多學生現在不讀五年以前的論文,說的也是這個道理。


當你做好了這些,你必須鑽進計算視覺的一個小的領域。人的精力是有限的,這就意味著你不可能把很多事情同時做好,所以在你選好方向之後,就要把你的精力集中在你感興趣的一個問題上, 努力成為這個方面的專家。研究是一項長跑,很多時候,你在一個方向上比別人堅持久一點, 你就有機會超越他而成為某個方面的專家。


最後,我也來談談深度學習對計算機視覺的影響。在這裡,我對馬里蘭大學Rama Chellapa教授在Tom Huang教授80歲生日論壇上表達的觀點非常認可,他認為,深度學習網路就像一個Pasta Machine:你把該放的東西放進去,它能給你產生好吃的Pasta。同時它也是一個Equalizer:無論你在計算機視覺領域有40年的經驗還是0年的經驗,只要你會用Caffee,你在一些問題,比方說圖像識別上,都能產生差不多的結果。他開玩笑說這有點傷自尊 (It hurts my ego!),但我們還是應該把它作為一個好的工具擁抱它。我想,他的言外之意,是我們的研究應該做得更深,要去理解這個工具為什麼能夠工作得比較好,從而產生新的知識去指導將來的研究和應用。


我認為,對於年輕的學生來講,從深度學習的方法開始學習沒有什麼問題,但必須要進一步去了解一下其他的數學和演算法工具,像統計貝葉斯的方法、優化的方法、信號處理的方法等等等的。計算機視覺的問題,其本質是不適定的反問題,解這一類問題需要多種方法的結合。這裡面有深度學習解得比較好的問題,像圖像識別,也有深度學習解不了的問題,像三維重建和識別。


任何研究領域包括計算機視覺的研究,對處在研究初期的學生而言, 更重要的是掌握足夠的數學工具,培養一種正式思維(Formal Thinking)的能力,這樣,遇到實際的問題就能以一種理論上正確的思路去解決這個問題。


作為結束語,我想對在從事或者有志於從事計算機視覺研究的學生說,計算機視覺的研究處在一個非常好的時期,有很多我們原來解不了的問題現在能夠解得比較好了,像人臉識別,儘管我們其實還沒有從真正意義上達到人類視覺系統對人臉識別的魯棒程度。但我們離真正讓計算機能夠像人看和感知這個世界還有很遠的距離。在我們達到這個目標之前,深度學習的方法可能是這個過程中一個重要的墊腳石,同時我們還要將更多的新的方法和工具帶入這個領域來進一步推動這個領域的發展。

如何做好計算機視覺的研究?



作者簡介


華剛博士是微軟亞洲研究院資深研究員,現任微軟亞洲研究院計算視覺組負責人。他的研究重點是計算機視覺、模式識別、機器學習、人工智慧和機器人,以及相關技術在雲和移動智能領域的創新應用。他因在圖像和視頻中無限制環境人臉識別研究做出的突出貢獻,於2015年被國際模式識別聯合會(International Association on Pattern Recognition)授予」生物特徵識別傑出青年研究員」獎勵,因其在計算機視覺和多媒體研究方面的傑出貢獻,於2016年被遴選為國際模式識別聯合會院士(IAPR Fellow)和國際計算機聯合會傑出科學家(ACM Distinguished Scientist) 。。華剛博士已在國際頂級會議和期刊上發表了120多篇同行評審論文。他將擔任2019國際模式識別和計算機視覺大會 (CVPR 2019)的程序主席,以及CVPR 2017和ACM MM 2017的領域主席。


此前華剛博士曾擔任CVPR 2014、ICCV 2011、ACM MM 2011/ 2012/ 2015、ICIP 2012/2013/2015/2016、ICASSP 2012/ 2013等十多個頂級國際會議的領域主席,以及IEEE Trans. on Image Processing(2010-2014)編委。目前,華剛博士還擔任著IEEE Trans. on Image Processing、IEEE Trans. on Circuits Systems and Video Technologies、IEEE Multimedia、CVIU、MVA和VCJ的編委。


微軟小冰進駐微軟研究院微信啦!快去主頁和她聊聊天吧。


請您繼續閱讀更多來自 微軟亞洲研究院 的精彩文章:

《對話》:人工智慧,一個新的物種?

TAG:微軟亞洲研究院 |

您可能感興趣

李飛飛:為什麼計算機視覺對機器人如此重要?
為什麼說計算機視覺是機器人的殺手級應用?
你笑對了嗎?研究人員利用計算機模擬最好看笑容
計算機視覺需要更多幾何洞察
計算機視覺導覽:如何快速上手,是否該讀博?
計算機視覺基礎2——相機成像的幾何描述
這不是科幻片!未來計算機或能刪除你的思想
關於計算機視覺,你需要知道這些
計算機系統壞了怎麼辦?
微軟是如何用計算機驗證社會科學問題的?
如果不能理解人腦運作的機制,計算機模擬人腦又有什麼用?
讓計算機讀懂諷刺
如果大腦能夠控制計算機機械臂,在大腦中不放電極,計算機能夠識別一個人的思想嗎?
聲子計算機:計算機技術未來發展的新希望!
問答:你見過最誇張的計算機故障是什麼?
計算機視覺幫人們發現老葯的新功能
量子計算機將如何改變世界?
微軟亞洲研究院CVPR圓桌:機器學習火成這樣,如何讓計算機視覺「獨立」發展?
新科技:計算機能像人腦一樣思考,你能接受嗎?